cNotes 検索 一覧 カテゴリ

StormWorm DNS、StormBotnet

Published: 2007/10/16

「大量のDNSクエリ」といえば、、、

Storm Worm、感染のきっかけはメールにMalwareが添付されてくるとかメール本文に誘導URLが書き込まれているとかblogにURLが書き込まれるとか、ソーシャル系のものがほとんどというイメージが強かったが、exploitを利用されてネットワーク越しに勝手にインストールされる例もたくさん観測している。基本的に新旧あらゆる感染手法が用いられているということだろう。

大量に亜種が存在し、さまざまなMalwareがインストールされるので挙動的にはさまざまなものが報告されており正体がつかみにくいが(というかE-mail Wormだろ?という認識)、特に目立つネットワーク的な挙動は、以下の3点ではないかと思う。

  • spam送信
  • DNS queryの大量送信
  • P2Pによるコミュニケーション

■spam送信

spam送信は、あるhttpサーバーから各種情報をdownloadしてきて自立的に送信するもので前述の「大量のDNSクエリの発生 その2」と同じ手法が目立つ。


■DNS queryの大量送信

DNS queryに関しては、自分のIPアドレスのAレコードを検索するクエリを送信する。ここでは1,000台のDNSサーバーに対して約10分間に3周、約12,000クエリを送信した。下表のように意外と日本国内のDNSサーバーもたくさん利用されている。

DNSサーバーの国別存在数

DNSサーバーのAS別存在数


■P2Pによるコミュニケーション

「eDonkey」もしくは「overnet」のUDP実装として解読できる。ここで観測された例ではまず171個のSuperNodeに接続し、そこからPeer情報を得て1時間で1956のpeerと接続した。待ちうけに利用したUDP portは12100や2266など数種類あり、亜種ごとに違うportを利用している。

