This post is also available in: English (英語)
原著者からのコメント
2021年6月8日に本稿でTeamTNTにアトリビュートしたクリプトジャックキャンペーンの背後にWatchDogというグループがいたことを示す新たな証拠が出てきました。この情報により、Unit 42のリサーチャーが当初収集した証拠に対する私たちの見方が変わりました。
具体的にいうと、ドメイン oracle.zzhreceive[.]top に zzhreceive という言葉が使われていたことから、このドメインは当初TeamTNTのオペレーションとのリンクが行われていました。というのも、この言葉がそれまでに複数のTeamTNTのオペレーションで確認されていたためです。しかしながら最近の動向や、クラウドリサーチコミュニティ内の分析結果から明らかになってきたことを踏まえると、このドメインはWatchDogと呼ばれるグループと関連するクリプトジャックオペレーションに帰属すると考えられるようになってきました。 そこで6月8日のブログを更新し、WatchDogがTeamTNTの活動を模倣しているという現在の情報コミュニティの情報をより正確に反映させた内容といたしました。
概要
クリプトマイニング用のオペレーションコードベースやスクリプト機能をコピーして組み込むことは、クリプトジャック攻撃を行うグループやそのオペレーションの中心的行動指標となっています。Unit 42のリサーチャーは、クリプトジャック攻撃グループTeamTNTの使用する戦術、技術、手順(TTPs)が、別のクリプトジャック攻撃グループWatchDogに使用されていることを確認しました。WatchDogによる新しいスクリプトは、TeamTNTインフラストラクチャの命名規則をあからさまにコピーし、既知のWatchDog C2ホスティングシステムである199.199.226[.]117を使用しています。
これらの新しいWatchDogスクリプトが確認されたことで、Unit 42のリサーチャーは、同グループの代名詞となっていたテクニックがなくなっていることに気付きました。たとえば新しいスクリプトは以下を行わなくなっていました。
- 最新の攻撃パターンであるKubernetes(K8s)やDocker APIの標的化。これについては、TeamTNTのオペレーションに焦点を当てた2つのレポート「脅威攻撃グループTeamTnTによる新たなクリプトジャックマルウェア亜種Black-T」と「Hildegard: Kubernetesを標的とする新たなTeamTNTのクリプトジャックマルウェア」で取り上げています。
- 侵害したクラウドインスタンス上に見つかった識別済み認証情報の漏出。
- ネットワークスキャンツール「zgrab」の利用。
またリサーチャーは、新しいWatchDogのスクリプトには、従来はWatchDogに関連していたエクスプロイト組み込み済みのGoLangバイナリが使用されていないことを確認しています。
これらの新しいスクリプトの作者はWatchDogであると考えられていますが、スクリプトのいくつかはTeamTNTが所有する公開マルウェアリポジトリ内で発見されています。WatchDogは、クリプトジャックオペレーションを拡大すると同時に、TeamTNTが行っているクリプトジャックオペレーションに似せることでオペレーションを隠蔽しようとしている可能性があります。
クリプトジャック攻撃を行うグループの間では、ほかのグループのTTPを盗む、ハイジャックする、他のグループのオペレーションに自らのオペレーションを組み込む、という行為が傾向として見られるようになってきています。最も注目すべきは、TeamTNTが、侵害済みのインスタンスからAlibaba Cloud Securityを検出して削除するコードをKinsingグループからコピーしたと報告されている点でしょう。「Rocke」をはじめとするクリプトジャッキク攻撃グループも「The 8220 Mining Group」の作成したクリプトジャックオペレーションからGitHubリポジトリをフォークして始まっていますし、そのオペレーションのクリプトマイニングコードベースの最大30%は「Pacha」というグループが開発したツールと共通です。PachaとRockeはその後2年近くクリプトジャック戦争を行い、このことは文書化もされています。最近のPachaの活動についてはほとんどリサーチがありませんが、Rockeは今でも新しいマルウェアを開発しています。
パロアルトネットワークス製品をご利用のお客様は、Prisma Cloudのランタイム保護、Cryptominer Detection、Prisma Cloud Compute Kubernetes Compliance Protectionによって本稿で説明したこれらの脅威から保護されています。これは、不十分なKubernetes構成を警告し、安全な代替手段を提供します。さらに、パロアルトネットワークスのVM-SeriesおよびCN-Series製品は、クラウド保護機能を備えており、既知の悪意のあるIPアドレスやURLに向けたクラウドインスタンスからのネットワーク接続を防止することができます。
新しいWatchDogマルウェア
TeamTNTのオペレーションを模倣するWatchDogのテクニックの進化を示すサンプルとしては、36ca9f84864ad022c255b7d91e75997f035716e4df5dc1c90ee2651f092f5d79と49366ae4766492d94136ca1f715a37554aa6243686c66bf3c6fbb9da9cb2793dの2つがあげられます。これらのサンプルは、それぞれ2020年12月5日と2020年12月11日に初めて確認されたもので、既知のWatchDogのC2インフラが新しいC2インフラに直接置き換えられたことを示しています。図1に示すように、濃い青の矩形で示したオリジナルのWatchDogインフラはbashスクリプトからコメントアウトされており、水色の矩形で示した新しいインフラストラクチャに置き換えられています。
この新しいスクリプトは、図2に示すように、b2f628(赤の矩形)とb2f628fff19fda999999999(オレンジの矩形)という、既知のWatchDogオペレーションに存在しているURLアドレスのディレクトリツリーパターンを正確に利用しています。
この2つのサンプルには、図3に示すように、ハードコードされたMonero(XMR)のウォレットアドレスと、関連するマイニングプールが含まれています。
マイニングプール
その可能性は極めて低いですが、これらの変更が実際にTeamTNTの新たな振る舞いであるとするならば、TeamTNTがクリプトジャックオペレーションにこれまで利用していたMoneroマイニングプールMoneroOcean[.]stream以外のマイニングプールを使用した初の事例となります。今回のクリプトジャックオペレーションでは、これまでTeamTNTのアクターが使用していたことはなく、WatchDogのオペレーションで観測されていた2つの新しいマイニングプールが導入されています。その2つとは、図4に示したnanopool[.]orgと、図5に示したf2pool[.]comです。これら新しいマイニングプールはいずれもMoneroのウォレットアドレス「43Xbgtym2GZWBk87XiYbCpTKGPBTxYZZWi44SWrkqqvzPZV6Pfmjv3UHR6FDwvPgePJyv9N5PepeajfmKp1X71EW7jx4Tpz」を使用するように指定されています。
マイニングプールワーカーの情報
注目すべきはマイニングプール内でこのMoneroのウォレットアドレスに関連しているマイニングプールワーカー名でしょう。このMoneroウォレットのアドレスに関連するnanopool[.]orgの記録によると図6に示すように合計20人の一意なワーカーが存在しています。
次の表1は、現在知られている悪意のあるサンプルのうち、Moneroウォレットアドレス、Nanopoolマイニングプール、図6に記載されているワーカーの1人の名前を含む19個のサンプルを示したものです。
SHA256 | ワーカー |
0414946ab4bced2c1c41f4b8a75be672b34bbdee6f29e0a0bf7946b93f7044b1 | 3910 |
34b547b567309618422d7075322ddf5b9e0b3a4fb652f3845d12fd649f23923e | 3910 |
62957aa4421c044927269e9bf3300515cf01225fd4c3c3811f8ebfac7a9f8585 | 3910 |
f235c021baa6c8801e724d45003b1b1541eea5483810abc9c3eb4df6bf05afbf | 3910 |
2bc6c21d35ed63b135b4723444a9ac532e4cb6aaa2bbd63c557136edb4e4756f | crondk1 |
cbf54a9e5771fcb3760e4e282f003a879164e76b9df9fed0fe4e4e8aaaef11ae | crondk1 |
428633aee75f7c69a7c0612e591d5fcecbcf13619d6c05b86c8303a248c7c8d7 | dk2 |
7b6f7c48256a8df2041e8726c3490ccb6987e1a76fee947e148ea68eee036889 | dk2 |
10fb8d16f7d168340be28c6d0ba94e10c15370c8747d97bc0e5fad4b4466cf09 | dream |
3b280a4017ef2c2aef4b3ed8bb47516b816166998462899935afb39b533890ad | dream |
8adc8be4b7fa2f536f4479fa770bf4024b26b6838f5e798c702e4a7a9c1a48c6 | dream |
af611a41c55e9afcfaced8b067a470caa70825fce0a44167f44a8d3880ae6674 | dream |
e1d7014b84618cd7fbf94439c78fe7d67f351cbc5536885fa3d94ea15325d83b | dream |
eca42c42f0909cf4e6df6bf8de35ab93ef6a3dd10d0d5e556721ec1871a9990c | dream |
ae6822d1fd097e8c52cea3731cd49f50600b7da83e9f0ea6dbc689685f907739 | dream3 |
3b280a4017ef2c2aef4b3ed8bb47516b816166998462899935afb39b533890ad | dream5 |
ae3e4a1c8a2b661265e6c8c756e3ba472dc7177cae79fe1861ab0c2d1af5167a | dream6 |
8adc8be4b7fa2f536f4479fa770bf4024b26b6838f5e798c702e4a7a9c1a48c6 | dream8 |
33da23085fb6fd7aad89e0c55b7ccbc2ee50fec4e8e31030e4b2a4ef034ac5f6 | pokemon2 |
表1 Nanopoolのマイニングオペレーションワーカーがハードコードされたマルウェアのサンプル
また、43XbのMoneroウォレットアドレスを含む悪意のあるサンプルは13個ありましたが、これらのサンプルはnanopool[.]org Moneroマイニングプールではなくf2pool[.]comマイニングプールを使用するように設計されています(表2参照)。
SHA256 | ワーカー | WatchDogウォレット |
f235c021baa6c8801e724d45003b1b1541eea5483810abc9c3eb4df6bf05afbf | 3910 | |
3d8a6f5d8162e8eb78e7b95384ec6418f65b904dffa8fd983a6a19a5645ad707 | clean | |
c141eaeab461a2481124a73ee2d254301573d8722dbf3221f5fc54d7770e67a2 | clean | Yes |
64072e7c56895f59124c4e26e0dd65a4de0bd8280c83372c18f9835978cda0e9 | clean | |
30f0207b74d6d2d17cd8f4dc9f9131bd8763702f19c87ce74ea13a634f52c995 | clean | Yes |
7a8c91f4228be4d36e1087acc9bb046373ddfde506fe4645ad1b0967c08bfa8b | clean | Yes |
7848fc64c9977796dcc0ee67c293f006d715d3b3e257a3c0f4654cefab637c45 | clean | Yes |
3e6cf5ae8ce6ff7305da4e218a20ec7f57933235ec07d7ff6e6a18c7c844ff29 | clean | Yes |
8d9bdcae4a4559e52b3d03209a1ef880e948d9f3969f7779119d9322c5f7cf7c | clean | Yes |
ab73aedbee66081cd047b19a4bb036f85791a9ae9abc90545c5d8756bbc2a428 | clean | Yes |
eca42c42f0909cf4e6df6bf8de35ab93ef6a3dd10d0d5e556721ec1871a9990c | dream | |
e47802d7f44fc9e594b89ef33298367d21695d5ec1ae5e6c526b9f3124c555ca | Undefined | |
cf890e288f4fb7a2cfb0aa7e91229cc51c224e767c6ca69bbbb9d06e999ede64 | Undefined |
表2 f2poolのマイニングオペレーションワーカーがハードコードされたマルウェアのサンプル
前表中の7つのサンプルには、図7に示すように、WatchDogが確認した43XB Moneroウォレットアドレスを使用しているプロセスを見つけて削除する指示が含まれています。
このスクリプトはその後マイニングオペレーションを再構築してWatchDogのMoneroのウォレットアドレスとして知られている2つのアドレスの利用を開始します。つまり82etS8QzVhqdiL6LMbb85BdEC3KgJeRGT3X1F3DQBnJa2tzgBJ54bn4aNDjuWDtpygBsRqcfGRK4gbbw3xUy3oJv7TwpUG4 と、 87q6aU1M9xmQ5p3wh8Jzst5mcFfDzKEuuDjV6u7Q7UDnAXJR7FLeQH2UYFzhQatde2WHuZ9LbxRsf3PGA8gpnGXL3G7iWMvの2つです。この2つのMoneroウォレットはWatchDogクリプトジャック攻撃グループに関連する既知の3つのMoneroウォレットのうちの2つにすぎません。注目すべきは図8に記載されているIPアドレス139.99.102[.]72は、前述のxmr-asia1.nanopool[.]orgマイニングプールに解決されることです。
WatchDogのインフラをTeamTNTに結びつける
サンプル36bf7b2ab7968880ccc696927c03167b6056e73043fd97a33d2468383a5bafce(図9参照)で示したURLアドレスとMoneroウォレットアドレス87A5fSCR98nFSR9NCRxt6UFytca3hJXaRdDgf9NxhWTjT3q3AA8HECyZ1FdF93D5LPXsSqS8dKNsxCxafrbuVeZfMW3V7ibは既知のWatchDogの指標です。しかし、このサンプルには、TeamTNTの既知のメールアドレスであるhilde@teamtnt[.]redも含まれています。
次に、マルウェアサンプル8adc8be4b7fa2f536f4479fa770bf4024b26b6838f5e798c702e4a7a9c1a48c6を見てみましょう。このサンプルには図10に示すように新しいWatchDogのMoneroウォレットが含まれています。図9に示すTeamTNTの既知のIoCと同じMOxmrigMODのURLアドレスが存在していますが、このサンプルではWatchDogインフラと非常に強い結びつきのある追加のURLアドレス、特にドメイン名oracle.zzhreceive[.]topを含むURLアドレスも見られます。
これらの新しいスクリプト(図9および図10)にC2インフラが存在し、どちらもWatchDogのディレクトリであるb2f628を使用していることから、そこにはTeamTNTのインフラスとの明確なつながりがあります。ドメインoracle.zzhreceive[.]topはIPアドレス199.19.226[.]117に解決されますが、このIPアドレスは既知のTeamTNTサブドメインzzhrecieve.anondns[.]netの解決先IPアドレスでもあります。
irc.anondns[.]net、ircbd.anondns[.]net、sampan.anondns[.]net、teamtntisback.anondns[.]netなどを含むanondns[.]netドメインの使用は、複数のレポートで数々のTeamTNTキャンペーンとの関連が指摘されています。くわえて199.19.226[.]117のシステムはhxxp://global.bitmex[]com[]de/cf67355a3333e6/1.0.4.tar.gzにホストされているツールキットファイル1.0.4.tar.gz( 51de345f677f46595fc3bd747bfb61bc9ff130adcbec48f3401f8057c8702af9)を通じてWatchDogのオペレーションにもつながっています。このツールキットファイルにはTeamTNTのオペレーションで使用されているツールキットと同じmasscanユーティリティのC言語のコードが含まれています。bitmex[.]com[.]deというURLは過去にWatchDogクリプトジャック攻撃グループにリンクされています。
TeamTNTのマルウェアリポジトリ
マルウェアリポジトリ85.214.149[.]236:443/sugarcrm/themes/default/images/には、既知のTeamTNTリポジトリhxxp://dockerupdate.anondns[.]net:443/sugarcrm/themes/default/images/のものと同じファイルを含む既知のTeamTNTマルウェアが含まれています。この既知のTeamTNTリポジトリは、図11に示すように、マルウェアサンプル1aaf7bc48ff75e870db4fe6ec0b3ed9d99876d7e2fb3d5c4613cca92bbb95e1bを介してTeamTNTにリンクされています。
なおこのリポジトリに含まれるマルウェアサンプルのなかには、Unit 42のBlack-Tブログで紹介したKubernetesとDockerに特化したマルウェア「kube.jpg」と「tshd」が存在していましたが、これらは本稿で紹介した新しいスクリプトでは使用されなくなっているようです。マルウェアリポジトリから収集した既知のTeamTNTマルウェアのメタデータの全リストについては、付録を参照してください。
マルウェアのサンプル0414946ab4bced2c1c41f4b8a75be672b34bbdee6f29e0a0bf7946b93f7044b1は、ハードコードされたIPアドレス199.19.226[.]117、nanopoolおよびf2poolマイニングプールに関連するハードコードされたMoneroウォレットアドレス、および前述のマイニングワーカーが含まれているため、この文脈で注目されます(図12および13)。前のセクションで述べたように、IPアドレス199.19.226[.]117は、既知のTeamTNTドメインzzhrecieve.anondns[.]netにも解決します。
最後にUnit 42のリサーチャーのひとりが図14に示すまた別のTeamTNTのマルウェアリポジトリを特定しました。より大きいChimaeraリポジトリには既知のTeamTNTのクリプトジャックスクリプトとバイナリファイルが含まれています。spread/redisディレクトリ内には、ハッシュ値3b14c84525f2e56fe3ae7dec09163a4a9c03f11e6a8d65b021c792ad13ed2701をもつファイルb.shが見つかっており、このファイルが本稿で説明したクリプトジャックオペレーションとTeamTNTとを直接結びつけています。
b.shスクリプトには、43xbというTeamTNTとWatchDogのMoneroウォレットアドレスが含まれており、これは199.19.226[.]117のTeamTNTとWatchDogのIPアドレスを指しています(図15)。また、図16に示すように、既知のTeamTNTドメインborg[.]wtfにホストされている既知のTeamTNTクラウド列挙スクリプトへのハードコードされたリンクが含まれています。
このborg[.]wtfというドメインは以前のUnit 42レポートでTeamTNTにリンクされています。TeamTNTとWatchDogの相関はこのb.shスクリプトで本質的につながっています。
結論
以上の証拠を踏まえると、WatchDogのオペレーションは、TeamTNTクリプトジャック攻撃グループのTTPを取り入れつつ、独自のクリプトジャックオペレーションを大幅に拡大させていると思われます。この新しいWatchDogのオペレーションでは、TeamTNTが最近使用していた高度な機能、すなわちクラウドの認証情報のスクレイピングや、KubernetesやDockerに焦点を当てたラテラルムーブや、エクスプロイトスクリプトは利用していないようです。
またこの新しいオペレーションに、これまでWatchDogとの関連が見られたWindowsや*NIXベースのOSを悪用可能な高度なGoLangバイナリが組み込まれていない点も注目に値するでしょう。
WatchDogのアクターは、TeamTNTが行っている既知のクリプトジャックオペレーションに紛れ込むと同時に、クリプトジャックオペレーションの拡大を狙っているように見えます。Unit 42のリサーチャーは、このクリプトジャック現象を引き続き監視し、必要に応じて最新情報を提供します。
クラウドインフラストラクチャを保護していくため、Unit 42のリサーチャーは以下のヒントを強く推奨します。
- 既知の悪意のあるエンドポイントへのネットワークトラフィックを監視してブロックする。
- 本番環境では検査済みコンテナイメージのみをデプロイする。
- IaC(Infrastructure as Code)スキャンプラットフォームを導入・使用することで、安全でないクラウドインスタンスが本番環境にデプロイされるのを防ぐ。
- ガバナンス、リスク管理、コンプライアンス(GRC: Governance, Risk management, Compliance)を可能にするクラウドインフラストラクチャ構成スキャンツールを使用して、脅威となりうる設定ミスを特定する。
- クラウドエンドポイントエージェントを使用して、クラウドインフラストラクチャ内の既知の悪意のあるアプリケーションの実行を監視・防止する。
パロアルトネットワークスのPrisma Cloudをご利用のお客様は、ランタイム保護、Cryptominer Detection、Prisma Cloud Compute Kubernetes Compliance Protectionを使ってKubernetesの設定ミスについて警告を受けたり安全な代替手段を提供してもらうことで、これらの脅威から保護されています。さらに、パロアルトネットワークスのVM-SeriesおよびCN-Series製品は、クラウド保護機能を備えており、既知の悪意のあるIPアドレスやURLに向けたクラウドインスタンスからのネットワーク接続を防止することができます。
IoC
IPアドレス
103.125.218[.]107
47.253.42[.]213
176.123.10[.]57
39.100.33[.]209
45.9.150[.]36
106.15.74[.]113
45.9.148[.]35
13.245.9[.]147
85.214.149[.]236
45.9.148[.]37
199.19.226[.]117
URLアドレス
85.214.149[.]236:443/sugarcrm/themes/default/images/
hxxp://dockerupdate.anondns[.]net:443/sugarcrm/themes/default/images/
ドメイン
global.bitmex.com[.]de
gsearch.com[.]de
de.gsearch.com[.]de
oracle.zzhreceive[.]top
zzhreceive.anondns[.]net
projectbluebeam.anondns[.]net
Monero(XMR)ウォレット
43Xbgtym2GZWBk87XiYbCpTKGPBTxYZZWi44SWrkqqvzPZV6Pfmjv3UHR6FDwvPgePJyv9N5PepeajfmKp1X71EW7jx4Tpz
Monero (XMR) マイニングプール
xmr-asia1.nanopool[.]org:14444
xmr.f2pool[.]com:13531
Xmr.pool.gntl.co[.]uk:10009
xmr.bohemianpool[.]com
リポジトリのSHA256ハッシュ値
SHA256 | ファイル名 |
a506c6cf25de202e6b2bf60fe0236911a6ff8aa33f12a78edad9165ab0851caf | kube.jpg |
e15550481e89dbd154b875ce50cc5af4b49f9ff7b837d9ac5b5594e5d63966a3 | bioset.jpg |
252bf8c685289759b90c1de6f9db345c2cfe62e6f8aad9a7f44dfb3c8508487a | tshd.jpg |
139f393594aabb20543543bd7d3192422b886f58e04a910637b41f14d0cad375 | default.jpg |
4f115381c17ba1dedb25d35d922feda9a723e206d811ed437b75fd8116ef461b | 21.jpg |
4a5d3435cd4a835056b4940e1cea9a25b1619562525bd9953a120b556b305983 | 22.jpg |
feb0a0f5ffba9d7b7d6878a8890a6d67d3f8ef6106e4e88719a63c3351e46a06 | mod.jpg |
2c40b76408d59f906f60db97ea36503bfc59aed22a154f5d564d8449c300594f | stock.jpg |
9791ab0a00caf9de8df9eab1d8998d1b48bcc7c724b7d833cb1793cadc577e5f | beta.jpg |
72b1cbfbd87c6cd85b9dc1da48c852768003e7fb4f01d8f6904921474be199ad | ms.jpg |
b5f6d6114e1ce863675df1bf2e4bfaeac243e22bb399e64b9a96c6d975330b28 | mo2.jpg |
88585888c4dd2450cc885fc8b75b555ea6f924c78581d5eeae5b54b4b6951ac5 | b_armv7l |
ce5cd41711e74f11d8c01380194d9bb542da08733c81c317ec51089137330e0c | blue.tmp.jpg |
36bf7b2ab7968880ccc696927c03167b6056e73043fd97a33d2468383a5bafce | mos.jpg |
1aaf7bc48ff75e870db4fe6ec0b3ed9d99876d7e2fb3d5c4613cca92bbb95e1b | nk.jpg |
3ef459b97522a8e39953befa2e8c0e970bbbb0f7f9d3e1ff22b0f7759de04be1 | b374k-master.zip |
c0ab7d1caabdd090b2399cd1193d2cc2334218d3f3f0d3164b61b6014fd308e9 | mod.js |
230e2a06df2cd7574ee15cb13714d77182f28d50f83a6ed58af39f1966177769 | Carray.jpg |
b556d266b154c303bb90db005d7dd4267ed8d0e711e3fd32406c64b1fc977f9e | local.jpg |
78037e2d2e596bd450b99551535fa9c38c4e8346ab75eb424bf9e95316424fbe | 01.jpg |
f3b53ebc7cb45c57854059be00ccde4c05cb1d66c4c5c55a93072b76f07a9c38 | armv7l_xmrig.jpg |
ad1133cdcb486bab2368347b3ab35e83e5cd492c4bc6bfcb11a4b4c99d2c8014 | xmrig-6.3.3-linux-static-x64.tar.gz |
bc02d0f9ec27f3c8d23c2f4647007e37a86fd404df0eef76c081fbb895f1be1b | ktu.jpg |
2a373d3e3e61999af09322b35356d26f95e183b1bb6222cae24d28b7b00ca01f | flink.jpg |
bcfa215dec8fe15d4265c508c39c1ebafb7370acc95721e4e7d610b0459eb8dd | jq.jpg |
b63efd9cca6a7379bc2a7e2b1ef721eedb0f3ac95afc14f2dd8db34f95688523 | logs |
79a060a0efcf4a1538c58e532b984dcd927fda17ca9fd10c2ff212f9d9d76be6 | det.jpg |
b257a06a185f07e416f2b5ccc891fb799b82ce06bf1d4620d2439be65556c926 | sok.js |
b485e6ccc9cfeb9c2034cebfeaf1bb3b3db0ac9996e5260fc1e95ce852b757c4 | ssh.jpg |
今回の調査で使用したハッシュ値
0414946ab4bced2c1c41f4b8a75be672b34bbdee6f29e0a0bf7946b93f7044b1 |
05963eaca329830c80a7fa2e9bea3b4ec2fe277f882f68be29befedb80d5738d |
0910f78b68ccf1127a6a8f55d48b55c018149b4d5ab4a3fde56386a61c029ef4 |
10fb8d16f7d168340be28c6d0ba94e10c15370c8747d97bc0e5fad4b4466cf09 |
22174c47cb1aa38ee0f5030597671b2436f1394f8229dc9708863e2e567576e6 |
2bc6c21d35ed63b135b4723444a9ac532e4cb6aaa2bbd63c557136edb4e4756f |
30f0207b74d6d2d17cd8f4dc9f9131bd8763702f19c87ce74ea13a634f52c995 |
33da23085fb6fd7aad89e0c55b7ccbc2ee50fec4e8e31030e4b2a4ef034ac5f6 |
34b547b567309618422d7075322ddf5b9e0b3a4fb652f3845d12fd649f23923e |
36ca9f84864ad022c255b7d91e75997f035716e4df5dc1c90ee2651f092f5d79 |
3b14c84525f2e56fe3ae7dec09163a4a9c03f11e6a8d65b021c792ad13ed2701 |
3b280a4017ef2c2aef4b3ed8bb47516b816166998462899935afb39b533890ad |
3b53ed760142431ad45e550fd7a8d5c44ea4342619d9882909d8e3936283ec72 |
3d8a6f5d8162e8eb78e7b95384ec6418f65b904dffa8fd983a6a19a5645ad707 |
3e6cf5ae8ce6ff7305da4e218a20ec7f57933235ec07d7ff6e6a18c7c844ff29 |
428633aee75f7c69a7c0612e591d5fcecbcf13619d6c05b86c8303a248c7c8d7 |
466823948c92531a171a5ecb04339074cabd9d700ae67ea332f82cb3838490d2 |
49366ae4766492d94136ca1f715a37554aa6243686c66bf3c6fbb9da9cb2793d |
62957aa4421c044927269e9bf3300515cf01225fd4c3c3811f8ebfac7a9f8585 |
64072e7c56895f59124c4e26e0dd65a4de0bd8280c83372c18f9835978cda0e9 |
7848fc64c9977796dcc0ee67c293f006d715d3b3e257a3c0f4654cefab637c45 |
7a8c91f4228be4d36e1087acc9bb046373ddfde506fe4645ad1b0967c08bfa8b |
7b6f7c48256a8df2041e8726c3490ccb6987e1a76fee947e148ea68eee036889 |
8adc8be4b7fa2f536f4479fa770bf4024b26b6838f5e798c702e4a7a9c1a48c6 |
8d9bdcae4a4559e52b3d03209a1ef880e948d9f3969f7779119d9322c5f7cf7c |
ab73aedbee66081cd047b19a4bb036f85791a9ae9abc90545c5d8756bbc2a428 |
ae3e4a1c8a2b661265e6c8c756e3ba472dc7177cae79fe1861ab0c2d1af5167a |
ae6822d1fd097e8c52cea3731cd49f50600b7da83e9f0ea6dbc689685f907739 |
af611a41c55e9afcfaced8b067a470caa70825fce0a44167f44a8d3880ae6674 |
c141eaeab461a2481124a73ee2d254301573d8722dbf3221f5fc54d7770e67a2 |
c850fa9c2cdcf77dc0e7732785473db8881efe49935ddb7c6da9f3d1911a469f |
cbf54a9e5771fcb3760e4e282f003a879164e76b9df9fed0fe4e4e8aaaef11ae |
cf890e288f4fb7a2cfb0aa7e91229cc51c224e767c6ca69bbbb9d06e999ede64 |
e1d7014b84618cd7fbf94439c78fe7d67f351cbc5536885fa3d94ea15325d83b |
e47802d7f44fc9e594b89ef33298367d21695d5ec1ae5e6c526b9f3124c555ca |
eca42c42f0909cf4e6df6bf8de35ab93ef6a3dd10d0d5e556721ec1871a9990c |
f235c021baa6c8801e724d45003b1b1541eea5483810abc9c3eb4df6bf05afbf |