체크막스 “SW 코드로 움직이는 세상, 코드 보안 책임진다”
상태바
체크막스 “SW 코드로 움직이는 세상, 코드 보안 책임진다”
  • 김선애 기자
  • 승인 2022.05.24 14:26
  • 댓글 0
이 기사를 공유합니다

‘데이터넷TV’ 웨비나서 안전한 SW 래발 위한 보안 내재화 전략 소개
데브옵스 환경서 오픈소스 포함 모든 코드 자동화된 취약점 점검 지원
국내 컴플라이언스 지원·커스터마이징으로 공공·금융·기업 시장 영향력 높여

[데이터넷] 소프트웨어 개발 시 개발자들이 모든 코드를 직접 작성하는 것이 아니라 대부분 외부 라이브러리에서 가져온다. 이 때 빌드에 포함되는 라이브러리 패키지를 효과적으로 관리하기 위해 자동으로 최신 버전의 패키지를 가져오도록 설계한다.

이를 이용해 공격자는 빌드에 포함되는 패키지 버전을 해킹해 악의적인 코드를 삽입한 후 최신 버전보다 상위 버전의 패키지로 업로드한다. 해당 패키지를 사용하는 소프트웨어는 인터넷을 통해 악성 패키지가 자동으로 다운로드되며, 공격자가 악용할 수 있는 악성 패키지가 삽입된다.

‘디펜던시 컨퓨전(Dependency Confusion)’이라고 불리는 이 공격으로 마이크로소프트, 넷플릭스, 우버 등 글로벌 기업들도 피해를 입었다. 이는 오픈소스 라이브러리를 사용하는 모든 기업들이 겪을 수 밖에 없는 것이다.

송대근 체크막스코리아 지사장은 <데이터넷TV> 웨비나 ‘안전한 소프트웨어 개발을 위한 보안 내재화(AppSec) 3가지 전략’에서 최근 소프트웨어 개발 환경에서 가장 많이 겪는 보안 문제의 한 사례를 설명하며 소프트웨어 보안 내재화의 중요성을 강조했다.

송대근 지사장은 “지난해 말 전 세계를 위협했던 로그4j 취약점은 웹 애플리케이션을 사용하는 모든 서비스에 영향을 미치는 심각한 위협이었다. 개발자들이 많이 사용하는 오픈소스 라이브러리에 취약점이 있을 때 전 세계적인 공격 위협이 될 수 있다”며 “오픈소스가 최근 심각한 문제가 되고 있는데, 이뿐 아니라 다양한 써드파티 라이브러리, 특정한 패키지, 업데이트 파일 등이 악의적인 코드를 포함하고 있어 심각한 보안위협에 직면하게 할 수 있다”고 말했다.

▲송대근 체크막스코리아 지사장은 안전한 소프트웨어 개발을 위한 보안 내재화 3가지 전략으로 ①빌드·개발 중 자동화된 취약점 점검 ②오픈소스 취약점 관리 ③개발자 보안 역량 강화를 들었다.
▲송대근 체크막스코리아 지사장은 안전한 소프트웨어 개발을 위한 보안 내재화 3가지 전략으로 ①빌드·개발 중 자동화된 취약점 점검 ②오픈소스 취약점 관리 ③개발자 보안 역량 강화를 들었다.

보안 고려하지 않은 SW, 심각한 위협

소프트웨어 코드 취약점은 공급망 공격에 쉽게 이용당할 수 있다. 솔라윈즈 해킹과 같이 업데이트 파일을 감염시키는 방식은 가장 흔하게 발생하는 것이고, 오픈소스 라이브러리에 감염된 코드를 업데이트하거나 신뢰도 높은 패키지에 악의적인 코드를 삽입해 최신 버전으로 업데이트하거나, 신뢰할 수 있는 개발자의 계정을 훔쳐 그 개발자의 계정으로 악의적인 패키지를 업로드 해 개발자들이 의심 없이 내려받게 한다.

이러한 문제를 해결하기 어려운 이유는 최근 소프트웨어 개발 환경이 데브옵스로 전환되면서 보안 점검 없이 빌드, 배포하기 때문이다. 포레스터가 개발자를 대상으로 한 설문 중 소프트웨어 개발 환경에서 가장 중요한 것을 묻는 질문에서 31%의 개발자가 데브옵스 도구 도입과 확대를 들었으며, 같은 31%의 응답자는 비즈니스 요구사항이 빠르게 변함에 따라 소프트웨어 개발 시 이를 반영해야 한다는 요구가 있다고 답했다. 25%는 오픈소스 사용이 확대되고 있다는 점, 23%는 제품 출시 기간이 단축되고 있다는 점을 들었다.

송대근 지사장은 “국내 기업들도 클라우드 기반 비즈니스 전략을 전개하면서 빠르게 변하는 시장의 수요에 따라 서비스를 신속하게 개선하고 있다. 이에 마이크로 서비스 아키텍처(MSA)를 채택하고 있는데, 보안을 고려하지 않고 서비스를 개발하면 심각한 위협에 부딪히게 된다”고 말했다.

▲박찬수 체크막스코리아 실장은 데모를 통해 체크막스 솔루션으로 보안 내재화 할 수 있는 방법을 소개했다. 그림은 코드베이싱을 활용한 취약점 해결 훈련 화면이다.
▲박찬수 체크막스코리아 실장은 데모를 통해 체크막스 솔루션으로 보안 내재화 할 수 있는 방법을 소개했다. 그림은 코드베이싱을 활용한 취약점 해결 훈련 화면이다.

