รีวิวเฟรมเวิร์คจำลองการโจมตีตามพฤติกรรมของภัยคุกคามเพื่อการทดสอบในรูปแบบ iPentest

บทความนี้จัดทำโดย เนติวัฒน์ วงศ์ยะรา นักศึกษาฝึกงาน และเรียบเรียงโดยทีมตอบสนองการโจมตีและภัยคุกคาม (Intelligent Response) บริษัท ไอ-ซีเคียว จำกัด

ในบทความนี้ ทีม Intelligent Response จะทำการรีวิวโอเพนซอร์สเฟรมเวิร์คซึ่งช่วยให้ผู้ที่ทำงานในสายงานด้านความมั่นคงปลอดภัยไซเบอร์สามารถทำการจำลองพฤติกรรมของภัยคุกคามเพื่อใช้ในการทดสอบและประเมินความปลอดภัยระบบตามแนวทาง iPentest ของธนาคารแห่งประเทศไทยได้

เนื้อหาภายในบทความจะมีตามหัวข้อดังต่อไปนี้ครับ

ทำความรู้จักแนวปฏิบัติการทดสอบเจาะระบบแบบ Intelligence-lead (iPentest)

เมื่อวันที่ 4 กันยายนที่ผ่านมา ธนาคารแห่งประเทศไทยออกประกาศภายใต้เรื่องแนวปฏิบัติการทดสอบเจาะระบบแบบ Intelligence-lead (iPentest) ซึ่งรูปแบบของการทดสอบเจาะระบบใหม่โดยเน้นไปที่การทดสอบภายใต้สถานการณ์เสมือนจริงในลักษณะ Red Teaming

ใจความสำคัญของ iPentest นั้นคือการทดสอบเจาะระบบที่มีการใช้ข้อมูล Threat intelligence ในกำหนดสถานการณ์จำลองเพื่อใช้ในการทดสอบเจาะระบบ สถานการณ์จำลองดังกล่าวจะต้องสอดคล้องกับโอกาสและภาพรวมของภัยคุกคามที่สถาบันการเงินจะเผชิญ แนวปฏิบัติยังเปิดช่องทางให้สถานการณ์จำลองถูกดำเนินการได้ในลักษณะของการ Capture the Flag (CTF) ด้วย

การนำข้อมูลภัยคุกคาม (Threat intelligence) มาใช้เพื่อทำการทดสอบเจาะระบบนั้นมีความสำคัญอย่างยิ่งต่อการประเมินและจัดการความเสี่ยง เพราะถึงแม้ในสถาบันการเงินโดยส่วนใหญ่จะมีการทดสอบเจาะระบบในรูปแบบของ Penetration testing โดยทั่วไปอยู่ก่อนแล้ว การเกิดขึ้นของ iPentest ได้เข้ามาเติมเต็มส่วนสำคัญที่การทดสอบเจาะระบบในรูปแบบทั่วไปนั้นไม่สามารถสร้างคุณค่าได้ เพราะในขณะที่ Penetration testing โฟกัสไปที่การค้นหาและจัดการช่องโหว่เพื่อลดความเสี่ยง รูปแบบของ iPentest มองภาพกว้างกว่าช่องโหว่ ซึ่งอาจรวมไปถึงข้อผิดพลาดหรือจุดอ่อนเพียงเล็กน้อยที่หากถูกโจมตีอยากถูกต้อง มันอาจนำไปสู่ความเสียหายที่ใหญ่หลวงได้

เทรนด์ด้านการทดสอบและประเมินความมั่นคงปลอดภัยในลักษณะของ iPentest นั้นเป็นหนึ่งในเทรนด์ด้านความปลอดภัยที่ได้รับความนิยมสูงขึ้นในแวดวงความปลอดภัยไซเบอร์ทั่วโลก กระบวนการดังกล่าวถูกเรียกด้วยชื่อที่แตกต่างกันในหลายรูปแบบ อาทิ Red teaming, Adversary simulation, Adversary emulation, Threat emulation และอื่นๆ ในขณะเดียวกันสายงาน อาทิ Red team, Threat hunter หรือ Purple team ก็เกิดขึ้นและได้รับความนิยมสูงไม่แพ้กัน

