폭증하는 오픈소스 보안 위협… 원인과 대책은?

[AI요약] 최근 디지털 비즈니스를 구성하는 앱의 90% 이상이 오픈소스 코드를 활용해 제작되고 있는 상황에서 해커들은 소프트웨어 제작에 사용되는 수백 수천개의 오픈소스 패키지 사이에 교묘하게 악성코드를 심어 놓는다. 악질적인 것은 이러한 방식이 오픈소스 생태계를 유지해 온 ‘신뢰성’을 이용한 공격이라는 점이다.

최근 대부분의 개발자가 오픈소스 코드를 활용해 소프트웨어를 제작하는 환경에서 오픈소스에 악성 코드를 심어 공격을 하는 사례가 폭증하고 있다. (이미지=픽사베이)

코로나19 팬데믹을 거치면서 디지털 수요가 급증했다. 기업들은 시시각각 변화하는 시장의 속도에 맞춰 제품과 서비스를 빠르게 개발하기 위한 수단으로 ‘오픈소스’를 활용하고 있다. 오픈소스란 프로그래밍 설계도인 소스코드가 공개된 소프트웨어를 의미하는데, 누구나 자유롭게 배포·수정·복제·사용이 가능하다.  

문제는 최근 디지털 비즈니스를 구성하는 앱의 90% 이상이 오픈소스 코드를 활용해 제작되고 있는 상황에서 클라우드 등의 보안은 강화되는 반면, 오픈소스 공급망 보안은 상대적으로 허술하게 관리되고 있다는 점이다.

이에 전문가들은 ‘아무것도 신뢰하지 않는다’를 전제로 한 사이버 보안 모델, ‘제로 트러스트(Zero Trust)의 개념이 오픈소스에도 적용돼야 한다고 지적하고 있다.

공격에 무방비한 오픈소스 생태계

소프트웨어 개발에 마이크로서비스 아키텍처(MSA)가 채택되며 미션 크리티컬 앱(실패 시사업이나 사회에 큰 문제를 끼치는 컴퓨팅 시스템)까지 오픈소스를 사용하게 됐다. 즉 오늘날 소프트웨어 공급망은 오픈소스 공급망이라고 해도 과언이 아니다. 소프트웨어를 제작하는 프로세스에서 대부분의 개발자들이 오픈소스 코드를 쓰거나 외부 코드와 결합해 작업을 진행한다. 완성된 이후 강력한 보안 시스템을 적용하는 소프트웨어라고 해도, 이미 제작 과정에서 상당한 외부 의존성을 포함하고 있다는 말이다.

악성 오픈소스 패키지 사례. 공격자는 교묘하게 패스워드 등을 빼내는 악성 코드를 넣는다. (이미지=체크막스)

오늘날 해커들은 소프트웨어 제작에 사용되는 수백 수천개의 오픈소스 패키지 사이에 교묘하게 악성코드를 심어 놓는다. 이러한 악성코드 중에는 특정 예외 상황 시에만 발동하도록 설정돼 있어 소프트웨어가 특정 상황에 직면할 때 비밀번호 등의 보안 정보가 유출되도록 하는 경우도 있다. 또 대부분의 개발자가 오픈소스 라이브러리에서 패키지를 가져올 때 최신 버전이 자동으로 업데이트되도록 설정하는데, 해커들은 이점을 노린다. 해당 패키지에 악성 코드를 미리 삽입 후 상위 버전으로 업로드 될 때 자동으로 악성 코드가 삽입되게 하는 것이다.

최근에는 오픈소스 커뮤니티에서 신뢰도가 높은 유명 개발자의 계정을 사칭해 악성 코드가 심어진 오픈소스 패키지를 배포하거나 사람들이 자주 내려 받는 오픈소스 패키지 개발자의 계정을 해킹해 멀웨어 등을 심는 방식으로 공격 양상도 다양해지고 있다. 악질적인 것은 이러한 방식이 오픈소스 생태계를 유지해 온 ‘신뢰성’을 이용한 공격이라는 점이다.

