FreeFloat FTP Server 1.0におけるCVE-2025-5548の分析および悪用に関する学術的ラボ。
このフォルダには、CVE-2025-5548 / FreeFloat FTP Server 1.0 のラボに関連する再現可能な成果物がまとめられています。学習の流れと命名は TheMalwareGuardian の参考教材に従っており、これらのバージョンは本リポジトリ向けに、開発内容と演習の証拠から再構築されたものです。教材ファイルのバイト単位のコピーとして提示するものではありません。
すべてのスクリプトは意図的に 127.0.0.1 に限定されています。目的は、docs/02-explotacion/ に記載されたローカルラボにのみ付随することです。
| スクリプト | ラボ内での役割 | ドキュメント |
|---|---|---|
01Python3Connection.py | 接続とFTP対話の検証 | Step 1 |
02Python3Fuzzing.py | NOOP コマンドの段階的ファジング | Step 2 |
03Python3EIPOffsetDiscovery.py | EIPのオフセットを特定するための巡回パターン送信 | Step 2 |
04Python3ControlEIP.py | 文書化されたオフセットによるEIP制御の確認 | Step 3 |
05Python3FindBadChars.py | 演習中に特定されたバッドキャラクターの検証 | Step 4 |
06Python3JMPESP.py | INT3 マーカーによる ESP へのリダイレクトの確認 | Step 5 |
07Python3Shellcode.py | 最終ペイロード構造の安全な再現 | Steps 6–7 |
スクリプトに現れる値は、ラボの文脈の中で解釈する必要があります:
127.0.0.1:21 でテストされます。246 で、発見フェーズで取得され、EIPの上書きによって確認されたものです。\x00、\x0a、\x0d です。0x75CD9B23(リトルエンディアンでは \x23\x9b\xcd\x75)は、文書化されたデバッグセッションに対応します。特定されたモジュールにはASLRが有効だったため、新しい実行時にアドレスを再取得する必要があります。07Python3Shellcode.py の公開版にはそのシェルコードは埋め込まれていません。リポジトリをリモートアクセスの動作可能な成果物にすることなく、最終レイアウトの追跡可能性を保つために INT3 マーカーを使用しています。参考教材は、7つのステップの方法論と流れを提供しています。本リポジトリは、実施された開発、キャプチャ、および実行に固有の適応を追加しています。本リポジトリのオリジナルコンテンツは、LICENSE ファイルに従い GPL-3.0 の下で配布されます。第三者のコンポーネントおよび素材は、それぞれの利用条件を保持します。