TTP คืออะไร? นำมาใช้ยังไงได้บ้าง?

เมื่อพูดถึงการใช้งาน Threat intelligence เพื่อการจำลองพฤติกรรมของผู้โจมตีจริง เราจำเป็นต้องเข้าใจประเภทของ Threat intelligence ที่สามารถนำไปใช้งานได้ก่อน หนึ่งในวิธีการจำแนกประเภทของ Threat intelligence ที่ง่ายและได้รับความนิยมรูปแบบหนึ่งคือ The Pyramid of Pain ซึ่งเป็นผลงานของ David J. Bianco

The Pyramid of Pain จำแนกประเภทของ Threat intelligece ด้วยขั้นของความพยายามที่ผู้โจมตีต้องใช้เพื่อแก้ไข/เปลี่ยนแปลงตัวบ่งชี้ภัยคุกคาม (indicator) ในแต่รูปแบบเพื่อให้สามารถหลบหลีกการตรวจจับและการป้องกันได้

เราสามารถตีความ The Pyramid of Pain ในอีกความหมายหนึ่งได้ว่า หากสถาบันการเงินสามารถตรวจจับและป้องกันความพยายามของผู้บุกรุกด้วยตัวบ่งชี้ภัยคุกคามที่เป็นหมายเลขไอพีแอดเดรสที่มัลแวร์ทำการติดต่อด้วยและค่าแฮชของไฟล์มัลแวร์ดังกล่าว มันง่ายและง่ายมากที่ผู้โจมตีจะทำการเปลี่ยนตัวบ่งชี้ดังกล่าวเป็นค่าใหม่เพื่อทำการตรวจจับและป้องกันหมดฤทธิ์

หากเราไล่ไปถึงยอดของพีระมิด เราจะพบว่าสิ่งที่ผู้โจมตีเปลี่ยนแปลงได้ยากที่สุดนั้นคือสิ่งที่เรียกว่า Tactics,Techniques and Procedures หรือ TTP ซึ่งมีความหมายดั้งเดิมที่เกี่ยวข้องกับการรักษาความมั่นคงจากภัยก่อการร้ายก่อนจะถูกนำมาใช้ในการรักษาความปลอดภัยไซเบอร์ TTP อธิบายถึงรูปแบบหรือลักษณะพฤติกรรมที่ผู้บุกรุกจะทำเมื่อจะสร้างความเสียหายหรือโจมตี พฤติกรรมอาจมีความเหมือนกันในหลายกลุ่มผู้บุกรุก แต่หากเราสามารถรวบรวมรูปแบบหรือลักษณะของพฤติกรรมดังกล่าว ไปจนถึงตัวบ่งชี้ภัยคุกคามในระดับที่ต่ำลงมาได้ การระบุกลุ่มผู้บุกรุกจากพฤติกรรมก็สามารถทำได้อย่างมีประสิทธิภาพเช่นเดียวกัน

จากพฤติกรรมของผู้บุกรุก สู่ Machine-readable Data

ในช่วงหลายปีที่ผ่านมา ความพยายามในการอธิบายรูปแบบหรือลักษณะพฤติกรรมของผู้บุกรุกให้อยู่ในรูปแบบของข้อมูลที่สามารถถูกประมวลผลและใช้งานได้โดยคอมพิวเตอร์เกิดขึ้นในหลายรูปแบบ เราจะมาดูกันครับว่าในทุกวันนี้เรามีวิธีในการอธิบายพฤติกรรมของผู้บุกรุกเพื่อนำข้อมูลไปใช้กันอย่างไรบ้าง

เฟรมเวิร์คตระกูล STIX/MAEC/CYBOX

