IT 관리 / 개발자 / 보안

데브옵스 파이프라인이 공격을 받는 이유와 대처 방안

Maria Korolov | CSO 2022.02.25


데브옵스 파이프라인에 대한 공격 유형

리눅스 재단의 오픈소스 공급망 보안 책임자 데이비드 휠러에 따르면, 가장 보편적인 사이버 공격은 ‘의존성 혼동’, ‘타이포스쿼팅(Typosquatting)’, ‘코드 주입’ 3가지다. 

‘명칭 공간 혼란(namespace confusion)’이라고도 알려진 의존성 혼동은 공격자가 특정 상표가 붙은 기업용 소프트웨어 패키지의 이름을 파악한 뒤 릴리즈 날짜가 최신인 오픈소스 패키지를 동일한 상표로 생성하는 방법이다. 특정 파이프라인 툴이 자동으로 최신 소프트웨어 패키지 버전을 다운로드하면서 악성 페이로드를 받게 된다.

타이포스쿼팅은 공격자가 실제 서비스와 이름이 거의 같은 오픈소스 소프트웨어 패키지를 생성하는 방법이다. 이때 공격자는 프로그래머가 오타를 입력해 잘못된 라이브러리를 사용하기를 기대한다.

코드 주입은 공격자가 정당한 오픈소스 프로젝트에 악성코드를 추가하는 공격 방법이다. 프로젝트 유지관리 담당자의 자격증명을 훔쳐 해당 담당자의 이름으로 악성코드를 업로드하거나, 프로젝트에 스스로 지원하거나, 오픈소스 개발자 툴을 부당하게 변경하는 방법으로 공격을 수행한다. 


오픈소스 구성요소의 취약점

오픈소스 구성요소에 취약점이 알려지면, 공격자는 이를 재빠르게 악용한다. 2021년 4월 애플리케이션 보안 테스트 업체 시놉시스(Synopsys)가 1,500개 이상의 내부 및 상업용 기업 소프트웨어 프로젝트의 코드를 검토한 결과, 98%의 프로젝트에 오픈소스 코드가 포함돼 있었다. 일반 애플리케이션은 코드베이스의 75%가 오픈소스였다. 

무서운 사실은 시놉시스의 조사 결과, 코드베이스의 84%에 최소 1개의 취약점이 있었다는 것이다. 이는 수많은 보안 연구원이 역사상 가장 위험한 자바 익스플로잇 공격이라고 평가한 Log4j 취약점이 발견되기 이전의 조사 결과였다. 또한 사용된 오픈소스 구성요소의 91%는 지난 2년 동안 유지관리가 제대로 이루어지지 않았다. 

보안업체 플래시포인트(Flashpoint) 산하 취약점 및 데이터 탈취 인텔리전스 업체 RBS(Risk Based Security)가 최근 공개한 보고서에 따르면, 2021년에는 2만 8,000개 이상의 새로운 취약점이 공개됐다. 이 가운데 4,000개 이상은 공개된 취약점과 문서화된 솔루션 정보를 사용해 원격으로 공격할 수 있었다. RBS는 “Log4j 취약점은 특히 위험했으며 다른 무엇보다 영향력이 컸다”라고 지적했다. 6,200개 이상의 다른 소프트웨어 제품에서 취약한 Log4j 라이브러리가 발견됐으며, 주의해야 하는 업체의 수는 지속해서 증가하고 있다. 


소프트웨어 개발 파이프라인을 보호하는 방법

기업은 소프트웨어 개발 파이프라인을 보호하기 위해 무엇을 해야 할까. 개발자 교육 및 훈련, 이중인증이나 코드 검토와 같은 모범 사례 도입, 의심스러운 활동을 탐지하는 모니터링 툴 설치와 같은 방법이 대표적이다.


1. 개발자와 함께 시작하라

매니지드 서비스 제공업체 엔소노(Ensono)의 사이버보안 수석 책임자 데이비드 고처노어는 내부 개발자와 서드파티 소프트웨어 제공업체는 모두 코드 개발 및 배포 프로세스에서 보안에 대한 감독이 필요하다고 조언했다. 이때 두 개발자 그룹은 각자 다른 방식으로 접근해야 한다.

엔소노는 소프트웨어를 판매하지는 않지만, 고객 포털을 운영하기 위한 맞춤형 소프트웨어가 필요했다. 엔소노가 관리하는 여러 고객 시스템의 상태에 대한 데이터를 수집해 포털에 삽입해야 했기 때문에 고객 포털의 보안이 매우 중요했다. 이는 곧 고객의 시스템에 액세스하는 엔소노의 툴이 사이버 공격자에게 가치가 높은 표적이 된다는 의미이기도 하다. 고처노어는 “많은 고객을 보유하고 있기 때문에 고객 A가 고객 B의 데이터에 접근하지 못하도록 하는 것도 중요했다”라고 덧붙였다.

엔소노의 맞춤형 소프트웨어는 위험성이 높았다. 일부 고객은 국가 안보와 개인정보보호 관점에서 매우 민감했다. 따라서 엔소노의 첫 번째 과제는 서드파티 업체를 매우 엄격하게 조사하는 것이었다. 고처노어는 “서드파티 업체에 대해 매우 잘 알아야 한다. 솔라윈즈 사건이 좋은 예시이며, 그 외에도 위협 행위자가 내부 보안을 소홀히 한 서드파티 업체를 진입점으로 사용한 사례가 많다”라고 지적했다.

외부 소프트웨어 개발업체도 조사해야 한다. 고처노어는 “서드파티 업체를 이용할 때, 제공하는 서비스가 무엇이든 안전한지 확인하기 위해 적절한 절차 및 컨트롤 보유 여부를 철저하게 조사한다. 개발 환경에 배포된 테스트 절차와 보안 컨트롤도 검토하며, 결함에 관한 불이익 조항을 계약서에 포함한다”라고 덧붙였다.

엔소노 소속 개발자는 공개적으로 액세스할 수 있는 코드 리포지토리를 사용하지 않는다. ‘무엇이든 존재할 수 있기 때문’이다. 고처노어는 “다방면에서 멋있는 코드가 있을 수 있다. 멋있는 코드는 멋진 기능을 제공하겠지만 위협 행위자가 프로젝트에 액세스할 수 있는 여지를 주게 된다”라고 말했다. 

개발자가 더 안전한 코드를 작성할 수 있도록 여러 조치를 취하기도 한다. 고처노어의 경우에는 서드파티 업체와 내부 팀이 침투 테스트를 진행했던 것이 보안 훈련과 동기 부여에 도움이 됐다. 고처노어는 “이런 방법을 사용하면 개발하는 제품의 품질이 크게 달라질 것이다”라고 조언했다. 

고처노어가 회사 소프트웨어에 대한 침투 테스트를 진행했을 때 개발자들은 항상 테스트에 참가해 화이트햇 해커의 작업을 지켜봐야 했다. 고처노어는 “개발자들은 자신이 무엇을 하는지 이해하고 침투 테스트에서 발견한 취약점에서 배울 점을 찾고자 했다. 이런 침투 테스트로 개발자들은 사고방식을 바꾸었다. 이제 침투 테스트는 서드파티 업체의 제품을 들여올 때 하나의 요건이 됐다. 기술팀은 서드파티 개발자를 감독하면서 배울 수 있다”라고 설명했다.
 

Sponsored

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.