Security
Burp Suite เนี่ย สมัยผมทำร้านเน็ตฯ ยังไม่มีหรอกครับ (ฮา) แต่ตอนนี้ขาดไม่ได้เลยสำหรับคนที่ทำงานด้าน Security หรือแม้แต่ Developer ที่อยากเขียนเว็บให้ปลอดภัย Burp Suite มันคือชุดเครื่องมือ (Toolkit) ที่เอาไว้ทดสอบความปลอดภัยของเว็บแอปพลิเคชัน ครอบคลุมตั้งแต่การดักจับข้อมูล (Proxy), สแกนหาช่องโหว่ (Scanner), ไปจนถึงการเจาะระบบ (Intruder) เลยทีเดียว
ทำไมมันถึงสำคัญ? ลองคิดดูว่าถ้าเว็บเรามีช่องโหว่ แล้วโดนแฮกเกอร์เข้ามาขโมยข้อมูลลูกค้าไป จะเกิดอะไรขึ้น เสียหายทั้งชื่อเสียง เสียหายทั้งเงินทอง Burp Suite ช่วยให้เราหาช่องโหว่พวกนั้นเจอ ก่อนที่คนร้ายจะเจอครับ
Burp Suite มันมีหลาย Edition นะครับ ตั้งแต่ Community (ฟรี), Professional (เสียเงิน), ไปจนถึง Enterprise (สำหรับองค์กรใหญ่ๆ) แต่ละ Edition ก็จะมี Feature ที่แตกต่างกันไป หลักๆ ที่เราจะได้ใช้กันบ่อยๆ ก็คือ:
เยอะแยะไปหมดใช่ไหมครับ? ไม่ต้องตกใจ ค่อยๆ เรียนรู้ไปทีละอย่างก็ได้ เริ่มจาก Proxy ก่อนเลยง่ายสุด
Burp Proxy นี่แหละคือพระเอกของเรา มันทำหน้าที่เป็นตัวกลางระหว่าง Browser ของเรากับ Web Server เวลาที่เราเข้าเว็บอะไรก็ตาม Burp Proxy จะดักจับ HTTP Request และ Response ที่ส่งไปมา ทำให้เราเห็นข้อมูลทั้งหมด และสามารถแก้ไขข้อมูลก่อนที่จะส่งต่อไปได้ด้วย
127.0.0.1:8080 เราต้องไปตั้งค่า Browser ให้ใช้ Proxy Server นี้ วิธีการก็แล้วแต่ Browser ที่ใช้ครับ
# ตัวอย่างการตั้งค่า Proxy ใน Firefox
Settings -> Network Settings -> Manual proxy configuration
HTTP Proxy: 127.0.0.1
Port: 8080
Use this proxy server for all protocols
ลองเล่นดูครับ ง่ายกว่าที่คิดเยอะเลย พอเราเข้าใจหลักการทำงานของ Proxy แล้ว เราจะสามารถใช้มันเพื่อทดสอบอะไรได้หลายอย่าง เช่น:
| Feature | Community Edition | Professional Edition | Enterprise Edition |
|---|---|---|---|
| Web Vulnerability Scanner | Manual Only | Automated | Automated, Scalable |
| Intruder | Rate Limited | Unlimited | Unlimited |
| Collaborator Server | Limited | Full | Full |
| Price | Free | Subscription | Subscription |
เลือก Edition ที่เหมาะกับความต้องการของเราครับ ถ้าเพิ่งเริ่มต้น Community Edition ก็เพียงพอแล้ว
หลังจากที่เราคล่องกับการใช้ Proxy แล้ว เราก็มาลองใช้ Scanner กัน Scanner เป็นเครื่องมือที่ช่วยให้เราสแกนหาช่องโหว่ในเว็บแอปพลิเคชันได้แบบอัตโนมัติ มันจะส่ง Request ต่างๆ ไปยัง Server แล้ววิเคราะห์ Response ที่ได้ เพื่อหาช่องโหว่ที่เป็นไปได้
Scanner มันไม่ได้แม่นยำ 100% นะครับ มันอาจจะเจอ False Positive (แจ้งเตือนผิด) หรือพลาดช่องโหว่บางอย่างไป เราต้องตรวจสอบผลการ Scan อย่างละเอียด และทดสอบด้วยตัวเองอีกครั้ง เพื่อให้แน่ใจว่าช่องโหว่นั้นมีอยู่จริง
Burp Suite เป็นเครื่องมือที่ทรงพลัง แต่ก็ต้องใช้เวลาในการเรียนรู้และฝึกฝน อย่าท้อแท้ครับ ค่อยๆ เรียนรู้ไปทีละส่วน แล้วเราจะสามารถใช้มันเพื่อสร้างเว็บแอปพลิเคชันที่ปลอดภัยได้แน่นอน
สำหรับใครที่อยากรู้เรื่อง Security เพิ่มเติม ลองแวะไปอ่านบทความอื่นๆ ใน SiamCafe Blog ดูได้นะครับ
หวังว่าบทความนี้จะเป็นประโยชน์นะครับ ถ้ามีคำถามอะไรเพิ่มเติม ถามมาได้เลย
อย่าลืมติดตาม SiamCafe Blog เพื่ออ่านบทความดีๆ เกี่ยวกับ IT และ Security กันต่อไปนะครับ
ดูวิดีโอเพิ่มเติมเกี่ยวกับBurp Suite ทดสอบเว็บเบื้องต้น:
สมัยผมทำร้านเน็ตฯ สิ่งแรกที่ต้องทำก่อนลงมือคือ "เป้าหมาย" ชัดๆ ครับ จะทดสอบอะไร? ช่องโหว่แบบไหน? โฟกัสไปเลย อย่าหว่านแห เพราะ Burp Suite มันเครื่องมือใหญ่ ถ้าไม่รู้จะทำอะไร อาจจะงงแล้วท้อไปก่อน
อย่าเพิ่งไป Scan เว็บทั้งเว็บ! เริ่มจาก Function เล็กๆ ที่เราสนใจก่อน เช่น ระบบ Login, Form สมัครสมาชิก หรือ API บางตัว แล้วค่อยๆ ขยาย Scope ไปเรื่อยๆ ครับ
Burp Suite มันเก่งจริง แต่ก็ไม่ได้ฉลาด 100% ต้องอ่านผลการ Scan อย่างละเอียด อย่าเชื่อทุกอย่างที่มันบอก ต้องคิดวิเคราะห์ตามด้วยว่ามัน Make Sense หรือเปล่า
ฟีเจอร์นี้เทพมาก! มันจะช่วย Detect ช่องโหว่ Blind Injection ได้ดีมากๆ ลองศึกษาดูครับ แล้วจะติดใจ
# ตัวอย่างการ Config Burp Collaborator Client
1. Enable Burp Collaborator Client
2. Configure Collaborator Server Location
3. Integrate with Burp Scanner or Manual Testing
รุ่นฟรีก็ใช้ได้ดีในระดับนึงครับ แต่รุ่น Pro จะมี Feature เยอะกว่ามาก เช่น Scanner ที่ฉลาดกว่า, Intruder ที่แรงกว่า, และ Extension ที่หลากหลายกว่า ถ้าจะเอาจริงเอาจัง ผมแนะนำ Pro ครับ คุ้มค่ากว่าแน่นอน ที่ iCafeForex เราใช้ตัว Pro เป็นหลัก
กินพอสมควรครับ ยิ่ง Scan เว็บใหญ่ๆ ยิ่งกิน RAM กับ CPU แนะนำให้มี RAM อย่างน้อย 8GB ขึ้นไป และใช้ CPU ที่แรงพอสมควร
เป็นเรื่องปกติครับ บางเว็บจะมีระบบป้องกันการ Scan ถ้าโดน Block ลองปรับ Traffic Shaping ใน Burp Suite ให้ช้าลง หรือใช้ Proxy หลายๆ ตัว เพื่อหลบเลี่ยงการ Block
# ตัวอย่างการปรับ Traffic Shaping
Options -> Throttle Network Speed
ได้ครับ ต้อง Config Proxy ให้มือถือชี้มาที่ Burp Suite ก่อน แล้วค่อย Install Certificate ของ Burp Suite ในมือถือ
มีเยอะแยะครับ ทั้งใน YouTube, Blog, และ Course Online ลอง Search ดูครับ หรือจะลองดู SiamCafe Blog ก็ได้ เผื่อมีอะไรน่าสนใจ
Burp Suite เป็นเครื่องมือที่ทรงพลังมากสำหรับการทดสอบความปลอดภัยของเว็บ แต่ต้องใช้เวลาเรียนรู้และฝึกฝนครับ อย่าท้อแท้ ถ้าเจอปัญหา ลอง Search หาข้อมูล หรือถามผู้รู้ อย่ากลัวที่จะลองผิดลองถูก เพราะการเรียนรู้ที่ดีที่สุดคือการลงมือทำจริง