STIX/MAEC/CyBox คือความพยายามจาก OASIS Cyber Threat Intelligence (CTI) TC ในการพัฒนากรอบและมาตรฐานเพื่ออธิบายพฤติกรรมของผู้โจมตี ตัวบ่งชี้ภัยคุกคามรวมไปถึงสิ่งที่ตรวจพบอื่นๆ (Observable) โดย STIX เน้นไปที่การอธิบายข้อมูลภัยคุกคามทั้งช่องโหว่, ผู้กระทำ, เป้าหมาย, จุดมุ่งหมาย, ตัวบ่งชี้ภัยคุกคามและอื่นๆ ด้วยความสัมพันธ์ระหว่างกัน

MAEC เน้นไปที่การอธิบายข้อมูลจำเพาะที่เกี่ยวกับมัลแวร์ทั้งคุณลักษณะของไฟล์, ความเกี่ยวข้องกับกลุ่มผู้โจมตีรวมไปถึงสายพันธุ์ของมัลแวร์

ท้ายที่สุด CyBox เน้นไปที่การอธิบายและให้ความหมายของทุกข้อมูลที่ตรวจพบ (Observable) โดยไม่จำกัดว่าสิ่งนั้นจะเป็นตัวบ่งชีภัยคุกคามหรือไม่ ไม่ว่าจะเป็นค่ารีจิสทรี, พฤติกรรมการลบไฟล์หรือข้อมูลในโปรโจตอล HTTP GET

ในปัจจุบันองค์กรหลายแห่งมีการเผยแพร่ตัวบ่งชี้ภัยคุกคามในรูปแบบของไฟล์ STIX รวมไปถึงเปิดให้องค์กรสามารถเข้าถึงและใช้งานข้อมูลในฟอร์แมตของ STIX ได้ผ่านเซิร์ฟเวอร์ TAXII ตัวอย่างเช่น ประกาศล่าสุดจาก US-CERT ว่าด้วยเรื่องของมัลแวร์ ELECTRICFISH จากกลุ่มแฮกเกอร์ Lazarus

เฟรมเวิร์คตระกูล MITRE ATT&CK

MITRE ATT&CK สามารถถูกเรียกได้ว่าทั้งเฟรมเวิร์คและแหล่งข้อมูล TTP ที่ดีที่สุดแหล่งหนึ่งของโลก มันได้ทำการรวบรวมและอธิบาย TTP ไว้ในรูปแบบเดียวกับที่ Cyber Kill Chain ของ Lockheed Martin เคยทำแต่ด้วยรายละเอียดที่เยอะกว่า รวมไปถึงการเชื่อมโยงระหว่าง TTP, กลุ่มผู้โจมตี, เครื่องมือที่ใช้และคำแนะนำในการตรวจจับและบรรเทาผลกระทบที่เกิดขึ้นจากเทคนิคที่ผู้บุกรุกกระทำ

ความนิยมของ MITRE ATT&CK ทำให้มันถูกนำไปปรับใช้กับผลิตภัณฑ์ด้านความปลอดภัยหลายรายการ รวมไปถึงการนำไปใช้ในการอธิบายพฤติกรรมของผู้บุกรุกใหม่ๆ ยกตัวอย่างเช่น ผลิตภัณฑ์ในกลุ่ม Endpoint Detection & Response "CrowdStrike" ซึ่งนำข้อมูลจาก MITRE ATT&CK มาใช้เพื่อช่วยในการตรวจจับ

ทีม Intelligent Response ยังได้เคยนำแนวคิดของ MITRE ATT&CK มาใช้ในการอธิบายความเชื่อมโยงระหว่างพฤติกรรมของผู้โจมตีและกลุ่มผู้โจมตีในงาน MissConf(SP)#5 ภายใต้หัวข้อ APT-Based Security Assessment and Detection (ดูสไลด์)

