Information Security
[OverTheWire] NATAS15 본문
[OverTheWire] NATAS15
이번에는 Username만 입력할 수 있다.
이렇게 DB에 저장된 username을 확인할 수 있다.
그런데 우리는 natas16의 패스워드를 알아내야 한다.
쿼리의 실행 결과가 1개 이상(참)이면 This user exits. 메시지가 출력되고,
0개 이하(거짓)이면 This user doesn't exist. 메시지가 출력된다.
이를 이용해서 정보를 얻어야할 것 같다.
username을 참으로 만들었더니 This user exists. 메시지가 출력되었다.
Blind SQL Injection 공격이 가능하다는 것을 확인했다.
/*
CREATE TABLE `users` (
`username` varchar(64) DEFAULT NULL,
`password` varchar(64) DEFAULT NULL
);
*/
소스의 주석을 통해 users 테이블에 password 컬럼이 존재한다는 것을 확인했다.
Blind SQL Injection을 시도하여 natas16의 password 길이가 32인 것을 알아냈다.
이제 password를 한 자리씩 알아내야 한다. 그런데 32자리를 알아내기는 너무 힘들 것 같다.
Burp Suite로 Request 헤더를 보고 자동화 스크립트를 작성했다.
띄어쓰기도 주의해서 작성해야 한다.
스크립트를 실행하여 natas16의 패스워드를 획득했다.
'Web Hacking > NATAS 풀이' 카테고리의 다른 글
[OverTheWire] NATAS14 (0) | 2018.01.09 |
---|---|
[OverTheWire] NATAS13 (0) | 2018.01.09 |
[OverTheWire] NATAS12 (0) | 2018.01.09 |
[OverTheWire] NATAS11 (0) | 2018.01.08 |
[OverTheWire] NATAS10 (0) | 2018.01.05 |