This post is also available in: English (英語)
概要
2018年5月末、インターネット上で公開されているMiraiおよびGafgytマルウェア ファミリのソースコードを使った3種類のマルウェア攻撃キャンペーンが発見されました。これらのマルウェア ファミリには、IoT (Internet of Things) デバイスに影響を与える複数の既知のエクスプロイトが組み込まれていました。
これら3つの攻撃キャンペーンに属するサンプルのなかには、1つのサンプルに11種類ものエクスプロイトを組み込んだものがあり、これは過去にIoT Reaperマルウェアが組み込んだ9つのエクスプロイトを上回っています。IoT Reaper は、Mirai のソースコードを一部借用しており、統合された LUA 環境のコード内にそれら9つのエクスプロイトを含んでいました。
進化を続けるこれら攻撃キャンペーンの中には、D-Link DSL-2750B OS コマンド インジェクションの脆弱性をターゲットにしたものもありました。この脆弱性のMetasploitモジュールは、5月25日に公開されたばかりでした(脆弱性自体は2016年2月に公表済み)。
パロアルトネットワークスの脅威インテリジェンス調査チーム Unit 42は、これら新たな攻撃キャンペーンに属するサンプルをいくつか調査するうち、これまでMiraiの亜種が使用したことのないDDoS手法がいくつかサポートされていることを発見しました。
そこで本稿は、各攻撃キャンペーンを観測された時系列にそって詳説し、使用されたエクスプロイト、新たにサポートしたDDoSの手法などを概観し、攻撃キャンペーンの比較概要で締めくくります。また本稿の調査の副産物として発見された、いくつかのGafgytのサンプルについても解説します。これらのサンプルは、ある著名DDoS対策プロバイダをターゲットとし、新たなレイヤー7へのDDoS機能が組み込まれていました。
それぞれのセクション内で説明しなかったほかの攻撃キャンペーンのIOC (侵害の痕跡)については、本稿の文末に記載します。
攻撃キャンペーン 1: 進化したOmni
2018年5月、Omni ボットネットというMiraiの亜種が、韓国Dasan Networks社のGPON ルータを狙う2つの脆弱性を悪用していることが発見されました。この2つの脆弱性は、CVE-2018-10561(認証バイパス)とCVE-2018-1562(コマンド インジェクション)です。これら2つの脆弱性が組み合わせて使用された結果、認証されていない遠隔の攻撃者による脆弱なデバイスへのコマンド実行が可能になりました。
以降、同マルウェア ファミリはさらに進化してさらに数種のエクスプロイトを組み込んでいます。その詳細をまとめたのが表1です。
本稿の分析には次のサンプルを使っています。
SHA256値 | 3908cc1d8001f926031fbe55ce104448dbc20c9795b7c3cfbd9abe7b789f899d |
表1: 使用されたエクスプロイトの一覧
これらの脆弱性はすべて公知のもので、これまでもさまざまなボットネットが個別に利用したり、組み合わせて利用したりしてきました。ただし、Miraiの亜種として、これら11種をすべて使っていることが確認されたのは初めてです。
本攻撃キャンペーンで見られたほかとは異なる特徴:
- 2 つの異なる暗号化スキーム: すべてのMirai亜種で利用されている標準的なXOR暗号化スキーム(この事例ではテーブルキー0xBAADF00D)のほか、これらサンプルでは2つめのキーを利用して特定の設定文字列を暗号化している。
- これらのサンプルは、純粋にエクスプロイトのみに依存して増殖しており、認証のブルートフォース攻撃を行わない。
- すでに感染済みのデバイスがさらに感染することを阻止するため、特定ポートで受信したパケットを、iptablesを使ってドロップする(図1)。
図1: マルウェアを逆アセンブルした画面のスクリーンショット。iptables を使って今後の特定ポートへの接続試行をドロップする様子
この攻撃キャンペーンでは、IPアドレス213[.]183.53.120がペイロードのサービスとコマンド&コントロール(C2)サーバーの両方の用途に使われています。
Unit 42は、このIPアドレスを手がかりとして、いくつかのGafgytサンプルを発見しました。これらのサンプルは同時期に、先のIPに応答をしているところから浮上してきたものですが、「SendHTTPCloudflare」と呼ばれる新しいDDoS攻撃の手法を使っていました。この手法は本稿の最後に詳述します。
この攻撃キャンペーンはOmniの亜種につながっていました。下の図2に示すとおり、コード内の複数の箇所でOmniへの言及が見られます。
図2: サンプルのOMNIへの言及
暗号化された文字列もwebサイトgpon[.]partyに言及していますが、本稿執筆時点でこのサイトはダウンしていました。
図3: gpon[.]partyへの言及
攻撃キャンペーン 2: Okane
この攻撃キャンペーンのサンプルは、IP 46[.]243.189.101でサービスされていたものです。このホストには短い期間ではあるものの、オープンになっているディレクトリがあり、そこに下図で示すサンプルが格納されていました。
図4: ペイロードを提供していたサーバー46[.]243.189.101でオープンになっていたディレクトリのスクリーンショット
本攻撃キャンペーンでのペイロードを提供していたのはhxxp://46[.]243.189.101/gang/でした。ダウンロードされたペイロードはシェル スクリプトで、Okaneのバイナリを脆弱なデバイスにダウンロードすることにより、自分自身を複製しようとするものでした。 6月13日、一部サンプルのペイロードの提供元が短時間CloudflareのDNSサーバーである1[.]1.1.1に置き換えられました。
この攻撃キャンペーンでは、表1に一覧したものと同じエクスプロイトを組み込んでいます。次の図5は、この攻撃キャンペーンに属するサンプルの1つから、これらのエクスプロイトが順番に呼び出される様子を示しています。呼び出しごとに、個々のエクスプロイト専用のフォークが生成されるようになっています。
図5: 攻撃キャンペーン2で使われたサンプルのマルウェアを逆アセンブルし、エクスプロイト呼び出し箇所を表示したスクリーンショット
先の攻撃キャンペーンとちがい、これらのサンプルでは認証のブルートフォース攻撃も行っています。これらのサンプル内のブルートフォース一覧の中には珍しいエントリが見つかっています。例えば、次のようなものです。
- root/t0talc0ntr0l4!- Control4デバイス用のデフォルト認証
- admin/adc123 - ADC FlexWave Prismデバイス用のデフォルト認証
- mg3500/merlin - Camtron IPカメラ用のデフォルト認証[JMO2]
本攻撃キャンペーンに属するサンプルの中には、Miraiのソースコードに2種類の新しいDDoS手法を加えたものも含まれています。
以下のサンプルから抽出したこれら新しいDDoS手法について以下に説明します。
SHA256値 | 320ed65d955bdde8fb17a35024f7bd978d26c041de1ddcf8a592974f77d82401 |
- attack_method_tcpxmas: すべてのフラグをセットしたTCPパケットの送信に関与。別名クリスマス ツリー パケット。すべてのフラグがセットされたTCPパケットをルータやエンドのホストで処理するには、通常のパケットよりいっそうのコストがかかるため、より効果的なDDoS攻撃の手法となる。 GafgytとKaitenの亜種がこの手法を使う様子はこれまでにも観測済み。送信されるパケットのペイロード サイズは768バイトに設定されている。
- attack_method_std: 1024バイトのランダム化されたペイロードをもつパケットの送信に関与。
この攻撃手法を利用するサンプルについてさらに調査した結果、これは早くも2017年8月にはフォークされていたMiraiのコードの一部であることがわかりました。
同じ攻撃キャンペーン由来のより新しいサンプルの中には、2018年6月以降のサンプルでしか確認されていないDDoS攻撃の手法を組み込んだものがあります。その中で目を引いた手法について、以下に説明します。
分析に用いたサンプルのハッシュ値は次の通りです。
SHA256値 | be1d722af56ba8a660218a8311c0482c5b2d096ba91485e7d9dfc12a2b8e00b3 |
- attack_method_udpgame: UDP用DDoSで、SOCK_RAWを利用してランダムなソース ポートからポート27015に接続する。(ポート27015はオンライン ゲーム サーバーに利用されることが多い)。
- attack_method_asyn: TCP用DDoSで、ランダムなポートからランダムなポートに接続するパケットを使う。そのさい、パケットのACKフラグとSYNフラグをセットする。
- attack_method_tcpfrag: TCP用DDoSで、SOCK_RAWを使い、ランダムなポートからランダムなポートにランダムなシーケンス番号で接続する。そのさい、URG、ACK、PSH、RST、SYN、FINのフラグをセットする。このケースではDF(分割禁止)ビットが1にセットされる。
- attack_method_tcpall: DF(分割禁止)ビットが0にセットされるほかは先のattack_method_tcpfragと同じ。
- attack_method_tcpusyn: TCP用DDoSで、ランダムなポートからランダムなポートに接続するパケットを使う。そのさい、パケットのURGフラグとSYNフラグをセットする。
6月19日、このサーバー上のサンプルからエクスプロイトが取り除かれ、単純なブルートフォースを使ってシェルスクリプトをドロップし、それによって自己増殖するものに戻りました。
図6: 新しいOkaneサンプルが自己増殖に使うシェル スクリプト
攻撃キャンペーン 3: Hakai
この攻撃キャンペーンに属する初期サンプルはすべて、表1に説明したエクスプロイトを利用します。ただし、UPnP SOAP TelnetD Command Executionエクスプロイトだけは利用しません。当該攻撃キャンペーンのペイロードを提供していたのはhxxp://hakaiboatnet[.]pw/mで、C2サーバーは178[.]128.185.250でした。これらのサンプルはMiraiに似た暗号化スキームを利用していますが、以前の攻撃キャンペーンと違い、Gafgytのソースコードをベースにビルドされています。Gafgytには、Bashlite、Lizkebab、Torlus、LizardStresserなどの別名もあります。
これらのサンプルは、次のコマンドをリッスンします。
コマンド | 意味 |
SC ON | スキャナをオンにする |
SC OFF | スキャナをオフにする |
H | HTTPフラッド |
U | UDPフラッド |
S | STDフラッド |
T | TCPフラッド |
KT | スキャナのスレッドを停止する |
同一サーバーからのより新しいサンプルには、D-LinkのDSL-2750B デバイスを対象としたOS Command Injectionエクスプロイトも組み込まれていることが分かりました。これらより新しいサンプルは、以前のサンプルと同じ攻撃手法、暗号化キー、C2を使っています。ただし、ペイロードの提供元はhxxp://178[.]128.185.250/eになっていました。
図7: 攻撃キャンペーンのより新しいサンプル、D-LinkのDSL-2750Bデバイスをターゲットにしている
まとめ
次の表2は、これら3つの攻撃キャンペーンを比較した概要です。
攻撃キャンペーン | 利用されたエクスプロイト | ベースになったコード | ペイロードの提供元 | C2 | 設定文字列の暗号化/復号キー | 認証のブルートフォース攻撃を行うか |
1: 進化したOmni | 表1のすべてのエクスプロイト | Mirai | hxxp://213[.]183.53.120 | 213[.]183.53.120 | 2種類の異なるキーを利用。0xBAADF00Dと0xDEADBEEF(または、バイトごとに0x22とXORをとった結果) | いいえ |
2: Okane | 表1のすべてのエクスプロイト | Mirai | hxxp://46[.]243.189.101/gang/ | 142[.]129.169.83:5888 | 0xDEACFBEF | はい |
3: Hakai | 表1のすべてのエクスプロイト、ただしUPnP SOAP TelnetD Command Executionエクスプロイトを除くより新しいサンプルにはD-LinkのDSL-2750Bデバイスを対象としたOS Command Injectionエクスプロイトも組み込まれている | Gafgyt | hxxp://hakaiboatnet[.]pw/m, hxxp:// 178[.]128.185.250/e |
178[.]128.185.250 | 0xDEDEFFBA | はい |
表2: 3つの攻撃キャンペーンの比較概要
Gafgytと新たなレイヤー7攻撃
特定DDoS対策サービス ベンダをターゲットにしたレイヤー7へのDDoS攻撃はさほど目新しいものではなく、MiraiのDvrHelper亜種という形ですでに観測されてきました。
ただしこれまでGafgytサンプルで利用されている様子が観測されたことはありませんでした。攻撃キャンペーン1のサンプルが利用しているC2を軸として調査を進める中で、Gafgytのサンプルの一部がHTTPCFというコマンドを追加でリッスンしていることに気づきました。
このコマンドを受信したボットはSendHTTPCloudflareという関数を呼び出し、関数名の示す通り、Cloudflare社によって保護されているサイトのURLパスをターゲットにして攻撃します。この攻撃を利用する最初期のサンプルは、2018年5月末頃から観測されています。
図8: HTTPCF がターゲットとするURL形式
サンプルは、同じIP、つまり213[.]183.53.120のポート8013をC2通信に使っています。
図9に示す通り、これらのサンプルでは珍しいUser-Agents(UA)が利用されていました。これらのサンプルで見つけたUAの全一覧については本稿の付録を参照してください。
図9: Gafgytサンプルと関連する珍しいUser-Agents(UA)の例
結論
組み込みシステムをターゲットとした初期のボットネットの興隆によって、インターネットに接続された数百万のデバイスがもたらすセキュリティ リスクが明らかになりました。
これらのボットネットはその後さらに進化し、IoT Reaperでも本稿で詳述した攻撃キャンペーンでも、複数のエクスプロイトを利用するようになりました。攻撃者はこうした進化により、多種多様なデバイスを利用しながらも、すべてのデバイスを同一のC2サーバーに応答させるという、巨大ボットネットの構築が可能であることを示したのです。こうした状況は、公開済みの新たな脆弱性がインターネット上で悪用されるスピードが上がるにつれ悪化してきています。
このことは同時に、セキュリティ ベンダがいかに迅速に公開済みの脆弱性に対応し、各セキュリティ機器の保護下にある脆弱な機器を保護できるかが問われているということでもあります。しかしながら最大の責任を負うのはデバイスメーカーです。メーカー各社は自社のデバイスが更新しやすいか、更新配信がタイムリーに行われているかをきちんと確認しなければなりません。
パロアルトネットワークスのお客様は本稿に説明した攻撃から以下の方法で保護されています。
AutoFocusをご利用のお客様は個々のエクスプロイトを使うこれらの活動を次のタグで追跡できます:
- CVE-2017-17215
- CVE-2014-8361
- DLinkOSInjection
- NetgearRCE
- VacronNVRRCE
- EirRCE
- GPONExploits
- DLinkDSL2750BOSCmdInjection
AutoFocusをご利用のお客様はこのほかに次のマルウェア ファミリ タグも利用できます:
WildFireは本稿に述べたすべての関連サンプルを悪意があるものと判定します。
本稿に説明した攻撃キャンペーンに関与したすべてのエクスプロイト、IPアドレス、URLはThreat PreventionとPANDBによりブロックされます。
IOC(侵害の痕跡)
攻撃キャンペーン1のサンプル
- 000b018848e7fd947e87f1d3b8432faccb3418e0029bde7db8abf82c552bbc63
- 37e3a07a17a82175c60992f18eaf169e4014915eb90fac5b4704060572cfa60b
- 3908cc1d8001f926031fbe55ce104448dbc20c9795b7c3cfbd9abe7b789f899d
- 3b3a66c2c27f5821d5304e22a2a34b044027ffaac327df5263674b4aa25bc901
- 4c07af1041e0d83437d4b14226204652574b428cd1dbd4bfc7047c13dffc4700
攻撃キャンペーン1に関連するURLとIPアドレス
- 213[.]183.53.120
複数のエクスプロイトを利用するOkaneのサンプル
- 00499879c74122881e436fbf701a823d4dc53ff6946e58dd0e5410bad24f3d57
- 0fa81ebe444cfe7413f90ca116817cdfa3ccfdc41160fcd64032630d30b2d598
- 11628ac93368228e949d9b7e380a065e58c02626a8fd7896db8c2dec51583d1d
- 1d6c5a560bbb57695c502b5d642e48fbe6bddc45defdb56fa25bd94ae17e5a14
- 216492260b8d1342988c1688962dd95a48af8c801afe03c6801ec07d74862e60
- 264a194bda6aaa51665d5c872237613ac153e67827e7b0bbbe84b4e8e464544c
- 38736acdf58a418acd778a3203df9e84b4470a71031fe9e6d52170ad3c15e794
- 39893d4a033fd29faea37d09b4c8cfb9be04ffc19288506551e18d294e96bb2d
- 49f98a91c95a633a6d7a9a134e3a8e881e12aeede758a4367432ad3cab1c2b28
- 50473fc0d89fd5ed0a20c96f34c419c5ee66e630fecb88a095283450229a934e
- 509a7cc2335ef667ddc20298a3fae9c9c966be400719343cb59b042d05a98426
- 5352dc35d97ceb2d9bf58113ee1196daea66cd4a4bce9acba29ee05f4d84170e
- 55771db22c6305f7fba0b20b19b8537e85a45b80ddbcba1ffe0f6d30ef8697d6
- 645128d788b5cc1becc2546973e658c03e2ee33116013b84c05904a18044e353
- 834e675813e517aa0b4b6c65edbb2e8bf141b272f6918b443c69793db365ff3b
- 893309bc397058d50bba7c5c077bfc7f64956a098e452c63813c074beb8837dc
- 8b65ac91af993f95b57535e5a71571bbc06fbb37e1bfd47313585dceda345fd9
- 916cf77c6af335732007fd0c09ec49b8f29053731a062c33a66d65793495dcd5
- 93fa2bb5a64216d8579a53debcb9b2dade3a0a995c3026b04667fd472e7841a3
- 9e150ccd410ed8a3a8673e092450bd6dc0f5abc2d7306e2d05b57cfb21d8d4df
- 9fe586ead4a1b003c023c75467c9b1fcda3414265ea50e060e939a4078c79234
- a0d7592cfcd469e10a9ca463780737c76d3e61c5b750345998b18721b3565f0d
- a36adfa5ecec9ad5429c817de3fbece20d1b526c116d2bfccd9366aabacc2c32
- ac7bb0c8bf67186572ee931f86f679e12f6737d8e36936fb40a870dc3aeeee22
- b2156ce005eacccabe0ed668bbced761df1da1f1da32e645d344eaa8f075dbb9
- b55bea0bf708734491d101f41ecdbb592e69b8ccc053b7dfc33fe3e465c80b9f
- b72c22efed4b68d52fbc97360c388fc1812d431c208cf35af5bdcc850e8a2e01
- bc11fcafe415b1bf74abbeb5189cb72f991bb6dfb01b61f2d96cbb4cfd6d9e2f
- bd89be28ddecca983cc91835febce818a1f09bda471399b031f99c5278169344
- bf94315a9591d77ee2d08823afaeaf7e45133d4af2d3c3ce4086aff371f248d2
- c02a7a06f77bad974acd6bc193e1cb7dc73a009317f1044d202593dc3b0a67cf
- c42bdc0d7bbdf9a74db9233010f2b04ca14e0864119a1c98d6c8a7a63574791c
- c659709cbea976692e4be58f1f04d99127b55325f404c63525fb9ab575a66b2d
- c750d1ad0d5f5d7dda2ab8dba33fa49ef1c636905abab364a70db44ab8035ab6
- cfd33c0bcb7001c56a8e9438c1a5d6b34c6bdd7a2404c2fe0cdfea00abdf355a
- d15d46b4d9d826bcf8cb0b43fa1f7e874708db9bb068c3aff27daa7193b51fd7
- d2655773f812887da069965ad8113501aeb0a0e26aa27faa9a1469fd510ceb3c
- dacdf9b548f123482f5ecc2a29d2d156021bdab250a933ace9aee140041b9abb
- dbdffabc13a70a41188900620569266b5774deb007e0ef6dc63ff16ce72b4595
- dcfae13f567ea01c872db539c5d89448ebde2debe46421eccf752d4e20298c58
- e0ddec27709ec513886a217009f55994ddf61f58887774d6403ec18d5612d9e6
- e8782c38fc7c148be589a3c44f915719378840ddbf709fd48932797609f8daf2
- ec1fdb298556406d75506a234562f60ae517569963a317741dd4bd90680fb4ad
- edf32e6317253a323c4e815485ff4b97c4e0af268be8d78c9c0e48ac87e52e55
- f390995777d4cad93854e4030b8bc33d2405c7ddd548da5e00a589b9e7afd722
Okaneに関連するURLとIPアドレス
- 46[.]243.189.101
- 142[.]129.169.83:5888
複数のエクスプロイトを利用するOkaneのサンプルのうち、ペイロードを1.1.1.1から取得するもの
- 25763b7871c0be5dc9a3ffa4abb4fce308297baf14c0389a70336b429b0c7c39
- 7bde2df856061806a1a7294b780bfbcf1439ec0f9dbb4d6495c7c0d5873505d5
- fca262afd92ec24af4370c664b68f453c3f97f3555ab37178ec80bbaebf7dfa6
複数のエクスプロイトを利用するOkaneのサンプルのうち、attack_method_tcpxmasとattack_method_stdを使うもの
- 0e7d4fa178b78cbfd0eaea910a53c7b933590764b72a93cd54f5823076869ab5
- 320ed65d955bdde8fb17a35024f7bd978d26c041de1ddcf8a592974f77d82401
- 5eef17f59d2c3d88d08da8d07dcca13e4225d800fce7a7fed5504e789008dc17
- 692b3b9ea76447447b11655711cdd22040972b1903749fe49b478ec92cdd4f7a
- a0d7592cfcd469e10a9ca463780737c76d3e61c5b750345998b18721b3565f0d
- a36adfa5ecec9ad5429c817de3fbece20d1b526c116d2bfccd9366aabacc2c32
- c42bdc0d7bbdf9a74db9233010f2b04ca14e0864119a1c98d6c8a7a63574791c
- d15d46b4d9d826bcf8cb0b43fa1f7e874708db9bb068c3aff27daa7193b51fd7
Okaneのサンプルのうち、追加されたDDoS手法を利用するエクスプロイトを含まないもの
- 0ea858e747863f2c94eda3f28167951ad8cafca2cb0be1c247d01a53fb7e56e0
- be1d722af56ba8a660218a8311c0482c5b2d096ba91485e7d9dfc12a2b8e00b3
Hakaiのサンプル
- 0f5b814308193064bc4ece4266def5c1baecc491117f07650c5117762648d4c5
- 46625884d4cc5ec9ca32221e90f3c187ef7d713fbabe8e33cad843587c0911e0
- 721da99e8789cdcb73db87353e2be7b82c9158e2929b9eaa7d5b4660b6d4d1e2
- 76a2853701ab4a8d989f383857d0d4cb8d6a7df38d543d4cb06a02079acb74c2
- 7e8280387887f27461f2ed758a401daf49e27342c684f199751391bfb83f438d
- c959e580c4709c8aa304ffe5b3ab4ccfbdb3327b695cf5f8b4d27591664579f7
- d248c1ce41d474de0ea05b34d721271c53a861e06d355e4e6e83a8955c7bbc0a
- d669388681bb8d17aa2d5ee1f943ae5e8ad8729d88c78ec86b10fe51a4701c43
- f05e731a3dca8868af3a05ae4867a39f397e0d54221229c0be74c8a20d00e364
Hakaiに関連するURLとIPアドレス
- hakaiboatnet[.]pw
- 178[.]128.185.250
HTTPCFを含むGafgytのサンプル
- 1eec1ef48d93106f3f00b4d4868b32a3ca8ca8da9a0852ef81a9e9226206362b
- 385ba7fcf276fb0b469defac7762908921df820c550e98abadec725f455b76fe
- 5c797cd7faf5061a75c68cc8f658c7daab94c223f523bfca0a28ba2620b1cd9f
- 8339dc35688574b33b523234ba76fee56d57b369c9c0292644ec2a0cf798244d
- a5fe23186c95bfa9e5df8b3fb28a1922a1e820b8f51401d9042542e18f9aaec1
- c12132f341d19c386a617ff2a607df35648ab6f17106608a575d086fadfe3a04
- c159087ee8af27685a6b46b18cb59dfbcff85a165cd308c5d617eb3f8166b328
- e949a6429530b8b6876073dc025a0cda0d6311a6dc15fcb72b24a3fe6cb86529
- fe0c3682dac042b8cb92e731ace80660d7722782c1c5551ec2a18e747788c73d
付録
HTTPCFを含むGafgytが使用するUser-Agentのサンプル
- MOT-L7/08.B7.ACR MIB/2.2.1 Profile/MIDP-2.0 Configuration/CLDC-1.1
- Mozilla/5.0 (compatible; Teleca Q7; Brew 3.1.5; U; en) 480X800 LGE VX11000
- Mozilla/5.0 (Android; Linux armv7l; rv:9.0) Gecko/20111216 Firefox/9.0 Fennec/9.0
- MOT-V300/0B.09.19R MIB/2.2 Profile/MIDP-2.0 Configuration/CLDC-1.0
- Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; FunWebProducts)
- Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/4.0; FDM; MSIECrawler; Media Center PC 5.0)
- Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:5.0) Gecko/20110517 Firefox/5.0 Fennec/5.0
- Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Safari/530.17 Skyfire/2.0
- SonyEricssonW800i/R1BD001/SEMC-Browser/4.2 Profile/MIDP-2.0 Configuration/CLDC-1.1
- Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; chromeframe/11.0.696.57)
- Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; uZardWeb/1.0; Server_JP)
- Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.19 (KHTML, like Gecko) Chrome/1.0.154.39 Safari/525.19
- Mozilla/5.0 (Linux; Android 4.4.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.89 Mobile Safari/537.36
- Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36
- Mozilla/5.0 (X11; Linux x86_64; U; de; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6 Opera 10.62
- Opera/9.80 (Windows NT 5.1; U;) Presto/2.7.62 Version/11.01
- Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16
- BlackBerry9700/5.0.0.743 Profile/MIDP-2.1 Configuration/CLDC-1.1 VendorID/100
- BlackBerry7520/4.0.0 Profile/MIDP-2.0 Configuration/CLDC-1.1
- Doris/1.15 [en] (Symbian)
- Bunjalloo/0.7.6(Nintendo DS;U;en)
- PSP (PlayStation Portable); 2.00
- Mozilla/4.0 (PSP (PlayStation Portable); 2.00)
- wii libnup/1.0
- Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 Lightning/4.0.2
- Mozilla/5.0 (PLAYSTATION 3; 3.55)
- Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko/20090327 Galeon/2.0.7
- Mozilla/5.0 (Windows; U; Win 9x 4.90; SG; rv:1.9.2.4) Gecko/20101104 Netscape/9.1.0285
- Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; MyIE2; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0)
- Mozilla/5.0 (Windows; U; Windows NT 6.1; cs; rv:1.9.2.6) Gecko/20100628 myibrow/4alpha2
- Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.6) Gecko/2009020911
- Mozilla/5.0 (Windows; U; Windows NT 6.1; rv:2.2) Gecko/20110201
- Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en; rv:1.8.1.11) Gecko/20071128 Camino/1.5.4
- Mozilla/5.0 (compatible; U; ABrowse 0.6; Syllable) AppleWebKit/420+ (KHTML, like Gecko)
- Mozilla/5.0 (X11; U; Linux ppc; en-US; rv:1.9a8) Gecko/2007100620 GranParadiso/3.1
- Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0