แนะนำโอเพนซอร์สเฟรมเวิร์คสำหรับการจำลองพฤติกรรมของภัยคุกคาม

ด้วยข้อมูลที่ได้มาจากฐานข้อมูล TTP ในรูปแบบต่างๆ ทีม Intelligent Response จึงได้มีการรวบรวมและทดสอบโอเพนซอร์สเฟรมเวิร์คที่สามารถนำข้อมูลดังกล่าวมาจำลองเป็นพฤติกรรมจริงๆ ในสภาพแวดล้อมที่ต้องการได้ ความสามารถในการจำลองพฤติกรรมของภัยคุกคามนอกจากจะช่วยในการประเมินความเสี่ยงด้านความปลอดภัยแล้ว มันยังมีส่วนสำคัญในการพัฒนาศักยภาพในการรับมือและตอบสนองภัยคุกคาม และการใช้เพื่อทดสอบความสามารถของผลิตภัณฑ์ด้านความปลอดภัยด้วย

จากรายการของเฟรมเวิร์คที่ได้มีการรวบรวมไว้ ทีม Intelligent Response ได้มีการเลือกเฟรมเวิร์คซึ่งจะนำมาทดสอบตามรายการดังต่อไปนี้

  1. Red Team Automation (RTA) จาก Endgame โดยเป็นเฟรมเวิร์คซึ่งนำพฤติกรรมของผู้โจมตีตามที่ระบุไว้ใน MITRE ATT&CK มารวบรวมไว้ให้อยู่ในรูปแบบของสคริปต์ ซึ่งสามารถตั้งค่าและเรียกใช้เพื่อจำลองพฤติกรรมของผู้โจมตีจริงๆ ขึ้นมาได้
  2. APT Simulator จาก Nextron Systems เป็นเฟรมเวิร์คในการจำลองพฤติกรรมของภัยคุกคามในกลุ่ม APT ให้อยู่ในรูปแบบของสคริปต์ Batch สำหรับระบบปฏิบัติการ Windows พฤติกรรมซึ่งมีการจำลองนั้นเป็นพฤติกรรมที่ไม่ได้อิงจาก MITRE ATT&CK แต่มีบางส่วนคล้ายคลึงกัน
  3. Atomic Red Team จาก Red Canary เป็นเฟรมเวิร์คซึ่งทำการรวบรวม TTP ของผู้บุกรุกอ้างอิงจาก MITRE ATT&CK ไว้ในรูปแบบของ atomic test case ซึ่งทำให้ผู้ทดสอบสามารถนำแต่ละเทคนิคมาทำการปรับแต่งและควบคุมพฤติกรรมที่จะทำการจำลองได้
  4. CALDERA จาก MITRE เป็นโครงการจากผู้ดูแล MITRE ATT&CK ซึ่งถูกพัฒนาขึ้นเพื่อจำลองพฤติกรรมของผู้โจมตีแบบครบวงจร พร้อมทั้งมีรูปแบบของมัลแวร์เสมือนภายในตัวเฟรมเวิร์คเอง

โดยในการรีวิวนั้น ทีม Intelligent Response มีการตั้งคุณสมบัติที่ต้องการไว้ตามรายการดังต่อไปนี้

  1. เฟรมเวิร์คที่เหมาะสมจะต้องมีความครบถ้วนตามฐานข้อมูลภัยคุกคาม MITRE ATT&CK เพื่อให้เกิดความครอบคลุมในการทดสอบภายใต้จุดประสงค์ที่แตกต่างกันให้มากที่สุด
  2. เฟรมเวิร์คจะต้องมีความยืดหยุ่นมากพอให้ทีม Intelligent Response สามารถแก้ไขการตั้งค่าได้ตามต้องการ เช่น การแก้ไข Payload ที่จะถูกเอ็กซีคิวต์ในแต่ละเทคนิคการโจมตี รวมไปถึงเปลี่ยนแปลงรูปแบบและลักษณะของการจำลอง
  3. เฟรมเวิร์คจะต้องสามารถถูกปรับแต่งให้สามารถทำงานโดยอัตโนมัติได้อย่างมีประสิทธิภาพและง่ายดาย ยกตัวอย่างเช่น ผู้ทดสอบสามารถบันทึกรายการของพฤติกรรมที่ต้องการไว้ในรูปแบบของ Playbook และสั่งให้เฟรมเวิร์คจำลองพฤติกรรมตามที่ระบุในช่วงหรือระยะเวลาที่กำหนดได้
  4. เฟรมเวิร์คจะต้องรองรับระบบปฏิบัติการที่หลากหลาย

