ครั้งนี้เราจะใช้เทคนิคในการวิเคราะห์ข่าวกรองทางไซเบอร์ (Cyber Threat Intelligence: CTI) เพื่อขยายผลจาก phishing domain เพียงอันเดียว ไปสู่การตรวจพบอีก 8,500+ โดเมน ที่อยู่ในมือของแฮกเกอร์กลุ่มเดียวกัน ซึ่งกระบวนการนี้อาจจะเรียกได้ว่าเป็น proactive threat intelligence ก็ว่าได้ครับ
เรื่องของเรื่องคือ ผมได้เคยมีโอกาสอ่านบล็อกของนักวิจัยด้านความปลอดภัยไซเบอร์ชื่อ Matthew ซึ่งมีเนื้อหาเกี่ยวกับการตามสืบเพื่อค้นหา infrastructure ของแฮกเกอร์โดยเริ่มต้นจากโดเมนเพียงอันเดียวแล้วทำให้รู้สึกสนใจ จึงอยากลองหัดทำดูบ้างโดยใช้ตัวอย่างที่เกี่ยวข้องกับประเทศไทยเป็นหลัก (แน่นอนครับ ถ้าคนไทยไม่ทำข่าวกรองทางไซเบอร์กันเอง แล้วใครที่ไหนจะทำให้เรา?)
หลังจากลองค้นหาใน Any.Run ปรากฏว่าผมพบ public submission อันหนึ่งซึ่งเป็น URL ต้องสงสัยที่ถูกอัพโหลดจากประเทศไทยเมื่อวันที่ 25 มิ.ย.67 และที่น่าสนใจคือ URL ดังกล่าวถูกระบุว่าไม่เป็นอันตราย (No threats detected)
ทุกท่านสามารถดูรายละเอียดของ URL ต้องสงสัยได้จากข้อมูลด่านล่างนี้ครับ ซึ่งสำหรับท่านที่คุ้นเคยกับ cybersecurity ดีอยู่แล้ว น่าจะทราบได้ทันทีที่เห็น ว่า URL ดังกล่าวใช้ประโยชน์จากการละเมิดการใช้งาน Google URL Redirection แต่เราจะไม่พูดถึงรายละเอียดเกี่ยวกับการทำงานของ phishing กันในตอนนี้เพราะเราจะโฟกัสไปที่การตามล่า infrastructure เป็นหลัก
hxxps://www.google[.]com/url?q=//www.google.com.co/amp/s/899415.imfgo.org/zagiryegrt/qopfhygt/paorufgh/3ipmnw/pa[redacted]ir@bum[redacted]rad.com
ถ้าสมมติเราคลิ๊กไปที่ URL ต้องสงสัยในข้างต้น ปลายทางสุดท้ายมันจะพาเราไปสู่หน้าเว็บเพจปลอมของ Outlook Login ที่ถูกสร้างเอาไว้บนโดเมนชื่อ yamstel[.]com ซึ่งจะถูกใช้สำหรับหลอกดักรหัสผ่านโดยมีเป้าหมายคืออีเมล pa[redacted]ir@bum[redacted]rad.com ซึ่งเป็นอีเมลของพนักงานโรงพยาบาลเอกชนชื่อดังแห่งหนึ่งในประเทศไทย
ทีนี้เราก็ได้สารตั้งต้นสำหรับการตามล่าแล้วนะครับ ซึ่งก็คือ phishing domain ที่ชื่อ yamstel[.]com
เราสามารถเริ่มต้นสืบจากข้อมูลพื้นฐานของโดเมน โดยการตรวจสอบข้อมูล Whois record ซึ่งบางครั้งสามารถให้รายละเอียดเกี่ยวกับ โดเมน, ผู้จดโดเมน (ต่อไปนี้จะเรียกย่อ ๆ ว่า ผู้จด), และบริษัทที่รับจดโดเมน ซึ่งขึ้นอยู่กับว่าผู้จดให้ความสำคัญกับความเป็นส่วนตัวมากแค่ไหน โดยผู้จดสามารถซื้อบริการเพื่อเซ็นเซอร์ข้อมูลเหล่านี้ได้ ทำให้เป็นอุปสรรคต่อการวิเคราะห์เป็นอย่างมาก
สำหรับกรณีของโดเมน yamstel[.]com เราสามารถดูข้อมูล Whois record ในส่วนที่เกี่ยวกับโดเมน (Domain Information) ได้ เช่น วันที่จดทะเบียนโดเมน บริษัทที่รับจด และข้อมูล Nameserver (NS) แต่เป็นที่น่าเสียดายเพราะเราพบว่ามันถูกวางไว้หลัง Cloudflare ทำให้เป็นเรื่องยากที่จะสืบหาหมายเลขไอพีที่แท้จริงของโดเมนดังกล่าวได้
แต่อย่าพึ่งเสียใจไปครับ โชคยังเข้าข้างเราอยู่บ้างเพราะแฮกเกอร์ไม่ได้ใช้บริการเซ็นเซอร์ข้อมูลทำให้เราสามารถดูข้อมูลเกี่ยวกับผู้จด (Registrant Contact) ได้ ตอนนี้เราจึงทราบว่าโดเมน yamstel[.]com ถูกจดทะเบียนโดยผู้ใช้ชื่อ Suiot Dishak ซึ่งถึงแม้อาจจะเป็นชื่อปลอม แต่ก็ควรค่าแก่การนำไปใช้ติดตาม (track) การโจมตีได้ในอนาคต
ถึงตอนนี้สิ่งที่น่าเร้าใจกำลังจะเกิดขึ้น เพราะเราพบว่าแฮกเกอร์ใช้อีเมล sui89657@proton[.]me ในการจดทะเบียนโดเมน ซึ่งข้อมูลอันนี้เป็นเสมือนใบเบิกทางไปสู่สวนหลังบ้านของแฮกเกอร์ครับ
ประโยชน์ของการค้นพบอีเมลที่แฮกเกอร์ใช้ในการจดโดเมนก็คือ เราสามารถนำอีเมลดังกล่าวไปตรวจสอบย้อนกลับเพื่อค้นหาโดเมนอื่น ๆ ที่ถูกจดทะเบียนด้วยอีเมลเดียวกันนั้นได้ หรือที่เรียกว่า Reverse Whois Lookup โดยในครั้งนี้เราจะใช้บริการของเว็บไซต์ชื่อ WHOXY.com เพื่อตรวจสอบข้อมูลดังล่าว ซึ่งผลลัพธ์ที่ได้คือ เราค้นพบว่ามีโดเมนทั้งหมด 18 รายการ ถูกจดทะเบียนด้วยอีเมล sui89657@proton[.]me
นอกเหนือจากชื่อของโดเมนทั้ง 18 รายการ ที่เราค้นพบเพิ่มเติมนี้แล้ว ถ้าเรามองดูในรายละเอียดจะพบสิ่งที่น่าสนใจ ดังนี้
นอกจากนี้หากเราเช็กการตั้งค่า Nameserver (NS) และ Mail Exchange (MX) ของโดเมนทั้ง 18 รายการ จะพบว่า สำหรับโดเมนที่ไม่ได้อยู่หลัง Cloudflare มีการตั้งค่า NS เหมือนกันทั้งหมดคือ orderbox-dns[.]com และใช้ MX เหมือนกันทั้งหมดคือ mailhostbox[.]com
ข้อมูลที่เราค้นพบในเบื้องต้นนี้จะเป็นประโยชน์ในภายหลังเมื่อเราต้องการยืนยันว่ามีโดเมนใดบ้างที่เข้าข่ายต้องสงสัย
ทีนี้ ถึงเวลาที่เราจะสืบกันต่อโดยใช้ชื่อโดเมนทั้ง 18 รายการ ที่เราพึ่งค้นพบล่าสุดครับ
ในลำดับต่อไป เราจะตรวจสอบข้อมูล DNS record ของโดเมนทั้ง 18 รายการ โดยใช้บริการของเว็บไซต์ชื่อ InfoByIp.com ซึ่งต้องขอบอกเลยว่าผลลัพธ์ที่ได้เป็นที่น่าพอใจพอสมควรครับ
ในครั้งนี้ เราพบว่าแฮกเกอร์ไม่ได้วางทุกโดเมนเอาไว้หลัง Cloudflare ทำให้เราสามารถมองเห็นข้อมูลหมายเลขไอพีที่แท้จริงของโดเมนบางส่วนจากใน Address (A) record ซึ่งได้แก่ 5.230.44[.]64, 193.239.84[.]207, และ 45.91.171[.]151
เพื่อไม่ให้บทความยืดเยื้อเกินไป ผมจะหยิบแค่ไอพีหมายเลข 193.239.84[.]207 มาแสดงเป็นตัวอย่างในการสืบหาข้อมูลในลำดับถัดไป ซึ่งกระบวนการวิเคราะห์ทั้งหมดนี้สามารถนำไปใช้กับหมายเลขไอพีใดก็ได้ครับ
ทีนี้ เราจะนำไอพีหมายเลข 193.239.84[.]207 ไปทำการตรวจสอบแบบย้อนกลับด้วยวิธี Passive DNS Lookup ซึ่งจะทำให้เราสามารถดูได้ว่ามีโดเมนใดบ้างที่ถูกชี้มายังหมายเลขไอพีนี้ แล้วจึงค่อยพิเคราะห์ดูว่าโดเมนไหนบ้างที่เข้าข่ายต้องสงสัย
เครื่องมือในการทำ Passive DNS Lookup มีหลายตัวให้เลือกใช้ แต่ในที่นี้ผมจะใช้เครื่องมือชื่อ SilentPush ในการตรวจสอบ โดยผลลัพธ์ที่ได้พบว่ามีโดเมนประมาณ 130,135 รายการ ชี้มายังไอพี 193.239.84[.]207 ซึ่งการจะตรวจสอบรายละเอียดทุกโดเมนดูจะเป็นไปได้ยาก ดังนั้นเราจำเป็นต้องโฟกัสไปยังโดเมนที่ตรงกับความสนใจของเราจริง ๆ เท่านั้น
ถ้ายังจำกันได้ โดเมนทั้ง 18 รายการ ที่เราค้นพบก่อนหน้านี้ถูกจดทะเบียนในช่วงเดือน ก.ค.66 - พ.ย.66 เราสามารถนำข้อมูลนี้มาใช้ในการคัดกรองได้ ทำให้จากโดเมนจำนวน 130,135 รายการ ถูกคัดกรองเหลือแค่ 4,000 รายการ โดยประมาณ
ต่อมา เราจะคัดเลือกเฉพาะโดเมนที่มีชื่อตรงกับรูปแบบ ชุดอักษร-{ตัวย่อประเทศ}.com ซึ่งเป็นรูปแบบที่เราตรวจพบมาก่อนหน้านี้ โดยผมพยายามที่จะใช้คำสั่ง regular expression: ^\w+-[a-z]{2}.com$ บนเว็บไซต์ SilentPush แต่พบอุปสรรคบางประการจึงไม่สามารถดำเนินการต่อไป ผมจึงเปลี่ยนไปใช้วิธีการ ‘ดูด’ รายการของโดเมนทั้งหมดเท่าที่จะทำได้จนกว่าโควตาของผมจะหมด ซึ่งรางวัลที่ได้คือโดเมนที่ตรงสเปคเราจำนวนทั้งสิ้น 387 รายการ
ลำดับต่อมาคือ การพิเคราะห์ดูว่าโดเมนทั้ง 387 รายการนี้ มีโดเมนใดบ้างเข้าข่ายน่าสงสัย โดยเราสามารถนำเงื่อนไขที่เราเรียนรู้จากโดเมนทั้ง 18 รายการก่อนหน้านี้ มาใช้ในการพิจารณาเพิ่มเติม ได้แก่
ซึ่งผลลัพธ์ที่ได้คือ มีโดเมนที่เข้าเงื่อนไขทั้งหมด 336 รายการ ดังนั้น ณ จุดนี้ เราสามารถพูดได้แล้วว่า เราค้นพบโดเมนต้องสงสัยเพิ่มเติมอีก 336 รายการ ซึ่งมีโอกาสสูงที่โดเมนเหล่านี้จะอยู่ในการครอบครองของแฮกเกอร์คนเดียวกัน
ถึงตรงนี้ กระบวนการสืบ ตรวจสอบ และวิเคราะห์ ก็ได้จบลงแต่เพียงเท่านี้ ทว่าในโลกของความเป็นจริงทุกท่านยังคงสามารถเลือกที่จะหยิบหมายเลขไอพีหรือโดเมนใด ๆ ก็ได้เพื่อนำไปเข้าวงรอบการตรวจสอบได้แบบไม่รู้จบ
เอาล่ะ ก่อนเราจะลาจาก โปรดอนุญาตให้ผมแสดงอะไรให้ดูซักอย่างนะครับ
ผมได้ลองเช็กโดเมนจากชุด 336 รายการ พบว่ามีโดเมนที่มีชื่อคล้ายองค์กรในประเทศไทยจำนวน 5 รายการ ได้แก่ sinologistic-th[.]com, panuspoultry-th[.]com, mmplogistics-th[.]com, mama-th[.]com, และ harachu-th[.]com ซึ่งองค์กรเหล่านี้น่าจะเป็นเป้าหมายการโจมตีของแฮกเกอร์เช่นเดียวกัน
ผมนำชื่อโดเมนในข้างต้น มาไล่เช็คดูข้อมูล Whois record และนำอีเมลที่พบจาก Registrant Contact ไปตรวจสอบต่อด้วยวิธี Reverse Whois Lookup ซึ่งสิ่งที่ผมค้นพบค่อนข้างเกินความคาดหมายอย่างมาก กล่าวคือ ผมพบว่าโดเมน mmplogistics-th[.]com ถูกจดทะเบียนด้วยอีเมล muhammad.appleseed1@mail[.]ru ซึ่งเมื่อนำไปตรวจสอบย้อนกลับ พบว่าอีเมลนี้ถูกใช้ในการจดทะเบียนโดเมนรวมทั้งสิ้น 8,149 รายการ (ข้อมูล ณ 5 ก.ค.67) ซึ่งชื่อโดเมนที่เพิ่งถูกจดทะเบียนล่าสุดเกิดขึ้นเมื่อวันที่ 30 ก.ค.67
นอกจากนี้ยังพบว่าในปี 2563 ทางบริษัทด้านความมั่นคงปลอดภัยไซเบอร์ REDTEAM.PL ได้เคยรายงานเกี่ยวกับอีเมล muhammad.appleseed1@mail[.]ru มาแล้ว ว่ามีความเกี่ยวข้องกับโดเมนที่ถูกนำไปใช้ในการโจมตีทางไซเบอร์ด้วยเทคนิค Business Email Compromise (BEC)
จากข้อมูลที่พบ ทำให้ทราบว่าแฮกเกอร์กลุ่มนี้เริ่มปฏิบัติการมาแล้วอย่างน้อย 4 ปี และยังคงดำเนินการอยู่จนถึงปัจจุบัน นอกจากนี้ยังมีการพัฒนาขีดความสามารถเพิ่มขึ้นจากการโจมตีด้วยเทคนิค BEC มาเป็นการใช้เทคนิค Adversary-in-the-Middle (AiTM)
ขอสรุปแบบสั้น ๆ ดังนี้ เราเริ่มต้นจากการค้นพบว่ามี phishing campaign กำลังโจมตีโรงพยาบาลเอกชนชื่อดังแห่งหนึ่งในประเทศไทย โดยมีการใช้ phishing domain ชื่อ yamstel[.]com และเราใช้เทคนิคการวิเคราะห์จนนำไปสู่การค้นพบโดเมนที่ต้องสงสัยอีกอย่างน้อย 8,503 รายการ ซึ่งมีโอกาสสูงที่จะอยู่ในการครอบครองโดยแฮกเกอร์กลุ่มเดียวกัน
เราค้นพบว่า phishing campaign นี้ นอกจากจะโจมตีโรงพยาบาลเอกชนชื่อดังในไทยแล้ว ยังโจมตีองค์กรอื่น ๆ ทั้งในประเทศไทยและทั่วโลกอีกนับไม่ถ้วน โดยแฮกเกอร์ได้เริ่มปฏิบัติการมาแล้วอย่างน้อย 4 ปี และยังคงดำเนินการโจมตีอยู่ในปัจจุบัน อีกทั้งยังมีการพัฒนาขีดความสามารถในการโจมตีเพิ่มขึ้นอย่างต่อเนื่อง ทั้งการพัฒนาจากเทคนิค BEC ไปสู่ AiTM รวมไปถึงการเพิ่มจำนวนโดเมนที่จะนำไปใช้เป็นเครื่องมือในการโจมตีอยู่ตลอดเวลา ซึ่งแสดงให้เห็นว่าแฮกเกอร์กลุ่มนี้ ‘ไม่กระจอก’ นะครับ :-)
และเราค้นพบข้อมูลทั้งหมดนี้โดยเริ่มต้นมาจาก phishing domain แค่ 1 รายการ ครับ ดังนั้น เราจะบล็อคทีละโดเมนทำไมในเมื่อเราบล็อคทีละ 8,500 โดเมนได้ 😼
ทั้งนี้ท่านที่สนใจดูข้อมูล Indicators of Compromise (IOCs) สามารถดูได้จาก ‘ที่มา’
ขอบคุณทุกท่านที่ทนอ่านจนจบครับ
ที่มา - ปรับปรุงบางส่วนจาก FatzQatz’s Medium Blog Post, Indicators of Compromise (IOCs)