외로운 Nova의 작업실

[ctf-d] Disk - 이벤트 예약 웹사이트를 운영하고.. 풀이 본문

Digital Forensics

[ctf-d] Disk - 이벤트 예약 웹사이트를 운영하고.. 풀이

Nova_ 2023. 2. 19. 18:57

- 문제

 

A. 공격자가 웹페이지 소스코드를 유출한 시간(UTC+09:00)은?

B. 리버스쉘(Reverse Shell)을 동작시키는 프로세스 ID(PID)는? (10진수)

C. 리버스쉘(Reverse Shell)에 대한 공격자 주소(IP)는?

 

- 문제 풀이

<B 문제>

먼저 리버스쉘을 실행시켰고, 프로세스 ID를 물어보기때문에 프로세스가 실행시킨 CMD 명령어들을 기록해놓은 ps_eaf 파일먼저 봐보겠습니다. process>ps_eaf 경로에 있습니다.

sh 명령어와 php 명령어로 reverce.php를 실행시킨 기록이 있습니다. user의 계정은 www-data이고, 이 계정이 실행시킨 응용프로그램중 PID값이 5245인 프로그램이 직접 php 명령어로 reverse.php 파일을 실행시키는 것을 확인할 수 있습니다. 즉, B문제의 답은 5245입니다.또한, 리버스 쉘의 위치는 /var/www/upload/editor/image에 있음을 알 수 있습니다.

 

<C 문제>

리버스쉘을 php파일로 실행시켰으니 이 파일이 실행중에 공격자와 연결됨을 추측할수 있습니다. 따라서 파일관련해서 정보를 알 수 있는 lsof 로그파일을 분석해봅시다.

리버스쉘을 실행시킨 5245 프로세스가 PHP 커맨드로 TCP 연결을 했음을 알 수 있습니다. 그 곳은바로 144.206.162.21입니다. C의 정답은 144.206.162.21입니다.

 

<A문제>

유출시각을 물어보는 문제로 HTTP 통신이 언제일어났는지 분석해보면됩니다. 이때는 access 로그파일을 분석해보면 됩니다. 공격자는 /upload/editor/image 경로의 reverse.php 파일을 요청할 것이기때문에 요청 헤더에는 저경로가 있을 것을 추측할 수 있습니다. 따라서 경로를 검색해줍니다.

81095: 112.216.97.27 - - [25/Aug/2012:17:18:32 +0900] "GET /upload/editor/image/cmd.php HTTP/1.1" 294 311 "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;
	줄  81096: 112.216.97.29 - - [25/Aug/2012:17:18:51 +0900] "GET /upload/editor/image/cmd.php?cmd=cHdk HTTP/1.1" 200 323 "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;
	줄  81105: 112.216.97.29 - - [25/Aug/2012:17:19:23 +0900] "GET /upload/editor/image/cmd.php?cmd=bHMgLWFsICAvdmFyL3d3dy91cGxvYWQvZWRpdG9yL2ltYWdlLw%20%20 HTTP/1.1" 200 13318 "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;
	줄  81122: 112.216.97.29 - - [25/Aug/2012:17:21:12 +0900] "GET /upload/editor/image/cmd.php?cmd=dGFyIC1jdmYgL3Zhci93d3cvdXBsb2FkL2VkaXRvci9pbWFnZS8xMzMwNjY0ODM4IC92YXIvd3d3Lw%20%20 HTTP/1.1" 200 14541 "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;
	줄  81141: 112.216.97.29 - - [25/Aug/2012:17:26:40 +0900] "GET /upload/editor/image/cmd.php?cmd=cGhwIC1mIC92YXIvd3d3L3VwbG9hZC9lZGl0b3IvaW1hZ2UvcmV2ZXJzZS5waHA%20 HTTP/1.1" 200 294 "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;

cmd 매개변수에 암호화된 값들이 있는 것을 확인할 수 있습니다. 이는 base64로 인코딩 된 것으로확인할 수 있습니다.

 

cmd=cHdk 

pwd

 

cmd=bHMgLWFsICAvdmFyL3d3dy91cGxvYWQvZWRpdG9yL2ltYWdlLw

ls -al  /var/www/upload/editor/image/

 

cmd=dGFyIC1jdmYgL3Zhci93d3cvdXBsb2FkL2VkaXRvci9pbWFnZS8xMzMwNjY0ODM4IC92YXIvd3d3Lw

tar -cvf /var/www/upload/editor/image/1330664838 /var/www/

 

cmd=cGhwIC1mIC92YXIvd3d3L3VwbG9hZC9lZGl0b3IvaW1hZ2UvcmV2ZXJzZS5waHA

php -f /var/www/upload/editor/image/reverse.php

 

tar는 파일들을 묶는 명령어로 이미지파일과 /var/www경로에 있는 모든 파일들을 합치는 것을 확인할수 있습니다. 그리고는 리버스쉘을 실행시켜 .tar 파일을 가져간것으로 확인할 수 있습니다. 이때 시간은 [25/Aug/2012:17:26:40 +0900] 입니다. 

Comments