ผลการรีวิวเฟรมเวิร์คสำหรับการจำลองพฤติกรรมของภัยคุกคาม

Red team automation (RTA)

Red Team Automation หรือ RTA มีการรวบรวมเทคนิคจาก MITRE ATT&CK ไว้ทั้งหมดประมาณ 42 รายการ โดยเน้นไปที่การกลุ่ม Defense evasion, Execution และ Persistence การใช้งานสามารถทำได้ทั้งในรูปแบบของการเรียกใช้โมดูลแยกสำหรับแต่ละเทคนิค, รันทุกเทคนิคโดยอัตโนมัติผ่านทางสคริปต์ run_all.py และสามารถแก้ไขรายละเอียดของแต่ละเทคนิคได้โดยอิสระ

ทั้งนี้ข้อจำกัดของ RTA คือ มันรองรับเฉพาะเทคนิคบนระบบปฏิบัติการบน Windows เท่านั้น การใช้งานและควบคุมการทำงานยังคงเกิดขึ้นบน CLI ซึ่งทำให้ยากต่อสำหรับผู้ทดสอบที่ยังไม่มีประสบการณ์การใช้งาน รวมไปถึงยังไม่สามารถดึงศักยภาพตามข้อมูลของ MITRE ATT&CK ได้มากพอ

ความประทับใจ: ⭐⭐⭐

APT Simulator

APT Simulator เป็นชุดซอฟต์แวร์และเฟรมเวิร์คที่ไม่ได้อิงตาม MITRE ATT&CK โดยตรง แต่ก็มีรายละเอียดของบางเทคนิคที่ตรงกับเทคนิคซึ่งปรากฎอยู่ใน MITRE ATT&CK อยู่ การใช้งานสามารถทำได้ง่ายโดยการเอ็กซีคิวต์ไฟล์ APTSimulator.bat และเลือกกลุ่มของเทคนิคที่ต้องการทดสอบได้ทันที APT Simulator รองรับการเพิ่มเหตุการณ์ในการทดสอบด้วยการพัฒนาไฟล์สคริปต์ Batch ด้วยตนเองอีกด้วย

การควบคุมการทำงานของ APT Simulator ไม่สามารถทำได้ภายในตัวเฟรมเวิร์คเอง จำเป็นต้องพึ่งพาฟีเจอร์หรือซอฟต์แวร์อื่นๆ ของระบบในการทำให้เฟรมเวิร์ดสามารถทำงานได้ตามช่วงเวลาที่ต้องการ

เช่นเดียวกับ RTA ซึ่งรองรับเฉพาะการทดสอบบนระบบปฏิบัติการ Windows เฟรมเวิร์ค APT Simulator ก็ยังคงไม่รองรับการใช้งานบนระบบปฏิบัติการอื่น ทั้งนี้ด้วยความง่ายในการใช้งานและจบงานการทดสอบได้ง่าย APT Simulator เหมาะสมเป็นอย่างยิ่งในการใช้เพื่อทดสอบผลิตภัณฑ์ด้านความปลอดภัยและการตรวจจับ มากกว่าที่จะใช้ในการยอมรับพฤติกรรมของผู้บุกรุกจริงๆ

ความประทับใจ: ⭐⭐⭐

Atomic Red Team

