
CLI che verifica la versione PHP di un sito web o un binario PHP locale rispetto alle soglie di patch incorporate per determinare lo stato di vulnerabilità php2shell, con output JSON e codici di uscita.
Verifica se un sito web o un binario PHP locale è vulnerabile a php2shell.
Per installare entrambe le skill, chiedi a Codex:
$skill-installer install both skills from https://github.com/openai/php2shell-checker
Usa phpcheck-server quando hai accesso al server, oppure phpcheck-url quando hai solo un URL:
$phpcheck-url check https://example.com
$phpcheck-server check the PHP version serving my site
Verifica un sito web:
node phpcheck.js "https://example.com"
Verifica il PHP CLI locale
node phpcheck.js --local
| Risultato | Codice di uscita | Significato |
|---|---|---|
OK | 0 | Versione patch PHP stabile superiore alla soglia incorporata per un ramo major/minor elencato. |
VULNERABLE | 1 | Versione PHP pari o inferiore alla soglia incorporata per quel ramo. |
UNKNOWN | 3 | Nessuna versione PHP o nessuna risposta, versione/ramo non riconosciuto, oppure build prerelease più recente. |
Usa --json per un output leggibile da macchina (patch_status è ok, vulnerable o unknown). Gli argomenti non validi terminano con codice 2.
node --test phpcheck.test.js
I test eseguono la CLI contro server HTTP locali e un eseguibile PHP fittizio. Non è richiesta alcuna installazione di PHP né un sito web esterno.
Il checker valuta solo le versioni esposte negli header delle risposte HTTP o tramite php -v. Legge X-Powered-By e Server, invia HEAD e ricorre a GET solo quando HEAD restituisce 405 o 501. Non segue i redirect né ispeziona i corpi delle risposte. Gli header PHP mancanti o nascosti restituiscono UNKNOWN.
OK è un confronto di versione basato sull'assunzione che le patch stabili successive in ciascun ramo elencato contengano la correzione. Non verifica in modo indipendente una correzione di sicurezza. Confronta le versioni con la release di sicurezza ufficiale di PHP. Gli header possono essere nascosti o modificati, e i backport delle distribuzioni potrebbero non modificare la versione upstream. UNKNOWN non significa che il target sia correttamente aggiornato!
OpenAI non accetta contributi di codice esterni a questo progetto. Segnalazioni di bug e feedback non relativi al codice sono benvenuti tramite le issue di GitHub. Vedi CONTRIBUTING.md.
Questo progetto è distribuito con licenza Apache License 2.0.