slumzick

รายงานช่องโหว่ความปลอดภัย - หน่วยงานรัฐ

ระบบ "หน่วยงานรัฐ" ถูกเข้าถึงข้อมูลประชาชนในระบบ และถูกนำไปขายในตลาดมืด

รูปแบบความเสี่ยง: OWASP Top 10 A07:2025 Authentication Failures
คำอธิบาย: ระบบยืนยันตัวความน่าเชื่อถือต่ำ ไม่ได้สัดส่วนกับความสำคัญของระบบ
วันที่รายงาน: 20 มีนาคม 2569
วันที่หน่วยงานแก้ไข: 21 มีนาคม 2569
สถานะ: ✅ แก้ไขแล้ว

พบช่องโหว่ในระบบภายในของหน่วยงานรัฐแห่งหนึ่ง (ต่อไปนี้จะเรียกว่า "หน่วยงานรัฐ") จำนวน 2 ระบบ ซึ่งทำให้ผู้ไม่หวังดีสามารถ สืบค้นข้อมูลส่วนบุคคลของประชาชนไทยได้แบบไม่จำกัดจำนวน เพียงแค่ทราบชื่อ-นามสกุล โดยข้อมูลที่ได้ครอบคลุมตั้งแต่เลขบัตรประชาชน ที่อยู่ วันเกิด สิทธิรักษาพยาบาล ไปจนถึง เลขบัตรประชาชนของบิดา-มารดา

ผู้เขียนได้แจ้งเตือนหน่วยงานที่เกี่ยวข้องตามหลัก Responsible Disclosure แล้ว และเผยแพร่รายงานนี้หลังจากหน่วยงานดำเนินการแก้ไขเรียบร้อยแล้ว


ความเป็นมา

ผู้เขียนได้รับ source code ของเครื่องมือหนึ่งจากตลาดมืด ซึ่งถูกออกแบบมาเป็น Discord Bot สำหรับให้บริการสืบค้นข้อมูลส่วนบุคคลของประชาชนไทย โดยเครื่องมือนี้ทำงานโดยเชื่อมต่อกับระบบภายในของ "หน่วยงานรัฐ" แบบอัตโนมัติ

จากการวิเคราะห์ source code พบว่าเครื่องมือดังกล่าว:

  • ใช้ credentials (username/password) จริง ที่ฝังอยู่ใน source code เพื่อ copyright เข้าระบบ "หน่วยงานรัฐ"
  • canadian_re credentials เหล่านี้ ใช้งานได้จริง ณ วันที่จัดทำรายงาน
  • สามารถสืบค้นข้อมูลได้เพียงแค่ พิมพ์ชื่อ-นามสกุล ของเป้าหมาย
  • ถูกห่อหุ้มเป็น Discord Bot เพื่อ ขายบริการในวงจำกัด โดยจำกัดการเข้าถึงด้วย Discord Role (เฉพาะผู้จ่ายเงิน)

ผู้เขียน ไม่ได้ ใช้เครื่องมือนี้สืบค้นข้อมูลของบุคคลใด แต่ได้วิเคราะห์ source code อย่างละเอียดและจัดทำรายงานแจ้งหน่วยงานที่เกี่ยวข้อง


ช่องโหว่ที่พบ

ระบบที่ได้รับผลกระทบ

เครื่องมือเข้าถึงระบบ "หน่วยงานรัฐ" 2 ระบบ แบบ chain attack:

[ แผนภาพแสดงการโจมตีแบบ Chain Attack ]

ชื่อ-นามสกุล ➡️ ระบบที่ 1 (หาเลขบัตร) ➡️ ระบบที่ 2 (ดึงข้อมูลส่วนบุคคล) ➡️ ข้อมูลครบชุด

ระบบ หน้าที่ ช่องทางเข้าถึง
ระบบที่ 1 System A แปลง ชื่อ-นามสกุล ➡️ เลขบัตรประชาชน Web Application (ใช้ browser automation)
ระบบที่ 2 System B แปลง เลขบัตรประชาชน ➡️ ข้อมูลส่วนบุคคลทั้งหมด REST API โดยตรง ไม่ต้องเปิด browser

จุดอ่อนหลักที่พบ

