ZoomEye を使用して APT 攻撃を検出する分析例
ZoomEye 上のオンライン データは上書き更新モードになっており、2 回目のスキャンでデータがスキャンされない場合、更新されたデータは上書きされません。ZoomEye 上のデータは、1 回目のスキャンで取得されたバナー データを保持します。このメカニズムは、実際には、この種の悪意のある攻撃ソースの追跡に適したシーンを持っています: ボットネット、APT、その他の攻撃などの悪意のある攻撃に使用されるダウンロード サーバーは、発見された後、通常は直接非アクティブ化され、放棄されます。非常に暴力的で、すぐにオフラインになりました。したがって、多くの攻撃サイトが ZoomEye によってオンラインにキャッシュされる可能性があります。
もちろん、ZoomEye 履歴 API で提供されるデータは、カバーしているかどうかに関係なく、スキャンごとにクエリできますが、現在提供されている ZoomEye 履歴 API は IP 経由でのみクエリでき、キーワード経由ではクエリできません。一致検索なので、上記の ZoomEye オンライン キャッシュ データ検索および位置特定と組み合わせて使用する必要があります。
ケース 1: Darkhotel APT
数日前、実際に「ブラック テクノロジー」ナレッジ プラネットでこの件について言及しましたが、修正が必要な「バグ」が 1 つだけあります。 Darkhotel が今回使用した IE 0day は CVE-2020-0674 ではなく CVE-2019-1367 です (勋肉丁@奇安信に感謝) もちろん、この「バグ」はこの記事のテーマには影響しません。
上の図からわかるように、ZoomEye オンライン データを使用して、当時の Darkhotel 水たまり攻撃サイトの IP アドレスを特定しました。ZoomEye SDK を使用してクエリを実行しました。この IP の履歴:
╭─heige@404Team ~╰─$python Python 2.7.16 (default, Mar 15 2019, 21:13:51)[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.11.45.5)] on darwinType "help", "copyright", "credits" or "license" for more information. import zoomeye zm = zoomeye.ZoomEye(username="xxxxx", password="xxxx") zm.login() u'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpX...' data = zm.history_ip("202.x.x.x") 22
ZoomEye 履歴データにこの IP データを含むタイム ノードと対応するポート サービスをリストします
... >>>for i in data['data']: ... print(i['timestamp'],i['portinfo']['port']) ... (u'2020-01-28T10:58:02', 80) (u'2020-01-05T18:33:17', 80) (u'2019-11-25T05:27:58', 80) (u'2019-11-02T16:10:40', 80) (u'2019-10-31T11:39:02', 80) (u'2019-10-06T05:24:44', 80) (u'2019-08-02T09:52:27', 80) (u'2019-07-27T19:22:11', 80) (u'2019-05-18T10:38:59', 8181) (u'2019-05-02T19:37:20', 8181) (u'2019-05-01T00:48:05', 8009) (u'2019-04-09T16:29:58', 8181) (u'2019-03-24T20:46:31', 8181) (u'2018-05-18T18:22:21', 137) (u'2018-02-22T20:50:01', 8181) (u'2017-03-13T03:11:39', 8181) (u'2017-03-12T16:43:54', 8181) (u'2017-02-25T09:56:28', 137) (u'2016-11-01T00:22:30', 137) (u'2015-12-30T22:53:17', 8181) (u'2015-03-13T20:17:45', 8080) (u'2015-03-13T19:33:15', 21)
埋め込まれたタイム ノードとポートを見てみましょうIE の水飲み場攻撃の 0day:
>>> for i in data['data']: ... if "164.js" in i['raw_data']: ... print(i['timestamp'],i['portinfo']['port']) ... (u'2020-01-28T10:58:02', 80) (u'2020-01-05T18:33:17', 80) (u'2019-11-25T05:27:58', 80) (u'2019-11-02T16:10:40', 80) (u'2019-10-31T11:39:02', 80) (u'2019-10-06T05:24:44', 80)
明らかに、この水飲み場攻撃のおおよその時間範囲は 2019-10-06 05:24:44 から 2020-01-28 10:58:02 です。また、このIPは明らかに攻撃者が購入したものではなく、VPSなどを利用して特定のWebサイトを攻撃の水飲み場として直接攻撃しており、2019年10月6日の時点でこのIP Webサイトが侵入されていたことは確実です。 !この水たまりの Web サイトの性質から、基本的に Darkhotel の攻撃の主なターゲットは、この Web サイトにアクセスするユーザーであると推測できます。
考えられる侵入ポイントの分析に役立つように、この IP が 2019 年にどのポート サービスをオープンしたかを引き続きリストしてみましょう:
>>> for i in data['data']: ... if "2019" in i['timestamp']: ... print(i['timestamp'],i['portinfo']['port'],i['portinfo']['service'],i['portinfo']['product']) ... (u'2019-11-25T05:27:58', 80, u'http', u'nginx') (u'2019-11-02T16:10:40', 80, u'http', u'nginx') (u'2019-10-31T11:39:02', 80, u'http', u'nginx') (u'2019-10-06T05:24:44', 80, u'http', u'nginx') (u'2019-08-02T09:52:27', 80, u'http', u'nginx') (u'2019-07-27T19:22:11', 80, u'http', u'nginx') (u'2019-05-18T10:38:59', 8181, u'http', u'Apache Tomcat/Coyote JSP engine') (u'2019-05-02T19:37:20', 8181, u'http', u'Apache Tomcat/Coyote JSP engine') (u'2019-05-01T00:48:05', 8009, u'ajp13', u'Apache Jserv') (u'2019-04-09T16:29:58', 8181, u'http', u'Apache httpd') (u'2019-03-24T20:46:31', 8181, u'http', u'Apache Tomcat/Coyote JSP engine')
2019 年 5 月の非常に典型的な JSP オペレーティング環境当時、ポート 8009 はTomcat バックエンド管理の脆弱なパスワードなどの問題は、常に一般的な侵入手段となってきました~~
ちなみに、実際には、この攻撃には別の IP も含まれています。アップデートがカバーされているため、ZoomEye オンライン検索で直接検索することはできません。ただし、IP がわかっている場合は、ZoomEye 履歴データ API を使用して、この IP の履歴データをクエリすることもできます。ここでは詳細は説明しません。
ケース 2: ポイズン・アイビー (APT-C-01)
ポイズン・アイビー (APT-C-01) の詳細なレポートについては、以下を参照してください。 https://ti.qianxin.com/uploads/2018/09/20/6f8ad451646c9eda1f75c5d31f39f668.pdf 私たちは、
「Poison Ivy 組織が攻撃ペイロードを制御および配布するために使用するツール」に直接焦点を当てます。 制御ドメイン名 http://updateinfo.servegame.org"
"次に、
hxxp://updateinfo.servegame.org/tiny1detvghrt.tmp
"
URL からペイロードをダウンロードします。まず、対応するドメイン名を見つけようとします。 IP、明らかに現時点ではあまり取得されていません:
╭─heige@404Team ~╰─$ping updateinfo.servegame.orgping: cannot resolve updateinfo.servegame.org: Unknown host
Qi Anxin のレポートでは、使用されているダウンロード サーバーの WEB サービス ディレクトリを横断できることがわかります
したがって、ファイル名「tiny1detvgult.tmp」を直接検索してみると、確かにそれが見つかりました。
>>> data = zm.history_ip("165.227.220.223") >>> 9 >>> for i in data['data']: ... print(i['timestamp'],i['portinfo']['port']) ... (u'2019-06-18T19:02:22', 22) (u'2018-09-02T08:13:58', 22) (u'2018-07-31T05:58:44', 22) (u'2018-05-20T00:55:48', 80) (u'2018-05-16T20:42:35', 22) (u'2018-04-08T07:53:00', 80) (u'2018-02-22T19:04:29', 22) (u'2017-11-21T19:09:14', 80) (u'2017-10-04T05:17:38', 80)
>>> for i in data['data']: ... if "tiny1detvghrt.tmp" in i['raw_data']: ... print(i['timestamp'],i['portinfo']['port']) ... (u'2018-05-20T00:55:48', 80) (u'2018-04-08T07:53:00', 80) (u'2017-11-21T19:09:14', 80)
>>> for i in data['data']: ... if "2017-10-04" in i['timestamp']: ... print(i['raw_data']) ... HTTP/1.1 200 OK Date: Tue, 03 Oct 2017 21:17:37 GMT Server: Apache Vary: Accept-Encoding Content-Length: 1757 Connection: close Content-Type: text/html;charset=UTF-8nbsp;HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <title>Index of /</title> <h2 id="Index-of">Index of /</h2>
Name a> | Last modified a> | Size a> | Description a> | |
---|---|---|---|---|
doajksdlfsadk.tmp a> | 2017-09-15 08:21 | 4.9K | ||
doajksdlfsadk.tmp.1 a> | 2017-09-15 08:21 | 4.9K | ||
doajksdlrfadk.tmp a> | 2017-09-27 06:36 | 4.9K | ||
dvhrksdlfsadk.tmp a> | 2017-09-27 06:38 | 4.9K | ||
vfajksdlfsadk.tmp a> | 2017-09-27 06:37 | 4.9K | ||
wget-log a> | 2017-09-20 07:24 | 572 | ||
以上がZoomEye を使用して APT 攻撃を検出する分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