문제는 최근까지 내부 개발 환경 보안성을 높이고, 프로세스를 철저히 관리·보호하는 기업조차도 수많은 오픈소스 중에 섞여 있는 정체 불명의 코드에 대해서는 무방비 상태인 경우가 적지 않았다는 점이다. 이러한 악성 코드는 정상적인 코드와 동일한 파일명으로 설정돼 있거나, 개발자들이 파일을 검색할 때 자주 실수하는 오타, 정상 파일과 유사한 스펠링의 제목으로 설정돼 있어 쉽게 구별할 수 없다는 것도 문제다.

한국은 오픈소스 보안 사각지대, 사고 나면 것 잡을 수 없다

오늘날 약 4000만개 이상의 오픈소스 소프트웨어 컴포넌트가 존재하고 있고 오는 2026년에는 그 수가 10배 이상으로 늘어날 것으로 전망되고 있다. 현재도 주요 리포지토리(저장소)에서 1년에 다운로드 되는 오픈소스 패키지는 약 2조개에 달한다. 문제는 이렇듯 오픈소스 사용량이 엄청나게  증가하는 상황에서 일일이 모든 코드를 체크할 수 없다는 것이다.

글로벌 보안업체 소나타입의 SW 공급망 보고서에 따르면 잘 알려진 오픈소스 패키지 중 약 29%가 취약성을 포함하고 있는 것으로 나타났다. 이러한 취약성은 배포 시점부터 사용자에게 도달하는 모든 과정에서 존재한다.

또한 최근 우리나라를 방문한 체크막스의 조렌슈타인 공급망 보안 총괄은 "이메일 주소와 패키지 이름, 해당 패키지가 어떤 오픈소스 프로젝트와 관련 있는지 등을 기재하면 악성 오픈소스 패키지를 쉽게 생성할 수 있다"며 "특히 유명한 프로젝트 이름을 사용할수록 신뢰도는 더 높아진다"며 악성 오픈소스 패키지 공격의 실태를 지적했다.  

이스라엘 보안업체 체크막스의 조렌슈타인 보안 총괄은 "시장에 대응해 빨리 소프트웨어를 만들어야 하는 개발자들은 많은 사람이 사용한 오픈소스 패키지를 신뢰하며 확인 없이 다운받고 있다"며 주의가 필요함을 당부했다. (사진=체크막스)

체크막스는 이스라엘 보안 업체로 애플리케이션 보안 테스팅 솔루션을 통한 소프트웨어 공급망 보안 해법을 제시하고 있다. 문제는 체크막스와 같은 업체들의 노력에도 불구 매월 50만개 이상 만들어지는 악성 오픈소스 패키지의 증가세다.

조렌슈타인 총괄은 “빨리 소프트웨어를 개발해야 하는 개발자 입장에서는 오픈소스를 쓰지 않을 수 없다”면서 “일반적으로 바쁜 개발자들은 많은 사람이 사용한 패키지를 신뢰하는 성향이 있어 확인 없이 내려받다가 사고가 발생한다”고 피해 사례가 늘어나는 이유를 설명했다.

문제는 이러한 악성 오픈소스 패키지가 단지 소프트웨어 공급망을 위험하게 할 뿐 아니라 소프트웨어를 쓰는 모든 사람에게 피해를 입힐 수 있다는 점이다. 악성코드를 이용해 패스워드를 탈취하거나 심하면 사용자도 모르게 해당 컴퓨터를 좀비PC로 만들어 범죄에 악용할 수도 있다.

이에 조렌슈타인 총괄은 영화 스파이더맨에 나오는 “큰 힘에는 큰 책임이 따른다(With great power comes great responsibility)”는 문구를 인용하며 “우리가 쓰는 소프트웨어이기 때문에 결국 보호하는 것도 우리의 책임”이라고 강조했다.

조렌슈타인 총괄은 자신의 옷에 새겨진 'Don't take code from strangers(모르는 코드를 받지 말라)'는 문구까지 보여주며 주의를 당부했다. (사진=테크42)

소프트웨어 공급망 공격, 대응책은?

악성 오픈소스 패키지에 의한 피해를 줄이기 위해서는 앞서 체크막스와 같은 업체들이 제공하는 공급망 보안 솔루션을 활용하는 것이 방법이다. 이러한 솔루션은 오픈소스를 포함한 모든 소프트웨어의 구성을 분석하는 SCA와 함께 작동하며, 오픈소스 프로젝트의 건전성과 보안 이상 징후를 파악하고 ‘기여자 평판(Contributor Reputation)’을 분석해 실제로 신뢰할 수 있는 개발자가 개발한 것인지 검증한다.

