web-dev-qa-db-ja.com

マルウェアは未登録ドメインをどのように使用しますか

WannaDecryptor マルウェアが未登録のドメインをクエリしていることを読み終えました。コマンドアンドコントロールサーバーに接続していると思いました。これは正しいです?

なんらかのプログラムが未登録ドメインのサーバーに接続しようとすると、接続が失敗することは私の理解です。IPアドレス解決の失敗が原因です。あれは正しいですか?そうでない場合、ドメインのIPアドレスはどのように解決されますか?それとも何か不足していますか?

マルウェアは、構成された未登録のドメインを使用して制御サーバーと通信していましたか?ある場合、IPアドレス解決にDNS登録を使用せずにそれを行うにはどうすればよいでしょうか。

4
jason

前の2つが言及したように、マルウェアは未登録のドメイン名に接続していませんでした。未登録のドメインは、マルウェアの分析を防止するために使用されるはずの手法でした。

多くの場合、マルウェアの研究者は、マルウェアを仮想マシンで分離します。特定の仮想マシンがドメイン名を解決する方法により、登録されていないドメイン名が、VMで実行されているアプリケーションに対して「解決された」と見なされます。高度なマルウェアの作者はこれを知っているため、マシンに感染する前に、ランダムな未解決のドメイン名に接続しようとすることがよくあります。これらのドメイン名が解決されると、マルウェアに仮想マシンで機能していることを通知します。これを検出すると、異常終了し、マシンへの感染を拒否します。これにより、マルウェアの分析がより困難になります。

WannaCryマルウェアの場合、作成者は同様の対策を作成しようとしましたが、正しく作成しませんでした。彼は未登録のドメイン名をハードコードしました。そのため、研究者がハードコードされたドメイン名をDNSシンクにポイントすると、感染したすべてのコンピュータがVMに感染していると考えました。そのため、暗号化プロセスを開始する代わりに、マルウェアは単に終了して、さらなる分析を防ぎます。

作者がドメイン名チェックをランダム化した場合、ドメイン名の登録は何もしなかったでしょう。

13
anon

WannaCryの場合、未登録のドメインが強制終了スイッチとして機能しました。

コードは次のことを行いました。

  • 未登録のドメインにHTTP GETを発行します
  • GETリクエストが失敗した場合(登録されていないため)損傷を与えます
  • GETリクエストが成功した場合、中止します

これにより、攻撃者は、ドメインを登録するだけで、攻撃を受けたときに自分の攻撃を阻止することができます。

WannaCry V1攻撃中に、マルウェア研究者が未登録のドメインへのトラフィックを観察し、登録して、それを DNSシンクホール にポイントしました。彼 知りませんでした これは攻撃を阻止します。

これは、リモートマシンを制御するために接続を確立するwantsであるCommand&Control(C2)サーバーとはかなり異なります。

6
Rob Sobers

それはコントロールセンターへの接続ではありませんでした。これはおそらく、仮想マシンでの分析を防ぐための試みでした。

一部のマルウェアサンドボックス/仮想マシンは、すべての送信HTTPリクエストを傍受し、問題のサーバーであるかのように「応答」します。存在しないドメインを使用することで、Wannacryptは、「有効な」応答がそのような環境で実行されていることを示していることを認識しています。その後、例えば操作を中止します。

詳細については、これを検出した人物の ブログ投稿 、または Talosの記事 を参照してください。

1
user13695