Disk Forensic #1, #2, #3 (이벤트 예약 웹사이트를 운영하고... #A, #B, #C)

 

디스크 포렌식 1번 문제

 

디스크 포렌식 2번 문제

 

디스크 포렌식 3번 문제

 

이번 문제는 1개의 파일로 디스크 포렌식 1번부터 3번까지 진행하는 문제이다.

 

1번 문제에서 주어진 파일을 열게 되면 디렉토리와 각 디렉토리에 해당하는 로그 파일들이 존재한다.

 

[그림 1] 디렉토리 및 로그 파일 내용

 

가장 먼저 accounts 디렉토리로 들어간다.

 

[그림 2] accounts 디렉토리 로그 파일

 

여기서 중요한 로그 파일은 바로 history 로그 파일이다.

 

history 로그 파일에서 사용자가 실행했던 명령어에 대한 기록을 확인할 수 있다.

 

Sublime Text3를 통해 history 파일을 열어 확인하였다.

 

[그림 3] history 로그 파일 확인

 

여기서 중요 내용은 해당 로그에서 /var/www/upload/editor/image라는 특정 디렉토리에 파일 접근 권한을 777로 하여 모든 접근 권한을 허용하도록 한 내용을 의심해볼 수 있다.

 

[그림 4] process 디렉토리 로그 파일

 

그래서 /var/www/upload/editor/image 디렉토리를 기반으로 분석한 결과, process 디렉토리의 ps_eaf 로그 파일을 분석하던 도중에 이상한 점을 발견하였다.

 

[그림 5] ps_eaf 로그 파일 확인

 

ps_eaf 로그 파일에서 reverse.php를 통한 리버스 쉘로 의심되는 프로세스를 확인할 수 있다.

 

해당 프로세스의 PID는 5245이다.

 

[그림 6] network 디렉토리 로그 파일

 

다음은 network 디렉토리의 lsof 로그 파일이다.

 

lsof 로그는 열려 있는 파일에 대한 프로세스 정보를 포함하고 있다.

 

[그림 7] lsof 로그 파일 확인

 

ps_eaf에서 찾은 PID 5245를 이용하여 분석한 결과, 해당 프로세스를 수행함으로써 특정 IP 144.206.162.21:www와 연결됨을 확인할 수 있다.

 

결론적으로 공격자가 /var/www/upload/editor/image/reverse.php를 사용하여 리버스 쉘을 동작시킨 것을 확인할 수 있다.

 

이제 공격자가 웹페이지 소스코드를 유출했다는 점에서 php, html, zip 등 관련된 파일 확장자를 업로드하거나 전송한 흔적을 확인하면 문제를 해결할 수 있을 것 같다.

 

[그림 8] weblog 디렉토리 로그 파일

 

마지막으로 weblog 디렉토리에 있는 access.log 텍스트 파일을 확인한다.

 

access.log 텍스트 파일 안에 공격자가 웹사이트에서 요청했던 기록이 있는지 분석하였다.

 

먼저 위에서 찾은 /upload/editor/image 디렉토리 키워드를 통해 분석한다.

 

[그림 9] access.log 파일 확인

 

분석 결과,  jpg와 같은 사진/그림 파일 확장자를 가진 파일을 확인할 수 있었으며,

 

[그림 10] 이상한 내용 확인 1

 

[그림 11] 이상한 내용 확인 2

 

[그림 12] 이상한 내용 확인 3

 

cmd.php라는 파일의 흔적도 확인할 수 있었다.

 

그리고 cmd.php 뒤로 위 이상한 내용에서 볼 수 있듯이 인코딩 된 데이터 값을 확인할 수 있다.

 

인코딩 된 데이터 값을 확인하기 위해, Base64로 디코딩하였다.

 

Base64 디코딩 사이트 : https://www.base64decode.org/

 

Base64 Decode and Encode - Online

Decode from Base64 or Encode to Base64 with advanced formatting options. Enter our site for an easy-to-use online tool.

www.base64decode.org

 

[그림 13] Base64 디코딩 진행

 

위 화면과 같은 형식으로 나머지 2개의 값도 진행해보면 다음과 같은 결과 값을 볼 수 있다.

 

[그림 14] Base64 디코딩 결과

 

디코딩 결과를 보면 공격자는 /var/www/upload/editor/image 디렉토리에 관련 자료를 확인한 후에, tar 명령어로 압축하였고, reverse.php를 실행 시켜 유출한 것을 추측할 수 있다.

 

결론적으로 reverse.php를 동작시킨 시간 25/Aug/2012:17:26:40+0900을 웹페이지 소스코드 유출 시간으로 볼 수 있다.

 

따라서 지문에서 제시한 웹페이지 소스코드 유출 시간(UTC+09:00), 리버스쉘 프로세스 ID(PID), 리버스쉘 공격자 주소(IP)를 모두 확인할 수 있으며, 각 문제에서 제시하는 플래그를 입력하게 되면 3문제 모두 해결할 수 있다.


# Reference

 

http://www.yes24.com/Product/Goods/59156934

+ Recent posts