sql의 결과를 참, 거짓으로만 반환하는 경우에 사용할 수 있습니다.
뭔가 설정이 잘못되었는지 다 나오고 있긴 하지만 참, 거짓만 나온다 가정하고 그냥 진행해 보겠습니다.
우선 ' or length(database()) =1#를 입력해 봅니다. 데이터베이스의 글자 길이가 1인지를 묻습니다.
아무 반응이 없는것을 보니 아닌가 봅니다. 이렇게 쭉 입력해 봅니다.
4를 입력했을 때 성공적으로 나옵니다. 지금 데이터베이스 이름의 길이가 4인가 봅니다.
사실 1' union select 1, database()# 를 입력해서 바로 알아낼 수 있기도 합니다. 하지만 블라인드인 경우에는 이렇게 알아낼 수 없습니다.
그 대신 1' or substr(database(),1,1)='d'# 를 이용해서 알아볼 수는 있습니다.
1' or substr(database(),1,1)<'c'# 처럼 부등호를 이용하면 이분탐색으로 조금 빨리 알아낼 수 있습니다.
'해킹 슈퍼 기초 연습' 카테고리의 다른 글
webgoat 세팅 (0) | 2024.08.21 |
---|---|
dvwa xss reflected (0) | 2024.08.09 |
dvwa CSRF (0) | 2024.08.03 |
dvwa Command Execution (0) | 2024.07.27 |
dvwa brute force (0) | 2024.07.21 |