또한 체크막스는 오픈소스를 포함한 모든 소프트웨어 개발 시 보안을 내재화 할 수 있도록  ▲Build/CI 솔루션을 통한 자동화된 보안 취약점 점검 절차 확립 ▲오픈소스 취약점 관리 ▲맞춤형 가이드를 통한 개발자 보안 역량 강화를 반드시 점검해야 한다고 지적한다. 현재 체크막스가 분석하는 오픈소스 패키지는 월 100만건에 달한다.

체크막스는 오픈소스 패키지 분석 정보를 공유하는 '레드릴리 인포'를 운영해 소프트웨어 공급망 생태계의 건전성을 유지하려 노력하고 있다. (이미지=레드릴리 웹사이트)
오픈소스보안재단은 협업을 통해 소프트웨어 공급망을 안전하게 만드는 노력을 진행하는 한편, 개발자 교육을 통해 보안 문제 예방에도 힘쓰고 있다. (이미지=오픈소스보안재단)

한편 업체에서 제공하는 솔루션 외에도 리눅스 재단 산하 프로젝트 오픈소스보안재단(이하 오픈SSF)은 협업을 통해 소프트웨어 공급망을 안전하게 만드는 노력을 펼치고 있다. 리스크가 높은 SW 프로젝트를 찾고 우선순위를 부여하거나 특정한 프로젝트에 대해 감사를 진행하거나 팀을 구성해 빌드를 지원하고 버그를 수정할 수 있도록 돕는 노력 등이다.

그 외에도 오픈SSF는 보안 문제를 해결하기 위해 개발자 교육에도 중점을 두고 있다. 교육은 대략 15~20 시간 분량으로 개발자라면 누구나 들을 수 있다. 교육을 마친 개발자를 대상으로는 퀴즈를 풀게 하고 이를 통과하면 인증을 해주는 테스트도 진행한다.

황정호 기자

jhh@tech42.co.kr
기자의 다른 기사보기
저작권자 © Tech42 - Tech Journalism by AI 테크42 무단전재 및 재배포 금지

관련 기사

"여보, 빨간불 들어왔는데...", 기름은 언제 넣어야 효과적일까?

2026년 3월, 국제유가는 38년 만에 최악의 폭등을 기록했다. 2월 28일 미국과 이스라엘의 대이란 공습, 그리고 이란의 보복으로 호르무즈 해협이 사실상 봉쇄된 탓이다.

[현장] 대한민국에서 피지컬 AI 스타트업이 성공하기 위한 조건은?

황일회 다임테크놀로지 CTO의 발표는 첨단 AI 기술 자체보다 그 기술이 어떻게 연구실을 나와 공장에 들어가고, 시장을 만들고, 해외로 확장될 수 있는지에 초점이 맞춰졌다.

[현장] 현대차는 AI 로봇 시대를 어떻게 준비하고 있을까?

휴머노이드 로봇 ‘아틀라스(Atlas)’가 자동차 공장 안으로 들어온다. 2028년에는 반복적인 부품 시퀀싱 작업을 맡고, 2030년에는 부품 조립처럼 더 복잡한 공정으로 역할을 넓힌다. 현대자동차그룹이 올해 CES 2026에서 공개한 계획이다. 아틀라스를 개발한 보스턴다이내믹스와 현대차그룹의 관계만 보면 완성차 기업이 차세대 로봇 시장에 뛰어드는 장면으로 읽힐 수 있다. 하지만 현대차가 그리고 있는 그림은 로봇 한 대를 개발해 판매하는 사업보다 훨씬 넓다.

한 때는 초등학생 장래희망 1순위 였는데…유튜브, 수익화 기준 8000시간으로 '껑충'

유튜브는 지난 8월 10일, 파트너 프로그램 진입 기준을 2027년 2월 1일부터 대폭 강화한다고 밝혔다. 신규 크리에이터가 광고 수익을 받으려면 최근 365일간 시청 시간 8000시간 또는 최근 90일간 쇼츠 조회수 2000만 회를 달성해야 한다.