Atomic Red Team ถูกพัฒนาภายใต้ฐานข้อมูล MITRE ATT&CK ด้วยแนวคิดที่ต่างกัน เทคนิคของ MITRE ATT&CK ถูกรวบรวมไว้ในลักษณะของ atomic test case ซึ่งผู้ทดสอบนำไปใช้ ประกอบร่างและปรับแต่งได้อย่างอิสระ โครงการ Atomic Red Team ยังรองรับวิธีการอื่นๆ ที่เป็นไปได้ในการจำลองเทคนิคของผู้โจมตีอีกด้วย ซึ่งทำให้ในแง่ของความครอบคลุมนั้น Atomic Red Team ทำได้ดีที่สุด

การจำลองโดยใช้ Atomic Red Team สามารถทำได้โดยการเลือกเป็นเทคนิคที่จะทำการจำลอง หรือจะเป็นการใช้ Invoke-AtomicRedTeam และ runner.py ในการควบคุมการโจมตีให้เกิดขึ้นโดยอัตโนมัติได้

ข้อเสียเพียงอย่างเดียวที่เราพบคือการใช้งานและควบคุมการทำงานยังคงเกิดขึ้นบน CLI ซึ่งทำให้ยากต่อสำหรับผู้ทดสอบที่ยังไม่มีประสบการณ์การใช้งาน

ความประทับใจ: ⭐⭐⭐⭐⭐

CALDERA

CALDERA เป็นเพียงโครงการจากทั้งหมด 4 โครงการที่สามารถควบคุมการทำงานได้โดยไม่ต้องใช้งาน CLI โดยโครงการ CALDERA ที่ทีม Intelligent Response ได้นำมาทดสอบนั้นเป็นโครงการในรุ่น 2 ซึ่งพึ่งมีการพัฒนาใหม่ในช่วงต้นปีที่ผ่านมา

CALDERA มีความครบถ้วนสมบูรณ์ในเรื่องของฟังก์ชันการทำงานมากกว่าตัวเลือกอื่นๆ ทั้งหมด ทั้งในส่วนของการควบคุมการโจมตี, การกำหนดลักษณะและช่วงเวลา, โปรแกรมประเภทแบ็คดอร์และ Payload ที่มาพร้อมกับซอร์สโค้ดของโครงการ CALDERA ยังได้ประโยชน์อย่างเต็มที่ของการมี Web UI ซึ่งทำให้การจัดการและดูภาพรวมของการโจมตีนั้นทำได้โดยง่ายขึ้น

อย่างไรก็ตามข้อกังวลสำคัญที่เราพบคือความยากในการติดตั้งและใช้งานซึ่งจำเป็นต้องมีการเรียนรู้ก่อน อีกทั้งโครงการยังอยู่ในช่วงพัฒนาซึ่งทำให้ CALDERA ในรุ่นปัจจุบันนั้นมีปัญหาในการใช้งานอยู่เป็นจำนวนมาก

ความประทับใจ: ⭐⭐⭐⭐

สรุป

เฟรมเวิร์คโอเพนซอร์สเป็นตัวเลือกหนึ่งที่ควรค่าแก่การทดสอบและลองใช้ ด้วยความหลากหลายและโอกาสที่อย่างไม่จำกัดที่จะพัฒนาเครื่องมือให้เหมาะสมกับจุดประสงค์ในการใช้งาน ซึ่งตอกย้ำวัฒนธรรมและความเชื่อสำคัญของไอ-ซีเคียวว่า ท้ายที่สุดแล้วการเลือกเครื่องมือที่ดีที่สุดอาจไม่ได้นำมาซึ่งผลลัพธ์ของงานที่ดีที่สุด แต่เป็นเครื่องมือที่มีความเหมาะสมสำหรับผู้ใช้งานที่มีประสบการณ์การใช้งานต่างหากที่มีโอกาสในการสร้างผลงานที่ดีที่สุดได้มากกว่า 🙂