PHP2Shell 취약점 스캐너 API
자산의 PHP2Shell 관련 위험 신호를 빠르고 안전하게 식별하는 1차 점검 API입니다. 두 CVE를 직접 재현하거나 실제 악용 가능성을 확정하지는 않습니다.
로그인 없이 사용할 수 있습니다. 점검 권한이 있는 공개 웹 대상만 요청하세요. 스캔 ID를 아는 사람은 결과를 조회할 수 있습니다.
1. 작업 등록
POST /api/scan · Content-Type: application/json
{"targets":"https://example.com\nhttp://sub.example.com/index.php"}
한 줄에 하나씩 입력합니다. 중복은 제거합니다.
{"scan_id":"550e8400-e29b-41d4-a716-446655440000","status":"queued"}
2. 상태와 결과
GET /api/results/{scan_id} · 상태값은 queued, running, completed, failed 중 하나입니다.
완료되면 results에 schema_version, summary와 각 대상의 state·verdict·php_version·evidence가 포함됩니다. 작업 실패와 개별 대상의 확인불가는 다릅니다.
| state | 표시 | 뜻 |
|---|---|---|
| vulnerable | 취약 | 공개된 취약 영향 범위에 해당하는 신호가 확인됨 |
| risk | 위험 | 잠재적인 위험이 식별됨 |
| safe | 안전 | 수집된 정보가 공개 수정 기준에 부합함 |
| unknown | 확인불가 | 판정에 필요한 정보가 충분하지 않음 |
probe_complete는 수집 작업의 완료 여부이며 실제 취약점 검증 완료를 뜻하지 않습니다. http_status는 입력 경로의 응답이고, 보조 경로의 응답은 path_probes에 있습니다.
3. CSV 다운로드
GET /api/results/{scan_id}/csv · 완료된 작업의 화면 표와 동일한 네 열을 다운로드합니다.
PHP 수정 버전: 8.2.35, 8.3.36, 8.4.27, 8.5.12. PHP 공식 보안 권고