Information Security

[OverTheWire] NATAS15 본문

Web Hacking/NATAS 풀이

[OverTheWire] NATAS15

leeeeye321 2018. 1. 10. 00:54

[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