[2022 보안 키워드③] 가장 취약한 공급망 공격 ‘경고’
상태바
[2022 보안 키워드③] 가장 취약한 공급망 공격 ‘경고’
  • 김선애 기자
  • 승인 2022.01.04 09:00
  • 댓글 0
이 기사를 공유합니다

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

[데이터넷] 임인년(壬寅年)은 물을 머금고 피어나는 새싹처럼 무언가를 시작하기 좋은 기운을 가진 해라고 한다. 그런데 사이버 세상은 긍정적인 신호만을 보여주지 않는다. 지난해 사이버 범죄 비용이 6조달러(약 7경)을 초과할 것으로 예상되며, 올해는 이보다 훨씬 더 성장할 것으로 보인다. 예측하면 대응할 수 있다. 올해 주목해야 할 보안 키워드를 정리해 본다.<편집자>

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

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

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

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

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

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

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

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

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

소프트웨어 라이프사이클 전체 보호해야

소프트웨어가 배포된 후 취약점을 제거하는 것은 처음부터 취약점이 없는 소프트웨어를 개발하는 것 보다 30배의 비용이 든다. 그럼에도 불구하고 AST를 도입하지 않는 것은 인식의 문제다. 개발·운영조직은 보안이 결합되면 시간과 비용이 많이 들어 계획된 대로 서비스를 출시하지 못한다고 생각한다. 보안의 중요성을 모르는 것은 아니지만, 이미 도입한 데브옵스에 보안이 결합되어 있지 않기 때문에 보안을 신경쓰지 못한다고 변명하기도 한다.

데브옵스가 어느 정도 정착된 만큼, 데브섹옵스로 진화해야 할 단계라고 본다. 시큐어 SDLC에 맞춰서 직접 개발하는 코드와 외부에서 가져오는 코드, 컨테이너, 레지스트리의 취약점을 점검하고, 오케스트레이터도 감염돼 있는지 반드시 확인해야 한다.

이와 함께 운영 중 애플리케이션의 이상행위를 모니터링하는 RASP도 필수다. 개발 단계에서 철저하게 취약점을 제거했다 해도 미처 제거되지 못한 취약점이나 새로 발견된 취약점, 운영 단계에서 새롭게 나타나는 취약점이 있을 수 있기 때문이다. RASP는 운영 중 애플리케이션에 설치돼 행위를 모니터링하기 때문에 운영 환경에 변화를 주지 않고 이상행위를 찾아낼 수 있다.

포브스는 2022년 사이버 보안 위협 전망 보고서를 통해 “모든 보안은 가장 취약한 링크만큼 안전하다. 즉 공급망의 모든 링크를 잠재적인 취약성으로 간주하게 될 것”이라고 밝히며 파트너를 통한 보안위협의 문제를 지목했다.

치명적인 소프트웨어 공급망 공격이 앞으로 더 성행할 것으로 전망되면서 미국의 사이버 보안 행정명령과 NIST 공급망 보호 지침이 발표되기도 했다. 소프트웨어 공급망 생태계 전반에서 보안을 강화하는 한편, 소프트웨어 재료 명세(SBoM)을 구축해 취약점이 발표됐을 때 즉시 가시화하고 조치할 수 있어야 한다.


관련기사

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.