博士論文
IoT におけるサイバー攻撃の観測・分析に
関する研究
A Study on Observation and Analysis of
Cyber Attack in IoT
国立大学法人
横浜国立大学大学院
環境情報学府
鉄 穎
Ying Tie
2018 年 6 月
横浜国立大学大学院環境情報学府
博士論文
IoT におけるサイバー攻撃の観測・分析に
関する研究
情報メディア環境学専攻
鉄 穎
請求学位 博士(情報学)
責任指導教員 松本勉 教授
提出年月日 平成
30 年 4 月 10 日
請求年度 平成
30 年 6 月修了
A Study on Observation and Analysis of
Cyber Attack in IoT
Ying Tie
A doctoral dissertation submitted to
Department of Information Media and Environment Sciences,
the Graduate School of Environment and Information Sciences,
Yokohama National University
for the degree of Doctor of Information Science.
under the academic supervision of
Professor Tsutomu MATSUMOTO
Summited on April 10th, 2018
(For Graduation June 2018)
概要
通信機能を備えるカメラ,ルータ,車などのIoT デバイスが複数のネットワークで 相互接続されている.IoT では,社会に新しい価値を生み出せる優位性を持つ反 面,安全性の問題がある.IoT デバイスではリソースが限られており,アンチウィル スサービスが導入されていないものが多い.また,マルウェアに感染した IoT デバ イスは攻撃の踏み台になり,外側にDDoS 攻撃を行う可能性や内側に IoT 自身の システムに攻撃する可能性がある. 昨今,サイバー攻撃の手口はますます巧妙化・複雑化し,社会全体に対して, 大きな脅威になっている.特に,2016 年後半に,IoT 感染デバイス群(以降は IoT ボットネットと呼ぶ)による大規模 DDoS 攻撃が発生し,著名なセキュリティ情報ブログ「Krebs on Security」や DNS サービスを提供する米 Dyn 会社などが被害に遭
った.サイバー犯罪者たちは,すでにIoT デバイスも攻撃対象の1つと見なし,IoT デバイスを狙ったサイバー攻撃が急激に増加している.IoT サイバー攻撃等が深 刻化している状況を踏まえ,IoT ボットネットの実態判明,挙動分析することは一刻 の猶予も許されない状況である.そこで,本稿では,IoT サイバー攻撃への対策を 目的に,IoT におけるサイバー攻撃の観測・分析に関する研究を行う. IoT デバイスでは遠隔操作するための Telnet サービスが動作し,外部からアク セスできる状態になっている場合がある.さらに,ログインに必要な認証情報であ る ID/パスワードは初期設定のままだったり,ソフトウェアの更新がおろそかだった りすると,不正侵入やマルウェア感染の大きな原因となっている.そこで,3章では, IoT サイバー攻撃の実態を把握するために,IoT デバイスへの Telnet を用いた攻 撃を分析する.また,ハニーポットにより観測される攻撃の分析とマルウェア動的解 析により観測される攻撃の分析を組み合わせて考察を行う.具体的には,攻撃者 からのログインチャレンジを拒否し続けるハニーポットと,ログインを許可するハニ
ーポットを併用することで ID/パスワードの観測とログイン後のシェルコマンドの両
し,サンドボックス内でログインチャレンジとシェルコマンドを確認する.Telnet ログ
インの際に得られる ID/パスワード情報とログイン後に使用されるシェルコマンド系
列を分析することで,攻撃ホストの感染マルウェアの推定を目指す.
また,IoT マルウェアによる DDoS 攻撃は社会的な問題になっているが,実際に IoT マルウェアに感染した IoT デバイスがどのような頻度で DDoS 攻撃に悪用さ れ,どのような流量の攻撃を発生するか,といった攻撃の実態については我々の 知る限り詳細な報告がなされていない.そこで,4章では,感染したIoT デバイスの 挙動を分析するために,IoT マルウェア解析環境を提案する.具体的には,IoT マ ルウェアの動的解析において C&C サーバに接続し,攻撃の観測を行う観測実験 とC&C サーバからの応答を蓄積したダミーC&C サーバを用いた攻撃再現実験を 行い,攻撃対象や頻度など実際に発生している攻撃の傾向を把握する.加えて, 実際にIoT マルウェアに感染することが確認されている実機群を用いて DoS 攻撃 の再現実験を行い,様々なDoS 攻撃の通信内容や流量等の詳細な分析を行い, IoT デバイスによる DoS 攻撃の実態を把握する. 本論文では,近年大きな脅威となっている IoT におけるサイバー攻撃の観測・ 分析手法を提案した.今後の課題としては,より多くの IoT デバイスの脆弱性攻撃 を観測できるように,まずは,観測システムの改良が必要である.また,収集したデ ータのボリュームが膨大なため,ビックデータの分析手法を考案すべきである. 最後に,本研究の成果として IoTマルウェアによるTelnetサービスに対する攻撃の観測・分析(第 3章)
1)IoT サイバー攻撃の実態を把握するために,IoT デバイスへの Telnet を用い
たサイバー攻撃を分析した.新たに観測される ID/パスワードの内,一部のものが 数ヶ月後に大規模な攻撃に利用される事例を多数確認でき,このことから ID/パス ワード観測を継続することで将来的に大規模攻撃に使用される ID/パスワードを早 期に発見できる可能性があることが分かった. 2)140 検体の IoT マルウェアについて動的解析を試みた結果,各マルウェア検 体が攻撃に利用するID/パスワードは少ないもので 2 組,多いものでも 146 組であ
り,比較的少数であることがわかった.またマルウェアが保持するID/パスワードリス トとその後のシェルコマンド系列は必ずしも1 対 1 対応ではなく,同一の ID/パスワ ードリストを用いた攻撃でも,ログイン後に使用するシェルコマンドが異なる場合や, 逆に,異なる ID/パスワードリストを用いた攻撃でもログイン後の挙動が同一である 場合が確認された. 感染したIoTデバイスによるDDoS攻撃の観測・分析(第4章) 3)実際のC&C サーバ(以下,実 C&C サーバと呼ぶ)との接続による攻撃観測 実験とダミーC&C サーバによる攻撃再現実験の組み合わせにより,社会的な問題 となっている IoT マルウェアによる DDoS 攻撃の実態を観測・分析した.特に,攻 撃再現実験においてサービス妨害攻撃を受信するための犠牲サーバを用意する ことで,特にアプリケーションレイヤのDoS 攻撃の詳細観測を行う手法を示した. 4)IoT マルウェアに感染する脆弱性を有する実機を用いて攻撃再現実験によ る攻撃の流量測定を行い,安価な機器であっても 100Mbps 程度の通信を発生さ せられることを明らかにした. また,社会問題となっている IoT マルウェアによる攻撃の具体的な対策への応 用に力になった.攻撃に利用されている ID/パスワードの観測により,実際の IoT マルウェアが攻撃されているリモートログイン用 ID/パスワードリストを用いて,デバ イスのIoT マルウェア攻撃耐性を診断する “IoT マルウェア攻撃耐性診断ツール” を作成した.そして,継続的に特定機器を狙った新規ID/パスワードの観測により, 対策組織やメーカーに早期警戒情報の提供が可能である.また,DoS 攻撃の詳 細観測,特にアプリケーションレイアの観測で,攻撃時利用するヘッダー情報など をシグネチャとして DoS 対策製品に利用されると考えられる.最後では解析実機
群により,DoS 攻撃流量の測定を行った.この結果を用いて,Darknet と M-lab[94] の観測結果と突合することで,DDoS 観測の規模推定ができた.こういうことで,潜
最後に,本研究の成果が IoT ネットワークのセキュリティ向上の一助になること を期待する.
Abstract
The Internet of things (IoT) is the network of physical devices, vehicles, home appliances and other items embedded with electronics, software, sensors, actuators, and connectivity which enables these objects to connect and exchange data. While IoT has the advantage of creating new value in society, there is a safety problem. Most IoT devices have limited resources, and don’t have anti-virus services. Also, malware-infected IoT devices can become the springboard of attacks. It can do DDoS attacks externally while it can also attack its own internal IoT system.
In recent years, cyber-attacks have become more and more sophisticated and complicated, and it is becoming a big threat to the entire society. For example, in the second half of 2016, a large-scale DDoS attack by malware-infected IoT devices (hereinafter referred to as IoT botnet) occurred, where a famous security information blog “Krebs on Security” and Dyn, a DNS service provider, were victimized. As cyber criminals have already considered IoT devices as one of attack targets, cyber-attacks targeting IoT devices are rapidly increasing. Given that IoT cyber-cyber-attacks are getting worse, it is prudent to analyze IoT botnet’s current state and behavior. Thus, this paper describes the study on observation and analysis of IoT cyber-attacks to come up with countermeasures against it.
Most of the times, IoT devices would have their Telnet service enabled so it can be remotely accessed. The major causes of illegal access and malware infection are leaving the ID/password in their initial default values and neglect of software updates. Thus, in Chapter 3, attacks to IoT devices using Telnet is analyzed to better understand IoT cyber-attacks. The research contains honeypot observation and malware dynamic analysis. Specifically, by using a combination of login-reject honeypot and login-accept honeypot, both ID/password and shell command after login are observed. Then, by dynamic analysis of malware samples collected by
honeypot, login challenge ID/password and shell command sequence are mapped. And based on the mapping table, which family the infected malware of the attack host belongs to can be estimated.
Although, DDoS attacks by IoT malware are becoming a social issue, there are no details of actual conditions among the IoT DDoS attack are reported, such as what is the frequency and volume of DDoS attacks of malware infected IoT devices. In Section 4, we propose an IoT malware analysis environment to analyze the behavior of infected IoT devices. There are two types of experiments in this study: observation experiment and replay experiment. In the observation experiment, Internet-connected sandbox to receive real commands from actual C&C servers is used to understand the tendency/trend of attacks including attack targets and frequency. In the replay experiment, a dummy C&C server with accumulated C&C commands collected during the observation experiment is used so that replay of attacks would be possible and can be observed in detail. Moreover, in the replay experiment, bare-metal IoT devices are used to measure the volume of DoS attacks. This paper proposes a method of observation and analysis of IoT cyber-attacks which has become a major threat in recent years. As a future task, improvement of the observation system is necessary so that vulnerability attack of more IoT devices can be observed. And since the volume of collected data is enormous, we should consider the methods for analyzing big data.
Finally, as research results of this study:
An Analysis of Attacks via Telnet Targeting IoT Devices (Chapter 3)
1) In order to get an understanding of the actual situation of IoT cyber-attacks, Telnet login challenges targeting IoT devices were analyzed. Of the newly observed ID/password sets, it was confirmed that some are used for large-scale attacks after several months. From this, it was determined that continually observing Telnet
ID/password could help find possible ID/password sets that will be used for large scale attacks at an early stage.
2) As a result of dynamic analysis on 140 IoT malware samples, the number of ID / password sets used for Telnet login challenge is at least 2 sets and most 146 sets, which is a relatively small number. In addition, the malware's ID/password list and the shell command sequence are not necessarily mapped 1 to 1. Using the same ID/password in attacks can have different shell commands after login. Also, attacks with different ID/passwords can have the identical behaviors after login.
Observation of DDoS attacks from IoT malware using sandbox analysis (Chapter 4)
3) Actual conditions of the IoT DDoS attacks, which is a social issue, have been observed and analyzed using 2 types of experiments, observation experiment which is connecting to an actual C&C server, and replay experiment which uses a dummy C&C server. In particular, a method of detailed observation was shown of a DoS attack in the application layer by preparing a target server for receiving attacks in the replay experiment.
4) In the replay experiment, the volume of DoS attacks using bare-metal IoT devices with vulnerability to malware infection was measured. The result showed that even low-cost devices can generate around 100 Mbps traffic for attack.
In conclusion, it is expected that the results of this research can improve the security of IoT networks.
Table of Contents
LIST OF FIGURES ... XI LIST OF TABLES ... XIII
第 1 章. 緒論 ... 14 1.1. IOT デバイスに対するサイバー攻撃 ... 14 1.2. 研究の⽬的 ... 15 1.3. 研究の貢献 ... 16 1.4. 本論⽂の構成 ... 17 第 2 章. 研究の背景と関連研究 ... 18 2.1. マルウェア ... 18 2.2. サイバー攻撃の観測 ... 19 2.3. マルウェアの動的解析 ... 20 2.4. 従来研究との区別 ... 21 第 3 章. IOT デバイスへの TELNET を⽤いたサイバー攻撃の分析... 22 3.1. はじめに ... 22 3.2. TELNETプロトコルと 23/TCP への攻撃 ... 23 3.3. 提案⼿法 ... 24 3.4. 実験 ... 28 3.5. 関連研究 ... 40 3.6. まとめと今後の課題 ... 41 第 4 章. IOT マルウェアによる DDOS 攻撃の動的解析による観測と分析 ... 42 4.1. はじめに ... 42 4.2. 関連研究 ... 44 4.3. IOT マルウェアの動的解析による DOS 攻撃の観測と分析 ... 44
4.4. 解析環境 ... 46 4.5. 実験 ... 48 4.6. 考察 ... 62 4.7. まとめと今後の課題 ... 63 第 5 章. 総括 ... 64 謝辞 ... 65 参考⽂献 ... 66 公表論⽂リスト ... 70 付録 ... 73
List of Figures
図 1.4.1 論文の構成 ... 17 図 3.2.1 Telnet による IoT 機器への攻撃の流れ ... 24 図 3.3.1 ハニーポットによる観測の概要図 ... 25 図 3.3.2 マルウェア動的解析環境 ... 27 図 3.4.1 ログイン拒否ハニーポットにログイン試行を行った攻撃ホスト数 の時間推移 ... 29 図 3.4.2 ログイン拒否ハニーポットで観測されたユニーク ID/パスワード 数の時間推移 ... 30 図 3.4.3 2015/12/18 に新たに出現した ID/パスワードの内大規模な攻撃に使 用されたものの攻撃ホスト数の推移 ... 32 図 3.4.4 2016/04/24 に新たに出現した ID/パスワードの内大規模な攻撃に使 用されたものの攻撃ホスト数の推移 ... 32 図 3.4.5 2016/06/01~02 に新たに出現した ID/パスワードの内大規模な攻撃 に使用されたものの攻撃ホスト数の推移 ... 33 図 3.4.6 2016/03/20 に新たに出現した ID/パスワードの内大規模な攻撃に使 用されたものの攻撃ホスト数の推移 ... 33 図 3.4.7 2016/04/05 に新たに出現した ID/パスワードの内大規模な攻撃に使 用されたものの攻撃ホスト数の推移 ... 34 図 3.4.8 ログインチャレンジに要する時間 ... 35 図 3.4.9 pattern_F,G と対応するコマンド群の形式(XXX.XXX.XXX. XXX は IP アドレス) ... 35 図 3.4.10 pattern_a,b,c,d,e,F,G を用いてログイン拒否ハニーポッ トに対して攻撃を行ったホスト数の推移 ... 39 図 4.3.1 ハニーポットによるマルウェア入手方法 ... 45 図 4.4.1 マルウェア解析環境 ... 46 図 4.4.2 長期解析環境 ... 48図 4.5.1 同一 IP アドレスレンジ C&C サーバの分布情報 ... 54 図 4.5.2 DDoS 攻撃対象の所属業種 ... 56 図 4.5.3 攻撃を行ったマルウェア検体の長期解析結果 ... 57 図 4.5.4 Dos 攻撃時の通信流量 ... 61 図 4.5.5 パラメータ種類一覧 ... 61 図 4.5.6 パケット長とパケット送信インターバルに変更を加えた命令で攻 撃時の通信流量 ... 62
List of Tables
表 3.3.1 IoT 機器を模擬する情報 ... 26 表 3.4.1 新たに出現した ID/パスワードセットの内出現日以降大規模な攻撃 に使われたものの占める割合 ... 31 表 3.4.2 動的解析によって得られた ID/パスワードリストとコマンド系列 の対応表 ... 37 表 3.4.3 pattern_a,b,c,d,e,F,G の ID/パスワードセットリスト ... 38 表 4.4.1 解析用の実機情報 ... 47 表 4.5.1 実験対象のマルウェア情報 ... 50 表 4.5.2 実験対象のマルウェア検体の検知名 ... 50 表 4.5.3 C&C サーバの国情報 ... 52 表 4.5.4 C&C サーバの AS 情報 ... 52 表 4.5.5 同一 IP アドレスレンジにある C&C サーバの情報 ... 53 表 4.5.6 観測した Telnet スキャンの動作命令の一覧 ... 54 表 4.5.7 観測した DoS 攻撃の動作命令一覧 ... 55 表 4.5.8 DDoS 攻撃対象の国情報 ... 56 表 4.5.9 各ダミー命令に対する検体グループの反応 ... 59 表 4.5.10 各ダミー命令に対するマルウェアの攻撃特徴 ... 59第
1
章
.
緒論
1.1. IoT
デバイスに対するサイバー攻撃
今や,インターネットにつながらない機器のほうがめずらしくなった.近年,様々な機 器がインターネットに接続され,多様なサービスを提供するモノのインターネット(IoT) [22]が注目されている.家庭用ルータ,冷蔵庫,洗濯機,プリンターなど多様のデバイ スがインターネット接続用インタフェースを持っている.総務省発表の「平成28 年版 情 報通信白書のポイント」[53]によると,IoT デバイスは 2020 年までに約 304 億個(2015 年時点の 2 倍)まで増加すると予測されている.IoT はつながることで新しい価値を生 み出せる優位性を持つ反面,安全に対する対策が不十分であることが分かっている. パソコンとは異なり,キーボードやディスプレイなどを備えないものが多く,リソースも 貧弱な IoT デバイスでは,セキュリティ対策も不十分な場合が多い.IoT デバイスが抱 えるセキュリティリスクを以下にまとめる[54][56]. l ライフサイクルが長い 工場で使用される制御機器等に対して,使用期間は 10 ~20 年程度のものが多く 存在している[55].IoT デバイスは 10 年以上の長期にわたって使用されるものも多く, 時間の経過と共に,システム構築時のセキュリティ対策では不十分となった状態で接 続され続ける可能性がある. l 管理・監視が困難 IoT デバイスの多くはパソコンのようなディスプレイや監視プロセスがないことから, 人による管理・監視が難しい. l 脅威の範囲・被害が大きい IoT デバイスといっても,対象は自動車,家電,医療器具,工場の制御機器とさまざ まで,サイバー攻撃の影響範囲も情報漏洩から人命に危険を及ぼすものまで広く考え られる. l ネットワーク対策が不十分 IoT デバイス側とネットワーク側それぞれが有する環境や特性が相互間で十分に理 解されておらず,IoT デバイスがネットワークに接続することによって,所要の安全性を 満たすことができなくなる可能性がある.l 機器自身の脆弱性 各 IoT デバイスはコストの都合によって,最小限のハードウェアリソースしか積んで おらず,十分なアクセス制御や暗号化対策が後付けで行えない場合が多くある.また, 医療機器のように機器の変更が認可上難しい場合もある.加えて,デフォルト設定の ままで動作する場合やファームウェア・ソフトウェアの更新を行わない場合,インターネ ットから外部侵入・データ改ざんが発生する恐れがある. 当然ながら,サイバー犯罪者たちはIoT デバイスも攻撃対象の1つと見なし,IoT デ バイスを狙ったサイバー攻撃が急激に増加している[26][27][28].2016 年 9 月,著名 なセキュリティ情報ブログ「Krebs on Security」[57]が,DDoS 攻撃(Distributed Denial of Service attack)の被害に遭い,サーバがダウンした.問題はその攻撃の規模で,同サ イトに向けて665Gbps もの帯域が DDoS 攻撃に使われたとみられ,これは当時史上最 大規模のものだった.攻撃に使われたボットネットは Mirai というもので,主にルータ, ネ ッ ト ワ ー ク カ メ ラ , デ ジ タ ル ビ デ オ レ コ ー ダ ー (DVR ) な ど ボ ッ ト 化 し た IoT デバイスから組成された[60].また,DNS サービスを提供する米 Dyn が 2016 年 10 月 21 日(米国時間)に同じく大規模な DDoS 攻撃を受け,同社の顧客である「Twitter」や 「Spotify」「Reddit」などのサービスが利用できなくなる事件が発生した[61].文献[28]に よると,2016 年第四半期に観測された 100 Gbps を超える大規模攻撃の数は,前年同 四半期と比較して140 %増加し,そのうち 3 件は 300 Gbps 以上の攻撃規模であり,マ ルウェア感染した IoT デバイスが DDoS 攻撃トラフィックの主な発信元であると報告さ れている.また,文献[72]では,2017 年第 3 四半期の観測レポートにより,Mirai ボット ネットが100 Gbps を超える 2 つの攻撃が発生したことが報告されており,IoT ボットネッ トによる攻撃が引き続き脅威となっている.
1.2.
研究の目的
1.1 節に述べたように,IoT デバイスの大量感染が深刻化しており,マルウェア感染 した機器を悪用した大規模サービス妨害攻撃(DDoS)が顕在化している.今後,IoT デバイスはますます応用領域が広がると思われ,自動運転車や医療機器などが IoT 化された場合,サイバー攻撃は人命を危険にさらすことにもつながりかねない.そのた め早急に IoT セキュリティにおける取り組むべき課題を整理し,対策を打つべきである. しかし,IoT におけるセキュリティの調査研究は十分ではない.そこで,本研究は,IoT におけるサイバー攻撃の観測・分析を行い,攻撃の動向などの全体像を把握すること を目的とした.1.3.
研究の貢献
IoTマルウェアによるTelnetサービスに対する攻撃の観測・分析(第3章) 第一に,遠隔操作するための Telnet サービスが不正侵入やマルウェア感染の大き な原因となっている.そこで,IoT デバイスへの Telnet を用いたサイバー攻撃を分析し た.攻撃者からのログインチャレンジを拒否し続けるハニーポットと,ログインを許可す るハニーポットを併用することで ID/パスワードの観測とログイン後のシェルコマンドの 両方を観測した.新たに観測されるID/パスワードの内,一部のものが数ヶ月後に大規 模な攻撃に利用される事例を多数確認でき,このことから ID/パスワード観測を継続す ることで将来的に大規模攻撃に使用される ID/パスワードを早期に発見できる可能性 があることが分かった. 第二に,140 検体の IoT マルウェアについて動的解析を試みた結果,各マルウェア 検体が攻撃に利用する ID/パスワードは少ないもので 2 組,多いものでも 146 組であ り,比較的少数であることがわかった.またマルウェアが保持する ID/パスワードリストと その後のシェルコマンド系列は必ずしも 1 対 1 対応ではなく,同一の ID/パスワードリ ストを用いた攻撃でも,ログイン後に使用するシェルコマンドが異なる場合や,逆に, 異なる ID/パスワードリストを用いた攻撃でもログイン後の挙動が同一である場合が確 認された. 感染したIoTデバイスによるDDoS攻撃の観測・分析(第4章) 第三に,実C&C サーバとの接続による攻撃観測実験とダミーC&C サーバによる攻 撃再現実験の組み合わせにより,社会的な問題となっている IoT マルウェアによる DDoS 攻撃の実態を観測・分析した.特に,攻撃再現実験においてサービス妨害攻撃 を受信するための犠牲サーバを用意することで,特にアプリケーションレイヤのDoS 攻 撃の詳細観測を行う手法を示した. 第四に,IoT マルウェアに感染する脆弱性を有する実機を用いて攻撃再現実験に よる攻撃の流量測定を行い,安価な機器であっても 100Mbps 程度の通信を発生させ られることを明らかにした. また,社会問題となっているIoT マルウェアによる攻撃の具体的な対策への応用に 力になった.攻撃に利用されている ID/パスワードの観測により,実際の IoT マルウェ アが攻撃されているリモートログイン用 ID/パスワードリストを用いて,デバイスの IoT マ ルウェア攻撃耐性を診断する “IoT マルウェア攻撃耐性診断ツール”を作成した.そし て,継続的に特定機器を狙った新規 ID/パスワードの観測により,対策組織やメーカ ーに早期警戒情報の提供が可能である.また,DoS 攻撃の詳細観測,特にアプリケー ションレイアの観測で,攻撃時利用するヘッダー情報などをシグネチャとしてDoS 対策製品に利用されると考えられる.最後では解析実機群により,DoS 攻撃流量の測定を 行った.この結果を用いて,Darknet と M-lab[94]の観測結果と突合することで,DoS 観 測の規模推定ができた.こういうことで,潜在的な将来の攻撃量が推定できるために, 必要なDoS 対策の強度も推定できる. 最後に,本研究の成果がIoT デバイスの安全性や IoT ネットワークのセキュリティ向 上の一助になることを期待する.
1.4.
本論文の構成
本論文の構成を図1.1 に示す.2 章では,背景として,これまでのマルウェアの歴史 やボットネット研究に有用な観測手法,及びマルウェアの動的解析について概説する. また,関連研究についても述べる. 3 章では,IoT デバイスへの Telnet を用いたサイバー攻撃の分析を行う.この研究 は情報処理学会推薦論文として,情報処理学会論文誌(Vol. 58, No. 9, 2017)に発表 されている. 4 章では,IoT マルウェアによる DDoS 攻撃の動的解析による観測と分析の研究を 行う.この研究は情報処理学会論文誌(Vol. 59, No. 5, 2018)に発表されている. 5 章では,本稿の内容を総括し,今後の課題を述べる. 図 1.4.1 論文の構成 TS 1 4 D 5 23 D I 23第
2
章
.
研究の背景と関連研究
2.1.
マルウェア
マルウェア(Malware)とは不正かつ有害な動作を行う意図で作成された悪意のある 悪質なコードやソフトウェア,ハードウェアの総称である.
人類初めてのマルウェアは,1971 年 BBN 社の Bob Thomas がインターネットの原
型であるARPANET に放ったプログラム Creeper と言われている[64].Creeper は自分
自身のコピーをリモートシステム上に生成し,“I'M THE CREEPER : CATCH ME IF YOU CAN”というメッセージを表示するプログラムであった.1970 年代では,多くのマ ルウェア作成者が愉快犯で,自分の能力をアピールすることを重視した.1980 年代中
盤から 1990 年代中盤にかけては,マルウェアの多種多様な機能が開発され,「実験
的試行の時代」であった.1990 年代中盤以降,悪い性質のマルウェアが急増加した. ワームによる大規模感染も発生した.有名なのは,Sobig や MyDoom, NetSky, Sasser があった[65].2004 年頃から,マルウェアに感染しているコンピュータ群(ボットネット) が同期して活動する様子が世界中で観測され始めた.マルウェアの革新技術「ボット ネット」の登場である.初期のボット(Sdbot,Agobot,Rbot など)は感染形態としてはワ ームであり,リモートからの脆弱性攻撃や,Windows ファイル共有などを利用して拡散 し,感染後は特定のIRC サーバに接続して指令者(以降は C&C サーバ)からの制御 命令を待ち受ける.C&C サーバは攻撃命令を膨大な数のボットに一斉に送信すること が可能であり,このボットネットを利用した数々の不正行為が,日々発生するようになっ た[66].ボットネットの登場以降,マルウェアは急速に高度化・巧妙化していった. 「ZBOT」は,そうしたボットネットの中でも特に悪質なものとして有名である.通常,スパ ムメールやユーザが誤って不正サイトからダウンロードすることにより侵入する.オンラ イン銀行のユーザを標的にしていて,フィッシングサイトに誘導して個人情報を収集す るという手口であった.また,P2P 型の ZeroAccess ボットネットも 2012 年に発見された. ボットネットの管理者が収益を上げるため,「pay per click」広告を介してお金儲けたり,
ボット化したマシンを利用してBitcoin マイニングをするなどタスクが実行された[67]. 近年は IoT マルウェアが流行している.よく知られているのは Mirai と呼ばれるボッ トネットである.2016 年末から世界的に感染が広がった.米国では DNS サービス大手 の Dyn が標的にされ,同サービスを利用していた Twitter,Spotify,Netflix,ウォール ストリートジャーナルなどメジャーなWeb サービスが一時的に利用できなくなった.この DDoS 攻撃の踏み台にされたデバイスの多くが,IP カメラやその録画装置である NVR (ネットワーク・ビデオ・レコーダ)だった.当時は数千万台のデバイスが感染し,「過去 最大級の DDoS 攻撃」とレポートされた.また,Mirai のソースコードが公開され,
Tsunami,Satori など多数の亜種も登場した.デフォルトの Telnet サービスログイン情
報を利用して IoT デバイスを乗っ取る Mirai と異なり,新たな IoT ボットネット –
"IoT_reaper" が機器の脆弱性を突いて,既に数百万台規模の IoT デバイスに感染し ていると指摘されており[68],IoT マルウェアも高度化している.
2.2.
サイバー攻撃の観測
サイバー攻撃の観測手法は大きく分けると,能動的観測と受動的観測の2 つがある [88]. 能動的観測手法 能動的観測手法は,グローバルスキャンによる積極的に情報を収集と分析すること を指す.スキャンの目的に応じて,一般にフィンガープリント,脆弱性の検出と悪意サ ーバの検出の3 つに分類できる. フィンガープリントスキャンには,バナー取得,OS タイプ推定[76],ポートスキャン, ロケーション確認,Whois チェック及び逆 DNS 技術などが含まれる.代表的なツール として,Nmap[73]がある.また,全 IPv4 アドレスを 5 分以内でスキャン可能な超高速ス キャンツール Zmap[74]や masscan[75]が提案された.加えて,近年,インターネットに 接続される制御系機器や IoT デバイスの数が増加し,それを検知対象とする Shodan プログラム[77]も登場した. 脆弱性検出のスキャンの場合,SQL インジェクションや Web サーバ上で実行される Wrodpress,Joomla などの Web アプリケーションの脆弱性を検出するための Web クロ ール[78][79]や Heartbleed スキャナ[82]などが存在する. 悪意サーバの検出の代表的な手法として,クライアントハニーポットがある.クライア ントハニーポットは脆弱な Web クライアント,または,それを模擬したシステムにより検 査対象の Web サイトにアクセスし,攻撃されるかを確認することで悪性サイトを検知・ 分析する技術である.また,マルウェアボットネットの C&C サーバを検知するために, 動的解析で得られたマルウェアの最初のペイロードを使用するスキャン手法もある[81]. 受動的観測手法 不正アクセスの手法やその傾向の観測・分析するため,サイバー攻撃を広域的な 把握する手段として,ハニーポットやダークネット観測といった受動的観測が主流であ る.ダークネットは未使用の IP アドレス帯へ届く通信を観測する[83][84][85].ハニー ポットはこれらの IP アドレス帯にセキュリティ上脆弱なシステムや脆弱なシステムを模 擬するプログラムを囮として動作させることで攻撃を観測する手法である[86][87].また, 想定する攻撃に応じて,ハニーポットが模擬するシステム,サービスなどが異なる.Web サーバ,SSH サーバ,SIP サーバ,制御系システム,IoT デバイスなどを模擬する ハニーポットが多数存在している.また,実現方法によって分類すると,高対話型ハニ ーポットと低対話型ハニーポットがある.高対話型[92][93]は実際に脆弱性を残した本 物の OS やアプリケーションなどをハニーポットとして利用する.本物を使う分,高度な 情報を得ることができるが,侵入されたときのリスクが高い.低対話型[89][90][91]は特 定のOS やアプリケーションをエミュレートする.エミュレートした範囲に機能が制限され るので高対話型に比べ比較的安全に運用が出来る.ただ,機能を限定しているので 情報量は落ちてしまう可能性がある.
2.3.
マルウェアの動的解析
マルウェアの解析は主に静的解析と動的解析にわかれる.静的解析手法とはリバ ースエンジニアリング等の技術を使って,対象のマルウェア検体の機能や構造などを 詳細に調査する.静的解析はソフトウェア開発の経験やバイナリ解析などの技術を必 要とし,基本的に大きなコストがかかる. 一方,動的解析手法は,マルウェアをプログラムとして実行して解析し,マルウェア の振舞いを解析者に提示する技術である.動的解析手法は多く仮想的な実験環境上 で行い,システムコールの呼び出しやネットワーク通信情報などを入手する.静的解析 手法と比べると短時間で容易に挙動を把握することができる.2.3.1. サンドボックス
動的解析を行う時に,よく使われるツールはサンドボックスである.Cuckoo サンドボ ックス[69],Norman サンドボックス[70]や CW サンドボックス[71]が有名である.サンド ボックスは,「攻撃されてもよい環境」であり,仮想環境として構築し,その中でマルウェ アを動作させ,振る舞いや通信トラフィックを詳細に分析する.2.3.2. 動的解析手法・技術
動的解析にはインターネットから隔離の実験環境でマルウェアを実行し,挙動を分 析する隔離型動的解析手法とインターネットと接続するネットワーク接続型動的解析 手法である. 隔離型動的解析手法隔離型動的解析手法では,マルウェアから実インターネットへの通信要求を許可し ない.クロックするか,ダミーサーバへ転送する方法を適用する.
論文[62]で紹介された nicter のマルウェア解析システムは隔離型動的解析システム と該当する.nicter(Network Incident analysis Center for Tactical Emergency Response) は,NICT のネットワークセキュリティ研究所が開発した攻撃トラフィックの観測・分析シ ステムである.論文では nicter のマルウェア解析システムについて説明されている.こ のシステムでは,完全にインターネットから隔離の環境でマルウェアの挙動を分析して いる.また,仮想マシンを検知して動作を変更するマルウェアに対抗するため,仮想化 技術を用いず実機を用いたマルウェア実行環境を適用している. ネットワーク接続型動的解析手法 近年,マルウェアの多くは実行されたとたん,インターネット導通テストをし,インター ネット接続ではない環境で,本来の挙動を示さない場合が多い.そこで,ネットワーク 接続型動的解析手法[37][38][39][63]をしなければならない. 論文[63]では,ネットワーク接続型の解析システムを提案している.ほぼ隔離状態 から解析を開始し,解析終了後に観測されたトラヒックを分析することで,危険性の低 い通信を判別し,当該通信についてはインターネットへの通信を許可した上で再度, 同様の検体の解析を行う解析手法を提案している.
2.4.
従来研究との区別
従来研究はほとんどWindows 系や Linix などサーバ系 OS に向いている.ローイン タラクションのハニーポット(いわゆるスクリプトなどでサービスを模擬する)で攻撃の観 測を行う場合が多い.しかし,IoT デバイスは多種多様で,サービスを模擬するのみで は不十分である.IoT マルウェアが機器の CPU などの情報を確認し,対応するマルウ ェアをダウンロードさせるため,ローインタラクションハニーポットで収集できるマルウェ アの種類に限りがある.そこで,本研究はARM, MIPS, MIPSEL の 3 つの CPU アーキテクチャをエミュ
レートしており,OS はそれぞれフリーの Linux ディストリビューションである Debian[45]が動作している.多くのアーキテクチャ向けにリリースされている Debain を用いることで,今後異なる CPU アーキテクチャ向けにハニーポットや サンドボックスを拡張することも可能である.また,4 種類の脆弱性を有する IoT デバイスを用いて,実機ハニーポットを構築することで,リアルな環境で IoT マルウェアを収集する.
第
3
章
. IoT
デバイスへの
Telnet
を用いたサイバー攻
撃の分析
IoT 機器の中には Telnet サービスが動作し,容易に推測可能な ID とパスワードで ログインができるものが大量に存在しており,この状況を悪用したサイバー攻撃が多数 観測されている.第3章ではTelnet を利用したサイバー攻撃において,特にログインチ ャレンジとログイン成功後に使用されるシェルコマンド系列に着目した分析を行う.特 にハニーポットにより観測される攻撃とハニーポットにより収集したマルウェアの動的解 析により観測される攻撃を突合することで,攻撃元のマルウェアの識別を行い,マルウ ェア流行の状況把握を試みる.また,攻撃に利用される ID/パスワードを調べることで 攻撃目標となっている機器の種類が増加傾向にあることを示す.3.1.
はじめに
近年,様々な機器がインターネットに接続されるようになり,このような状態はモノの インターネット(IoT)と称される.これらの IoT 機器では遠隔操作のための Telnet サービ スが動作し,外部からアクセスできる状態になっている場合がある.さらに,Telnet によ るログインに必要な認証情報である ID とパスワードは容易に推測可能であることが多 く,不正侵入やマルウェア感染の原因となっている. 我々は上述のような脆弱な IoT 機器を模擬するハニーポットを,2015 年 5 月以降 継続的に運用し,IoT 機器へのサイバー攻撃の観測を行っているが,ハニーポットによ り観測されるログインチャレンジやログイン成功後に使用されるシェルコマンドの詳細 な分析は実施していなかった. 3章では Telnet を利用したサイバー攻撃において,特にログインチャレンジに使用 される ID/パスワード情報とログイン成功後に使用されるシェルコマンドの分析を行う. 具体的には,攻撃者からのログインチャレンジを拒否し続けるハニーポットと,ログイン を許可するハニーポットを併用することで ID/パスワードの観測とログイン後のシェルコ マンドの両方を観測する.加えて,ハニーポットにより収集されたマルウェア検体を動 的解析し,サンドボックス内でログインチャレンジとシェルコマンドを確認する. 140 検体のマルウェアについて動的解析を試みた結果,各マルウェア検体が攻撃 に利用するID/パスワードは少ないもので 2 組,多いものでも 146 組であり,比較的少 数であることがわかった.またマルウェアが保持する ID/パスワードリストとその後のシェ ルコマンド系列は必ずしも1 対 1 対応ではなく,同一の ID/パスワードリストを用いた攻 撃でも,ログイン後に使用するシェルコマンドが異なる場合や,逆に,異なる ID/パスワ ードリストを用いた攻撃でもログイン後の挙動が同一である場合が確認された.さらに,ハニーポットにより観測される ID/パスワードの種類は増加を続けており,より多くの機 器が攻撃対象となっていることがわかった.特に新たに観測された ID/パスワードから 攻撃対象となったIoT 機器を推定できる場合はあることがわかった.
3.2. Telnet
プロトコルと
23/TCP
への攻撃
3.2.1. 23/TCP への攻撃の観測
Telnet とはネットワークを通じて別のコンピュータを遠隔操作するためのリモートアク セスプロトコルの一つであり,ポートは通常 23/TCP が使用される.Telnet を介してコン ピュータにログインする際には認証情報として ID/パスワード情報の入力が求められる. IoT 機器ではこの Telnet サービスが動作し,外部からアクセスできる状態になっている 場合がある.さらにTelnet によるログインに必要な認証情報である ID とパスワードは容 易に推測可能であり,インターネット上で公開されていることも多く,不正侵入やマルウ ェア感染の原因となっている. 我々は上述のような脆弱なIoT 機器を模擬するハニーポットを 2015 年 05 月 01 日 ~ 2016 年 01 月 31 日の期間継続的に運用し,IoT 機器へのサイバー攻撃の観測を行 ってきた[1][2][3][4][5][6].その結果,観測期間内において 140 IP アドレスに設置した ハニーポットにおいて累計 267,925 ホストのアクセスを観測した.その内 Telnet ログイ ンに成功したホストは 199,386 ホストであり,その内外部からマルウェアのダウンロード を試みたホストは145,814 ホスト存在しており,実際に IoT 機器に対し,Telnet を利用 した攻撃が行われていることが確認できた.3.2.2. Telnet を介した IoT 機器への攻撃の流れ
Telnet を介した IoT 機器への攻撃の流れの一例(図 3.2.1)を説明する.攻撃者(マ ルウェア感染したIoT 機器である場合が多い)は,まず 23/TCP ポートに対してネットワ ークスキャンを行いTelnet が動作している機器を探す.23/TCP が開いている機器を見 つけると,内蔵する ID/パスワード情報を使用してログインチャレンジを開始する.ログ インに成功すると,Telnet 経由でシェルコマンドを実行して不必要なコマンドの削除や カスタマイズコマンドの準備等の環境を整え,マルウェアのダウンロードを試みる.マル ウェアをダウンロードする際,まずマルウェアダウンロードサーバからシェルスクリプトを ダウンロードする.こうしてダウンロードされたシェルスクリプトにはマルウェアのバイナリ ファイル,即ちマルウェア本体をダウンロードし実行するコマンドが記述されており,こ のスクリプトを実行することでマルウェア本体をダウンロードし,これを実行する.こうしてマルウェアに感染した機器は C&C からの動作命令を受け,感染拡大の為のスキャ ンや,DoS 攻撃などの種々の攻撃を行う. 図 3.2.1 Telnet による IoT 機器への攻撃の流れ
3.3.
提案手法
3.3.1. 概要
前章で示したように,現在IoT 機器の多くが Telnet を介してマルウェアに感染し,攻 撃に利用されている.そこでTelnet に対しログイン試行を行う際に認証情報として使用 される ID/パスワード情報と,Telnet ログイン成功後に侵入先の機器内で実行されるシ ェルコマンドに着目した分析を行い,IoT 機器に対するサイバー攻撃の状況を分析す る. 特に本研究においては l 攻撃目標となっている機器の種類が増加していることを示す l 攻撃に頻繁に利用される ID/パスワードを迅速に検知する l 攻撃元のマルウェアの識別を行う 以上を目的とする.具体的には l ハニーポットにより観測される攻撃の分析 l マルウェア動的解析により観測される攻撃の分析を組み合わせて考察を行う.3.3.2. ハニーポットによる観測
本節では,ハニーポットにより観測された攻撃を攻撃元ホスト単位で分析する手法 について述べる.ハニーポットによる攻撃の観測では,攻撃ホストが Telnet にログイン を試みる際に使用するID/パスワードを収集することと Telnet ログイン後に攻撃ホストが 実行するシェルコマンドを収集することを目的としており,それらを達成する為に 2 種 類のハニーポットを用意する.ハニーポットによる観測の概要図を(図 3.3.1)に示す. 図 3.3.1 ハニーポットによる観測の概要図 まず1つ目のハニーポットについて説明する.組み込み機器に Telnet ログイン試行 を行う際,攻撃者はTelnet ログインに成功するか,自らが保持する ID/パスワードセット を使い果たすまでログインを繰り返すと予想される.そこでいかなる ID/パスワードを使 用したログイン試行に対してもログインを拒否するハニーポット,即ち“ログイン拒否ハ ニーポット”を用意する. もう一つは,いかなる ID/パスワードを使用したログイン試行に対してもログインを許 可するハニーポット,即ち“ログイン許可ハニーポット”である.ログイン許可ハニーポッ トでは,攻撃者に Telnet ログインを成功させることで,ログイン後に実行するコマンドを 収集する.また,収集したコマンドを分析し,マルウェアをダウンロードするコマンドを抽 出,実行することでマルウェアの収集も行う. ログイン許可ハニーポットでは,攻撃者からのコマンドに対して応答を返す必要が ある.そのため,各コマンドに対して応答する内容をプロファイルとして保持している. 今回の実験では,CPU 情報や使用するシェルは(表 3.3.1)のものを用いた.シェルは ハニーポット 攻撃 ホスト ログイン拒否ハニーポット: 全てのID/パスワードに対し telnetログインを拒否 ログイン許可ハニーポット: 全てのID/パスワードに対し telnetログインを許可 1.ID/パスワードを 送信 2. ログインを拒否 3. 別のID/パスワード を送信 1. ID/パスワードを 送信 2. ログインを許可 3. コマンドを送信 root/root root/admin root/user …… 4. コマンドに対する 応答を送信 cd /tmp || rm -rf *; busybox wget http://………. 実行されるコマンドを収集 ID/パスワードセットを収集Busybox [7] を使用しているものとして応答内容を設定した.Busybox は多数の UNIX コマンドを一つの実行ファイルに纏めたプログラムであり,複数のコマンドをそれぞれイ ンストールするよりも遥かに小さい容量になるよう設計されているため,リソースの少な い組み込み機器においてよく使用されている.CPU 情報は組み込み機器向けの CPU アーキテクチャであるARM [8] を使用しているものとして設定した. 表 3.3.1 IoT 機器を模擬する情報
3.3.3. マルウェア動的解析による分析
この節では,前述したログイン許可ハニーポットによって収集されたマルウェアを動 的解析することでマルウェア検体毎の攻撃の分析を行う. 使用するマルウェア解析環境を図 3.3.2 に示す.解析環境は,実際にマルウェアを 動作させる仮想環境,通信制御部,ログイン拒否ハニーポット,ログイン許可ハニーポッ ト , ダ ミ ーC&C サ ー バ か ら 構 成 さ れ る . 仮 想 環 境 で は ARM[8] , MIPS[9] ,
MIPSEL[9],PowerPC[10],SPARC[11]の 5 つの組み込み機器向け CPU アーキテク チャをエミュレートしており,OS はそれぞれフリーの Linux ディストリビューションである Debian[12]が動作している.通信制御部では仮想環境からの通信のフォワーディング や外部への通信のフィルタリングを担う.ログイン拒否ハニーポットとログイン許可ハニ ーポットは 3.3.2 項で説明したものと同じものであり,マルウェア検体毎の ID/パスワー ドや Telnet ログイン後に実行されるコマンドの収集を行う.ダミーC&C サーバは実 C&C サーバの挙動を模擬したスクリプトであり,通信制御部はマルウェアから実 C&C サーバへの通信をダミーC&C サーバにフォワーディングし,逆にダミーC&C サーバか らの命令を実 C&C サーバに代わってマルウェア側に転送する.ダミーC&C サーバが 模擬する情報 内容 備考 BusyBox v1.1.2 (2007.05.09-01:19+0000) Built-in shell (ash) Enter 'help' for a list of built-in commands. sh cpu Processor : ARMv7 Processor rev 0 (v7l) BogoMIPS : 1849.75
Features : swp half fastmult edsp CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x3 CPU part : 0xc09 CPU revision : 0 Hardware : godarm Revision : 0000 Serial : 0000000000000000 /proc/cpuinfo
送信するスキャン開始命令は,事前に各マルウェアを実 C&C サーバと通信させること で収集しておく.こうすることで解析実行時の実 C&C サーバの状態によらずマルウェ アにスキャンを開始させることができる.解析の流れを以下に示す. 1)仮想環境上でマルウェアを実行する 2) マルウェアから C&C サーバ宛の通信を確認した場合,ダミーC&C サーバにフ ォワーディングする 3)ダミーC&C サーバは仮想環境に動作命令を送信する 4)動作命令を受けたマルウェアは23/TCP スキャンを開始する 5)通信制御部は23/TCP 宛のスキャンパケットの一部をログイン拒否ハニーポットと ログイン許可ハニーポットにそれぞれフォワーディングする 6)ログイン拒否ハニーポットではマルウェアがログイン試行の際に使用するID/パス ワードを,ログイン許可ハニーポットではログイン成功後に実行するシェルコマンドを収 集する 図 3.3.2 マルウェア動的解析環境 C&Cサーバ ダミーC&C 通信制御部 仮想環境 ログイン拒否 ハニーポット ログイン許可ハニーポット 解析環境 解析環境スペック 7 / 6C HIL 30 ホストマシン A G ( 4G CE CHG / 1 ( ( 23M 2. . - 6 64 64 15 / BCAD@G 16 (6. (2. - / BCAD@G ( 16 )6. 2.
3.3.4. 攻撃ホストの感染マルウェアの推定
ハニーポットによる観測とマルウェア動的解析によって集められた情報を利用して 攻撃ホストが感染しているマルウェアの推定を行う.推定の手順は以下のようになる. 1)ハニーポットによる観測によって攻撃ホスト毎にID/パスワードリストを収集 2)マルウェア動的解析によりマルウェア毎に ID/パスワードリストとログイン後に実行 するシェルコマンドを収集 3)ID/パスワードリストを使用して攻撃ホストとマルウェアを対応させ,グループ化を 行う 4)3)の結果より攻撃ホストが感染しているマルウェアを推定する それぞれの手順について説明する.手順1),2)についてはそれぞれ 3.3.2,3.3.3 節に示したものである.手順3)では,手順1)によって得られた攻撃ホスト毎の ID/パス ワードリストと手順2)によって得られたマルウェア毎の ID/パスワードリストを比較し一致 するものを同じグループとしてグループ化していくことで攻撃ホストとマルウェアを対応 させる.手順4)では結果から攻撃ホストが感染しているマルウェアの推定を行う.同じ マルウェアに感染したホストは同じ ID/パスワードを利用してログイン試行を行い,ログ イン後に実行するコマンドも一致すると考えられることから,この方法によって攻撃ホス トの推定を行うことができる.マルウェアによってはログイン試行に同じ ID/パスワードリ ストをしているがログイン後に実行するコマンドが違うものや違う ID/パスワードリストを 使用しているがログイン後に実行するコマンドが同じものなどが存在することが考えら れるが,これらについてもある ID/パスワードリストを使用してログイン試行を行ってきた 攻撃ホストに対して感染マルウェアの候補となるマルウェアを示すことができる.また, それぞれのグループについてハニーポットへ攻撃を行ってきたホスト数の分析を行うこ とでその時点で流行しているマルウェアの推定を行うことができる.3.4.
実験
3.4.1. 概要
提案手法を用いた観測実験の概要を示す.ハニーポットによる観測については,ロ グイン拒否ハニーポットに 10 IP アドレスを割当て 2015/11/15 ~ 2016/07/05 の期間稼 働させ,ログイン許可ハニーポットに130 IP アドレス を割当て 2015/12/18 ~ 2016/02/02 と2016/5/8 ~ 2016/06/30 の期間稼働して観測を行った.期間中ログイン拒否ハニーポットでは118,782 IP アドレスからの攻撃を観測した.ログイン許可ハニーポットでは期間 中マルウェアを1,124 検体収集することができた. マルウェア動的解析による分析ではログイン許可ハニーポットによって収集できた マルウェアの内,2015/12/18 ~ 2016/02/02, 2016/06/09, 2016/06/20, 2016/07/01 に入手 した 140 検体の解析を試みた.解析時間はマルウェア毎に 3 時間とし,マルウェア毎 にログインチャレンジに使用する ID/パスワードリストの収集とログイン後に実行するコ マンドを収集した.140 検体中 71 検体について実際にスキャンを開始させることがで きた.残りの 69 検体については実行時に C&C サーバ宛のものと思われるパケットを 送信するものの,今回使用したダミーC&C サーバでは動作させることができなかった. スキャンを開始できた71 検体中 37 検体 について ID/パスワードとシェルコマンド群を 収集することができた.残りの44 検体は原因が特定できていないが,スキャンやログイ ンチャレンジの途中に動作を停止する等のエラーにより収集することができなかった.
3.4.2. ログイン拒否ハニーポットにより観測される ID/パスワードの分析
ログイン拒否ハニーポットに対してログイン試行を行った攻撃ホスト数の時間推移を 図 3.4.1 に示す.また,ログイン拒否ハニーポットで観測されたユニーク ID/パスワー ド数の時間推移を図 3.4.2 に示す. 図 3.4.1 ログイン拒否ハニーポットにログイン試行を行った攻撃ホスト数の時間推移 0 500 1000 1500 2000 2500 3000 3500 4000 2015/11/15 2015/12/15 2016/1/15 2016/2/15 2016/3/15 2016/4/15 2016/5/15 2016/6/15 /図 3.4.2 ログイン拒否ハニーポットで観測されたユニーク ID/パスワード数の時間推移 観測開始以降,ログイン拒否ハニーポットにログイン試行を行った攻撃ホストの数は 徐々に増加しているが,2016/04/10 頃大きな増加が観測され,その後 2016/05/26 から 更に急激に増加していることがわかる.また,期間中 1 日に観測されたホスト数の平均 は578 であった. 図 3.4.2 の青線(その日に出現したユニーク ID/パスワードセットの数)を見ると,1 日 当たりに観測されるユニーク ID/パスワードセット数が 2015/03/15 以降,増減を繰り返 し , 全 体 と し て は 増 加 傾 向 に あ る こ と が わ か る . ま た ,2015/12/18, 2016/03/20, 2016/04/05, 2016/04/07, 2016/04/24, 2016/06/01 ~ 02, 2016/06/20 の時点で急激な増 加が観測された.そこで,急激な増加が確認できた日に出現した新規ID/パスワードの 内,観測期間中出現日以降で 50 以上のホストに使用された日があるものを大規模な 攻撃に使用されたID/パスワードとして抽出し,それらの数を表 3.4.1 にまとめる.また, これらの新規ID/パスワードを攻撃に使用したホスト数の時間推移を図 3.4.3 ~図 3.4.7 に示す.図中のグラフ上の赤線は当該 ID/パスワードが最初に観測された日(出現日) を示している.グラフのタイトルは該当する新規 ID/パスワードである.2015/12/18, 2016/03/20, 2016/04/05 において,出現日以降大規模な攻撃に使用された ID/パスワ ードは当該日に観測された新規ID/パスワードの内 1 ~ 4%程度に過ぎずほとんどは大 規模攻撃には発展していないことがわかる.一方,大規模攻撃に発展する場合,多い もので1000 ホスト以上によって使用される場合がある.更に図 3.4.3 ~図 3.4.7 を見ると 出現日から大規模攻撃までは数ヶ月間の期間がある場合がほとんどである.その理由 は明確ではないが,攻撃者は様々なID/パスワードを常に試しており,侵入に有効なも のを選定している可能性がある.このことからログインチャレンジに使用される ID/パス 0 1000 2000 3000 4000 5000 6000 7000 8000 2015/11/15 2015/12/15 2016/1/15 2016/2/15 2016/3/15 2016/4/15 2016/5/15 2016/6/15 ID / / ID/ ID/ ID/
ワードをハニーポットで観測し続けることで将来的に攻撃に使用されるID/パスワードを ある程度予測することが可能であるといえる. 表 3.4.1 新たに出現した ID/パスワードセットの内出現日以降大規模な攻撃に使われたもの の占める割合 出現日 出現した新たなユニークID/パスワードセット数 出現日以降大規模な攻撃に使用されたユニーク ID/パスワードセット数 割合 2015/12/18 467 18 3.8% 2016/03/20 819 23 2.8% 2016/04/05 886 9 1.0% 2016/04/07 586 0 0.0% 2016/04/24 523 1 0.001% 2016/06/01 194 0 0.0% 2016/06/02 147 1 0.006% 2016/06/20 632 0 0.0%
図 3.4.3 2015/12/18 に新たに出現した ID/パスワードの内大規模な攻撃に使用されたものの
攻撃ホスト数の推移
図 3.4.4 2016/04/24 に新たに出現した ID/パスワードの内大規模な攻撃に使用されたものの
図 3.4.5 2016/06/01~02 に新たに出現した ID/パスワードの内大規模な攻撃に使用されたも
のの攻撃ホスト数の推移
図 3.4.6 2016/03/20 に新たに出現した ID/パスワードの内大規模な攻撃に使用されたものの
図 3.4.7 2016/04/05 に新たに出現した ID/パスワードの内大規模な攻撃に使用されたものの 攻撃ホスト数の推移
3.4.3. ID/パスワードリストの分析
マルウェアによるログインチャレンジはそれぞれのマルウェアに固有の ID/パスワー ドリストを用いて行われることが想定される.そこで,ログイン拒否ハニーポットで観測さ れる攻撃について典型的な ID/パスワードのパターンが存在するかを調査する.具体 的には,長さが2 以上で,かつ,10 ホスト以上によって使用されている ID/パスワードリ スト,1,597 種類を抽出した.このうち,長さが 100 以下のものは 1,428 種類(89%)であ り,Telnet への辞書攻撃が比較的小さい辞書により行われていることがわかる. 次に,3.4.1 節に示した通り,動的解析により ID/パスワードとシェルコマンド群が観 測できた37 検体について,ログインチャレンジに使用された ID/パスワードの分析を行 った.各検体をそれぞれ 3 回ずつ解析したところ,攻撃に使用された ID/パスワードリ スト及びコマンド系列が 3 回とも,完全に一致し,7 種類の ID/パスワードリスト及び 7 種類のシェルコマンド系列を得た.ID/パスワードリストとシェルコマンド系列の対応関 係を表 3.4.2に示す.表 3.4.2では,得られたID/パスワードリストをそれぞれ pattern_a, b,c,d,e,F,G としている.それぞれの ID/パスワードリストを表 3.4.3に示す.図 3.4.8 ログインチャレンジに要する時間 図 3.4.9 pattern_F,G と対応するコマンド群の形式(XXX.XXX.XXX.XXX は IP アドレ ス) マルウェア解析にあたり,1 つの攻撃対象に対するログインチャレンジに要する時間 を調査した.図 3.4.8 は解析時間とログインチャレンジに使用した ID/パスワード数の関 係とログインチャレンジにおける 1 TCP セッションに要する時間を示しており,グラフの 横軸は時間(秒),縦軸は ID/パスワード数を示している.なお,いずれのマルウェアも 1 つの ID/パスワードを試すのに 1 つの TCP セッションを確立している.図 3.4.8 の各 点はログインチャレンジにおけるTCP セッションの開始点を表している.グラフの傾き, つまり時間あたりの ID/パスワードの増加数には大きく 3 つの傾向が見られ,1 セッショ ンあたり46 ~ 48 秒程度要するもの(pattern_a, d)と 64 ~ 68 秒程度のもの(pattern_b, C, F),セッションあたり 11 秒程度のものの 3 つに分けられる.pattern_a ~ G 全体での 1 6 991 4 6 991 4 . 6 991 4 6 991 4 0 6 991 4 1 6 991 4 6 991 4 G F ( ) ( ) 5 4 9 9231 81 5408
セッションに要する時間の平均は52.7 秒であり,長さ 100 程度の ID/パスワードリストを 持つマルウェアであっても 1 時間半以上にわたってログインチャレンジを続ける結果と なった.なお,攻撃の所要時間は,攻撃元や攻撃先のタイムアウト値の設定や,接続 可能な最大セッション数,セッション内でログイン試行できる上限回数,デバイスのスペ ック,ネットワークの遅延など,様々なパラメータに依存すると予想され,今回の結果は 動的解析環境内での観測結果の一例であることを付記しておく.
次に,個々の ID/パスワードリストについて分析を行った.pattern_a に注目してみる と,一つの ID/パスワードリストに対してユニークな 3 つの形式のシェルコマンド系列が 対応している.一方pattern_F, G をみると,対応するシェルコマンド系列が図 3.4.9に示 す形式をしていることがわかる.以上より,マルウェアが使用する ID/パスワードリストと ログイン後に実行するシェルコマンド系列は必ずしも1 対 1 に対応せず,同一の ID/パ スワードリストを用いた攻撃でも,ログイン後に使用するシェルコマンドが異なる場合や, 異なるID/パスワードリストを用いた攻撃でもログイン後の挙動が同一である場合がある ことが確認できた. 図 3.4.10 pattern_a,b,c,d,e,F,G を用いてログイン拒否ハニーポットに対して攻撃を行 ったホスト数の推移 次に,それぞれの ID/パスワードリストについて同一のリストを用いた攻撃がログイン 拒否ハニーポットに対して行われているかを調査する.攻撃ホスト数の推移を図 3.4.10 に示す.図 3.4.10から,pattern_a, b, F, G について特に多くの攻撃ホストによって利用 されていることがわかる.それぞれの ID/パスワードリストを見てみると,pattern_a で攻 撃を行うホストは観測期間中常に観測されており,特に 2016/2/20 ~ 2016/3/13 と 2016/5/22 ~ 2016/5/26 の期間に多く確認されている.pattern_a に ID またはパスワード として含まれる単語を調査したところ,cisco と vXXXX が確認できた.cisco は情報機
器メーカーである Cisco Systems[13]を示していると考えられ,vXXXX は Dahua
Technology[14]製の一部の DVR でデフォルトパスワードとして設定されていることが確 認されている[15].以上から Cisco 製機器と Dahua 製の機器を狙った攻撃が観測期間 中流行していたことが推測される.pattern_b は 2015/11/15 ~ 2016/03/06 の間に観測さ れた後,2016/3/7 ~ 2016/5/12 の期間では観測されなかった.しかし,2016/5/12 から急 3 55142, 3 55142, 3 55142,/ 3 55142,0 3 55142,1 3 55142, 3 55142, 697 8 2015/11/15 2015/12/15 2016/1/15 2016/2/15 2016/3/15 2016/4/15 2016/5/15 2016/6/15 3 55142, 3 55142, 3 55142,/ 3 55142,0 3 55142,1 3 55142, 3 55142,