본문 바로가기

Security/Network

[3장] 네트워크 패킷 분석 - 실습(HackThePacket)

안녕하세요.

칸입니다.


저번 장에서는 Network Miner와 CapTipper의 사용법에 대해 알아보았습니다. 이번 장에서는 1,2장에서 소개한 툴들을 이용하여 HackThePacket을 분석해보도록 하겠습니다.


링크 

OSI 7 Layer : http://aaasssddd25.tistory.com/15?category=617816

TCP/IP      : http://aaasssddd25.tistory.com/16?category=617816

TCP 분석   : http://aaasssddd25.tistory.com/17?category=617816

HTTP 분석  : http://aaasssddd25.tistory.com/18?category=617816


[1장]       : http://aaasssddd25.tistory.com/57?category=617816

[2장]       : http://aaasssddd25.tistory.com/58?category=617816




※ HackThePacket 실습


01 설명


원래 기출문제는 HackThePacket 공식 홈페이지에서 제공을 했었으나, 이제는 구할 수가 없게 되었습니다.


링크 : http://hackthepacket.tistory.com/entry/Hack-The-Packet-%EA%B8%B0%EC%B6%9C%EC%A0%9C-%EB%AC%B8%EC%A0%9C-%EA%B3%B5%EC%9C%A0


그러나, 유일하게 한문제 HTP 문제가 살아있는데, 이번 장에서는 밑에 문제가 아닌 다른 문제로 실습을 할 예정입니다.


링크 : https://drive.google.com/drive/folders/0B4-aq2uA-XdccWVacXJXNTAtaXM



문제는 다음과 같습니다.


1. Telnet의 패스워드를 찾으시오.

2. 80번 포트로 업로드 된 파일명을 찾으시오.

3. 네이버에서 검색한 검색어를 찾으시오.(한글) 

4. 만나기로 한 장소를 찾으시오.

5. 인터넷 쇼핑 중 실행된 웹쉘을 찾으시오.


이제 하나하나 풀어도록 하겠습니다.





02-1 Telnet의 패스워드를 찾으시오.



먼저 WireShark를 실행해서 분석할 파일을 엽니다.




필터에 telnet을 검색합니다.




관련 패킷들이 나오면 Follow TCP Stream을 확인합니다.


사진을 보니 비밀번호는 HTPLEO!!!라는 걸 알 수 있습니다.





02-2 80번 포트로 업로드된 파일명을 찾으시오.



HTTP 요청 방식 중에 PUT, POST등이 존재합니다. 그 중 PUT는 클라이언트가 웹서버로 어떤 정보를 전송하고자 할 때 사용하는 요청방식인데, URI가 파일의 이름이나 경로로 전달된다는 PUT의 특성때문에 우리는 PUT를 유심히 볼 필요가 있습니다.




 


검색을 위해 아무 패킷을 누르고 Ctrl + F를 누른 후, String에 PUT을 입력한 상태로 Find 버튼을 누릅니다.




PUT가 나올때까지 계속 Ctrl + F를 누르면 PUT /iuzzang.txt HTTP/1.1을 발견할 수 있습니다.




해당 패킷의 TCP Stream을 확인해보면 우리가 찾던 파일명이 iuzzang.txt임을 알 수 있습니다.

(문제 출제자가 당시 아이유를 좋아했나봅니다)






02-3 네이버에서 검색한 검색어를 찾으시오.(한글)



우리가 네이버에 무언가를 검색하고 난 후, 주소를 유심히보면 정형화된 틀이 있다는 것을 알 수 있는데,






첫째로, 앞에 search.naver.com의 경우 어떤 검색어로 입력해도 그대로 있으며,

둘째로, 뒤에 &query=[검색명]이라는 것입니다.


이제, 우리는 이 특성을 이용해 문제를 풀면 됩니다.




[File] - [Export Objects] - [HTTP]에 들어가서 search.naver.com이 있는지 확인해본 결과, 1534번에 정확히 있는 것을 알 수 있습니다.




앞에서 언급한 두번째 특징을 이용해, &query=부분 부터 다시 &가 나오기 전까지의 내용을 복사해서

디코딩 과정을 거치면 무엇을 검색했는지 알 수 있을 것입니다.




디코딩한 결과 검색한 내용은 에이치티피라는 것을 알 수 있습니다.





02-4 만나기로 한 장소를 찾으시오.



이 문제는 다소 난해하긴 합니다. 저도 처음에 이걸 어떻게 알아??라는 생각을 했는데, Network Miner를 이용하여 삭제된 파일을 확인해보기로 했습니다.



 


776개의 이미지를 내리다보면 come here이라고 적힌 QR코드를 볼 수 있습니다.




이미지를 바탕화면에 저장한 후




QR 코드를 읽어주는 사이트에 업로드 합니다.




그럼 http://m.stie.naver.com/08D0q라는 주소가 생기게 되는데, 이를 누르면




만나기로 한 장소는, 서울특별시 용산구 이태원동이라는 것을 알 수 있습니다.





02-5 인터넷 쇼핑 중 실행된 웹 쉘을 찾으시오.



보통 웹 쉘은 .asp형식으로 올라오지만 이외에도 .jsp , .php도 확인해 볼 필요가 있습니다.



HTTP Object list로 확인해도 되지만, 저처럼 노가다 형식으로 Ctrl + F로 찾을 수 있습니다.


실행된 웹 쉘은 /O+ne~Line@w&eb!sh@ell.asp;.jpg입니다.


 




이번 장에서는 HackThePacket문제를 이전에 배웠던 툴들을 사용하여 직접 실습을 해봤습니다.

다음에는 Defcon 문제로 실습을 해보도록 하겠습니다!