🇰🇷 한글 설명
oretnom23의 php-travel-agency-system 관리자 페이지 admin/customer_detail.php 파일에서 취약점이 발견되었습니다. customer_id, ticket_id, emp_id, salary_id, page_id 인자 처리에 문제가 있어 SQL 인젝션이 발생할 수 있으며, 원격에서 공격이 가능하고 공개된 익스플로잇이 존재합니다. 프로젝트 측은 이슈 보고를 받았으나 아직 응답하지 않은 상태입니다.
💡 쉬운 설명
여관이나 여행사 관리 프로그램의 관리자 화면에 해커가 악성 입력을 넣어 데이터베이스 정보를 빼낼 수 있는 보안 허점이 있습니다. 인터넷에서 누구나 공격을 시도할 수 있는 상태입니다.
🇺🇸 원문 (English)
A vulnerability was identified in oretnom23 php-travel-agency-system. This issue affects some unknown processing of the file admin/customer_detail.php of the component Admin Record Pages. The manipulation of the argument costomer_id/ticket_id/emp_id/salary_id/page_id leads to sql injection. It is possible to initiate the attack remotely. The exploit is publicly available and might be used. The project was informed of the problem early through an issue report but has not responded yet.
📍 영향받는 시스템
oretnom23 php-travel-agency-system (admin/customer_detail.php를 포함한 버전, 패치 미제공)
⚔️ 공격 벡터
원격에서 관리자 페이지의 customer_id 등 파라미터에 조작된 SQL 구문을 전송하여 데이터베이스를 조회·변조
🛡️ 대응 방법
프로그램 입력값에 대해 prepared statement(매개변수화 쿼리)를 적용하고, 공식 패치가 나올 때까지 해당 페이지 접근을 IP로 제한하거나 비활성화
🔧 검증 코드
출력이 있으면 해당 파라미터가 사용자 입력을 직접 받고 있다는 뜻이므로 취약할 가능성이 높으며, 출력이 없으면 파일이 없거나 입력 처리 방식이 다른 것입니다.
grep -n -E 'customer_id|ticket_id|emp_id|salary_id|page_id' admin/customer_detail.php 2>/dev/null | grep -E '\$_(GET|POST|REQUEST)'