소프트웨어 공급망은 점점 더 복잡해지는 디지털 환경 속에서 기업들에게 중요한 문제로 부각되고 있습니다. 최근 JFrog 보고서는 조직들이 소프트웨어 생태계를 보호하는 데 직면한 증가하는 도전 과제를 강조합니다.
지난 주 발표된 “2024 소프트웨어 공급망 국가 상태 보고서”에 따르면, 현재의 소프트웨어 공급망은 다양하고 글로벌합니다. 많은 조직들이, 약 53%, 4개에서 9개 사이의 프로그래밍 언어를 사용하며, 인상적으로 31%는 10개 이상의 언어에 의존하고 있습니다. 이러한 복잡성은 응용 프로그램 개발을 위한 오픈 소스 패키지와 라이브러리의 급증으로 이어졌습니다. 보고서에 따르면 “Docker와 npm이 가장 많이 기여된 패키지 유형이며, AI/ML 사용 사례로 인해 PyPI 기여도 증가하고 있습니다.” 그러나 이러한 자원의 풍부함은 조직에게 잠재적인 위험을 가져올 수 있습니다.
2023년, 보안 연구자들은 26,000건 이상의 새로운 공통 취약점(CVE)을 보고했으며, 이는 취약점 증가의 흐름을 이어가고 있습니다. 보고서는 올해 가장 일반적인 취약점으로 크로스사이트 스크립팅, SQL 인젝션, 경계 초과 쓰기 등을 언급하며, 크로스사이트 요청 위조가 더욱 널리 퍼지고 있다고 언급합니다.
오해의 소지가 있는 CVSS 점수
JFrog 보안 연구의 수석 이사인 샤하르 메나셰는 공통 취약점 점수 시스템(CVSS) 점수가 실제 악용 가능성에 대해 오해를 불러일으킨다고 지적했습니다. “CVSS 점수는 맥락 의존적인 공격 벡터를 고려하지 않기 때문에, 기본적으로 악용 가능한 취약점과 드문 조건에서만 악용될 수 있는 취약점이 동일한 점수를 받습니다.” 메나셰는 설명했습니다. 보고서에 따르면, 상위 100개의 DockerHub 이미지 중 74%의 고위험 및 중대한 CVE는 실제로 악용되지 않으며, 이는 조직의 특정 맥락과 구성에 따라 위험을 심층적으로 평가할 필요성을 강조합니다.
소프트웨어 공급망의 숨겨진 위험
보고서는 인적 오류와 노출된 비밀번호를 소프트웨어 공급망 내의 중요한 취약점으로 식별합니다. 메나셰는 바이너리 수준에서의 스캔의 중요성을 강조하며 “프로덕션에서 실행될 것을 스캔하고 검증하는 것은 코드가 컴파일된 후에만 나타나는 노출을 발견할 수 있습니다.”라고 밝혔습니다. 비밀번호 유출 같은 문제는 소스 코드에서 탐지되지 않지만, CI/CD 파이프라인을 통해 최종 이미지에서 드러납니다.
분열된 보안 접근법은 자원을 낭비합니다
인식이 증가하고 있음에도, 조직들은 종종 시간과 자원을 낭비하는 단편화된 보안 프로토콜에 직면합니다. 보고서에 따르면, 60%의 전문가들은 매달 4일 이상을 응용 프로그램 취약점을 수정하는 데 소비합니다. 메나셰는 “취약점을 우선순위로 지정하려면 스캔 결과를 맥락화하는 보안 솔루션에 투자해야 합니다. 단순히 CVE를 플래그하는 것은 충분하지 않습니다."라고 언급하며, “맥락을 무시하면 약 75%의 허위 긍정 결과가 발생합니다.”라고 강조했습니다.
보고서에서는 과도한 보안 도구의 문제도 다루고 있습니다. 메나셰는 점점 늘어나는 포인트 솔루션이 커버리지 격차를 만들어 개발 워크플로우를 방해할 수 있다고 지적했습니다.
AI와 머신러닝이 도입하는 새로운 위험
소프트웨어 개발에서 인공지능(AI)과 머신러닝(ML)의 부상은 새로운 위험을 초래합니다. 94%의 조직이 오픈 소스 머신러닝 모델의 보안을 검토하지만, 약 20%는 보안 우려로 인해 AI/ML을 코드 생성에 사용하지 않고 있습니다. 메나셰는 AI 코딩 사용이 증가할 것으로 예측하면서도 이와 함께 오는 보안 위험에 대해 경고했습니다. "GenAI가 개발자 생산성을 크게 향상시킬 수 있지만, 이러한 관행이 보안 및 규정 준수를 위협할 수 있다는 것을 개발자들이 인식하는 것이 중요합니다.”
그는 또한 CISOs에게 공격자들이 존재하지 않는 라이브러리를 조작할 수 있는 AI의 경향을 악용하여 악성 패키지를 생성할 가능성에 대해 경고했습니다.
소프트웨어 공급망 보호를 위한 주요 권장 사항
조직들이 변화하는 소프트웨어 공급망 환경을 탐색함에 따라, JFrog 보고서는 보안을 우선시하고 포괄적인 위험 관리 접근 방식을 채택할 것을 강력히 상기시킵니다. 메나셰는 IT 리더들에게 다음과 같은 주요 권장 사항을 제안합니다:
1. 인터넷에서 오픈 소스 소프트웨어(OSS) 패키지의 직접 다운로드를 제한하고, 아티팩트 관리 솔루션을 사용하여 아티팩트를 검토하고 보안 처리한 후 개발자 환경에 도달하도록 합니다.
2. 소프트웨어 릴리스에 관련된 모든 입력 및 출력을 통합 시스템 내에서 관리하여 팀 간 일관된 정책 적용을 보장합니다.
3. 릴리스의 무결성을 유지하기 위해 코드 서명과 같은 변조 방지 조치를 구현하여 의도된 안전한 구성 요소만 포함되도록 합니다.
맥락 기반 스캔을 채택하고 보안 노력을 통합하며 AI 생성 코드와 관련된 위험을 사전에 해결함으로써, 기업들은 소프트웨어 공급망을 강화하고 숨겨진 위협으로부터 보호할 수 있습니다. JFrog 보고서는 점점 더 확장되는 공격 표면을 고려할 때, 소프트웨어 공급망 보안에 대한 철저하고 포괄적인 접근 방식의 긴급성을 강조합니다.