ZoomEye 上のオンライン データは上書き更新モードになっており、2 回目のスキャンでデータがスキャンされない場合、更新されたデータは上書きされず、ZoomEye 上のデータは 1 回目のスキャンで取得されたバナー データを保持します。実際、ボットネット、APT、その他の攻撃などの悪意のある攻撃に使用されるダウンロード サーバーは、通常、発見された後、直接非アクティブ化され、破棄されます。一部はハッキングのターゲットであり、非常に暴力的でもあります。直接オフラインにしましょう。したがって、多くの攻撃サイトが ZoomEye によってオンラインにキャッシュされる可能性があります。もちろん、ZoomEye 履歴 API で提供されるデータを使用すると、カバーしているかどうかに関係なく、各スキャンで取得されたバナーの数をクエリできます。

一般に、有名な Linux システムは、RedHat シリーズ: Redhat、Centos、Fedora など、Debian シリーズ: Debian、Ubuntu などの 2 つのカテゴリに大別されます。 yum (YellowdogUpdater、修正版) は、Fedora、RedHat、SUSE のシェル フロントエンド パッケージ マネージャーです。 apt (AdvancedPackagingTool) は、Debian および Ubuntu のシェル フロントエンド パッケージ マネージャーです。概要 一般に、有名な Linux システムは基本的に 2 つのカテゴリに分類されます。 RedHat シリーズ: Redhat、Cento

