
Cacti <=1.2.22の未認証コマンドインジェクションを標的としたCVE-2022-46196用のPythonエクスプロイト。remote_agent.phpを介したバージョン検出とリバースシェル配信を自動化。
このPythonコードは、Cacti バージョン 1.2.22 以前における未認証のコマンドインジェクションの脆弱性を悪用します。コマンドラインから引数を解析するためにargparseを、ターゲットのCactiインスタンスのHTMLコンテンツを取得するためにrequestsを、HTMLコンテンツからCactiのバージョン番号を抽出するためにBeautifulSoupを使用します。バージョンが <= 1.2.22 の場合、コードはエクスプロイトを続行します。
このエクスプロイトでは、Cactiインスタンスのremote_agent.phpファイルにペイロードを送信します。ペイロードは、指定されたリッスンIPとポートにリバースシェルを開くBashコマンドです。コードはホストIDの範囲を反復処理してペイロードを送信し、成功すると、指定されたIPとポートでリバースシェルを開きます。
このコードは、セキュリティ研究やペネトレーションテストなどの倫理的な目的にのみ使用してください。
コードを実行するには、次のコマンドを使用します:
python exploit.py --url <URL of Cacti's instance> --lhost <Listening IP> --lport <Listening Port>
ここで:
このコードには、次のPythonライブラリ/モジュールが必要です:
argparse
requests
BeautifulSoup4
re