SQL 인젝션을 통한 공항 보안 우회
(ian.sh)- Sam Curry와 나는 공항 보안 대기줄에서 많은 시간을 보냄
 - Known Crewmember (KCM)은 TSA 프로그램으로, 조종사와 승무원이 보안 검색을 우회할 수 있게 함
 - KCM 프로세스는 간단하며, 직원은 전용 레인을 사용하고 KCM 바코드나 직원 번호를 제시함
 - Cockpit Access Security System (CASS)도 유사한 시스템으로, 조종사가 점프시트를 사용할 수 있게 함
 
ARINC
- ARINC는 TSA와 계약하여 KCM 시스템을 운영함
 - ARINC는 파일럿과 승무원이 KCM 상태를 확인할 수 있는 웹사이트와 API를 운영함
 - 각 항공사는 자체 인증 시스템을 운영하며, ARINC의 "허브"와 상호작용함
 - TSA와 항공사는 
CockpitAccessRequest와CrewVerificationRequest를 ARINC에 보내고, ARINC는 이를 적절한 항공사 시스템으로 라우팅함 
FlyCASS.com
- FlyCASS는 소규모 항공사를 위한 웹 기반 인터페이스를 제공함
 - SQL 인젝션 테스트를 통해 FlyCASS의 보안 취약점을 발견함
 - SQL 인젝션을 통해 Air Transport International의 관리자 계정으로 로그인 가능함
 
KCM과 CASS 관리자
- FlyCASS는 KCM과 CASS를 운영하며, 관리자 권한으로 새로운 직원을 추가할 수 있음
 - 테스트를 통해 새로운 직원 
Test TestOnly를 추가하고, KCM과 CASS 접근 권한을 부여함 - 이로 인해 누구나 SQL 인젝션을 통해 KCM과 CASS에 접근할 수 있는 심각한 문제를 발견함
 
공개
- 문제를 공개하기 위해 적절한 연락처를 찾는 데 어려움을 겪음
 - 4월 23일, 국토안보부에 문제를 공개하고, FlyCASS는 KCM/CASS에서 비활성화됨
 - TSA는 취약점을 부인하는 성명을 발표함
 - TSA는 웹사이트에서 직원 ID 수동 입력 섹션을 삭제함
 
타임라인
- 04/23/2024: ARINC 및 FAA에 초기 공개
 - 04/24/2024: DHS에 후속 공개
 - 04/25/2024: DHS CISO가 해결 작업 중임을 확인
 - 05/07/2024: FlyCASS가 KCM/CASS에서 분리됨을 확인
 - 05/17/2024: TSA 성명에 대한 후속 조치 (응답 없음)
 - 06/04/2024: TSA 성명에 대한 후속 조치 (응답 없음)
 
협력자
- Ian Carroll (https://twitter.com/iangcarroll)
 - Sam Curry (https://twitter.com/samwcyo)
 
GN⁺의 정리
- 이 기사는 공항 보안 시스템의 심각한 취약점을 다루고 있음
 - KCM과 CASS 시스템의 보안 결함으로 인해 누구나 보안 검색을 우회하고 조종석에 접근할 수 있는 문제가 발생함
 - SQL 인젝션을 통해 관리자 권한을 획득할 수 있었으며, 이는 심각한 보안 위협임
 - 이 기사는 보안 연구자들이 문제를 발견하고 공개하는 과정을 상세히 설명함
 - 유사한 기능을 가진 시스템으로는 TSA PreCheck와 Global Entry가 있음
 
Hacker News 의견
- 
TSA 시스템이 기본적인 웹 프로그래밍 오류에 취약함
- TSA는 문제를 해결하기보다는 은폐하고 부인하는 경향이 있음
 - 권위주의적 사고방식의 자연스러운 결과임
 
 - 
TSA의 대응은 유치하고 당황스러움
- DHS는 처음에는 보고서를 신속하고 전문적으로 처리했으나, 이후 문제 해결과 공개 과정에서 최고 권한을 유지하지 못함
 
 - 
SQL 인젝션을 넘어 직원의 가짜 기록을 생성한 것에 놀라움
- Homeland가 관련자를 체포하지 않은 것에 더 놀라움
 - 책임 있는 공개 대신 악의적인 해킹으로 오해할 가능성이 높았음
 
 - 
누구든지 약간의 동기만 있으면 911을 재현하는 데 어려움이 없음
- 테러가 적은 이유는 보안 기관이 우리를 보호해서가 아니라 테러리스트가 극히 적기 때문임
 
 - 
FlyCASS 개발자가 즉시 문제를 해결할 것을 알고 더 큰 반향을 원했을 가능성이 있음
 - 
MD5로 암호를 저장하는 것에 대해 아무도 언급하지 않는 상황이 심각함을 보여줌
- SQL 쿼리를 통해 쉽게 접근할 수 있어 암호 저장 방식이 무의미함
 
 - 
문제의 심각성을 부인하는 것은 놀랍지 않지만, FBI에 알리지 않거나 체포하지 않은 것은 놀라움
 - 
수십억 달러의 보안 체계를 단순한 SQL 인젝션이 무력화함
 - 
TSA의 대응이 매우 충격적임
 - 
정부가 더 나은 인재를 고용하기 위해 급여 인상을 제안하고 싶지만, 문제는 체계적이라 효과가 없을 것 같음
- 모든 사람이 실수를 반복함
 - 문제를 해결할 기회가 있었지만 놓침