"제2의 로그4j 사태 또 온다...개발 단계서 오픈소스 점검 해야"

마이크로포커스 포티파이, 소나타입과 결합해 소스코드 스캔 단계에서 오픈소스 라이브러리 점검 지원

컴퓨팅입력 :2022/03/11 09:27    수정: 2022/03/12 09:08

지난해 말 아파치재단이 관리하는 오픈소스 로깅 라이브러리 로그4j에서 발견된 취약점은 역대 최악이라는 오명을 뒤집어 썼다. 이 취약점의 위험도가 '최고' 수준이기도 했지만, 로그4j 자체가 매우 광범위하게 사용되고 있다는 점이 공포를 배로 키웠다. 개발자들이 미처 인지하지 못한 시스템 곳곳에 로그4j가 쓰이고 있을 가능성이 높고, 이러한 경우 조직에 큰 위협이 될 수 있기 때문이다. 로그4j 사태가 장기화될 거라는 전망이 나오는 이유기도 하다.

더 큰 문제는 언제든 제2, 제3의 로그4j 사태가 또 일어날 수 있다는 데 있다. 애플리케이션 개발에 사용되는 오픈소스 코드의 비중이 높아졌지만, 관리와 보안 점검은 잘 되고 있지 않아서다.

글로벌 엔터프라이즈 소프트웨어(SW) 업체 마이크로포커스는 로그4j 사태 같은 큰 혼란이 반복되지 않으려면, 애플리케이션을 만들기 위해 코드를 생산하는 단계부터 오픈소스 취약점 함께 점검돼야 한다고 조언한다.

오픈소스 보안 위험 분석(자료=마이크로포커스 포티파이 리서치 2019년)

최근 회사는 자사 소스코드 취약점 점검 솔루션 포티파이에 소나타입의 오픈소스 점검 기능 '넥서스 라이프사이클'을 결합해 하나의 상품으로 제공하기 시작했다.

이 같은 접근 방법이 "개발자들이 오픈소스 관리를 위해 새로운 툴을 추가하고 배워야 한다는 부담은 줄이면서, 전체 코드에서 비중이 커진 오픈소스 컴포넌트를 코드 개발 과정에서 자연스럽게 관리할 수 있게 해준다"는 설명이다.

애플리케이션 개발서 중요해진 오픈소스 점검

마이크로포커스 포티파이 리서치팀의 2019년 조사에 따르면 애플리케이션 개발에 사용된 전체 코드 중 80% 이상은 오픈소스 라이브러리에서 온 것으로 나타났다. 하지만 조사 참여 조직 중 62%는 애플리케이션에 사용된 컴포넌트에 대해 관리감독을 전혀 하지 않고 있다고 응답했다.

전체 애플리케이션 코드에서 오픈소스가 상당부분을 차지하고 있음에도, 많은 조직이 어떤 오픈소스를 사용하고 있는지 조차 파악하지 못한 상태인 것이 확인된 셈이다.

실제 조사 대상 기업 중 30%는 취약점이 있는 오픈소스 컴포넌트를 통한 침해 사고도 경험한 것으로 나타났다.

포티파이 기술 지원 파트너사 아이넥션의 김기범 부장은 "커스텀 코드와 오픈소스 모두 보안 취약점이 있을 수 있지만, 오픈소스 코드의 비중이 워낙 크기 때문에 침해사고의 통로가 될 가능성도 높은 것"이라고 설명했다.

이런 배경에서 최근 몇 년전 사이 '오픈소스 라이브러리에 대한 취약점 분석(SCA)'을 제공하는 솔루션도 많아졌다. 시놉시스의 블랙덕, 화이트소스, 스니크, 소나타입(넥서스 라이프사이클) 등이 대표적이다.

■포티파이, 소프트웨어 개발 생애주기에 오픈소스 라이브러리 점검 포함

오픈소스 라이브러리 점검은 최근에서야 주목 받기 시작해, 이런 툴은 소프트웨어 개발 생애주기(SDLC)에서 따라 정립된 '보안 점검 프로세스'와 동떨어져 존재하는 경우가 많다.

