Redpill 2017

เมื่อวานมีโอกาสไปร่วมงานสัมมนา Redpill 2017 ที่ห้องประชุม 117 ตึก 3 คณะวิศวกรรมศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย ปีนี้เป็นการจัดงานร่วมกันระหว่าง 2600Thailand และสมาคมโปรแกรมเมอร์ไทย โดยมีธีมของงานคือ “Offensive Security” หัวข้อทั้งหมดในงานและรายชื่อ speaker ดูได้ในตารางท้ายบล็อกครับ

แน่นอนว่าไปสายตามระเบียบ 😅 ไปถึงก็กลางๆ session 3 เข้าไปแล้ว แถมเป็นเรื่องแนวที่ผมไม่ค่อยมีความรู้ด้วย เท่าที่พอจับใจความมาได้ก็ประมาณนี้

Endpoint Protection is Not Enough (slide)

การติดตั้งโปรแกรม antivirus และอัพเดตแพตช์ของระบบปฏิบัติการอย่างสม่ำเสมอ ก็อาจจะไม่สามารถป้องกันการโจมตีจากแฮกเกอร์ได้ เท่าที่ดูคือการหลบเลี่ยงการตรวจจับของ antivirus (กากส์ๆ) รวมทั้งระบบรักษาความปลอดภัยของระบบปฏิบัติการเอง ทำได้หลายวิธีมาก เช่น การทำ obfuscation เพื่อทำให้ signature เปลี่ยน, การปลอม cert ที่ใช้ sign ไฟล์ executable ของโปรแกรม เพราะบางที antivirus (กากส์ๆ… ใน session ย้ำหลายครั้งมาก ฮ่า 😆) เช็คแค่ชื่อบริษัทที่ sign ไม่ได้เช็คว่าคีย์ที่ใช้เป็นของจริงหรือเปล่า หรือการใช้ช่องโหว่ของรูปแบบการทำงานของระบบปฏิบัติการเอง เช่น Windows Defender จะไม่สแกนไฟล์ .hta (ที่สามารถฝัง VBScript มาด้วยได้) หรือแม้แต่ Windows AppLocker ที่เป็น application whitelisting tool ก็ดูจะไม่ค่อยมีประโยชน์เท่าไร 😕

จะเห็นว่าจากองค์ประกอบสามส่วนของ cybersecurity ได้แก่ people, process, และ technology นั้น องค์ประกอบด้าน technology จะช่วยป้องกันได้เพียงแค่บางส่วน หรืออาจจะไม่ได้เลย 😑 ดังนั้นการป้องกันที่ดีที่สุดคือการให้ความรู้กับ people หรือผู้ใช้งานระบบให้เกิด awareness ไม่รันโปรแกรมที่ไม่รู้จัก หรือเข้าเว็บไซต์ประหลาดๆ แบบสุ่มสี่สุ่มห้า รวมทั้งต้องมีการกำหนด process หรือนโยบายด้าน cybersecurity ที่ชัดเจนและครอบคลุมความเสี่ยงด้านต่างๆ

ใน session นี้ ได้รู้จักกับ mimikatz และ UACMe ที่เป็น tools สำหรับทดลองเล่นกับระบบ security ของวินโดวส์

How Fun of Privilege Escalation (slide)

session นี้เหมือนจะต่อเนื่องจาก session ก่อนหน้า ในแง่ที่ว่า ถ้าแฮกเกอร์ exploit ระบบเข้ามาได้แล้ว จะต้องมีการ escalate สิทธิ์ จาก user ธรรมดา ให้กลายเป็น user admin หรือ root ของระบบนั้นๆ เพื่อให้สามารถดำเนินการตามจุดมุ่งหมายที่ตั้งใจไว้โดยไม่มีข้อจำกัดเรื่อง permission ของผู้ใช้ในระบบ

เอาจริงๆ คือ session นี้ไปเร็วมาก จำอะไรไม่ค่อยได้ 😝 แต่ที่รู้สึกได้คือ ถ้าระบบถูกแฮกเกอร์ exploit เข้ามาได้แล้ว การจะทำให้ได้สิทธิ์ admin นั้นดูจะเป็นเรื่องที่ง่ายมาก เพราะมีทั้งเครื่องมือและช่องโหว่ของระบบปฏิบัติการหรือซอฟต์แวร์ (ทั้งวินโดวส์และลินุกซ์) ให้ใช้ได้เต็มไปหมด

ใน session นี้ก็ได้รู้จักกับ tools เพิ่มอีกหลายตัว เช่น Empire และ Incognito ที่เป็น extension หนึ่งของ Meterpreter

Bug Bounty แบบแมวๆ (slide)

session นี้เบาลงมานิดนึง พูดเรื่องโครงการ Bug Bounty ของหน่วยงานต่างๆ ที่ให้บุคคลทั่วไปมาทดลองเจาะระบบหาช่องโหว่หรือบั๊กของระบบหรือซอฟต์แวร์ที่กำหนด และเมื่อแจ้งให้ทางหน่วยงานทราบก็อาจจะได้รับค่าตอบแทนในรูปแบบต่างๆ เช่น เป็นเงิน, ได้รับการใส่ชื่อไว้ใน hall of fame, หรืออาจจะได้เป็นของที่ระลึกต่างๆ (swag) อะไรทำนองนี้ ข้อสำคัญในการเข้าร่วมโครงการ Bug Bounty คือต้องอ่านข้อตกลงการร่วมโครงการให้ละเอียด เพื่อจะได้ไม่ทำผิดกฏ และมีสิทธิ์ได้รับรางวัลตามที่โครงการกำหนดไว้