長期間観測してみたが、今のところ定期的に各peerに自分自身をPublicizeし続け、Searchが発生するのみで、P2P経由で何のコミュニケーションもdownloadも観測できていない。

 1293366 10:10:54.066935  x.x.x.x -> 154.37.66.209 eDonkey eDonkey UDP: Publicize
 1294473 10:10:54.415990  x.x.x.x -> 217.160.208.201 eDonkey eDonkey UDP: Connect
 1294474 10:10:54.416047  x.x.x.x -> 217.160.208.201 eDonkey eDonkey UDP: IP Query
 1294876 10:10:54.753133 217.160.208.201 -> x.x.x.x  eDonkey eDonkey UDP: IP Query End
 1294878 10:10:54.753924 217.160.208.201 -> x.x.x.x  eDonkey eDonkey UDP: Connect Reply
 1295198 10:10:54.857251  x.x.x.x -> 84.16.239.110 eDonkey eDonkey UDP: Publicize
 1295769 10:10:55.022947 84.80.109.203 -> x.x.x.x  eDonkey eDonkey UDP: Publicize ACK
 1295770 10:10:55.023233  x.x.x.x -> 84.80.109.203 eDonkey eDonkey UDP: Connect
 1295771 10:10:55.023288  x.x.x.x -> 84.80.109.203 eDonkey eDonkey UDP: IP Query
 1296774 10:10:56.010358 84.80.109.203 -> x.x.x.x  eDonkey eDonkey UDP: IP Query End
 1296777 10:10:56.011130 84.80.109.203 -> x.x.x.x  eDonkey eDonkey UDP: IP Query Answer
 1296783 10:10:56.013090  x.x.x.x -> 82.55.220.212 eDonkey eDonkey UDP: Publicize
 1296786 10:10:56.020542 84.80.109.203 -> x.x.x.x  eDonkey eDonkey UDP: Connect R
 1553352 10:13:17.056519  x.x.x.x -> 71.227.120.46 eDonkey eDonkey UDP: Search
 1553705 10:13:17.129618  x.x.x.x -> 68.205.67.204 eDonkey eDonkey UDP: Search
 1553706 10:13:17.129765  x.x.x.x -> 69.249.70.53 eDonkey eDonkey UDP: Search
 1553707 10:13:17.129861  x.x.x.x -> 212.35.84.240 eDonkey eDonkey UDP: Search
 1553708 10:13:17.130004  x.x.x.x -> 69.244.45.146 eDonkey eDonkey UDP: Search
 1553709 10:13:17.130096  x.x.x.x -> 220.237.166.193 eDonkey eDonkey UDP: Search
 
 1553753 10:13:17.192508  x.x.x.x -> 172.142.80.191 eDonkey eDonkey UDP: Search
 1553765 10:13:17.198261 67.174.246.119 -> x.x.x.x  eDonkey eDonkey UDP: Search Next
 1553781 10:13:17.222207  x.x.x.x -> 67.174.246.119 eDonkey eDonkey UDP: Search Info
 1553828 10:13:17.252959 130.215.156.72 -> x.x.x.x  eDonkey eDonkey UDP: Search Next
 1553829 10:13:17.254451  x.x.x.x -> 130.215.156.72 eDonkey eDonkey UDP: Search Info
 eDonkey Protocol
    eDonkey Message
        Protocol: eDonkey (0xe3)
        Message Type: Search (0x0e)
        Search Type: 2
        Hash: 079ADF329A3FA55126A1860E770C6E62
 
 eDonkey Protocol
    eDonkey Message
        Protocol: eDonkey (0xe3)
        Message Type: Search Next (0x0f)
        Hash: 079ADF329A3FA55126A1860E770C6E62
        Overnet Peer List Size: 5
        Overnet Peer
            Hash: 07B682364E29764803553A76CB095870
            IP: 70.71.242.198 (70.71.242.198)
            Port: 29500
            Peer Type: 0
        Overnet Peer
            Hash: 051FAF726AC068F7EB3D47917111BC69
            IP: 74.138.7.99 (74.138.7.99)
            Port: 8468
            Peer Type: 0
        Overnet Peer
            Hash: 00B3320B7FE5DA8474218F4E84BA8583
            IP: 75.47.238.142 (75.47.238.142)
            Port: 22505
            Peer Type: 0
 eDonkey Protocol
    eDonkey Message
        Protocol: eDonkey (0xe3)
        Message Type: Connect (0x0a)
        Overnet Peer
            Hash: E2EFC04641302BBB731547EF698EC541
            IP: 74.119.116.18 (74.119.116.18)
            Port: 32811
            Peer Type: 0
            
 eDonkey Protocol
    eDonkey Message
        Protocol: eDonkey (0xe3)
        Message Type: Connect Reply (0x0b)
        Overnet Peer List Size: 7
        Overnet Peer
            Hash: E8CE35BE8F737E94647535634A01D0B6
            IP: 64.250.201.230 (64.250.201.230)
            Port: 9154
            Peer Type: 0
        Overnet Peer
            Hash: 1883288016319AE8918FAFEB7AE9A030
            IP: 195.128.95.178 (195.128.95.178)
            Port: 29003
            Peer Type: 0
        Overnet Peer
            Hash: 1CBC09BF540F3E3DC344FC0515CA0D1C
            IP: 89.85.25.240 (89.85.25.240)
            Port: 3527
            Peer Type: 1
        Overnet Peer
            Hash: 69ADC8F1E672A61AD5EED16C1F91CF08
            IP: 212.76.37.134 (212.76.37.134)
            Port: 30886
            Peer Type: 2

接続されたP2P nodeの国別存在状況は下表のとおり。北中米が多いが、アジア、ヨーロッパ等広範囲に存在している。

国別P2P node数


■検体

関連するMalwareをwww.virustotal.comでチェックした結果であるが、8月に捕獲したものも10月に捕獲したものも検出率はこのぐらい。大量に亜種があるがだいたい似たような検出状況。

8月の捕獲検体

10月の捕獲検体


■まとめ

P2P(しかもUDP)という点が技術的にはなかなか面白いが、P2Pにしろ、DNSにしろ、挙動が派手なので感染端末の発見および、逆に、それを利用して他の感染端末の発見、追跡に利用できてしまう。DNSクエリの部分の挙動がないパターンも見受けられるのはそのせいか?意外に発見、追跡は簡単なのではないかと思われるわけだが、相変わらず「猛威が!」といわれ続けるのは、それ以上に「踏んでしまう人」が多いのか?それはそれで残念な世の中ではあるが、発見できたとしても、それを直接伝えるということにすべてが直結できるわけではないので、やはり注意喚起、ウイルスチェック対応をがんばるというところに行き着くわけで、結局いつもと同じことになっているんだろう。

[カテゴリ:botnet観察日記]

by jyake