
HTTP 헤더 및 비파괴적 로그인 폼 프로브를 통해 PHP CVE-2026-17543 노출을 검증하는 안전한 PowerShell 검증기
PHP CVE-2026-17543 잠재적 노출 여부를 확인하기 위한 안전한 네트워크 측 검증기입니다.
이 프로젝트는 원격 웹 서버가 CVE-2026-17543의 영향을 받는 PHP 버전을 노출하는지 확인하며, 무해한 따옴표/백슬래시 문자를 사용하여 비파괴적 로그인 폼 프로브를 선택적으로 수행할 수 있습니다.
이 도구는 익스플로잇이 아닙니다.
CVE-2026-17543은 공격자가 제어하는 매개변수의 백슬래시 이스케이프 처리가 부적절하여 영향을 받는 PostgreSQL 관련 PHP 코드 경로에서 SQL 인젝션 조건을 유발할 수 있는 특정 PHP 버전에 영향을 미칩니다.
이 도구는 방어자가 네트워크 측에서 노출 여부를 검증할 수 있도록 다음을 수행합니다:
알려진 영향을 받는 버전은 다음과 같습니다:
PHP 8.2.x before 8.2.33
PHP 8.3.x before 8.3.30
PHP 8.4.x before 8.4.24
.\Test-CVE-2026-17543.ps1 -BaseUrl "http://example.local/"
.\Test-CVE-2026-17543.ps1 `
-BaseUrl "http://example.local/" `
-LoginPath "/login.php" `
-UsernameField "Login[username]" `
-PasswordField "Login[password]" `
-TokenField "Login[token]"
다음은 가상/익명화된 샘플 출력입니다.
=== PHP CVE-2026-17543 Exposure Validator ===
Target: http://example.local/
[*] Checking HTTP headers...
[*] Relevant headers:
Server: Apache
X-Powered-By: PHP/8.2.27
[+] Detected PHP version: 8.2.27
[!] Finding: PHP 8.2.27 is below fixed version 8.2.33.
[!] Status: Potentially vulnerable by version exposure.
[*] Starting optional safe login-form probes...
[*] Login URL: http://example.local/login.php
[*] Username field: Login[username]
[*] Password field: Login[password]
[*] Token field: Login[token]
------------------------------
[*] Testing username payload: [testuser]
[*] Token extracted: abc123...def456
[*] HTTP Status: 200
[*] Response Length: 5970
[+] No visible SQL/PHP error indicators found.
------------------------------
[*] Testing username payload: [']
[*] Token extracted: abc123...def456
[*] HTTP Status: 200
[*] Response Length: 5970
[+] No visible SQL/PHP error indicators found.
Done.
이 도구는 다음을 수행하지 않습니다:
UNION SELECT, OR 1=1, DROP, DELETE, UPDATE 또는 유사한 페이로드를 사용하지 않습니다.