トンネリング抑止を目的とした分散ハッシュテーブルを利用したDNSに関する研究

回避型マルウェア解析のための回避コード抽出に関する研究

高須賀 昌烈 (1811147)


サイバー攻撃の中には,攻撃通信を無害な通信に偽装することで解析を回避する巧妙な手法がある. DNSトンネリングは,そのような秘匿通信手法の中で最も広く利用される. その手法は,DNSパケットのQname及びRdataフィールド中にデータを注入するという極めて単純な方法で動作する.

DNSトンネリングに対して,従来は通信検知に基づいたアプローチが取られてきた. 先行研究では,Githubなどより入手できるトンネリング実装が発生する擬似トンネリング通信を,検知手法の評価対象と利用してきた. しかし,トンネリング実装の多くはインタラクティブシェル通信であるため,注入されるデータ量が大きくトラフィック頻度も高いという顕著な特徴が現れる. 実際の攻撃シーンでは,スループットよりも秘匿性を重視されるため,上記のような通信ではなく,一回あたりの転送データ量が小さく,少ないトラフィックの頻度であることが予想される. このようにデータの特性が異なるため,既存の検知手法では実際の攻撃通信に対処できないという課題がある.

本研究では,DNSトンネリングが委譲の仕組みに基づくゾーン分割に起因すると捉え,フラットな名前空間を範囲に基づきゾーンを分割する名前解決の仕組みを提案する. 提案システムを導入することによって,スタブリゾルバからのクエリが任意に設置した権威サーバへの透過することを防ぐため,トンネリングが発生することを抑止できる. 評価では,提案システムのプロトタイプ上でトンネリング通信を発生させるシミュレーションテストを行い,トンネリング抑止に効果があることを確認した. また,システムにおける名前解決時の特性評価の結果,既存システムに比べて高速な名前解決と名前解決に伴うトラフィックが削減されることを明らかにした.