This post is also available in: English (英語)
概要
本稿は、DNS (ドメイン ネーム システム) のトンネリング技術が野生で (in the wild) どのような理由と方法で利用されているのかに関する研究をご紹介します。またこの研究結果に基づいて、トンネリング ドメインをツールやキャンペーンに自動的にアトリビュート (帰属) させる弊社のシステムについて取り上げます。
攻撃者は DNS トンネリング技術を採用することで企業ネットワークのセキュリティ ポリシーをバイパスしています。その理由は、ほとんどの企業が DNS トラフィックに対し、比較的寛容なポリシーを実装していることにあります。これまでの調査で、SUNBURST や OilRig などのマルウェア キャンペーンが、コマンド & コントロール (C2) に DNS トンネリング技術を使っていることが明らかになっています。
ただし、攻撃者が DNS トンネリングを野生でどのように使っているのかは多くの側面でまだわかっていません。たとえば、DNS トンネリング技術はもっぱら C2 だけに使われているのでしょうか。DNS トンネリング技術はどのように実装やホストがされているのでしょうか。DNS トンネリング トラフィックの分析をさらに進めれば、具体的なアクションに落とし込める洞察を得られるのでしょうか。
本稿では、4 年以上の DNS トンネリング トラフィック調査と野生のトンネリング ドメイン検出の経験をもとに、これらの質問に答えたいと思います。私たちは、C2 通信に DNS トンネリング技術を使う攻撃者以外に、検閲回避ににこれを使う企業従業員や、運輸サービスで提供されるネットワーク サービス料金の回避にこれを使う乗客がいることを確認しました。
トンネリング用のドメインは異なっていても、DNS クエリーやレスポンスにデータを埋め込むさいに使ったツールや、関連するマルウェア キャンペーン名がわかるような特徴が共通して見られることがありました。
そこで私たちは DNS トンネリング トラフィックに関する情報を収集し、ツールや関連キャンペーンの詳細をリアルタイムで提供できる「DNS Security System」というアトリビューション システムを構築しました。
パロアルトネットワークスの次世代ファイアウォールをご利用のお客様は、DNS Security のセキュリティ サブスクリプションを通じ、トンネリング ツールやキャンペーンに関する情報にアクセスできます。
パロアルトネットワークスの次世代ファイアウォールをご利用のお客様は、Advanced URL Filtering、DNS Security サブスクリプション サービスを通じ、本稿で言及されている悪意のある指標 (ドメイン、IP アドレス) に対する保護を受けられます。
パロアルトネットワークスの Cortex XDR – Analytics をお使いのお客様は、DNS トンネリング用の分析検出器を通じ、本稿で解説した DNS トンネリング技術からの保護を受けています。
関連する Unit 42 のトピック | DNS Tunneling, Cobalt Strike |
DNS トンネリングの基本
DNSトンネリングとは: DNS プログラムやプロトコルと関係ないデータを DNS クエリーや DNS レスポンスの中にエンコードする技術を指します。この技術を使うと、ファイル転送、C2、Web ブラウジングなど、DNS プロトコルを介した多様な通信が可能になります。
DNSトンネリングを行う理由: DNS は通常 53/udp を使って DNS クエリーを送信します。このポートは、クライアントやシステム、サーバー、ファイアウォールなどではたいていオープンになっているポートです。DNS はインターネットの根幹要素で、Web ブラウジングや電子メールなどの知名度の高いサービスから、自動検出や負荷分散、検閲、セキュリティ監視などのそれほど知名度の高くないサービスまで、多くのアプリケーションを支えています。
その重要性から、ほとんどの企業は DNS トラフィックに対し、比較的寛容なポリシーを実装しています。そのため、攻撃者がこの DNS プロトコルを悪用して C2 通信をトンネリングし、マルウェア ペイロードを取得しています。
SUNBURST、OilRig、xHunt、DarkHydrus などの有名な攻撃キャンペーンで DNS トンネリング技術は採用されてきました。DNS トラフィックに対するポリシーが寛容であれば攻撃者はインターネットにアクセスできるようになります。また、多数の無害な DNS トラフィックのかげに、攻撃者はフットプリントを自然に隠すことができます。
DNS トンネリングの実行方法: DNS トンネリングを実行するには、「クライアント」と「サーバー」という 2 つの主要コンポーネントが必要です。「クライアント」は DNS パケットをインターネットに送信し、DNS クエリーにコンテンツをエンコードして含め、DNS レスポンスからのコンテンツをデコードします。「サーバー」は、再帰リゾルバーから DNS クエリーを受信し、DNS クエリーからのコンテンツをデコードし、DNS レスポンス内にエンコードしたコンテンツを含めます。
図 1 は、このプロセスを高レベルで示したものです。この例でこのクライアントは、まず秘密の値をサブドメイン $secret としてエンコードし、DNSクエリーとして$secret.badsite[.]comを送信します。次にリゾルバーが、さまざまなドメイン レベルのネームサーバーに対し、有効なレスポンスを得られるまで繰り返しクエリーを実行します。図 1 は、このサーバーがエンコードされた値 $secret を受信してデコードする様子を示しています。オプションとして、サーバー コンポーネント (ドメインネーム サーバー) は、悪意のあるペイロードをサブドメイン $payload としてエンコードし、DNS レスポンス $secret.badsite[.]com CNAME $payload.bs[.]com を送信します。
クライアント コンポーネントはエンコードされたメッセージ $payload を受け取ってデコードします。秘密の値や悪意のあるペイロードが単一 DNS パケットのサイズを超える場合、クライアントとサーバーはそれらを分割して複数のクエリーとレスポンスとして送信します。
多くの場合は生データを送信する代わりにエンコード アルゴリズムを使ってデータをエンコード・フラグメント化します。事実上、フラグメント実行アルゴリズムは誰でも思いつけることでしょう。
一方、iodine、DNSStager、dnscat2、sliver などのオープンソース アプリケーションや、Cobalt Strike のようなプロプライエタリー アプリケーションなど、すぐに使用できる DNS トンネリング ツールもあります。これらのツールでは、一般的なメッセージを DNS クエリーのサブドメインとしてエンコードしたり、A (IPv4 アドレス)、AAAA (IPv6 アドレス)、TXT、CNAME、MX など、さまざまな種類の DNS レスポンスとしてエンコードしたりできます。DNS トンネリングの詳細な説明については以前の投稿をご覧ください。
ケース スタディ
パロアルトネットワークスの DNS Security サービスは、2019 年から DNS トンネリング トラフィックの検出をサポートしています。DNS トンネリング検出は、DNS クエリー、DNS レスポンス、ドメインのホスティング方法などの挙動の性質を機械学習を使って分析しています。
私たちは野生の DNS トンネリング トラフィックを検出する取り組みのなかでこれまで 4 年間データを蓄積してきました。以前の調査では、SUNBURST、OilRig、xHunt、DarkHydrus などのマルウェア キャンペーンが C2 通信に DNS トンネリングを使っていたことが明らかになりました。
また私たちのデータからは、DNS トンネリングにはほかの用途があることも明らかになりました。企業環境では、検閲措置を回避するために、従業員が DNS トンネリング技術を利用した仮想プライベート ネットワーク (VPN) サービスを利用しています。
このほか、飛行機やクルーズ船など商用の運輸サービスを利用する乗客が、そこで提供されているインターネット プロバイダー料金を回避するために、この技術を使っていることを確認しました。また私たちの調査からは、DNS クエリーや DNS レスポンスにデータを埋め込んだツールが何であるかや、関連するマルウェア キャンペーン名が何であるかについての手がかりとなるような特徴が、さまざまなトンネリング ドメイン間で共通して見られることがわかりました。
なお、DNS トンネリングは、セキュリティ監視などの正当な目的にも使用できることに注意してください。サイバーセキュリティ ベンダーは、DNS トラフィックの寛容なポリシーを活用し、DNS トンネリング技術を使って、簡単に配備できる通信チャネルを構築できます。これらの通信チャネルを使って、ファイルとドメインのリアルタイム チェックを実行したり、内部ネットワークに存在するハニーポットを監視したりできます。
次の匿名化済みのレコードはそうした通信の一例です。
1 |
gqwtqmzxhaydimbvgyys2mrnmq6t2pj5.ovqs45lemuxhiy3bfz2gk3ttnrxw62ddomyt2pj5.con[...]per.io TXT "bsu1oaukzzdbehhbsrhaoebqsxvhrdukqavfrfafhbqlncvvdcs15hwawuebfccwuys0npurcnhbtox0wvfv0sfbtcauzpdbuqabdkehjm" |
企業は通常、こうしたユース ケースを承認していますし、これらはケースごとに特定して許可できるため、本稿では詳細な解説はしません。なお、本稿で解説する DNS クエリーと DNS レスポンスはいずれも弊社のお客様から取得したものではなく、サードパーティのパッシブ DNS から取得したものです。この点にはご留意ください。
C2 としての DNS トンネリング
C2 は最もよく知られた DNS トンネリングの使用例です。同一のキャンペーンは、通信用 C2 として共通のネームサーバーを使っていたり、エンコードやデコードに共通のトンネリング ツールを使っていたりと、共通する特徴が見られることがあります。ここでは 3 つのキャンペーンを例に取り上げます。うち 2 つは私たちが特定したもので、1 つはセキュリティ コミュニティが特定したものです。
最初の例は、金融セクターの弊社顧客企業を標的としたキャンペーンです。私たちは当該顧客と 22 個のトンネリング ドメインとの間の通信を観測しました。
これらのドメインでは 7 台のネームサーバーの IP アドレスが共通しており、基盤となるエンコード ツールが同じでした。攻撃者は、検出回避を狙い、著名なセキュリティ ベンダーやクラウド ベンダーを真似たドメイン名を使っていました。
以下にこれらのドメインの一部を紹介します。
- panos[.]ltd
- ciscocloud[.]space
- ubrella[.]online
- msft[.]center
- mscd[.]store
- awsl[.]site
これらのドメインとそのサンプル クエリー、ネームサーバーのドメイン、ネームサーバーの IP アドレスを表 1 に示します。このキャンペーンは金融 (finance) セクターの弊社顧客企業 1 社を標的としており、カウンター (counter) で始まるクエリーを使う同じ基盤エンコード ツールを使っていたことから、私たちはこのキャンペーンを FinCounter と名付けました。
ドメイン | サンプル クエリー | ネームサーバーのドメイン | ネームサーバーの IP アドレス |
panos[.]ltd | 10.eff89fcf44a13186ad3765f35860ce19c722c4bcda6bbbae6b7bab6025b36d0.d036b5a3fd8b67e55ee35feff7d014fdb8d32afe93d5d6f05f1dda3a096e8fa.2e10d53e935549b3a081982724c3e6f806.oak.panos[.]ltd | bur.panos[.]ltd | 34.92.43[.]140 |
ciscocloud[.]space | 10.a6674ae5d37cab7263074adef14925ef28698896b8491276097a470beca325a.669f12d4b31e9a6707ce2ee5b595cb723f40ea6d8e5f406b8fba874c8bec632.3299de58f43c3e4be80a7d7db2a2ed5aee9e13bac9cb.habit.ciscocloud[.]space | bram.ciscocloud[.]space | 34.92.43[.]140 |
ubrella[.]online | 8.d4fee8aa63e4ee6435452f86e84464168e96e314eb1a19c45e0e76f3ca71b2a.e9476062765ba0aeaeea97333805f09470ff3bd103e3ce8bd3ffefa3dfea90f.369cd352a204e9662db180407f1d1b8fa87be97c81d1.feign.ubrella[.]online | rumor.ubrella[.]online | 34.92.43[.]140 |
mscd[.]store | 4.a6gpmbnqbjewgwnqnlivwhleux4vnnyiuduyqgjkyn9jcihsttpdbdenf7lx8jx.jqhdulrejthsyipzvoleyvhv5s99nydtj5um8bzdmdms9gwdqnq46yis5hvbryo.dernuvjw7a6p6ndq4c8lwomsl7zq5lncgsutndxfpaufefhr7xxeuhfpk8hs.sny7htmpdpqdcumtgrmeptytbe9p78skry64.17328.fish.mscd[.]store | rug.mscd[.]store | 35.194.255[.]111 |
awsl[.]site | 1.758fcd0ac2301084ef82efb047050ff5e7d45b4cd636b46e4292b67acac5ab0.a1644dfde400b8d41e7b6ec37338c45d34a8e9ed81173e8dffdf57ebb3c9e30.9fc12877d608dfca610d50a121acbd30b2450391c13a.mud.awsl[.]site | lkas.awsl[.]site | 35.194.255[.]111 |
msft[.]center | 10.c5f310abb43603a3af324ee92bea16c8132ec2909fbca8d1036fe409d33af9b.c8c30e936bffb9f93bcba2c27682dcca1ab79aced6d1cf015a11d56a9c2f9f5.c49d8757a19b693d78d1772977cbf164e2748b57bb9f.ud.msft[.]center | 08e099da.msft[.]center | 34.81.65[.]4 |
表 1. FinCounter キャンペーンで使用されていたドメインの一部
2 つめの例はべつの金融セクター顧客企業を標的としていたキャンペーンです。3 つのトンネリング ドメインがこの顧客を標的として、同じ基盤トンネリング ツール (Cobalt Strike) を使っているようすが観測されました。Cobalt Strike の代表的特徴として、www、post、api など一般的なプレフィックスを使う点が挙げられます。
以下の表 2 にこの 3 つのドメイン identity-mgmt[.]com、internalsupport[.]info、cloud-enrollment[.]com と、サンプル クエリー、ネームサーバー ドメイン、IP アドレスをまとめてあります。この攻撃者らはサポート サービスのように読めるドメイン名を使って検出を回避しようとしていたので、私たちはこのキャンペーンを FinSupport と名付けました。
ドメイン | サンプル クエリー | ネームサーバーのドメイン | ネームサーバーの IP アドレス |
cloud-enrollment[.]com | api.12abc2cb5.446f35fa.dns.cloud-enrollment[.]com | ns1.cloud-enrollment[.]com | 3.238.113[.]212 |
identity-mgmt[.]com | intact.md.180.02d8f18d2.7e8986be.int.identity-mgmt[.]com | ns1.cloud-enrollment[.]com | 3.238.113[.]212 |
internalsupport[.]info | icr.0325e18d8.16ae9fb2.pl.internalsupport[.]info | dn.internalsupport[.]info | 3.238.244[.]129 |
表 2. FinSupport キャンペーンで使用されていたドメイン一覧
3 つめの例は Decoy Dog キャンペーンです。このキャンペーンは 2023 年 4 月に Infoblox が報告したものです。以下のような、公けに報告されているものと同じドメインを使っているトンネリング アクティビティが検出されました。
- claudfront[.]net
- allowlisted[.]net
- hsdps[.]cc
これらの Decoy Dog ドメインでは共通して同じ基盤トンネリング ツールの Pupy を使っています。このツールは、データ エンコード時にパディングとして「9」という文字を使います。表 3 は、Decoy Dog キャンペーンで使われているドメインの一部と、サンプル クエリー、ネームサーバー ドメイン、ネームサーバー IP をまとめたものです。
ドメイン | サンプル クエリー | ネームサーバーのドメイン | ネームサーバーの IP アドレス |
claudfront[.]net | fstz1yibfqnaw6mxpen3nknghh2q9999.1112umplhvbbzf2udr2rpuq9.claudfront[.]net | ns1.claudfront[.]net, ns2.claudfront[.]net | 5.252.176[.]63 |
allowlisted[.]net | hs1t4lt2lb2ispy5ho4vmr5okvua9999.111b52v2e3ktuuyrn6j4xrq9.allowlisted[.]net | ns1.allowlisted[.]net, ns2.allowlisted[.]net | 83.166.240[.]52,
5.252.176[.]22 |
hsdps[.]cc | gc2qagfacoq1zutfr61dko5mdjqa9999.1111suhsamuohkj4o4wn5qa9.hsdps[.]cc | ns1.hsdps.ns1[.]name, ns2.hsdps.ns1[.]name | 194.31.55[.]85 |
表3. Decoy Dog キャンペーンで使われていたドメインの一部
VPN サービスとしての DNS トンネリング
VPN サービスは、これまであまり研究されていなかった DNS トンネリングのユース ケースです。一部の VPN サービスでは、企業環境の VPN に対するファイアウォール制限をバイパスするために DNS トンネリングを利用しています。この種の DNS トンネリングは、航空会社やバス、クルーズ船など、商用の交通サービスが提供するインターネット アクセス サービス料金を回避するのにも役立ちます。
この種の VPN サービスには、悪意のある C2 通信用の DNS トンネリングと共通する特徴があります。それらの特徴には、通信用に共通のネームサーバーを使っていたり、エンコード・デコードに共通のトンネリング ツールを使っていることなどが含まれます。説明にあたり、人気のある VPN サービス 2 つと複数の VPN サービスで採用されているトンネリング ツールを調べてみることにしましょう。
Astrill VPN は IPv6 (AAAA) クエリーとレスポンスを使ってトラフィックをトンネリングする人気 VPN サービスです。この VPN はブロック避けのために 49 個のトンネリング ドメインからなるコーパス (集合体) を使います。これらのドメインは、以下のような異なる TLD 以下に登録されています。
- .com
- .net
- .pw
- .tech
- .top
- .space
ただし、これらはすべて、ネームサーバーの IP アドレス (209.133.209[.]197、104.156.49[.]110) が共通です。これらはまた、Astrill VPN の公式ネームサーバーである in01.astrill[.]com と in02.astrill[.]com に向けられています。
Astrill VPN が使うドメインの一部と、サンプル レコード、ネームサーバー ドメイン、ネームサーバー IP を表 4 にまとめます。サンプル レコードはサンプル クエリーとは異なります。サンプル クエリーには 1 つのフィールド (たとえばクエリー) だけが含まれますが、サンプル レコードには 3 つのフィールド (クエリー、レスポンス タイプ、レスポンス) が含まれます。
弊社顧客企業のネットワーク内からは Astrill VPN からのトンネリング トラフィックが頻繁に観測されています。このことは、VPN サービス利用に関する企業のファイアウォール制限を回避するため、従業員が DNS トンネリングを広く利用しており、悪用の可能性があることを示しています。ただし、ユーザーの本当の意図は、基盤にこうした技術が使われていることを認識していないケースから DNS トンネリング ベースの VPN サービスをあえて採用しているケースまでさまざまです。このため IT 部門はこれをケースごとに特定して処理するしかありません。
ドメイン | サンプル レコード | ネームサーバーのドメイン | ネームサーバーの IP アドレス |
nanogardens[.]tech | 0g87sbvrbb8f79ee.s2bbv747ck53wp7k.s.nanogardens[.]tech AAAA 1327:fb85:793c:bda6:d571:841f:b240[:]1cb2 | s01.nanogardens[.]tech, s02.nanogardens[.]tech | 209.133.209[.]197, 104.156.49[.]110 |
openair[.]pw | nq482xfw1zyq0vg5.ehadgy6qeq015w47.s.openair[.]pw AAAA aca9:8998:5018:1b61:fa26:b64f:77fb[:]a325 | s01.openair[.]pw, s02.openair[.]pw | 209.133.209[.]197, 104.156.49[.]110 |
radiantsands[.]com | nq482xfw1zyq0vg5.ehadgy6qeq015w347.s.radiantsands[.]com AAAA a646:622:d647:539b:a780:21c9:eabe[:]1162 | s01.radiantsands[.]com, s02.radiantsands[.]com | 209.133.209[.]197, 104.156.49[.]110 |
表4 Astrill VPN が使っているドメインの一部
同様に、HA Tunnel Plusは、TXT クエリーとレスポンスを使ってトラフィックをトンネリングする一般的な VPN サービスで、これが使用するトンネリング ドメインは 1 つだけ (hat53[.]com) です。私たちは、クルーズ会社を含む顧客ネットワークから、このドメイン以下のトンネリング トラフィックを頻繁に観測しています。このことは、乗客がネットワーク サービス料金を回避するために VPN サービスを使っていることを示しています。
以下は TXT トンネリング レコードの一例です。
1 |
t3f43builrjoxy5olfgijiryoi3vcabaabtq4byag2cqaad3emaaa3aaaaacsnn.5rhm62glydte5esgax5p57dwyygwfnszyvpc4s2euahvqeceqb6crq64lbq5fr6.4lwcok3fmou2bobxyv2v27u67oez35kt5suc7eek26ykoob32vizswowherp2vj.bv2cnzu3luktz7aplh2whj63kmd2tb5kse4rky3ag4r.ns-ca1.hat53[.]com TXT \\000\\024\\1628r7r\\000@\\000\\140\\014\\007\\0009\\133\\000\\000u\\133\\000\\000\\000\\000\\000\\000 |
パフォーマンス最適化のため、HA Tunnel Plus は複数のネームサーバーを使って、さまざまなリージョンからのトンネリング トラフィックを処理しています。たとえば、ns-ca1.hat53[.]com のサブドメインであるトンネリング クエリーは、IP アドレス 138.197.156[.]58 のカナダのネームサーバー、a-ca1.hat53[.]com にリダイレクトされます。ns-de1.hat53[.]com のサブドメインであるトンネリング クエリーは、IP アドレス 104.248.27[.]88 のドイツのネームサーバー、a-de1.hat53[.]com にリダイレクトされます。
表 5 にサービス提供国をまとめます。
サービス提供国 | サブドメイン | ネームサーバーのドメイン | ネームサーバーの IP アドレス |
カナダ | ns-ca1.hat53[.]com | a-ca1.hat53[.]com | 138.197.156[.]58 |
ドイツ | ns-de1.hat53[.]com | a-de1.hat53[.]com | 104.248.27[.]88 |
シンガポール | ns-sg1.hat53[.]com | a-sg1.hat53[.]com | 159.223.37[.]124 |
米国 | ns-us1.hat53[.]com | a-us1.hat53[.]com | 147.182.186[.]204 |
表 5 HA Tunnel Plus のサービス提供国の一部
VPN サービスは個別に識別・検証できますが、異なるサービスが同じ基盤トンネリング ツールでエンコードやデコードを行っていることもあります。たとえば dnstt というオープンソースの DNS トンネリング ツールは以下のような複数の VPN サービスで共通して使われています。
dnstt は DNS クエリー/レスポンス上にプロトコルを 1 つ実装していて、これには暗号化や認証などのセキュリティ機能が備わっています。dnstt は、データを DNS レスポンスにエンコードするためだけに TXT レコードを使います。標準の UDP に加えて、dnstt は DoH (DNS-over-HTTPS) や DoT (DNS-over-TLS) を使ってプライバシーを提供し、検出を回避することもできます。
なお、DNS Security サービスは、DoH や DoT のリゾルバーを識別し、復号機能を使ってペイロードを復号し、DNS トンネリングの検出がシームレスに行えるようにしています。
表 6 に dnstt ツールを使う VPN サービスの例と、そのドメイン設定例を記載しました。HA Tunnel Plus と同様に、ここに記載したサービスは複数のネームサーバーを使ってさまざまなリージョンからのトンネリング トラフィックを処理し、パフォーマンスを最適化しています。
VPN サービス | サンプル ドメイン | サンプル レコード | ネームサーバーのドメイン | ネームサーバーの IP アドレス |
MinaProNet VPN | minapronetvpn[.]com | 6rpaviehgxyvpyy4ocbbxkiyv2zvcacaad4iw3qaxa3acahhuyaaaayaaaabo3z.2.dnstt-server.minapronetvpn[.]com TXT \\000\\024\\169\\024\\174\\179r\\000@\\000\\248\\139n\\000\\1866\\001\\000\\1846\\001\\000\\000\\000\\000\\000 | nl-server.minapronetvpn[.]com | 146.190.20[.]243 |
ajph3r4dpholdyywl7fbxrsv4cofcacaab62iayaeynqaac2e4aaaayaaaahx6a.2.dnstt2-server.minapronetvpn[.]com TXT \\000\\024\\198u\\224\\156r\\000@\\000u\\164\\003\\000\\022\\027\\000\\000\\020\\027\\000\\000\\000\\000\\000\\000 | ws2-server.minapronetvpn[.]com | 104.248.142[.]17 | ||
Edoztunnel VPN | dozapp[.]xyz | khvsoyur5pwo5yyz6wzeikuydeivcacaabgxiaaa74bqaad4amaaalaaaaagi4s.idfsuez5dmik2iuoywuf57fozubc2vw2e7jd4ioufzyvaumnhuceo5gznotvueq.ez4u.newca.dozapp[.]xyz TXT \\000\\024*\\152\\025\\017r\\000@\\000dt\\000\\000\\251\\003\\000\\000\\253\\003\\000\\000\\000\\000\\000\\000 | newcan.dozapp[.]xyz | 144.217.81[.]86 |
2no7jtyrhvomd2b6qdao4fkdb7ra.dnsau.dozapp[.]xyz TXT \\000\\024\\017a\\163\\209r\\000@\\000\\005\\000\\000\\000\\000\\000\\000\\000\\002\\000\\000\\000\\000\\000\\000\\000 | au.dozapp[.]xyz | 104.21.69[.]17 | ||
TunnelCat VPN | tcat[.]site | n6s7qzzxy43m5y6qu6tibfphtc3vcabaacvfsaia2ibqaabcaaaaa2aaaaaoimg.e2w6epiijkqs73eyxui3w4vxxpvemn5zy5ikh5med7gisk35c6lnwgjjcoquoer.igvoe2ysqytgj4jfonfbkteyrkowecqtkoskugqgomq56vxvpsmmdm4j4fk2tuo.223tigunynencz4ak6743i5z7jyyrxgazv7m4.dns.de3-dnstt.tcat[.]site TXT \\000\\024\\149\\231\\152\\183r\\000@\\000\\169y\\001\\000\\208\\003\\000\\000\\209\\003\\000\\000\\000\\000\\000\\000 | de3-dnstt.tcat[.]site | 64.225.106[.]232 |
hknjypabcykw3yznc4sb7ehanbufcabaactvsaaatebaaaheaaaaabyaaaaoo4n.22vtyimy.dns.dnstt-fast-de.tcat[.]site TXT \\000\\024\\144\\224hhr\\000@\\000\\167y\\000\\000\\152\\002\\000\\000\\153\\002\\000\\000\\000\\000\\000\\000 | dnstt-fast-de.tcat[.]site | 3.67.83[.]152 |
表 6 dnstt ツールを使う VPN サービスの例
ツールとキャンペーンのアトリビューション (帰属)
さまざまなツールがさまざまな目的でトンネリング ドメインを使っていることから、IT 部門がこうしたドメインのブロックの要不要を判断するさいはドメインに関する詳細な情報が必要になります。たとえば IT 部門が企業ネットワーク内で TunnelCat VPN からのトンネリング トラフィックを見つけた場合は、従業員がファイアウォールの制限を回避しようとしたことが原因の可能性があります。その従業員に警告を出したり、マネジメント層がセキュリティ ベストプラクティスに関する組織ポリシーをエンフォースすることもできるでしょう。
クルーズ船のネットワーク内で VPN トラフィックが見つかった場合は、乗客がサービス アクセス料金を回避しようとしている可能性があるため、トラフィックをブロックする必要があります。そうでなくこのトンネリング トラフィックが FinCounter キャンペーンと一致しているのなら、企業の IT 部門は侵害ホストを隔離して徹底的に調査し、攻撃の影響を把握することを選べます。
VPN サービスと C2 ドメインへのトラフィックのトンネリングは、その暗黙の意図だけでなく、暗黙の機能によっても異なります。第 1 に、VPN サービスの場合はマーケットプレイス管理者が精査し、適切な VPN サーバーを使っていることを認証してくれるアプリをユーザーにインストールしてもらう必要があります。VPN サーバー経由で悪意のあるトラフィックをプロキシーすることは可能ですが、エンジニアリング上・財務上のオーバーヘッドが高くなります。第 2 に、C2 ドメインにはそうしたオーバーヘッドはなく、高度にカスタマイズ可能です。
私たちはこのトンネリング ドメインに関する洞察に基づき、トンネリング ドメインをリアルタイムで分析し、対応するツールやキャンペーンを検出するアトリビューション システムを実装しました。
中心となる考えかたは、トンネリング ドメインからさまざまなツールやキャンペーンに固有の特徴を抽出することです。それには次のようなものがあります。
- トンネリング ドメインがどのようにホストされているか
- データがどのように DNS クエリーやレスポンスにエンコードされているか
- データがいつどのように送信されるか
- 補足情報として、誰が標的とされているか、対象ドメインに関するサードパーティでの評価はどうか
私たちは、50 を超えるトンネリング ツールとキャンペーン、1,000 を超えるトンネリング ドメインを含む、ラベル付きデータセットを作成しました。弊社のシステムは、前述の特徴を使って、新しく検出されたトンネリング ドメインをラベル付きトンネリング ドメインと比較し、新しく検出されたドメインが既存キャンペーンに属しているのか、既知のトンネリング ツールを使っているのかを自動的に予測します。
表 7 は、私たちのシステムがアトリビューションを行ったトンネリング ツールとキャンペーンの例です。rcsmf100[.]net は Decoy Dog キャンペーンにアトリビュートされました。その主な理由は、ドメイン allowlisted[.]net と同じネームサーバー IP アドレス 83.166.240[.]52 を使っていることです。hammercdntech[.]com と todoreal[.]cf はそれぞれ Cobalt Strike と dnstt にアトリビュートされました。その理由はエンコード ツールが再利用されていることにあります。
ドメイン | サンプル クエリー | ネームサーバーのドメイン | ネームサーバーの IP アドレス | アトリビューション (帰属) |
rcsmf100[.]net | tjkrwmhdoj5ctmtatfsvfnnwfeva9999.1125de632ujq9999.rcsmf100[.]net | ns1.rcsmf100[.]net, ns2.rcsmf100[.]net | 83.166.240[.]52 | Decoy Dog |
hammercdntech[.]com | d-1ox.2cd649aed1f5ab311b08dce2066589388e395e9f0c0e85c940b37f209.b24afc9b030682dac90e4f83acc913711b68b056601e00e8778c4040.17f1d6e11.370935f6.ns1.hammercdntech[.]com | cdn7ad6a01b.hammercdntech[.]com | 65.20.73[.]176 | Cobalt Strike |
todoreal[.]cf | bcm74mohxicvfy77u2zte2whzjjveacaadnj5nb6hubaaaceaiaaaaaaaaagvr6.kkniqaqaa2nlqeahpaiaaaracaaaaeaaaaaazy.slowdns.todoreal[.]cf TXT \\000\\024j\\199\\202sr\\000 \\000\\211w\\002\\000\\239\\002\\000\\000d\\004\\000\\000\\000\\000\\000\\000 | dns.todoreal[.]cf | 172.67.136[.]96 | dnstt |
表7. トンネリング ツールとキャンペーンのアトリビューション例
結論
DNS トンネリングはさまざまな理由で使われていて、よく知られたものでは C2 サーバー、さほど知られていないものでは VPN サービスなどがあります。DNS トンネリングの検出と理解は顧客保護に役立つことから、私たちはリアルタイム アトリビューション システムを構築しました。これにより、基盤ツールやトンネリング ドメインに紐づくキャンペーンを特定し、より多くの洞察を提供し、きめ細かな分析と迅速なインシデント対応が可能となります。
パロアルトネットワークスの次世代ファイアウォールをご利用のお客様は、Advanced URL Filtering、DNS Security サブスクリプション サービスを通じ、本稿で言及されている悪意のある指標 (ドメイン、IP アドレス) に対する保護を受けられます。
パロアルトネットワークスの Cortex XDR – Analytics をお使いのお客様は、DNS トンネリング用の分析検出器を通じ、本稿で解説した DNS トンネリング技術からの保護を受けています。
パロアルトネットワークスは、ファイル サンプルや IoC (侵害指標) をふくむ調査結果を Cyber Threat Alliance (CTA: サイバー脅威アライアンス) のメンバーと共有しました。CTA のメンバーはこのインテリジェンスを使って、お客様に保護を迅速に提供し、悪意のあるサイバー攻撃者を体系的に阻害できます。詳細は Cyber Threat Alliance にてご確認ください。
IoC (侵害指標)
ドメイン
- panos[.]ltd
- ciscocloud[.]space
- ubrella[.]online
- mscd[.]store
- awsl[.]site
- msft[.]center
- cloud-enrollment[.]com
- identity-mgmt[.]com
- internalsupport[.]info
- claudfront[.]net
- allowlisted[.]net
- hsdps[.]cc
- rcsmf100[.]net
- hammercdntech[.]com
IP アドレス
- 34.92.43[.]140
- 35.194.255[.]111
- 34.81.65[.]4
- 3.238.113[.]212
- 3.238.244[.]129
- 5.252.176[.]63
- 83.166.240[.]52
- 5.252.176[.]22
- 194.31.55[.]85
- 65.20.73[.]176
追加リソース
- DNS トンネリング技術関連ブログのアーカイブ — パロアルトネットワークス Unit 42
- タイムラインで見たSolarStormサプライチェーン攻撃 — パロアルトネットワークス Unit 42
- DNSトンネリング: 攻撃者はDNSをどう悪用するのか — パロアルトネットワークス Unit 42
- xHuntキャンペーン: 新たに発見されたバックドアが削除された電子メールドラフトとコマンド&コントロール用のDNSトンネリングを使用 — パロアルトネットワークス Unit 42
- 詳説xHunt: DNS SecurityがDNSトンネル検出し新たなPowerShellバックドアをブロック — パロアルトネットワークス Unit 42
- 中東の通信事業者を標的とするOilRigが、ステガノグラフィを利用する新手のC2チャネルを攻撃手段に追加 — パロアルトネットワークス Unit 42
- DNSトンネリングの現状: OilRigのDNSトンネリング概要 — パロアルトネットワークス Unit 42
- DarkHydrusがC2通信にGoogleドライブを使用できる新しいトロイの木馬を配布 — パロアルトネットワークス Unit 42
- Cobalt Strike解析&チュートリアル: 野生(in the wild)のCobalt Strike Beacon Team Serverの識別 — パロアルトネットワークス Unit 42
- Dog Hunt: Finding Decoy Dog Toolkit via Anomalous DNS Traffic — Infoblox
- dnstt – DoH- and DoT-capable DNS tunnel — Bam Software