CISA와 FBI는 수요일에 소프트웨어 회사에 제품을 검토하고 출시 전에 경로 OS 명령 주입 취약점을 제거할 것을 촉구했습니다.
이 공지는 최근 여러 OS 명령 주입 보안 결함(CVE-2024-20399, CVE-2024-3400, CVE-2024-21887)을 악용해 Cisco, Palo Alto, Ivanti 네트워크 엣지 장치를 손상시키는 공격에 대응하여 발표되었습니다.
이런 공격을 조율한 중국 국가 지원 위협 주체인 벨벳 앤트는 사이버 간첩 캠페인의 일환으로 해킹된 기기에 지속성을 확보하기 위해 맞춤형 맬웨어를 배포했습니다.
오늘 발표된 공동 권고문에서는 “OS 명령 주입 취약점은 제조업체가 기본 OS에서 실행할 명령을 구성할 때 사용자 입력을 제대로 검증하고 정리하지 못할 때 발생합니다.”라고 설명합니다.
“적절한 검증이나 살균 없이 사용자 입력을 신뢰하는 소프트웨어를 설계하고 개발하면 위협 행위자가 악의적인 명령을 실행하여 고객을 위험에 빠뜨릴 수 있습니다.”
CISA는 개발자에게 소프트웨어 제품을 설계하고 개발하는 동안 대규모 OS 명령 주입 취약성을 방지하기 위해 잘 알려진 완화책을 구현할 것을 권고합니다.
- 가능하면 일반 용도의 시스템 명령에 원시 문자열을 입력하는 대신, 명령과 인수를 분리하는 내장 라이브러리 함수를 사용하세요.
- 입력 매개변수화를 사용하여 데이터와 명령을 분리하고, 사용자가 제공한 모든 입력을 검증하고 정리합니다.
- 사용자 입력으로 구성된 명령의 부분을 필요한 부분으로만 제한합니다.
기술 리더는 소프트웨어 개발 프로세스에 적극적으로 참여해야 합니다. 이를 위해 소프트웨어가 명령의 의도된 구문과 인수를 보존하면서 명령을 안전하게 생성하는 기능을 사용하도록 할 수 있습니다.
또한, 위협 모델을 검토하고, 최신 구성 요소 라이브러리를 사용하고, 코드 검토를 실시하고, 엄격한 제품 테스트를 구현하여 개발 라이프사이클 전체에 걸쳐 코드의 품질과 보안을 보장해야 합니다.
“OS 명령 주입 취약점은 오랫동안 사용자 입력과 명령 내용을 명확히 분리함으로써 예방할 수 있었습니다. 이러한 발견에도 불구하고, CWE-78에서 비롯된 OS 명령 주입 취약점은 여전히 만연한 취약점 유형입니다.” CISA와 FBI가 덧붙였습니다.
“CISA와 FBI는 기술 제조업체의 CEO와 기타 비즈니스 리더에게 기술 리더에게 이러한 종류의 결함이 과거에 발생했는지 분석하고 앞으로 이를 제거하기 위한 계획을 수립하도록 요청하라고 촉구합니다.”
OS 명령 주입 보안 버그는 MITRE가 선정한 가장 위험한 소프트웨어 취약점 25개 중 5위를 차지했으며, 범위를 벗어난 쓰기, 크로스 사이트 스크립팅, SQL 주입, 사용 후 해제 취약점에 이어 3위를 차지했습니다.
5월과 3월에는 두 개의 다른 “설계상 보안” 경고에서 기술 임원과 소프트웨어 개발자에게 경로 탐색 및 SQL 주입(SQLi) 보안 취약점을 제거할 것을 촉구했습니다.