hacktricks/pentesting-web/web-tool-wfuzz.md

557 lines
29 KiB
Markdown
Raw Normal View History

2023-07-07 23:42:27 +00:00
# Webツール - WFuzz
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **ハッキングのトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
2022-04-28 16:01:33 +00:00
</details>
2023-07-07 23:42:27 +00:00
WebアプリケーションをFUZZするためのツールです。
2023-07-07 23:42:27 +00:00
> Wfuzzは、Webアプリケーションの評価作業を容易にするために作成されました。これは、与えられたペイロードの値でFUZZキーワードの参照を置き換えるという単純なコンセプトに基づいています。
2023-07-07 23:42:27 +00:00
## インストール
2023-07-07 23:42:27 +00:00
Kaliにインストール済み
Github: [https://github.com/xmendez/wfuzz](https://github.com/xmendez/wfuzz)
2022-08-07 12:55:22 +00:00
```
pip install wfuzz
```
2023-07-07 23:42:27 +00:00
## フィルタリングオプション
### **Code**
### **コード**
```bash
-w <wordlist> Specify a wordlist to use for fuzzing
```
```bash
-w <ワードリスト> ファジングに使用するワードリストを指定します
```
### **Code**
### **コード**
2023-07-07 23:42:27 +00:00
```bash
--hc <code> Hide responses with the specified HTTP code
```
```bash
--hc <コード> 指定されたHTTPコードを持つレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hh <string> Hide responses containing the specified string
```
```bash
--hh <文字列> 指定された文字列を含むレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hs <size> Hide responses with the specified size
```
```bash
--hs <サイズ> 指定されたサイズを持つレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hl <length> Hide responses with the specified length
```
```bash
--hl <長さ> 指定された長さを持つレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hw <word> Hide responses containing words from the specified wordlist
```
```bash
--hw <ワード> 指定されたワードリストの単語を含むレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hcw <word> Hide responses containing words from the specified wordlist in the HTTP code
```
```bash
--hcw <ワード> HTTPコード内の指定されたワードリストの単語を含むレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hlw <word> Hide responses containing words from the specified wordlist in the response length
```
2023-07-07 23:42:27 +00:00
```bash
--hlw <ワード> レスポンスの長さに指定されたワードリストの単語を含むレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hhw <word> Hide responses containing words from the specified wordlist in the response headers
```
```bash
--hhw <ワード> レスポンスヘッダーに指定されたワードリストの単語を含むレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hs <status> Hide responses with the specified status
```
```bash
--hs <ステータス> 指定されたステータスを持つレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hc <cookie> Hide responses with the specified cookie
```
```bash
--hc <クッキー> 指定されたクッキーを持つレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hct <time> Hide responses with a response time greater than the specified time
```
```bash
--hct <時間> 指定された時間よりも長いレスポンス時間を持つレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hcl <length> Hide responses with a response length greater than the specified length
```
```bash
--hcl <長さ> 指定された長さよりも長いレスポンス長を持つレスポンスを非表示にします
```
### **Code**
### **コード**
```bash
--hcs <size> Hide responses with a response size greater than the specified size
```
```bash
--hcs <サイズ> 指定されたサイズよりも大きいレスポンスサイズを持つレスポンスを非表示にします
```
```bash
--hs/ss "regex" #Hide/Show
#Simple example, match a string: "Invalid username"
#Regex example: "Invalid *"
--hc/sc CODE #Hide/Show by code in response
2022-08-07 12:55:22 +00:00
--hl/sl NUM #Hide/Show by number of lines in response
--hw/sw NUM #Hide/Show by number of words in response
--hh/sh NUM #Hide/Show by number of chars in response
--hc/sc NUM #Hide/Show by response code
```
2023-07-07 23:42:27 +00:00
## 出力オプション
wfuzz offers several options for displaying the output of the fuzzing process. These options can be used to customize the format and level of detail in the output.
### Quiet mode
The `-q` or `--quiet` option can be used to suppress all output except for the final results. This is useful when you only want to see the final output and don't need any additional information.
### Verbose mode
The `-v` or `--verbose` option can be used to enable verbose mode, which provides more detailed output. This includes information about each request made during the fuzzing process, such as the request URL, response status code, and response headers.
### Output format
The `-o` or `--output` option can be used to specify the format of the output. By default, wfuzz outputs the results in a table format. However, you can also choose to output the results in other formats, such as JSON or XML, by specifying the appropriate format option.
### Output file
2023-07-07 23:42:27 +00:00
The `-o` or `--output` option can also be used to specify the output file. By default, wfuzz outputs the results to the console. However, you can redirect the output to a file by specifying the file path after the `-o` option.
2023-07-07 23:42:27 +00:00
### Output filtering
The `-f` or `--filter` option can be used to filter the output based on specific criteria. This allows you to only display the results that match the specified criteria. For example, you can filter the output to only show the results with a specific response status code or response length.
### Output coloring
The `--hc` or `--highlight-color` option can be used to enable output coloring. This highlights specific parts of the output, such as the request URL or response status code, in different colors to make it easier to read and analyze.
These output options provide flexibility and customization in how the fuzzing results are displayed, allowing you to focus on the information that is most relevant to your needs.
```bash
wfuzz -e printers #Prints the available output formats
-f /tmp/output,csv #Saves the output in that location in csv format
```
2023-07-07 23:42:27 +00:00
### エンコーダのオプション
2023-07-07 23:42:27 +00:00
There are several options available for encoding data in wfuzz:
2023-07-07 23:42:27 +00:00
- **URL encoding**: This option encodes special characters in the URL using percent-encoding. For example, the space character is encoded as "%20".
- **HTML encoding**: This option encodes special characters in HTML entities. For example, the less-than symbol "<" is encoded as "&lt;".
- **Base64 encoding**: This option encodes data using the Base64 algorithm. It is commonly used for encoding binary data.
- **Hex encoding**: This option encodes data using hexadecimal representation. Each byte is represented by two hexadecimal digits.
- **Unicode encoding**: This option encodes data using Unicode characters. It is useful for bypassing filters that only allow ASCII characters.
To use an encoder, you can specify it with the `--encoding` option followed by the desired encoder. For example, to use URL encoding, you can use the `--encoding url` option.
```bash
wfuzz -e encoders #Prints the available encoders
#Examples: urlencode, md5, base64, hexlify, uri_hex, doble urlencode
```
2023-07-07 23:42:27 +00:00
エンコーダを使用するには、**"-w"**または**"-z"**オプションでそれを指定する必要があります。
2023-07-07 23:42:27 +00:00
例:
2020-12-01 15:32:24 +00:00
```bash
-z file,/path/to/file,md5 #Will use a list inside the file, and will transform each value into its md5 hash before sending it
-w /path/to/file,base64 #Will use a list, and transform to base64
-z list,each-element-here,hexlify #Inline list and to hex before sending values
```
2023-07-07 23:42:27 +00:00
## チートシート
2023-07-07 23:42:27 +00:00
### ログインフォームのブルートフォース攻撃
2023-07-07 23:42:27 +00:00
#### **POST、単一のリスト、フィルター文字列非表示**
```bash
wfuzz -c -w users.txt --hs "Login name" -d "name=FUZZ&password=FUZZ&autologin=1&enter=Sign+in" http://zipper.htb/zabbix/index.php
#Here we have filtered by line
```
2023-07-07 23:42:27 +00:00
#### **POST、2つのリスト、フィルターコード表示**
```plaintext
wfuzz -c -z file,wordlist/general/common.txt --hc 404 http://example.com/FUZZ
```
2023-07-07 23:42:27 +00:00
このコマンドは、POSTリクエストを使用して`http://example.com/FUZZ`に対してwfuzzを実行します。`FUZZ`は、`wordlist/general/common.txt`の単語リスト内の各単語で置き換えられます。`--hc 404`オプションは、404エラーコードを受け取った場合にwfuzzが停止するようにします。
2023-07-07 23:42:27 +00:00
```plaintext
wfuzz -c -z file,wordlist/general/common.txt --hc 404 --filter "code!=404" http://example.com/FUZZ
```
このコマンドは、`--filter`オプションを使用して、404エラーコードを除外します。つまり、wfuzzは404エラーコードを受け取った場合には停止しません。
```bash
2020-12-01 15:37:13 +00:00
wfuzz.py -c -z file,users.txt -z file,pass.txt --sc 200 -d "name=FUZZ&password=FUZ2Z&autologin=1&enter=Sign+in" http://zipper.htb/zabbix/index.php
#Here we have filtered by code
```
2023-07-07 23:42:27 +00:00
#### **GET、2つのリスト、フィルター文字列表示、プロキシ、クッキー**
2023-07-07 23:42:27 +00:00
wfuzz is a web application brute forcer that allows you to perform complex attacks by combining different parameters. In this section, we will explore some advanced features of wfuzz.
2023-07-07 23:42:27 +00:00
wfuzzは、異なるパラメータを組み合わせて複雑な攻撃を実行することができるWebアプリケーションのブルートフォーサーです。このセクションでは、wfuzzのいくつかの高度な機能について調査します。
##### **GET Requests**
To perform GET requests with wfuzz, you can use the `-z` option followed by the payload file. The payload file should contain a list of values to be tested for each parameter. For example:
```plaintext
$ wfuzz -z file,wordlist/general/common.txt http://example.com/FUZZ
```
2023-07-07 23:42:27 +00:00
This command will replace the `FUZZ` keyword with each value from the `common.txt` wordlist file.
2023-07-07 23:42:27 +00:00
wfuzzを使用してGETリクエストを実行するには、`-z`オプションの後にペイロードファイルを使用します。ペイロードファイルには、各パラメータにテストする値のリストを含める必要があります。例えば:
2023-07-07 23:42:27 +00:00
```plaintext
$ wfuzz -z file,wordlist/general/common.txt http://example.com/FUZZ
2022-08-07 12:55:22 +00:00
```
2023-07-07 23:42:27 +00:00
このコマンドは、`common.txt`ワードリストファイルの各値で`FUZZ`キーワードを置き換えます。
##### **2 Lists**
wfuzz also allows you to use two lists of values for each parameter. This can be useful when you want to test combinations of different values. To use two lists, you can use the `-z` option followed by the payload file, and then use the `::` separator to specify the second list. For example:
```plaintext
$ wfuzz -z file,wordlist/general/common.txt::wordlist/general/numbers.txt http://example.com/FUZZ
```
This command will replace the `FUZZ` keyword with each combination of values from the `common.txt` and `numbers.txt` wordlist files.
wfuzzは、各パラメータに2つの値のリストを使用することもできます。これは、異なる値の組み合わせをテストしたい場合に便利です。2つのリストを使用するには、`-z`オプションの後にペイロードファイルを使用し、`::`セパレータを使用して2番目のリストを指定します。例えば
```plaintext
$ wfuzz -z file,wordlist/general/common.txt::wordlist/general/numbers.txt http://example.com/FUZZ
```
2023-07-07 23:42:27 +00:00
このコマンドは、`common.txt`および`numbers.txt`ワードリストファイルの値の組み合わせごとに`FUZZ`キーワードを置き換えます。
##### **Filter String (Show)**
The `-f` option in wfuzz allows you to filter the responses based on a specific string. This can be useful when you want to focus on specific responses that contain certain keywords. For example:
```plaintext
$ wfuzz -z file,wordlist/general/common.txt -f "Welcome" http://example.com/FUZZ
```
This command will only show the responses that contain the string "Welcome".
wfuzzの`-f`オプションを使用すると、特定の文字列に基づいてレスポンスをフィルタリングすることができます。これは、特定のキーワードを含む特定のレスポンスに焦点を当てたい場合に便利です。例えば:
```plaintext
$ wfuzz -z file,wordlist/general/common.txt -f "Welcome" http://example.com/FUZZ
```
このコマンドは、文字列「Welcome」を含むレスポンスのみを表示します。
##### **Proxy**
wfuzz supports proxying requests through a proxy server. You can use the `--proxy` option followed by the proxy URL to specify the proxy server. For example:
```plaintext
$ wfuzz --proxy http://proxy.example.com:8080 http://example.com/FUZZ
```
This command will send the requests through the proxy server located at `http://proxy.example.com:8080`.
wfuzzは、プロキシサーバーを介してリクエストをプロキシすることができます。プロキシサーバーを指定するには、`--proxy`オプションの後にプロキシURLを使用します。例えば
```plaintext
$ wfuzz --proxy http://proxy.example.com:8080 http://example.com/FUZZ
```
このコマンドは、`http://proxy.example.com:8080`にあるプロキシサーバーを介してリクエストを送信します。
##### **Cookies**
wfuzz allows you to specify cookies to be included in the requests. You can use the `--cookie` option followed by the cookie value to specify the cookies. For example:
```plaintext
$ wfuzz --cookie "session=1234567890" http://example.com/FUZZ
```
This command will include the cookie `session=1234567890` in the requests.
wfuzzでは、リクエストに含めるクッキーを指定することができます。クッキーを指定するには、`--cookie`オプションの後にクッキーの値を使用します。例えば:
```plaintext
$ wfuzz --cookie "session=1234567890" http://example.com/FUZZ
```
2020-12-01 15:55:38 +00:00
2023-07-07 23:42:27 +00:00
このコマンドは、リクエストにクッキー`session=1234567890`を含めます。
2020-12-01 15:55:38 +00:00
```bash
2023-07-07 23:42:27 +00:00
wfuzz -c -w users.txt -w pass.txt --ss "Welcome " -p 127.0.0.1:8080:HTTP -b "PHPSESSIONID=1234567890abcdef;customcookie=hey" "http://example.com/index.php?username=FUZZ&password=FUZ2Z&action=sign+in"
```
### ディレクトリ/RESTfulのブルートフォース攻撃
[Arjunのパラメータワードリスト](https://raw.githubusercontent.com/s0md3v/Arjun/master/arjun/db/params.txt)
2020-12-01 15:55:38 +00:00
```
2023-07-07 23:42:27 +00:00
wfuzz -c -w /tmp/tmp/params.txt --hc 404 https://domain.com/api/FUZZ
```
### パスパラメータのブルートフォース攻撃
パスパラメータのブルートフォース攻撃は、Webアプリケーションのセキュリティ評価中に使用される一般的なテクニックです。この攻撃では、URLのパスにあるパラメータの値を推測し、有効な値を見つけることを試みます。
2020-12-01 15:55:38 +00:00
2023-07-07 23:42:27 +00:00
攻撃者は、一連の可能な値を持つパスパラメータを作成し、それらを順番に送信してレスポンスを受け取ります。有効な値が見つかるまで、攻撃者は継続的に異なる値を試すことができます。
2023-07-07 23:42:27 +00:00
この攻撃は、パスパラメータがセキュリティ上の脆弱性を持つ可能性がある場合に特に有効です。例えば、パスパラメータがディレクトリの名前やファイルのIDなどの重要な情報を含んでいる場合、攻撃者はそれを利用してシステムにアクセスしたり、機密情報を取得したりすることができます。
2023-07-07 23:42:27 +00:00
ブルートフォース攻撃は、wfuzzなどのツールを使用して自動化することができます。これにより、大量の可能な値を効率的に試すことができます。ただし、この攻撃は合法的なテストの範囲内で行われるべきであり、許可なく実施することは違法です。
```bash
wfuzz -c -w ~/git/Arjun/db/params.txt --hw 11 'http://example.com/path%3BFUZZ=FUZZ'
```
### ヘッダー認証
#### **基本、2つのリスト、フィルター文字列表示、プロキシ**
2020-12-11 18:40:49 +00:00
```bash
wfuzz -c -w users.txt -w pass.txt -p 127.0.0.1:8080:HTTP --ss "Welcome" --basic FUZZ:FUZ2Z "http://example.com/index.php"
```
2023-07-07 23:42:27 +00:00
#### **NTLM、2つのリスト、フィルター文字列表示、プロキシ**
---
##### **NTLM**
2023-07-07 23:42:27 +00:00
NTLMNT LAN Managerは、Windowsベースのシステムで使用される認証プロトコルです。WFuzzは、NTLM認証を使用してWebアプリケーションをテストするために使用できます。
2023-07-07 23:42:27 +00:00
##### **2つのリスト**
WFuzzでは、2つのリストを使用して攻撃を実行することができます。1つ目のリストは、ユーザー名のリストであり、2つ目のリストはパスワードのリストです。WFuzzは、これらのリストを組み合わせて認証の試行を行います。
##### **フィルター文字列(表示)**
WFuzzでは、フィルター文字列を使用して、特定の応答を表示することができます。フィルター文字列を指定することで、攻撃の結果を絞り込むことができます。
##### **プロキシ**
WFuzzは、プロキシを使用して攻撃を実行することもできます。プロキシを介して攻撃を行うことで、トラフィックを監視したり、攻撃の可視化を行ったりすることができます。
2020-12-11 18:40:49 +00:00
```bash
wfuzz -c -w users.txt -w pass.txt -p 127.0.0.1:8080:HTTP --ss "Welcome" --ntlm 'domain\FUZZ:FUZ2Z' "http://example.com/index.php"
```
2023-07-07 23:42:27 +00:00
### Cookie/Headerのブルートフォースvhostブルート
2023-07-07 23:42:27 +00:00
#### **Cookie、フィルターコード表示、プロキシ**
2020-12-11 18:40:49 +00:00
```bash
wfuzz -c -w users.txt -p 127.0.0.1:8080:HTTP --ss "Welcome " -H "Cookie:id=1312321&user=FUZZ" "http://example.com/index.php"
```
2023-07-07 23:42:27 +00:00
#### **User-Agent、フィルターコード非表示、プロキシ**
2023-07-07 23:42:27 +00:00
User-Agentは、Webサーバーに送信されるHTTPリクエストヘッダーの一部であり、クライアントの情報を識別するために使用されます。WFuzzでは、User-Agentをカスタマイズすることができます。これにより、特定のユーザーエージェントを使用してリクエストを送信することができます。
2023-07-07 23:42:27 +00:00
フィルターコードは、WFuzzが使用するフィルタリング機能です。これにより、レスポンスを特定の条件に基づいてフィルタリングすることができます。フィルターコードを使用することで、不要な情報を非表示にすることができます。
プロキシは、クライアントとサーバーの間に存在する中間サーバーです。WFuzzでは、プロキシを使用してトラフィックを中継することができます。これにより、リクエストとレスポンスの内容を監視および変更することができます。
2020-12-11 18:40:49 +00:00
```bash
wfuzz -c -w user-agents.txt -p 127.0.0.1:8080:HTTP --ss "Welcome " -H "User-Agent: FUZZ" "http://example.com/index.php"
```
2023-07-07 23:42:27 +00:00
#### **ホスト**
2020-12-11 18:40:49 +00:00
```bash
wfuzz -c -w /usr/share/wordlists/SecLists/Discovery/DNS/subdomains-
2023-07-07 23:42:27 +00:00
top1million-20000.txt --hc 400,404,403 -H "Host: FUZZ.example.com" -u
http://example.com -t 100
```
2023-07-07 23:42:27 +00:00
#### **ファイルを使用する**
wfuzz can be used to brute force HTTP verbs (methods) by specifying a file containing a list of verbs to test. This can be useful for identifying hidden or misconfigured endpoints that respond differently to different HTTP methods.
To use a file for HTTP verb brute forcing, you can create a text file with one verb per line. For example, you can create a file called `verbs.txt` with the following content:
```
GET
POST
PUT
DELETE
```
2023-07-07 23:42:27 +00:00
Then, you can use wfuzz with the `--hc` option to specify the desired response code and the `--hw` option to specify a word that should be present in the response when the verb is allowed. For example, to brute force the HTTP verbs using the `verbs.txt` file, you can run the following command:
2023-07-07 23:42:27 +00:00
```
wfuzz -c -z file,verbs.txt --hc 200 --hw "OK" http://example.com/FUZZ
```
2023-07-07 23:42:27 +00:00
In this command, `-c` is used to display the output in a compact format, `-z file,verbs.txt` specifies the file containing the list of verbs, `--hc 200` specifies that the response code should be 200, and `--hw "OK"` specifies that the word "OK" should be present in the response.
By replacing `FUZZ` in the URL with the appropriate placeholder, wfuzz will replace it with each verb from the file and send a request to the target URL. If the response code is 200 and the word "OK" is present in the response, it means that the verb is allowed.
Using a file for HTTP verb brute forcing can help you discover hidden functionality or misconfigurations in web applications. However, it is important to note that brute forcing HTTP verbs can be time-consuming and may trigger security mechanisms, so it should be used responsibly and with proper authorization.
2020-12-11 18:40:49 +00:00
```bash
wfuzz -c -w methods.txt -p 127.0.0.1:8080:HTTP --sc 200 -X FUZZ "http://example.com/index.php"
```
2023-07-07 23:42:27 +00:00
#### **インラインリストの使用**
The `wfuzz` tool allows you to use inline lists to fuzz different values in a request. This can be useful when you want to test multiple inputs or parameters at once.
To use an inline list, you need to enclose the list of values in curly braces `{}` and separate each value with a comma. For example, if you want to fuzz the `username` parameter with a list of common usernames, you can use the following syntax:
```
wfuzz -u http://example.com/login.php?username=FUZZ -w /path/to/usernames.txt
```
In this example, the `FUZZ` keyword is used to indicate the position where the values from the list will be injected. The `-w` option specifies the path to the file containing the list of usernames.
You can also use multiple inline lists in a single request. For example, if you want to fuzz both the `username` and `password` parameters, you can use the following syntax:
```
wfuzz -u http://example.com/login.php?username=FUZZ&password=FUZZ2 -w /path/to/usernames.txt -w /path/to/passwords.txt
```
2023-07-07 23:42:27 +00:00
In this case, the `FUZZ` keyword is used for the `username` parameter, and the `FUZZ2` keyword is used for the `password` parameter. The `-w` option is used twice to specify the paths to the files containing the lists of usernames and passwords.
2023-07-07 23:42:27 +00:00
Using inline lists can greatly increase the efficiency of your fuzzing process by allowing you to test multiple values in a single request.
2020-12-11 18:40:49 +00:00
```bash
$ wfuzz -z list,GET-HEAD-POST-TRACE-OPTIONS -X FUZZ http://testphp.vulnweb.com/
```
2023-07-07 23:42:27 +00:00
### ディレクトリとファイルのブルートフォース
WFuzzは、ディレクトリとファイルのブルートフォース攻撃に使用される強力なツールです。WFuzzは、指定されたURLに対して異なるパスやファイル名を試し、存在するディレクトリやファイルを見つけることができます。
以下は、WFuzzを使用してディレクトリとファイルのブルートフォース攻撃を実行するための手順です。
1. WFuzzをインストールします。
2. WFuzzを使用して、ブルートフォース攻撃を実行する対象のURLを指定します。
2023-07-07 23:42:27 +00:00
```
wfuzz -c -z file,/path/to/wordlist.txt http://target.com/FUZZ
```
2023-07-07 23:42:27 +00:00
- `-c`オプションは、正常な応答のみを表示するために使用されます。
- `-z`オプションは、ブルートフォース攻撃に使用するワードリストを指定します。
- `/path/to/wordlist.txt`は、ワードリストファイルのパスを指定します。
- `http://target.com/FUZZ`は、ブルートフォース攻撃を実行する対象のURLを指定します。`FUZZ`は、WFuzzが置き換えるプレースホルダです。
3. WFuzzは、指定されたワードリストの各エントリを試し、存在するディレクトリやファイルを見つけます。
```
======================================
ID Response Lines Word
======================================
000000001: 200 21 L 47 W "admin"
000000002: 200 21 L 47 W "backup"
000000003: 404 0 L 0 W "config"
000000004: 200 21 L 47 W "index"
000000005: 200 21 L 47 W "login"
======================================
```
上記の例では、`admin`、`backup`、`config`、`index`、`login`というディレクトリやファイルが存在することがわかります。
4. ブルートフォース攻撃の結果を分析し、潜在的な脆弱性やセキュリティ上の問題を特定します。
ディレクトリとファイルのブルートフォース攻撃は、ウェブアプリケーションのセキュリティ評価や侵入テストにおいて重要な手法です。WFuzzを使用することで、効率的かつ自動化されたブルートフォース攻撃を実行することができます。
2020-12-01 15:55:38 +00:00
```bash
#Filter by whitelisting codes
wfuzz -c -z file,/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --sc 200,202,204,301,302,307,403 http://example.com/uploads/FUZZ
```
2023-07-07 23:42:27 +00:00
## Websをバイパスするためのツール
[https://github.com/carlospolop/fuzzhttpbypass](https://github.com/carlospolop/fuzzhttpbypass)
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **サイバーセキュリティ会社で働いていますか?** HackTricksで**会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
- **ハッキングのトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
2022-04-28 16:01:33 +00:00
</details>