ข้อดีของโครงการ Bug Bounty คือสามารถช่วยลด cost ขององค์กรด้านการตรวจสอบหาช่องโหว่ในระบบลงได้ (การจ้างบริษัทมาทำ pentest หนึ่งครั้ง อาจมีค่าใช้จ่ายตั้งแต่หลักแสนไปจนถึงหลักล้านบาท 😲) โดยองค์กรสามารถพิจารณาเลือกจ่ายรางวัลมาก–น้อยได้ ตามความร้ายแรงของช่องโหว่ที่ถูกค้นพบ แต่ทั้งนี้ไม่ใช่ว่าองค์กรไหนนึกอยากจะจัดโครงการ Bug Bounty ก็จัดได้เลย ควรจะดูความพร้อมภายในองค์กรของตัวเองก่อนด้วย ไม่งั้นอาจจะกลายเป็นเพิ่ม cost แทน

ความพร้อมที่ว่าก็คือในองค์กรควรจะมีกระบวนการด้าน cybersecurity ตั้งแต่ต้นจนจบอยู่แล้ว (security by design, SSDLC, internal VA/pentest, ฯลฯ) และมีหน่วยงานที่รับผิดชอบด้าน cybersecurity โดยตรง ถ้าสรุปเป็นคำพูดของผมเองก็คือ องค์กรควรจะต้องมีความมั่นใจในระดับนึงว่าระบบของเรามี cybersecurity ที่เพียงพอ ถึงค่อยประกาศให้คนอื่นเข้ามาลองเจาะระบบเล่นได้ ไม่งั้นก็โดนเจาะพรุน หรืออาจโดนโจมตีจนไม่สามารถให้บริการตามปกติได้ รวมถึงอาจจะต้องเสียค่าใช้จ่ายเป็นค่ารางวัล Bug Bounty มากเกินกว่าที่ควร

แต่ทั้งนี้ถ้าองค์กรยังไม่พร้อมสำหรับโครงการ Bug Bounty ก็ยังมีอีกทางเลือกหนึ่ง และถือว่าเป็น best practice ด้าน cybersecurity ที่สามารถนำไปใช้ได้ทุกบริษัท คือ “Vulnerability Disclosure Program” โดยมีตัวอย่างคือ Open Source Responsible Disclosure Framework ซึ่งจะมีทั้ง guideline ในการดำเนินการ และ template ของ disclosure policy ที่องค์กรสามารถลอกไปใช้ได้เลย ที่สำคัญอีกอย่างคือควรระบุช่องทางการติดต่อเพื่อแจ้งปัญหาด้าน cybersecurity ที่ชัดเจน เช่น security@company.com แสดงไว้ในหน้าเว็บไซต์ของบริษัทด้วย

จบแล้ว!

เพราะผมอยูถึงแค่ช่วงพักกินข้าวกลางวัน แต่เท่านี้ก็ถือว่าได้มาเปิดหูเปิดตามากๆ และได้เห็นว่าในวงการ cybersecurity ของบ้านเรามีคนเก่งๆ อยู่เยอะเต็มไปหมด (บรรยากาศในห้องเหมือนอยู่ในดงแฮกเกอร์ 😄) ยังไงปีหน้าจะไม่พลาดแน่นอน สำหรับ slide ของ session อื่นๆ ดูได้ในโพสต์ของกลุ่ม 2600Thailand ครับ

Feedback

  • อยากได้เสื้อ… ไม่ต้องทำแจกก็ได้ แต่อยากให้มีขายให้คนที่เข้าร่วมสัมมนาด้วย
  • เครื่องดื่มที่ให้ใช้คูปองแลก อร่อยดี (ผมกินชาเย็น แฟนกินมอคค่า)
  • สถานที่จัดงานโอเค การเดินทางสะดวก ห้องประชุมกว้าง และจอใหญ่ ผมนั่งอยู่ครึ่งหลังก็ยังเห็นชัด (ไม่ได้อวยในฐานะศิษย์เก่าแต่อย่างใด 😆)
  • ช่วงเวลาในการจัดงาน เช้าไปนิดนึง(สำหรับผม) แบบที่จะถูกใจมากคือเหมือน MHCON 2017 เริ่ม 11 โมง ฮ่าๆๆ แต่ก็เข้าใจว่าเนื่องจาก session เยอะ ไม่งั้นจะเลิกดึก ส่วนวันที่จัดเป็นวันเสาร์-อาทิตย์นี่ดีแล้ว
  • เนื้อหา (เท่าที่ผมได้ฟัง) เป็นไปตามที่คาดหวัง technical ล้วนๆ ตรงประเด็น ถูกใจ 👍
  • สิ่งที่อยากให้มีเพิ่มเติม น่าจะเป็นพวกบูธต่างๆ อาจจะของสปอนเซอร์ หรือมีโต๊ะแนะนำ tools, หนังสือ, คอร์สฝึกอบรม, หรือแนะนำหลักสูตร cybersecurity ของมหาวิทยาลัย สำหรับผู้ต้องการเรียนรู้ อะไรพวกนี้ก็น่าจะดีครับ

Redpill 2017 Agenda