- Sam Curry กับฉันใช้เวลาอยู่ในคิวตรวจความปลอดภัยสนามบินเป็นเวลามาก
- Known Crewmember (KCM) เป็นโปรแกรมของ TSA ที่เปิดให้กัปตันและพนักงานต้อนรับบนเครื่องสามารถข้ามการตรวจค้นด้านความปลอดภัยได้
- กระบวนการ KCM นั้นเรียบง่าย โดยพนักงานจะใช้เลนเฉพาะและแสดงบาร์โค้ด KCM หรือหมายเลขพนักงาน
- Cockpit Access Security System (CASS) เป็นระบบที่คล้ายกัน ซึ่งช่วยให้นักบินสามารถใช้ jumpseat ได้
ARINC
- ARINC ทำสัญญากับ TSA เพื่อดำเนินการระบบ KCM
- ARINC ให้บริการเว็บไซต์และ API สำหรับนักบินและพนักงานต้อนรับบนเครื่องเพื่อตรวจสอบสถานะ KCM
- แต่ละสายการบินมีระบบยืนยันตัวตนของตนเอง และโต้ตอบกับ "ฮับ" ของ ARINC
- TSA และสายการบินจะส่ง
CockpitAccessRequest และ CrewVerificationRequest ไปยัง ARINC และ ARINC จะส่งต่อคำขอเหล่านี้ไปยังระบบของสายการบินที่เหมาะสม
FlyCASS.com
- FlyCASS ให้ส่วนติดต่อแบบเว็บสำหรับสายการบินขนาดเล็ก
- จากการทดสอบ SQL Injection พบช่องโหว่ด้านความปลอดภัยใน FlyCASS
- ผ่าน SQL Injection สามารถล็อกอินเข้าไปยังบัญชีผู้ดูแลของ Air Transport International ได้
ผู้ดูแลระบบ KCM และ CASS
- FlyCASS ใช้งาน KCM และ CASS และด้วยสิทธิ์ผู้ดูแลระบบสามารถเพิ่มพนักงานใหม่ได้
- จากการทดสอบ ได้เพิ่มพนักงานใหม่ชื่อ
Test TestOnly และมอบสิทธิ์เข้าถึง KCM และ CASS
- สิ่งนี้ทำให้พบปัญหาร้ายแรงที่ใครก็สามารถเข้าถึง KCM และ CASS ได้ผ่าน SQL Injection
การเปิดเผย
- พบความยากลำบากในการหาช่องทางติดต่อที่เหมาะสมเพื่อเปิดเผยปัญหา
- วันที่ 23 เมษายน ได้เปิดเผยปัญหาต่อกระทรวงความมั่นคงแห่งมาตุภูมิ และ FlyCASS ถูกปิดการใช้งานจาก KCM/CASS
- TSA ออกแถลงการณ์ปฏิเสธการมีอยู่ของช่องโหว่
- TSA ลบส่วนสำหรับป้อนรหัสพนักงานด้วยตนเองออกจากเว็บไซต์
ไทม์ไลน์
- 04/23/2024: เปิดเผยครั้งแรกต่อ ARINC และ FAA
- 04/24/2024: เปิดเผยเพิ่มเติมต่อ DHS
- 04/25/2024: CISO ของ DHS ยืนยันว่ากำลังดำเนินการแก้ไข
- 05/07/2024: ยืนยันว่า FlyCASS ถูกแยกออกจาก KCM/CASS
- 05/17/2024: ติดตามความคืบหน้าเกี่ยวกับแถลงการณ์ของ TSA (ไม่มีการตอบกลับ)
- 06/04/2024: ติดตามความคืบหน้าเกี่ยวกับแถลงการณ์ของ TSA (ไม่มีการตอบกลับ)
ผู้ร่วมงาน
สรุปของ GN⁺
- บทความนี้กล่าวถึงช่องโหว่ร้ายแรงในระบบความปลอดภัยของสนามบิน
- ข้อบกพร่องด้านความปลอดภัยในระบบ KCM และ CASS ทำให้เกิดปัญหาที่ใครก็สามารถเลี่ยงการตรวจค้นและเข้าถึงห้องนักบินได้
- สามารถยกระดับเป็นสิทธิ์ผู้ดูแลระบบได้ผ่าน SQL Injection ซึ่งเป็นภัยคุกคามด้านความปลอดภัยอย่างร้ายแรง
- บทความนี้อธิบายอย่างละเอียดถึงกระบวนการที่นักวิจัยด้านความปลอดภัยค้นพบและเปิดเผยปัญหา
- ระบบที่มีฟังก์ชันคล้ายกัน ได้แก่ TSA PreCheck และ Global Entry
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
ระบบของ TSA เปราะบางต่อข้อผิดพลาดพื้นฐานของการเขียนโปรแกรมเว็บ
การตอบสนองของ TSA ดูเป็นเด็กและน่าอับอาย
น่าตกใจไม่ใช่แค่เรื่อง SQL injection แต่รวมถึงการสร้างบันทึกพนักงานปลอมขึ้นมาด้วย
ไม่ว่าใครก็ตาม ถ้ามีแรงจูงใจเพียงเล็กน้อย ก็แทบไม่มีความยากลำบากในการทำให้เกิดเหตุการณ์แบบ 911 ซ้ำอีก
เป็นไปได้ว่านักพัฒนา FlyCASS รู้ว่าจะมีการแก้ปัญหาทันที จึงต้องการให้เรื่องนี้กลายเป็นประเด็นใหญ่กว่าเดิม
การที่ไม่มีใครพูดถึงการเก็บรหัสผ่านด้วย MD5 แสดงให้เห็นว่าสถานการณ์ร้ายแรงแค่ไหน
การปฏิเสธความร้ายแรงของปัญหาไม่ใช่เรื่องน่าแปลกใจ แต่การไม่แจ้ง FBI หรือไม่จับกุมใครเลยต่างหากที่น่าตกใจ
ระบบความปลอดภัยมูลค่าหลายพันล้านดอลลาร์ถูกทำให้ไร้ผลได้ด้วย SQL injection ธรรมดาๆ
การตอบสนองของ TSA น่าตกใจมาก
อยากเสนอให้รัฐบาลขึ้นเงินเดือนเพื่อจ้างคนที่เก่งกว่านี้ แต่ปัญหาน่าจะเป็นเชิงระบบจนไม่น่าช่วยอะไร