# ช่องโหว่ รายละเอียด
1 Credentials รั่วไหล พบ username/password ฝังใน source code 2 ชุด สำหรับเข้าระบบ 2 ระบบ ยืนยันว่าใช้งานได้จริง
2 รหัสผ่านอ่อนแอ ระบบที่ 2 ใช้รหัสผ่านเพียง 4 หลัก ไม่มีนโยบายความเข้มงวด
3 Over-privileged API API ของระบบที่ 2 ส่งคืนข้อมูล 50+ fields ทั้งที่ function ที่เรียกใช้ต้องการข้อมูลเพียงบางส่วน
4 ไม่มี Rate Limiting API เรียกได้ไม่จำกัดจำนวนครั้ง ทำให้สามารถดึงข้อมูลจำนวนมาก (bulk extraction)
5 Token ไม่หมดอายุ เมื่อ copyright ได้ token มาแล้ว ใช้ได้ต่อเนื่องโดยไม่ต้อง copyright ใหม่
6 ไม่มี MFA ไม่มีการยืนยันตัวตนแบบสองชั้น
7 บัญชีต้องสงสัย ชื่อผู้ใช้ไม่ตรงกับรูปแบบขององค์กร สงสัยว่าผู้โจมตีอาจสร้างบัญชีเองได้

ผลการทดสอบจริง

ผู้รายงานได้ทดสอบเรียก API `GetPersonData` โดย เลือกทดสอบกับบุคคลสาธารณะ เพื่อลดผลกระทบต่อบุคคลทั่วไป

ผลลัพธ์จาก API (ทดสอบวันที่ 20 มีนาคม 2569)


"address": "●●/●",

"birthdate": "2509●●●●",

...

"fname": "อนุทิน",

"lname": "ชาญวีรกูล",

"fpid": "3●●●●●●●●●●41", // เลขบัตรบิดา

"mpid": "3●●●●●●●●●●59", // เลขบัตรมารดา

"person_id": "3●●●●●●●●●●67", // เลขบัตรตนเอง

"primaryprovince_name": "บุรีรัมย์",

...

"full_name": "อนุทิน ชาญวีรกูล",

"result": "ok"


ข้อมูลที่รั่วไหล

ข้อมูลที่ API ส่งกลับมาครอบคลุม 50 fields แบ่งตามระดับความอ่อนไหว:

หมวด ตัวอย่างข้อมูล ระดับความอ่อนไหว
ข้อมูลพื้นฐาน เลขบัตรประชาชน 13 หลัก, ชื่อ-นามสกุล, เพศ, วันเกิด, สถานะทะเบียนบ้าน ? สูงมาก
ที่อยู่ บ้านเลขที่, หมู่, ตำบล, อำเภอ, จังหวัด (ที่อยู่เต็ม) ? สูงมาก
ข้อมูลครอบครัว ชื่อ-นามสกุลบิดา-มารดา, เลขบัตรประชาชนบิดา-มารดา ? สูงมาก
สิทธิรักษาพยาบาล ชื่อสิทธิ (บัตรทอง/ประกันสังคม), สถานพยาบาลหลัก ? สูง

สิ่งที่น่าตกใจที่สุด คือ API ส่งคืน "เลขบัตรประชาชนของบิดาและมารดา" มาด้วย นี่คือต้นเหตุหลักของการรั่วไหลในวงกว้าง

ภัยคุกคามที่เป็นไปได้

ภัยคุกคาม อธิบาย
? Identity Theft ใช้ข้อมูลเปิดบัญชี, สมัครสินเชื่อ หรือทำ KYC ปลอม
? Social Engineering ใช้ข้อมูลครอบครัวหลอกลวงเหยื่อ (เช่น แก๊งคอลเซ็นเตอร์อ้างเรื่องญาติ)

สิ่งที่ประชาชนควรรู้

หากคุณ มีสิทธิบัตรทอง ประกันสังคม หรือสิทธิข้าราชการ ข้อมูลของคุณอาจถูกเข้าถึงได้ ควรปฏิบัติดังนี้:

  1. ระวังการติดต่อที่น่าสงสัย: อย่าเชื่อทันทีหากมีคนอ้างว่าเป็นเจ้าหน้าที่และรู้ข้อมูลส่วนตัวคุณ
  2. อย่าให้ข้อมูลเพิ่ม: มิจฉาชีพอาจใช้ข้อมูลที่รู้มาหลอกถามข้อมูลทางการเงินเพิ่ม
  3. ตรวจสอบเครดิตบูโร: หากกังวลเรื่องการนำชื่อไปแอบอ้างกู้เงิน

Disclaimer: รายงานฉบับนี้จัดทำเพื่อแจ้งเตือนสาธารณะเกี่ยวกับช่องโหว่ที่ได้รับการแก้ไขแล้ว

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

click here

Comments on “slumzick”

Leave a Reply

Gravatar