#About
이벤트 예약 웹사이트를 운영하고 있는 "깜짝이야"사의 관리자 앞으로 한통의 협박 메일이 도착했다. 당장 10억을 입금하지 않으면, 확보한 자사의 웹페이지 소스코드를 모두 공개할 것이며, 추가적인 위협을 가하겠다는 내용이다. 관리자는 포렌식 전문가인 당신에게 침해사고 분석을 의뢰하였다. 침해된 시스템에 남겨진 흔적과 각종 로그 파일을 분석하여 다음 사항을 밝혀내시오.
A. 공격자가 웹페이지 소스코드를 유출한 시간(UTC+09:00)은? (yyyy-MM-dd_hh:mm:ss)
B. 리버스 셸(Reverse Shell)을 동작시키는 프로세스 ID(PID)는 ? (10진수)
C. 리버스 셸(Reverse Shell)에 대한 공격자 주소(IP)는?
답 입력 : md5("yyyy-MM-dd_hh:mm:ss_PID_XXX.XXX.XXX.XXX")
#Solution
제공받은 파일을 확인해보면 아래와 같이 accounts, file, network, osinfo, process, weblog의 폴더가 존재함을 확인할 수 있다
[그림 1] - 문제 파일 확인
먼저, 아래와 같이 accounts 폴더를 확인하니 history 명령의 결과가 담겨있음을 확인할 수 있었고, 아래와 같이 확인해보았다
[그림 2] - history 확인
셸 history를 확인 결과, chmod 777라는 명령으로 /var/www/upload/editor/image의 경로에 모든 권한을 주는 것을 확인할 수 있고,
ahnlab이라는 계정을 생성 및 포렌식 분석 도구인 sleuthkit을 설치하는 것을 일차적으로 확인할 수 있다
확실한건 chmod 777 /var/www/upload/editor/image라는 명령으로 모든 권한을 주는 것은 일반적이지 않은 행위이며 이는 웹과 관련되었다는 것을 예상해볼 수 있다
[그림 3] - process 폴더 확인
다음으로, 휘발성이 강하며 많은 정보를 담고 있는 process폴더에 접근하여 파일을 확인해보았더니 아래와 같이 ps -eaf 의 명령의 결과가 저장되어 있었다
[그림 4] - ps_eaf 명령 확인
프로세스 정보의 출력 결과가 담긴 ps_eaf를 확인해보았더니 아래와 같다.
[그림 5] - ps_eaf 파일 확인
확인 결과 www-data라는 사용자가 셸을 sh -c을 통해 명령을 실행하고 있으며 셸의 명령을 통해 생성된 자식프로세스(PID=5248)가
php -f 명령을 통해 /var/www/upload/editor/image/reverse.php를 실행하고 있음을 확인할 수 있다.
이는 [그림 2]에서 chmod 777 /var/www/upload/editor/image의 디렉터리에 권한을 전부 주는 것과 연관 되어 있음을 예상할 수 있다.
다음으로 network 폴더에서 lsof의 결과가 저장되어 있음을 확인했다. lsof는 list open files로 시스템에 열려 있는 파일목록을 알려준다
[그림 6] - lsof 확인
cat lsof 명령을 내린 결과 수 많은 결과가 출력되어 grep으로 [그림 2]와 [그림 5]에서 의심스러운 디렉터리를 검색한 결과,
www-data라는 사용자가 apache2, sh, php 명령을 실행시켰고 이를 통해 파일이 열려 있는 상태임을 알 수 있다.
따라서 웹과 관련된 서비스가 열려 있는지 확인하기 위해 netstat_an 파일을 확인해보았더니 아래와 같은 결과를 확인할 수 있었다.
[그림 7] - netstat_an 확인
확인 결과, 192.168.184.162라는 로컬 호스트에서 해커의 IP로 추정되는 144.206.162.21이라는 원격지로 HTTP 연결이 되어 있음을 알 수 있었다.
이를 통해 이미 공격자는 리버스 셸을 통해 공격이 성공 했음을 추측할 수 있고, 리버스 셸과 관련된 행위를 찾기 위해 weblog를 확인 결과 아래와 같다.
[그림 8] - weblog 확인
웹 로그를 확인 결과, 112.220.97.29라는 IP에서 cmd.php의 cmd라는 파라미터를 인젝션 벡터로 하여금, base64로 추정되는 명령을 보냈고 응답코드 200을 통해 정상적으로 실행되었음을 알 수 있다
base64 디코딩 결과는 아래와 같다
cHdk
▶ pwd
bHMgLWFsICAvdmFyL3d3dy91cGxvYWQvZWRpdG9yL2ltYWdlLw%20%20
▶ ls -al /var/www/upload/editor/image/
dGFyIC1jdmYgL3Zhci93d3cvdXBsb2FkL2VkaXRvci9pbWFnZS8xMzMwNjY0ODM4IC92YXIvd3d3Lw%20%20
▶ tar -cvf /var/www/upload/editor/image/1330664838 /var/www/
cGhwIC1mIC92YXIvd3d3L3VwbG9hZC9lZGl0b3IvaW1hZ2UvcmV2ZXJzZS5waHA%20
▶ php -f /var/www/upload/editor/image/reverse.php
1. 이를 통해 가볍게 해커는 pwd 명령을 통해 cmd라는 파라미터을 인젝션 벡터로써 가능한지 확인하고,
2. tar -cvf /var/www/upload/editor/image/1330664838 /var/www/ 명령을 통해 관리자의 웹 페이지 소스코드를 압축한 뒤,
3. GET 메소드를 통해 압축 된 소스코드를 다운받고
4. php -f /var/www/upload/editor/image/reverse.php 명령을 통해 리버스 셸을 실행시켜 압축한 소스코드를 탈취 해갔음을 알 수 있다.
A : 2012-08-25_17:23:02
B : 5248
C : 144.206.162.21
'Wargame' 카테고리의 다른 글
[SCENARIO] 2015 WHITE HAT CONTEST 예선 (0) | 2018.09.16 |
---|---|
[SCENARIO] CFReDS_ data leakage case (0) | 2018.07.19 |
2013 [Hack The Packet] M_01 (0) | 2018.03.21 |
2013 [Hack The Packet] L_01 (0) | 2018.03.21 |
2011 [Hack The Packet] L_03 (0) | 2018.03.21 |