[모의해킹 스터디] CTF - SQL Injection 6

바울·2024년 12월 9일
0

모의해킹 스터디

목록 보기
21/40

문제

이전과 같이 계정이 하나 주어진다.


풀이

로그인도 정상적으로 되고 조건문도 정상적으로 실행이 된다.

이번 문제는 에러를 화면에 출력해 주지 않지만 Warning!이라는 문구를 반환하는 것 같다. 자세하게 보기 위해 burp suite를 확인해 보자!

로그인 성공 시는 302코드가 나오고 index.php로 리다이렉트 되고 실패 시에는 200과 함께 Warning!이라는 문구가 나온다. 이걸로 알 수 있는 것은 로그인 성공 시 실패 시를 참과 거짓으로 구분할 수 있다는 것이다. 즉 Blind SQL Injection 사용할 수 있다는 것이다. 이번에는 하나하나 해보기보다는 자동화 코드를 사용해 보고자 한다.

normaltic' and (ascii(substr((select ???),1,1)) > 0) and '1'='1

자동화 코드에 사용할 공격 format이다.

select 문은 직접 입력할 수 있게 해주었고 일치하는 값이 없을 경우 코드가 종료되게 해주었다. database의 이름은 sqli_3인 걸 볼 수 있다. 다음으로 table 이름을 추출해 보자!

이제 column을 추출해 보자!

column 이름까지 알아냈다. 이제 안에 있는 데이터를 추출해 보자!

flag를 확인할 수 있다! 아직 알고리즘을 적용시키지 않아 속도가 빠르진 않지만 하나하나 입력하면서 하는 거에 비하면 몇 백배는 빠른 것 같다..

0개의 댓글