가장 취약한 공급망 이용해 대규모 침해 벌이는 공격 늘어
SW 공급망 전체 보호 위해 지속적인 탐지·점검·모니터링 필수

 

 

소프트웨어 공급망 공격은 가장 파급력이 높은 공격 유형으로 꼽힌다. 엔터프라이즈 소프트웨어 공급망은 개발사, 그들과 계약한 협력업체와 프리랜서, 완성된 소프트웨어를 고객에게 공급하고 구축하는 기업, 이를 운영하는 기업 등이 참여하는데, 모두 이전단계에서 개발한 코드를 일정부분 수정해서 완성된 서비스로 만들기 위해 노력한다.

개발자들은 직접 소스코드를 작성하는 것이 아니라 오픈소스 커뮤니티 등 외부에서 가져온다. 이렇게 가져온 코드를 수정해 사용하며, 작은 단위로 개발해 API로 연결하면서 전체 서비스를 완성해간다.

외부에서 가져온 코드나 API에 내재된 취약점, 수정 단계에서 실수나 고의 혹은 논리적 오류로 인한 취약점, 여러 서비스가 결합해 운영하면서 발생하는 새로운 오류 혹은 취약점 등이 공급망 공격에 이용된다. 소프트웨어 업데이트 파일, 보안 패치파일 등에도 취약점이 내재돼 있을 수 있으며, 매니지드 서비스 기업이 감염돼 이들의 고객이 모두 감염되는 상황도 발생할 수 있다.



▲소프트웨어 개발 환경과 제품 공급 속도 변화(자료: 체크막스)
▲소프트웨어 개발 환경과 제품 공급 속도 변화(자료: 체크막스)

 


OT·IoT까지 위협하는 SW 취약점

자바 로깅 라이브러리 Log4j는 소프트웨어 공급망 공격에 이용되기 매우 쉬운 취약점을 갖고 있다. 간단한 명령문만으로 원격실행코드(RCE)를 삽입해 침투할 수 있다. 보안 전문가들은 Log4j가 거의 모든 서버와 서비스에 사용되고 있기 때문에 워너크라이를 능가하는 공격이 발생할 수 있을 것이라고 경고한다. 실제로 취약점이 공개된 후 노출된 서비스를 대상으로 한 취약점 스캐닝이 급증했으며, 랜섬웨어, 크립토마이닝, 사이버 스파이 등의 공격 시도가 수없이 탐지된 바 있다.

소프트웨어 취약점은 탐지하고 제거하기가 매우 어렵다. 수많은 오픈소스 커뮤니티에서 가져온 코드를 조립해 완성한 소프트웨어 중 취약점이 있는 코드가 무엇인지 수작업으로 확인할 수 없다. 원본 코드를 수정하고, 패킹하면서 취약점 스캐너가 찾을 수 없는 하위 단위로 내려가면 탐지 툴로도 찾아내기 어렵다. 취약점을 찾았고 패치가 있음에도 불구하고, 다른 서비스에 어떤 영향을 미칠지 몰라서 즉시 패치하기도 어렵다.

취약점 문제는 OT/IoT에서 더 심각하다. OT/IoT는 서비스 가용성을 보장해야 하고, 가용 리소스가 극히 적기 때문에 패치나 업데이트가 매우 어렵다.

소프트웨어 공급망 보호를 위한 가장 이상적인 방법은 처음부터 취약점이 없는 완전무결한 소프트웨어를 개발하는 것이다. SAST, DAST, IAST로 소프트웨어 개발, 테스트, 배포 전 단계에서 취약점을 탐지하고 수정해 공격당할 가능성을 낮춘다. 여기에 오픈소스·써드파티 라이브러리 취약점 스캐닝 툴인 SCA까지 연계해, CI/CD 파이프라인에 통합될 수 있는 애플리케이션 보안 테스팅(AST) 전략을 수립하는 것이 필요하다. [기사 더보기]

 


[출처 : 데이터넷(http://www.datanet.co.kr)]

[기자 : 김선애 기자(iyamm@datanet.co.kr)]