
ReconPal: NLPを活用した情報セキュリティ

Reconは最も重要なフェーズの一つですが、簡単に見えて適切に行うには多くの労力とスキルが必要です。適切なツール、正しいクエリ/構文の知識、クエリの実行、情報の関連付け、出力のサニタイズが求められます。これら全ては熟練した情報セキュリティ/Reconの専門家にとっては簡単かもしれませんが、それ以外の人にとってはまだ魔法に近いものです。「シンガポールでUDPサポートのあるオープンなMemcachedサーバーを探して」とか、「シンガポールでデフォルト認証情報を使っているIPカメラは何台ある?」といった簡単な質問をチャットで投げかけて答えを得られたら、どれほど便利でしょうか。
GPT-3(人間らしいテキストを生成する深層学習ベースの言語モデル)とShodanのようなよく知られたReconツールとの統合が、ReconPalの基盤です。ReconPalはまた、音声コマンドを使用して一般的なエクスプロイトを実行し、偵察を行うこともサポートしています。
ReconPalを起動して実行するには、以下の簡単な手順に従ってください。
Telegram Bot トークン BotFatherを使用して新しいTelegram Botを作成します。ドキュメントは https://core.telegram.org/bots を参照してください。
Shodan API:
Shodanアカウントを作成し、https://account.shodan.io/ から新しいAPIキーを生成します。
Google Speech-to-Text API:
GCPでSpeech-to-Textを有効にし、認証情報を取得します。ドキュメントの手順(https://cloud.google.com/speech-to-text/docs/before-you-begin)に従ってください。
OpenAI API Key:
APIを試すために無料のOpenAIアカウントを作成します。https://beta.openai.com/account/api-keys
Docker
sudo apt-get updates
sudo apt-get install docker.io
sudo curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
リポジトリをクローンします
git clone https://github.com/pentesteracademy/reconpal.git
docker-compose.yml にOPENAI、SHODAN APIキー、およびTELEGRAM Botトークンを入力します
OPENAI_API_KEY=<Your key>
SHODAN_API_KEY=<Your key>
TELEGRAM_BOT_TOKEN=<Your token>
reconpalを起動します
docker-compose up
Telegramアプリを開き、作成したBotを選択してReconPalを使用します。
/start
/register
scan 10.0.0.8
Blackhat Asia Arsenal 2022 https://www.blackhat.com/asia-22/arsenal/schedule/#reconpal-leveraging-nlp-for-infosec-26232
デモンストレーションビデオ https://www.youtube.com/watch?v=gBQFlirFqpk
Jeswin Mathai, シニアセキュリティリサーチャー, INE [email protected]
Nishant Sharma, セキュリティリサーチマネージャー, INE [email protected]
Shantanu Kale, クラウドデベロッパー, INE [email protected]
Sherin Stephen, クラウドデベロッパー, INE [email protected]
Sarthak Saini (元Pentester Academy)
詳細については、PDFファイル「ReconPal.pdf」を参照してください。このファイルには、プレゼンテーションに使用したスライドデッキが含まれています。
reconpalの起動とモデルの登録

Finderモジュールの動作

Scannerモジュールの動作

Attackerモジュールの動作

音声サポート

このプログラムはフリーソフトウェアです。GNU General Public License v2(フリーソフトウェア財団によって公開)の条件に基づき、再配布および/または変更することができます。
このプログラムは有用であることを期待して配布されていますが、いかなる保証もありません。商品性や特定目的への適合性についての暗黙の保証も含め、一切の保証はありません。詳細についてはGNU General Public Licenseを参照してください。
このプログラムとともにGNU General Public Licenseのコピーを受け取っているはずです。受け取っていない場合は、http://www.gnu.org/licenses/ を参照してください。