一般的パラメータ#
このようなプロジェクトを見つけましたtop25-parameter、一般的な脆弱性のいくつかの利用パラメータを統計し、少し拡張しました:
最も一般的な 25 の xss パラメータ:
Top 25 Cross-Site Scripting (XSS) Parameters for @trbughunters
?q={payload}
?s={payload}
?search={payload}
?id={payload}
?lang={payload}
?keyword={payload}
?query={payload}
?page={payload}
?keywords={payload}
?year={payload}
?view={payload}
?email={payload}
?type={payload}
?name={payload}
?p={payload}
?month={payload}
?immagine={payload}
?list_type={payload}
?url={payload}
?terms={payload}
?categoryid={payload}
?key={payload}
?l={payload}
?begindate={payload}
?enddate={payload}
最も一般的な 25 の ssrf パラメータ:
Top 25 Server-Side Request Forgery (SSRF) Parameters for @trbughunters
?dest={target}
?redirect={target}
?uri={target}
?path={target}
?continue={target}
?url={target}
?window={target}
?next={target}
?data={target}
?reference={target}
?site={target}
?html={target}
?val={target}
?validate={target}
?domain={target}
?callback={target}
?return={target}
?page={target}
?feed={target}
?host={target}
?port={target}
?to={target}
?out={target}
?view={target}
?dir={target}
最も一般的な 25 のファイル包含パラメータ:
Top 25 Local File Inclusion (LFI) Parameters for @trbughunters
?cat={payload}
?dir={payload]
?action={payload}
?board={payload}
?date={payload}
?detail={payload}
?file={payload}
?download={payload}
?path={payload}
?folder={payload}
?prefix={payload}
?include={payload}
?page={payload]
?inc={payload}
?locate={payload}
?show={payload}
?doc={payload}
?site={payload}
?type={payload}
?view={payload}
?content={payload}
?document={payload}
?layout={payload}
?mod={payload}
?conf={payload}
最も一般的な 25 の sql インジェクションパラメータ:
Top 25 SQL Injection Parameters for @trbughunters
?id=
?page=
?dir=
?search=
?category=
?file=
?class=
?url=
?news=
?item=
?menu=
?lang=
?name=
?ref=
?title=
?view=
?topic=
?thread=
?type=
?date=
?form=
?join=
?main=
?nav=
?region=
最も一般的な 25 のコマンド実行パラメータ:
?cmd=
?exec=
?command=
?execute=
?ping=
?query=
?jump=
?code=
?reg=
?do=
?func=
?arg=
?option=
?load=
?process=
?step=
?read=
?function=
?req=
?feature=
?exe=
?module=
?payload=
?run=
?print=
最も一般的な 25 のオープンリダイレクトパラメータ:
?next=
?url=
?target=
?rurl=
?dest=
?destination=
?redir=
?redirect_uri?,
?redirect_url=
?redirect=
?out=
?view=
?to=
?image_url=
?go=
?return=
?returnTo=
?return_to=
?checkout_url=
?continue=
?return_path=
どのように適用するか#
実戦では、これらのパラメータを使用することができ、一般的な流れは、収集したターゲットのドメイン / IP の URL のパラメータを通じて、URL から対応するキーワードをフィルタリングすることです。例えばhttp://www.xx.com/index.php?id=1
のように、id パラメータを直接フィルタリングできます。このようなパラメータは、SQL インジェクションの脆弱性が存在する可能性があります。? の後に続くパラメータは、フィルタリングされずに制御される可能性が高いです。
使用するプログラムは gf で、https://github.com/tomnomnom/gf。
1、Go 言語で gf をコンパイル:
go get -u github.com/tomnomnom/gf
2、コンパイルが完了したら、次に JSON の設定ファイルを読み込みます。以下は RCE の設定ファイルです。
{
"flags": "-iE",
"patterns": [
"daemon=",
"upload=",
"dir=",
"download=",
"log=",
"ip=",
"cli=",
"cmd=",
"exec=",
"command=",
"execute=",
"ping=",
"query=",
"jump=",
"code=",
"reg=",
"do=",
"func=",
"arg=",
"option=",
"load=",
"process=",
"step=",
"read=",
"function",
"req=",
"feature=",
"exe=",
"module=",
"payload=",
"run=",
"print="
]
}
JSON ファイルがあれば、URL をテストする際にフィルタリングできます。例えば、URL がhttp://xxx.com/index.php?cmd=lsの場合、RCE パラメータを含む JSON スクリプトを使用してフィルタリングできます。
% cat test.txt
http://xxx.com/index.php?cmd=ls
% cat test.txt | gf rce
http://xxx.com/index.php?cmd=ls
3、次に、gf プログラムが~/.gf フォルダに配置された JSON スクリプトを自動的に認識するように設定します。gf と入力すると、自動的に JSON ファイルが呼び出されます。以下の図に示すように、リストされたのはすべて JSON ファイルです:
4、gf が JSON ファイルを自動的に読み込むように設定し、タブキーで自動補完します。
gfを GitHub からダウンロードすると、bash、fish、zsh に対応する 3 つのファイルがあります。
3 つの異なるファイルは異なるシェル環境に対応しています。私が使用しているのは zsh なので、~/.zshrc 設定ファイルを設定する必要があります。以下の内容を~/.zshrc ファイルに追加します:
autoload -Uz compinit
compinit
source /Users/xxx/macpentest/ 情報収集 /gf/gf-completion.zsh
上記の設定が基本的に完了したら、ターミナルを終了して再度開く必要があります。私の環境は zsh ですが、Linux を使用している場合は bash ファイルを使用する可能性があるため、上記の設定を~/.bashrc に追加すればよいです。
4、設定が完了したら、すべての JSON ファイルを.gf フォルダに配置します。JSON ファイルは以下のリンクからダウンロードできます。ダウンロードが完了したら、~/.gf にコピーします。
-
-
A wrapper around grep, to help you grep for things
-
For basic researches, top 25 vulnerability parameters that can be used in automation tools or manual recon. 🛡️⚔️🧙
mkdir .gf
cp ~/Gf-Patterns/*.json ~/.gf
cp ~/gf/examples/*.json ~/.gf
5、これで設定が完了し、gf キーを押すと自動的に読み込まれた JSON ファイルが表示されます。
URL を収集する方法#
URL を収集する方法は実際に多くあります。通常はバッチ方式で、すべてのドメインとサブドメインを収集した後、URL 内のパラメータを収集し始めます。
以下のアプリケーションを使用して URL を収集できます:
スキャン方法は非常に簡単です。
使用例として、Gf-Patterns の例を借用します:
cat subdomains.txt | waybackurls | sort -u >> waybackdata | gf ssrf | tee -a ssfrparams.txt
cat subdomains.txt | waybackurls | sort -u >> waybackdata | gf ssrf | tee -a ssfrparams.txt