脅威情報処理サイクル モデルについて 「脅威情報処理サイクル」(F3EAD) という用語は軍隊に由来しており、主な戦闘部隊のすべてのレベルで米陸軍の指揮官によって設計された資源を組織し、部隊を展開するための方法です。 Network Emergency Response Center は、この方法を活用し、次の 6 つの段階で脅威インテリジェンス情報を処理します。 脅威インテリジェンス処理サイクル F3EAD 脅威インテリジェンス処理サイクル モデルの適用 ステップ 1: 特定の月の日付を見つけて、パートナーのパブリック データベースに展開します。クラウド サーバー 「Onion」システム アラームによって、疑わしいトロイの木馬プログラムが検出されたため、緊急対応チームはすぐに緊急対応プロセスを開始しました。関係者やその他の人々がワンクリックでグループを集めて通報しました。被害者のシステムは調査のために隔離されます。セキュリティ システムと監査ログは、トレーサビリティ分析のためにエクスポートされます。侵入侵害と被害者を分析するためのビジネス システム アーキテクチャとコード関連情報の準備

Deepin システムに PHP8 をインストールするには、以下の手順に従います。 システムを更新します。 ターミナルを開き、次のコマンドを実行してシステム パッケージを更新します。 sudoaptupdatesudoaptupgrade Ondřej SurýPPA ソースの追加: PHP8 は、Ondřej SurýPPA ソースを通じてインストールできます。次のコマンドを実行してソースを追加します。 sudoaptinstallsoftware-properties-commonsudoadd-apt-repositoryppa:ondrej/php パッケージ リストを更新します。 次のコマンドを実行してパッケージ リストを更新し、PPA ソースで PHP を取得します。

Ubuntu の apt-get ソースを手動で変更する 1. ssh ツールを使用して Ubuntu に接続します (私は xshell を使用します) 2. コマンド ラインに cd/etc/apt/3 と入力し、このディレクトリ内のsource.list ファイルをバックアップします (必ずバックアップしてください)。 4. source.list ファイルの内容をクリアします (注: クリア後は復元できないため、前の手順を実行してファイルをバックアップする必要があります)このとき、sudo を使用して権限が不足していることを確認するメッセージが表示されます。直接 root ユーザーに切り替えてこのコマンドを実行します。 5. vim を使用してsource.list を開き、i キーを押して編集モードに入り、ファイルを貼り付けます。変更する送信元アドレスを選択し、 を押します。

MySQL 5.7 は、公式 MySQL APT リポジトリを使用してインストールできます。以下は、Ubuntu20.04 システム上の公式 APT リポジトリを介して MySQL5.7 をインストールする手順です。 MySQLAPT リポジトリを追加します: wgethttps://dev.mysql.com/get/mysql-apt-config_0.8.17-1_all.debsudodpkg- imysql -apt-config_0.8.17-1_all.deb インストールプロセス中に、設定インターフェイスが表示されます。 MySQLServer のバージョンとして 5.7 を選択し、構成を完了します。アップデートパッケージリスト: sud

以下は、Ubuntu18.04 システムで Docker をコンパイルおよびインストールするためのチュートリアルです。 古いバージョンの Docker をアンインストールします (インストールされている場合): sudoaptremovedockerdocker-enginedocker.iocontainerdrunc システム パッケージを更新します: sudoaptupdatesudoaptupgrade Docker の依存関係をインストールします: sudoaptinstallapt-transport-httpsca-certificatescurlsoftware-properties -commonDocker公式GPGキーを追加:curl-

yum は RedHat シリーズ ディストリビューション (RHEL や CentOS など) のパッケージ マネージャーですが、Ubuntu は apt (AdvancedPackageTool) と呼ばれる別のパッケージ マネージャーを使用します。 Ubuntu システムでは、apt コマンドを使用してソフトウェア パッケージを管理できます。 Ubuntu システムにパッケージをインストールする基本的な手順は次のとおりです。 パッケージ インデックスの更新 インストール操作を実行する前に、まず次のコマンドを実行してパッケージ インデックスを更新します。 sudoaptupdate パッケージのインストール 次のコマンドを使用して、特定のパッケージをインストールします。 sudoaptinstallpackage_name will "package_name& #822
