문제의 소스 코드입니다.
error based blind sql injection 문제입니다.
pw를 정확하게 구하는 것이 목표입니다.
드림핵 강의 중 error based blind sql injection에 관한 내용이 나옵니다.
if 문의 조건이 참이 되면 mysql의 double 자료형 최대값을 초과하는 값(9e307*2)이 들어가면서 에러가 발생합니다
조건문에 원하는 구문을 넣어서 pw를 구할 수 있습니다.
파이썬 코드의 구조는 이전 xavis 문제와 같습니다.
https://ssongkit.tistory.com/91
[Lord of SQLInjection] xavis write-up
문제의 소스 코드입니다. admin의 pw를 구하면 문제가 풀립니다. 이것 저것 해보다 알게 된 것이 멀티바이트 문자열이구나~ 였습니다. _ 문자를 쓸 수 없으므로 char_length와 bit_length 함수를 사용할
ssongkit.tistory.com
먼저 pw의 길이를 구해줍니다.
실행 결과는 아래와 같습니다.
pw를 이진 탐색 방식으로 구합니다. 실행 결과는 아래와 같습니다.
pw를 얻었습니다.
끝!
'write-up(web) > LOS' 카테고리의 다른 글
[Lord of SQLInjection] hell_fire write-up (0) | 2022.08.04 |
---|---|
[Lord of SQLInjection] dark_eyes write-up (0) | 2022.08.04 |
[Lord of SQLInjection] dragon write-up (0) | 2022.08.02 |
[Lord of SQLInjection] xavis write-up (0) | 2022.08.02 |
[Lord of SQLInjection] nightmare write-up (0) | 2022.08.01 |