본문 바로가기

해킹 슈퍼 기초 연습

dvwa sql injection (blind)

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