자동화된 취약점 점검으로 보안 내재화

송대근 지사장은 페이스북의 ‘다크런칭 기법(Dark Launching Technique)’ 개발 방식을 예로 들어 보안이 적용된 데브옵스 방법론을 설명했다. 페이스북은 새로운 기능을 업데이트 할 때 일부 사용자에 대해서만 시범적으로 기능을 업데이트하고 버그와 취약점이 발견되면 이를 조치하고 필요하면 롤백 해 다시 개발하고 배포한다. 지속적으로 개발, 점검, 배포를 반복하면서 서비스 안전성을 검증하면서 전 세계 사용자에게 적용한다.

간단하게 설명하면, 코드 커밋, 빌드 과정에서 특정 사용자를 대상으로 새로운 기능을 배포하면서 서비스를 지속적으로 모니터링하고, 사용자의 피드백을 적용해 개선하고 테스트한다. 개발된 코드는 지속적으로 배포하고 모니터링하면서 관리해야 한다.

미국 사이버보안 및 인프라 보안국(CISA)은 소프트웨어 개발 과정(SDLC)에 어떻게 보안을 내재화할지 설명하며, 빌드·코딩 과정에서 보안 프레임워크가 자동으로 삽입되어야 한다고 설명했다. 만일 보안 점검을 수동으로 하거나 매뉴얼로 진행하면 제품 출시 시기를 맞추기 어려우며 개발자의 수고가 과다 소요되고, 미처 제거되지 못한 취약점이 남은 상태로 배포될 수 있다.

개발자 보안역량 강화 훈련 제공

체크막스는 안전한 소프트웨어 개발을 위해 빌드와 배포 과정에서 자동화된 소스코드 보안 취약점 점검을 자동화하는 것을 첫번째 요구사항으로 꼽았다. 소스코드 정적분석(SAST), 오픈소스 등 소프트웨어 구성요소 분석(SCA), IaC 코드 보안(KICS) 등이 포함된 자동화된 프로세스가 필요하다.

데이터넷TV 웨비나에서 박찬수 체크막스 실장은 데모를 통해 빌드/CI 솔루션에서 자동으로 취약점을 점검하는 사례를 보여줬다. AST 플랫폼에 로그인한 후 새 프로젝트를 생성하고 프로젝트를 스캔하면 자동으로 스캔 결과를 확인하고 취약점 여부를 확인할 수 있다.

안전한 소프트웨어 개발을 위한 두 번째 요구사항은 오픈소스 취약점 관리이다. 데모를 통해 오픈소스 취약점 점검 과정을 보여줬는데, IDE 툴에서 문제를 검토, 수정하며, 오타를 이용해 잘못된 패키지를 다운받도록 하는 타이포스쿼팅이나 별점을 속여 악성 패키지를 내려받도록 하는 등의 공격 시도도 찾아낸다.

세 번째 요구사항은 개발자 보안역량 강화이다. 개발자들은 보안에 대한 이해가 충분하지 않기 때문에 탐지된 취약점이 어떻게 악용될 수 있으며, 어떻게 개선해야 하는지 모른다. 박찬수 실장은 데모를 통해 체크막스의 훈련 프로그램 코드베이싱(Codebashing) 사용 방법을 설명했다. 한글로 안내되는 코드베이싱은 코드가 잘못 작성됐을 때 어떤 공격을 당할 수 있는지, 해결책은 무엇인지 상세히 알려준다.

박찬수 실장은 “체크막스는 개발자의 코드 보안 이해를 높이는 것뿐 아니라 보안조직이 개발환경을 이해해 개발팀과 원활하게 협력할 수 있도록 도와주는 교육 프로그램도 마련하고 있다”며 “코드보안은 어느 한 곳이 소홀해도 공격당할 수 있기 때문에 모든 종류의 코드와 개발·배포 전 과정을 보호해야 한다. 체크막스는 SAST, SCA, IAST, KICS 전반을 아우르는 코드 보안 솔루션을 단일 환경에서 제공하며, 개발자·보안조직이 쉽게 이해할 수 있도록 도와주고 교육·훈련할 수 있게 해 안전한 소프트웨어를 이용할 수 있게 한다”고 설명했다.

세상은 코드를 통해 움직인다

한편 우리나라에서는 행정안전부 소스코드 진단 기준을 모두 만족해 공공시장에도 공급 가능하며, 각 기업·기관 환경에 맞게 커스터마이징 할 수 있어 모든 조직의 내·외부 컴플라이언스도 만족할 수 있다. 오픈소스 취약점을 검출하는 CxSCA는 SaaS로 제공되지만 해시코드 형태로 소스코드를 전달해 분석하기 때문에 소스정보 유출을 우려할 필요 없다. 폐쇄망 개발 환경은 해시코드를 파일로 저장해 스캔할 수 있다.

또한 고객이 보유한 자산을 파악하고, 어느 정도 수준의 보안 역량을 갖는지 분석하는 서비스를 제공하며, 보안이 필요한 부분에 대해 컨설팅도 지원한다.

송대근 체크막스 지사장은 “세상은 코드를 통해 움직이며, 체크막스는 코드의 보안을 책임지고 있다. 전 세계 유수의 기업을 보호하고 있으며, 국내에서도 다수의 금융·공공기업에 코드 보안 솔루션을 제공하면서 매년 50% 이상 성장을 이어가고 있다”며 “한국 총판 SNA와 함께 국내 고객의 소프트웨어 보안을 책임지겠다”고 말했다.



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