일반 SQL Injection과 Blind SQL Injection의 차이가 뭔가요? 결과가 안 보이는데 어떻게 데이터를 뽑나요?
Blind SQLi는 쿼리 결과가 직접 보이지 않을 때 사용합니다.
Boolean-based: 참/거짓에 따른 페이지 반응 차이로 데이터 추출
// 첫 글자 확인' AND SUBSTRING(database(),1,1)='a'-- -// 참이면 정상 페이지, 거짓이면 다른 반응
Time-based: 응답 시간 차이로 데이터 추출
' AND IF(SUBSTRING(database(),1,1)='a', SLEEP(3), 0)-- -// 3초 지연 = 참
한 글자씩 추출하므로 매우 느리지만, SQLMap이 이를 자동화합니다. Boolean보다 Time-based가 더 탐지하기 어렵습니다.
댓글 1
Blind SQLi는 쿼리 결과가 직접 보이지 않을 때 사용합니다.
Boolean-based: 참/거짓에 따른 페이지 반응 차이로 데이터 추출
Time-based: 응답 시간 차이로 데이터 추출
한 글자씩 추출하므로 매우 느리지만, SQLMap이 이를 자동화합니다. Boolean보다 Time-based가 더 탐지하기 어렵습니다.