Hack the Packet 2012
Hack the Packet 2012 문제풀이 진행하겠습니다.
Hack the packet 문제 파일 다운로드는 하단에 있습니다. 참고바랍니다.
1. 2012_htp_prequal.pcap 파일은 어떤 환경(System Infomation)에서 캡쳐한 것일까?
해당 패킷 파일 환경은 아래 그림과 같이 동일하다
OS : 64-bit Windows 7 Service Pack 1. build 7601
KEY : 64-bit Windows 7 Service Pack 1. build 7601
2. 2012_htp_prequal.pcap 파일은 어떤 도구로 캡쳐한 것일까?
해당 패킷 캡쳐 도구는 WireShark의 Dumpcap 기능을 쓴것임으로 WIRESHARK 가 되겠다.
KEY : WIRESHARK
3. ARP_Spoofing에 의해서 나의 id와 패스워드가 유출됬다!
ARP_Spoofing을 하기 위해서는 Attaker PC에서 지속적으로 ARP 패킷을 브로드캐스팅 해야 한다. 따라서 ARP 패킷을 지속으로 보내는 PC가 Attaker 이다
아래 그림은 ARP 패킷을 보낸 Attaker PC 이다.
Attaker PC 정보는 192.168.232.131 / 00:0c:29:f3:21:ad 이 되겠다.
Attacker PC IP 주소를 토대로 HTTP 리스트 확인결과 FACEBOOK 가 확인되었으며
해당 파일을 열어보니 다음과 같다.
KEY: 00:0c:29:f3:21:ad_YONG_GAL
4. 남자들이 뼛속까지 좋아하는 여자는 누구? DNA 연구 결과가 발표 되었다. 바코드를 찾아라.
해당 바코드는 이미지 파일로 되어있을거라 추측이 되며 웹페이지에서 확인했을거라 추정된다.
EXPORT OBJECT - HTTP 의 HTTP Object list 를 확인하면 아래와 같이 DNA_Map.jpg 가 확인된다.
이를 bcTester 프로그램을 이용하여 DNA_Map.jpg 를 읽으면 K#E#Y!ZIU G#O#O#D 와 같은 값이 출력되며
K#E#Y!ZIU G#O#O#D 의 IU 로 확인할 수 있다.
KEY: IU
5. 화창한 봄날 G마켓에 코드가 삽입됐다.
리스트 확인중 G마켓 관련 파일들이 보인다. 그러던 중 의심파일을 확인하는 중 특이한 코드가 있다.
<그림1>
<그림2>
<그림1> 은 VBScript 로 인코딩 되어 있다
이를 VBScript 디코더를 이용해 ( scrdec.exe vb.txt Base)
Base 파일을 메모장에 확인하면 <그림2> 와 같다.
이를 html로 열어 확인하면 Base64 인코딩 값이 확인되고 디코딩해보면 해당 Key 값이 나온다.
VBscript 인코딩 -> Base64 인코딩 2회 -> 해당 Key
SUd0bGVTQTlJSGRsWDJGeVpWOTBhR1ZmWm5WMGRYSmw=
key = we_are_the_future
6. 우탱아, 가을인데 단풍놀이 가야지~ 어디로 갈까?
EXPORT OBJECT - HTTP 의 HTTP Object list 를 확인도중 Where_is_it.jpg 이라는 파일이 확인 됬다.
해당 파일을 확인해보니 아래와 같은 사진이 확인된다.
이를 구글 이미지 검색을 통해 확인해보니 제주도 한라산의 이미지 파일이 확인 됬다.
KEY : hallasan
7. 악성 다운로더
noexe.exe 해당 파일을 아래와 같이 메모장으로 확인해보는 도중 키값이 확인된다.
KEY : HTP_Forever@^^@~~
8. 나는 누구인가? 네오는 오라클에게 FTP로 Zip 파일을 받게 되는데...
우선 FTP 로 Zip 파일을 받게 됬다고 한다.
FTP 로 필터를 걸어 확인해보자. 그러면 아래와 같이 Neo_help_me.zip 이라는 파일이 확인된다.
다시 재필터 하여 (ftp-data && ip.src ==192.168.222.141) 보면
아래 패킷 하나만 필터되어 확인이 된다. 아래 그림과 같이 압축파일 시그니쳐인 PZ가 확인되며 who_ am_I.txt 파일이 있는 것 같다. 해당 파일 안에 키값이 존재 할 것 같다.
해당 Data Hex 를 HexView 에 새로 생성해 파일로 저장해서 보자
who_ am_I.txt 을 열면 Hex 값이 있으며 이를 에디터로 확인해보니 Base64 로 인코딩된것으로 추정된다. 이를 디코딩하면 I_AM_Trainee_Ahn 키값이 확인된다.
KEY: I_AM_Trainee_Ahn
9. DB 이름을 찾아라!
EXPORT OBJECT - HTTP 의 HTTP Object list 를 확인하면 아래와 같이 확인된다.
그럼 해당 파일들을 확인해 본다.
Attacker는 Blind SQL injection 시도한다.
#3. index.php%3fno=3
index.php%3fno=3%20and%20(substring(database(),1,1))='d'
성공하면
index.php%3fno=3
<br><br><font size=20> WELCOME </font><font size=25><b> IU </b></font>
위와 같이 WELCOME IU 와 같이 페이지를 보여줌에 따라 성공여부를 확인할 수 있다.
실패시
<br><br> 와 같이 확인 된다.
해당 파일을 하나씩 열어 성공한 페이지의 문자열을 모아서 확인해보면 와 같은 DB Name이 확인된다.
KEY : easywebsiteattack
10. 라우터에 백도어가 삽입되어 있다. 마지막으로 실행한 명령어는 ?
라우터 TFTP 로 통신한다고 짐작하고 필터를 걸어 확인하면
해당 패킷 4건의 내역이 확인된다.
그리고 set port 1234 명령어가 확인된다.
port 1234 로 필터를 걸어 나온 패킷중에 TCP Stream 해보면 아래와 같고 마지막 실행된 명령어는 키값이 되겠다.
Key : hostname An$w3r_is^tclsh
11. 누군가가 나의 Secret 폴더의 내용을 읽었다!
key is Secret.txt_hiden.txt_pass.txt in Secret Folder
** hiden is not wrong, it's just typo
tcp.steam eq 21 -> key event 확인
Key : POCHTP
3520
Secret 폴더에 5개의 파일이 존재한다.
해당 패킷을 확인 하면
cmd=cd secret&type secret.txt
[07/Oct/2011:18:36:07 +0900] "GET /index.php?cmd=cd%20secret%26dir&page=../server/apache/logs/access.log%00NOOPEN
HTTP/1.1" 200 1968
cmd=cd secret&type key.txt
[07/Oct/2011:18:36:35 +0900] "GET
/index.php?cmd=cd%20secret%26type%20secret.txt&page=../server/apache/logs/access.log%00ILOVEU HTTP/1.1" 200 1000
cmd=cd secret&type hiden.txt
[07/Oct/2011:18:37:10 +0900] "GET
/index.php?cmd=cd%20secret%26type%20key.txt&page=../server/apache/logs/access.log%00APACHELOG HTTP/1.1" 200 1168
cmd=cd secret&type pass.txt
[07/Oct/2011:18:37:20 +0900] "GET
/index.php?cmd=cd%20secret%26type%20hiden.txt&page=../server/apache/logs/access.log%00INJECTION HTTP/1.1" 200 1348
key -> ILOVEU
hiden.txt -> APACHELOG
pass.txt -> INJECTION
KEY : NOOPEN_APACHELOG_INJECTION
12. 메일 사용자계정과 패스워드가 IRC 봇에 감염되어 유출됐다.
http object list 확인 도중 msdownloader noexe.exe가 확인된다.
ip.addr==192.168.100.150 -> 192.168.100.200 noexe.exe 파일을 받아온다
ip.addr==192.168.100.150 로 필터해서 보자
TCP Stream 을 확인해보니 다음과 같다.
NICK [KOR][0H]tqlrykmm // IRC에서 사용할 닉네임
USER lol lol lol :shadowbot // 계정명 패스워드
JOIN #test // 채널입장 & 채널생성
PRIVMSG
PRIVMSG 로 STRING 검색후 아래와 같이 해당 내역을 찾았다.
PRIVMSG #test :Root -> [:] Executing pstore
PRIVMSG #test :pstore https://accounts.google.com/ServiceLogin idol@hackthepacket.com:K~e!y:good_bye_jobs
KEY : idol@hackthepacket.com_good_bye_jobs
13. 누군가 내 컴퓨터에 문자를 남겼다 헉...
MOUSE_EVENT와 KEY_EVENT 중에 KEY_EVENT 이어 붙이면 KEY 값이 확인된다.
Key : POCHTP
14. chakyi는 원격지 시스템에 매일 일정한 시간에 프로그램이 자동으로 실행되도록 만들었다. chakyi가 실행시키고자 하는 명령을 찾아라.
원격 작업 예약을 요청하는 패킷은 SMB 패킷이다.
SMB 패킷으로 필터하여 내용을 확인해보면 \atsvc(Microsoft AT-Scheduler Service) 으로 원격작업 등록을 요청하는 패킷으로 확인된다.
실제 등록하고자 하는 작업의 내용은 별도의 패킷을 전송되기 때문에 해당 SMB 프로토콜을 사용하는 IP를 필터해 확인하고 그림과 같이 atsvc_JobInfo 내역을 추출하여 확인해보면 다음과 같다.
KEY : rundll32.exe redhidden,_main_
Windows 2000에서 제어판의 작업 스케줄러 도구를 사용하여 작업을 예약할 수 있습니다. 또한 at 명령을 사용하여 수동으로 작업을 예약할 수 있습니다. 이 문서에서는 at 명령을 사용하여 예약된 작업을 작성하고 취소하는 방법을 설명합니다.
at 명령을 사용하여 지정된 날짜와 시간에 실행할 명령, 스크립트 또는 프로그램을 예약할 수 있습니다. 또한 이 명령을 사용하여 기존에 예약된 작업을 확인할 수 있습니다.
at 명령을 사용하려면 작업 스케줄러 서비스가 실행되어야 하며 사용자가 로컬 Administrators 그룹 구성원으로 로그온해야 합니다. at 명령을 사용하여 작업을 작성할 때 작업이 같은 사용자 계정에서 실행되도록 구성해야 합니다.
at 명령의 구문은 다음과 같습니다.
다음은 at 명령을 사용할 때 사용할 수 있는 매개 변수입니다.
-
\\computername: 이 매개 변수를 사용하여 원격 컴퓨터를 지정합니다. 이 매개 변수를 생략하면 작업이 로컬 컴퓨터에서 실행되도록 예약됩니다.
-
time: 이 매개 변수를 사용하여 작업이 실행되는 시간을 지정합니다. 시간은 24시간을 기준으로 하여
hours:
minutes로 지정됩니다. 예를 들어, 0:00은 자정을 나타내며 20:30은 오후 8시 30분을 나타냅니다.
-
/interactive:: 이 매개 변수를 사용하여 작업이 실행되고 있을 때 로그온되어 있는 사용자의 데스크톱과 해당 작업을 상호 작용할 수 있게 합니다.
-
/every:date,...: 이 매개 변수를 사용하여 매주 금요일이나 매월 8일처럼 지정된 요일이나 날짜에 작업을 실행하도록 예약합니다. 이 때
date는 하나 이상의 요일(다음 약자 사용: M,T,W,Th,F,S,Su) 또는 하나 이상의 날짜(숫자 1 - 31 사용)로 지정합니다. 쉼표를 사용하여 여러 날짜 항목을 구분해야 합니다. 이 매개 변수를 생략하면 현재 날짜에 작업이 실행되도록 예약됩니다.
-
/next:date,...: 이 매개 변수를 사용하여 작업이 다음 요일(예: 다음 월요일)이나 날짜에 실행되도록 예약합니다. 이 때
date는 하나 이상의 요일(다음 약자 사용: M,T,W,Th,F,S,Su) 또는 하나 이상의 날짜(숫자 1 - 31 사용)로 지정합니다. 쉼표를 사용하여 여러 날짜 항목을 구분해야 합니다. 이 매개 변수를 생략하면 현재 날짜에 작업이 실행되도록 예약됩니다.
-
command: 이 매개 변수를 사용하여 실행할 Windows 2000 명령, 프로그램(.exe 또는 .com 파일) 또는 일괄 프로그램(.bat 또는 .cmd 파일)을 지정합니다. 이 명령을 인수로 실행해야 하는 경우 절대 경로 이름(드라이브 문자로 시작하는 전체 경로)을 사용하십시오. 이 명령이 원격 컴퓨터에 있으면 UNC(범용 명명 규칙) 경로 이름을 사용합니다(\\
ServerName\
ShareName). 명령이 실행(.exe) 파일이 아니면 cmd /c copy C:\*.* C:\temp처럼 명령 앞에 cmd /c를 붙여야 합니다.
-
id: 이 매개 변수를 사용하여 예약된 작업에 할당되는 식별 번호를 지정합니다.
-
/delete: 이 매개 변수를 사용하여 예약된 작업을 취소합니다. id 매개 변수를 생략하면 컴퓨터에서 예약된 모든 작업이 취소됩니다.
-
/yes: 이 매개 변수를 사용하여 예약된 작업을 취소할 때 시스템의 모든 쿼리에 예로 응답합니다. 이 매개 변수를 생략하면 작업을 취소할지 묻는 메시지가 나타납니다.
참고at 명령을 사용하면 예약된 작업은 시스템 계정의 자격 증명을 사용하여 실행됩니다.
-
시작을 누르고 프로그램, 보조프로그램을 차례로 가리킨 다음 명령 프롬프트를 누릅니다.
-
명령 프롬프트에서 다음 명령줄을 입력한 다음 Enter 키를 눌러 현재 실행 중인 서비스 목록을 나타냅니다.
net start
목록에 작업 스케줄러가 나타나지 않으면 다음 명령줄을 입력한 다음 Enter 키를 누릅니다.
net start "task scheduler"
-
명령 프롬프트에서 다음 명령줄을 입력한 다음(사용자 상황에 맞게 매개 변수 사용) Enter 키를 누릅니다.
at \\computername time /interactive | /every:date,... /next:date,... command
-
자정에 Documents 폴더에서 MyDocs 폴더로 모든 파일을 복사하려면 다음 명령줄을 입력한 다음 Enter 키를 누릅니다.
at 00:00 cmd /c copy C:\Documents\*.* C:\MyDocs
-
매일 밤 11시에 Products 서버를 백업하려면 백업 명령(예: Backup.bat)이 들어 있는 배치 파일을 만들고 다음 명령줄을 입력한 다음 Enter 키를 눌러 백업을 예약합니다.
at \\products 23:00 /every:M,T,W,Th,F backup
-
Sales 서버를 오전 6시에 실행하고 Corp 서버의 공유 Reports 폴더의 Sales.txt 파일 목록을 리디렉션하도록 net share 명령을 예약하려면 다음 명령줄을 입력한 다음 Enter 키를 누릅니다.
at \\sales 06:00 cmd /c "net share reports=d:\Documents\reports >> \\corp\reports\sales.txt"
-
시작을 누르고 프로그램, 보조프로그램을 차례로 가리킨 다음 명령 프롬프트를 누릅니다.
-
명령 프롬프트에서 다음 명령줄을 입력한 다음 Enter 키를 눌러 현재 실행 중인 서비스 목록을 나타냅니다.
net start
목록에 작업 스케줄러가 나타나지 않으면 다음 명령줄을 입력한 다음 Enter 키를 누릅니다.
net start "task scheduler"
-
명령 프롬프트에서 다음 명령줄을 입력한 다음(사용자 상황에 맞게 매개 변수 사용) Enter 키를 누릅니다.
at \\computername id /delete | /delete/yes
-
로컬 컴퓨터에서 모든 예약된 작업을 보려면 at을 입력한 다음 Enter 키를 누릅니다.
-
"MyServer"라는 컴퓨터에서 작업 ID 8을 취소하려면 at \\MyServer 8 /delete를 입력한 다음 Enter 키를 누릅니다.
at 명령을 사용하여 작성된 작업을 확인하려면 다음과 같이 하십시오.
-
시작을 누르고 프로그램, 보조프로그램을 차례로 가리킨 다음 명령 프롬프트를 누릅니다.
-
명령 프롬프트에서 다음 명령줄을 입력한 다음 Enter 키를 눌러 현재 실행 중인 서비스 목록을 나타냅니다.
net start
목록에 작업 스케줄러가 나타나지 않으면 다음 명령줄을 입력한 다음 Enter 키를 누릅니다.
net start "task scheduler"
-
명령 프롬프트에서 다음 작업 중 하나를 수행합니다.
-
at 명령을 사용하여 예약된 작업 목록을 보려면 다음 명령줄을 입력한 다음 Enter 키를 누릅니다.
at \\computername
또는
-
특별히 예약된 작업을 보려면 다음 명령줄을 입력한 다음 Enter 키를 누릅니다.
at \\computername id
-
-
로컬 컴퓨터에서 모든 예약된 작업을 보려면 at을 입력한 다음 Enter 키를 누릅니다.
-
"Support"라는 컴퓨터에 예약된 모든 작업을 보려면 at \\support를 입력한 다음 Enter 키를 누릅니다.
-
로컬 컴퓨터에서 작업 ID 18을 보려면 at 18을 입력한 다음 Enter 키를 누릅니다.
-
at \\computername을 입력하여 예약된 작업 목록을 보는데 at 명령을 사용하여 작성된 일부 또는 모든 예약된 작업이 표시되지 않습니다.
at 명령을 사용하여 작업을 작성한 후 예약된 작업 폴더의 작업을 수정하는 경우에 이러한 문제가 발생할 수 있습니다. at명령을 사용하여 작업을 예약하면 제어판의 예약된 작업 폴더에 해당 작업이 표시됩니다. 작업을 보거나 수정할 수 있습니다. 그러나 작업을 수정할 때 at 명령을 사용하면 작업을 볼 수 없습니다.
이 문제를 해결하려면 제어판의 예약된 작업 폴더에서 작업을 보거나 수정하십시오.이 문제에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
220149 작업 스케줄러 도구를 통해 AT 작업을 볼 수 없다
-
at 명령을 사용하여 작업을 예약했는데 지정된 시간이나 날짜에 해당 작업이 실행되지 않습니다.
아래의 두 경우 중 하나에 해당하면 이러한 문제가 발생할 수 있습니다.
-
명령 구문이 잘못되었습니다.
작업을 예약한 후 at \\computername을 입력하여 구문이 올바른지 확인합니다. 명령줄에 표시된 정보가 올바르지 않으면 작업을 취소한 다음 다시 작성합니다.
또는
-
.exe 파일이 아닌 명령을 실행하도록 작업을 예약했습니다.
at 명령은 명령을 실행하기 전에는 cmd(명령 인터프리터)를 자동으로 로드하지 않습니다. .exe 파일을 실행하지 않은 경우 at cmd /c dir > c:\test.txt처럼 명령 시작 부분에 Cmd.exe를 로드해야 합니다.
-
AT 명령의 문제 해결에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
121562 AT 명령을 통해 시작한 응용 프로그램이 제대로 작동하지 않는다
_M#]
15. 이메일을 통해 jitae 의 첫번째 데이트 기밀정보를 입수하는데..
하지만 내용없이 파일만 첨부되어 있었다. 데이트 장소는 언제 몇시에 어디인가?
EXPORT OBJECT - HTTP 의 HTTP Object list 를 확인 이메일 관련 패킷이 아래 사진과 같다.
ViewMail.daum 를 보아 다음 사이트의 메일로 확인되며
FIle Name:
ViewMail.daum%3fmethod=noAjax&folderId=id-%253AUNREAD%253A&mailId=000000000000Ngv&showHeader=undefined
을 보기 쉽게 변환해서 보면 다음과 같다
첨부된 파일은 promise.mp3 파일이며
해당 속성을 보니 mpeg&attnum=1&attid=0.1 확인된다.
mpeg&attnum=1&attid=0.1 실행시켜보니 6초의 귀여운? 목소리가 들리며
이 mp3 안에 우리가 원하는 키값이 숨어 있는 것 같다.
mp3 스테가노그래피 툴을 통해 확인 결과
위와 같이 해독키값 jitae 이며 그 결과 생성된 txt파일 안에
sunday, 14:00, GangNam station 키값이 확인된다.
KEY : sunday, 14:00, GangNam station
16. 수학을 공부하던 꼬비는 잠이 들었는데, 공식이 다른 이상한 글자들로 바뀌어 있는 꿈을 꾸게 되었다.
Mass1, Mass2, Mass3 와 같이 세가지 시험지 이미지 파일이 나온다.
JPEG 파일은 FF D8 ~ FF D9 이다.
그런데 FF D9 다음에
Rar 파일의 시그니처가 포함되어 있다. (Rar 52 61 72 21)
해당 mass 1,2,3 각각 파일을 추출해 압축을 풀면
math 폴더안에 6가지 수학공식에 관한 hwp 파일이 생성된다. 이 hwp 파일중 공식 중에 다음과 같은 키값을 확인할 수 있다.
KEY : _Y0ur_Dr34m 를 Leet 표에 나와있는것처럼 치환 하면 KEY !
<Leet 표>
17. 우태혁의 여자친구 이름은 무엇이고, 어디에 살고 있는가?
(Key Fomat :: Woo Tae Hyuck Hanla Mountain)
KEY : Kim Ha-Neul_Dokdo_island
18. 무슨 동물 좋아하니?
아래와 같이 확인 후 해당 파일을 jpeg 로 바꾸어 확인 결과 아래와 같은 그림이 나온다.
해당 키값은 BUNNY 이며 특별한 지식을 필요로 하지 않는 센스를 필요하시는 문제 같다.
KEY: BUNNY
19. 네이트온 사진 함께 보기를 통해, 우탱이는 어떤 수학문제를 알게 됐을까?
네이트온 기본 포트 5004 이며 포트 5004 로 필터링한다.
패킷을 확인하면 패킷내에 woo_tae@nate.com / woo_tang@nate.com 메신저 ID 가 확인된다.
우태가 우탱이에게 사진함께보기로 사진을 보여 줬다.
사진 내 Data 부분을 확인하면 JPEG 시그니쳐가 확인되며 이를 추출하면 다음 그림과 같다.
아래와 같은 이미지 글씨를 보면 What is the perimeter of the rectangular field? 라고 둘레를 구하라고 한다.
수직 7+7 14
수평 b - 5 = 8 -a
b+a =13 따라서 5+ a + 8 +b =26
14 + 26 = 40
KEY : 40
2012 Hack the packet (HTP) 문제 다운로드
VBscript Decorder (문제 풀이에 필요)
'슈개's IT > Engineer Room' 카테고리의 다른 글
[ERROR] 카카오 애드핏 심사 승인 "다시 조회하기" 문제해결 방법 (0) | 2020.12.22 |
---|---|
Cuckoo Sandbox 설치 가이드 (2/2) (0) | 2020.12.21 |
Cuckoo Sandbox 설치 가이드 (1/2) (0) | 2020.12.21 |
[ERROR] VMware OVF 패키지 배포 시 에러 해결방법 (0) | 2020.12.21 |
악성코드 분석 관련 사이트 정리 (0) | 2013.08.27 |