SDLC는 개발자가 애플리케이션을 설계하고, 코드를 생산해내고, 테스트하고 제품화해서 출시하는 전체 과정을 말한다. SDLC 상에 보안 프로세스를 넣어야 한다는 인식이 높아지면서 ▲개발자가 코드 생산단계에서부터 취약점을 찾고(SAST·시큐어코딩) ▲테스트 작동 중에 보안에 위반되는 부분이 없는지 점검하고(DAST·웹취약점 점검) ▲운영 시에도 보안 취약점이나 해킹 위험은 없는지(RASP) 살펴보는 일련의 과정이 정립됐다.

소프트웨어 개발 생애주기에 따른 보안점검 프로세스

오픈소스 라이브러리 점검 툴은 이러한 프로세스에 연결돼 있지 않아, 개발자들이 별도로 도입·운영해야 한다. 이미 개발과정에 많은 툴을 사용하고 있기 때문에 추가로 새로운 것을 도입하고 배우는 과정이 부담으로 작용하기 쉽다.

이에 포티파이는 소나타입과 협력해 소스코드 취약점 점검 솔루션에 오픈소스 라이브러리 점검 기능을 애드온하는 전략을 택했다.

포티파이는 시큐어 코딩을 지원하는 코드 점검 솔루션이다. 개발자들이 애플리케이션을 만들기 위해서 코드를 생산하는 단계에서 소스코드 안에 보안에 위배되는 규칙이나 문법이 있는지 빠른시간 안에 스캔해서 개발자에 가이드를 준다.

소나타입의 넥서스 라이프사이클은 오픈소스 컴포넌트 중에 CVE(발표된 취약점 코드)가 있는지, CVE 스코어는 몇 점인지, 보안을 위해 어떤 버전으로 변경해야 하는지 혹은 대체할 수 있는 컴포넌트가 있는지 등을 점검하고 알려준다.

포티파이에 소나타입의 넥서스 라이프사이클이 결합되면서, 소스코드 스캔 단계에서 오픈소스 라이브러리는 어떤 것이 안전한지, 취약점은 없는지 찾아내는 것이 가능해졌다.

또 통합 콘솔인 소프트웨어 시큐리티 센터(SSC)를 통해 소스코드 취약점 점검과 오픈소스 라이브러리 점검 결과는 물론 DAST와 RASP에 해당하는 제품 결과도 취합해서 통합 관리할 수 있다.

소프트웨어 개발 생애주기 상 '보안 점검 프로세스'에서 실제 오픈소스 라이브러리 점검까지 포괄할 수 있어게 된 것이다. 김기범 부장은 "SDLC의 모든 단계와 연동해 지속적으로 오픈소스 보안 위협을 식별하고 개발 정책을 적용하고 문제 분석이 가능하다"고 강조했다.

포티파이-소나타입 기능 소개

■국내 핀테크 업체도 포티파이-소나타입 채택..."국내 확산 기대"

국내 한 핀테크 업체도 이미 사용하고 있던 포티파이를 이용해서 오픈소스 취약점까지 확인 가능한 것이 강점이라고 보고 포티파이-소나타입을 채택했다.

김기범 부장은 "이 업체의 경우 이미 사용하고 있던 포티파이에 기능을 애드온 한 것이기 때문에 새로운 툴을 교육해야 한다는 부담이 없었고, 기능 추가에 필요한 시간과 노력도 덜 들어간다는 점이 통했다"며 "포티파이 구축에는 2주가 걸렸지만, 이후 소나타입을 추가하는 데는 단 이틀밖에 걸리지 않았을 만큼 애드온 과정도 간단한 편이다"고 설명했다.

마이크로포커스는 국내 소스코드 취약점 분석 시장에서 10년 이상 쌓은 경험과 노하우를 바탕으로, 오픈소스 라이브러리 점검 시장까지 영역을 확대해 나간다는 계획이다.

관련기사

마이크로포커스 정대균 이사는 "포티파이는 국내 SCA 분석도구로 처음 도입된 제품으로 높은 인지도를 가지고 있다"며 "이를 기반으로 커스텀 코드 보다 훨씬 방대한 영역인 오픈소스 라이브러리 점검까지 영향력을 확대해 나갈 계획이다"고 말했다.

마이크로포커스 총판사인 유니포인트 강호승 부장 역시 "유니포인트도 총판사로서 포티파이-소나타입 솔루션의 국내 활성화를 위해 밴더사, 파트너사와 함께 노력하겠다"고 전했다.