Home > 전체기사

서드파티 라이브러리, 대부분의 경우 패치가 전혀 되지 않는다

  |  입력 : 2021-06-24 12:02
페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기
서드파티 라이브러리는 개발자들에게 있어 필수 요소로 자리를 잡고 있다. 그러나 이 필수 요소에 대한 관리는 거의 이뤄지지 않고 있는 게 현실이다. 쓸 줄은 알 되 간수할 줄은 모르는 게 개발 문화의 현주소다. 취약한 소프트웨어가 나올 수밖에 없는 환경이라는 것이다.

[보안뉴스 문가용 기자] 소프트웨어 개발자들이 서드파티 라이브러리를 자신들의 코드에 삽입하고도 절대 업데이트 하지 않는 경우가 상당수라는 조사 결과가 발표됐다. 업데이트가 간단히 진행될 수 있어도 그렇다고 한다. 이런 문제가 쌓이고 쌓였기 때문에 소프트웨어를 사용하는 조직들은 더 큰 위험에 빠지게 되었고, 이제 와서 패치를 하는 것도 대단히 복잡한 문제가 되고 있다는 것이 이 조사의 결론이다. 보안 업체 베라코드(Veracode)가 이런 상황에 대해 상세히 발표했다.

[이미지 = Pixabay]


베라코드의 보고서에 의하면 서드파티 라이브러리를 한 번도 업데이트 하지 않은 채 방치해 두는 경우가 79%나 된다고 한다. 서드파티 라이브러리들은 매우 빠른 속도로 변하고, 그에 따라 취약한 부분 역시 빠르게 나타났다가 사라지곤 하는데도 개발자들은 여기에 대부분 무신경하다는 것이다. 실제로 코드베이스에 추가되고도 단 한 번의 업데이트를 받지 못한 서드파티 라이브러리가 73%에 달한다고도 베라코드는 발표했다.

업데이트가 되는 경우라도 소요 시간이 무려 21개월 걸리는 것으로 나타났으며, 25%는 4년 후에 업데이트가 적용되는 것으로 조사됐다. 흥미로운 건 이와 정 반대에 있는 개발자들도 제법 존재한다는 것이었다. 패치가 적용되는 경우 중 17%의 라이브러리들은 패치가 나오고서 단 한 시간만에 개발자들의 수정이 있었고, 25%는 1주일 안에 패치됐다고 조사됐다.

베라코드의 크리스 엥(Chris Eng)은 이런 극단적 차이를 두고 “결국 여건이 안 돼서 서드파티 라이브러리를 패치를 하지 못했다는 건 핑계일 뿐이라는 게 드러났다”고 해석하고 있다. “서드파티 라이브러리 업데이트가 너무 어렵다거나 사업 행위를 중단시켜야만 가능한 경우는 극소수입니다. 이런 것 때문에 패치가 안 되거나 느려지는 게 아닙니다. 서드파티 라이브러리에 있는 취약점이 애플리케이션과 조직 전체에 미치는 영향을 간과하기 때문입니다. 이런 부분에 대한 정보가 부족하기도 하고요. 한 마디로 문화적 문제라는 것이죠.”

엥이 말한 ‘정보 부족’ 문제 혹은 문화 문제가 드러나는 대목이 있다. 개발자들 중 서드파티 취약점 및 영향력에 대한 정보가 더 필요하다고 생각하는 부류들은 이미 알고 있는 오류의 50%를 해결하는 데 평균 7개월이 걸렸다. 반면 충분한 정보를 가지고 있다고 여기는 개발자들은 평균 3주 동안 취약점의 50%를 해결했다. 정보를 충분히 제공하고, 그러므로써 패치 문화를 촉진시키면 상황이 한결 나아질 수 있다는 뜻이다.

“예를 들어 개발자가 SQL 주입 공격의 위험성을 인지하지 못하고 있다면 해당 취약점에 대해 간과하거나 아예 정보 습득을 하지 않을 가능성이 높습니다. 눈에 띈다고 해도 별로 중요하지 않은 문제로 여기거나요. 그러므로 단순히 취약점이 있다 없다의 차원을 넘어, 그 취약점이 왜 우리 조직에게 위험한가와 같은 맥락적 정보도 함께 개발자들에게 제공되어야 합니다. 취약점을 존재 여부에 관한 문제로만 다룬다면 문화가 형성될 수 없습니다.”

개발자들이 서드파티 라이브러리를 패치하지 못하게 막는 중요한 요인이 하나 더 있다. 바로 두려움이다. 서드파티 라이브러리를 패치하는 것이 긁어 부스럼 생기는 결과를 낳을까봐 걱정하는 개발자들이 많은 것이다. 이는 패치를 적용했을 때 멀쩡히 잘 돌아가던 시스템이 갑자기 멈춰서는 부정적 경험이 누적된 결과라고 볼 수 있다. 그러나 엥은 “서드파티 라이브러리 패치의 69%가 사소하고 간단한 문제를 다루는 것이었다”고 반박한다. 개발자들이 비현실적으로 두려워한다는 지적이다.

또 하나 문제가 되는 건 ‘리더십’이다. 개발자들에게 주어진 업무 시간이 너무나 빠듯하기 때문에 취약점에 대해 개발자들이 뭘 할 여유가 없다는 것이다. “경영진들이 취약점 해결할 시간을 보장해 주어야 합니다. 코딩을 해서 결과를 내는 것에만 모든 시간을 쏟게 하는 게 아니라 안전한 코딩을 위한 점검 과정까지도 고려해서 프로젝트 기한을 짜야 한다는 것이죠. 그래야 전체적인 소프트웨어 품질이 올라갑니다.”

3줄 요약
1. 서드파티 라이브러리, 프로그램 개발에 엄청 많이 사용되지만 패치되지는 않음.
2. 일단 서드파티 라이브러리를 관리한다는 개념/문화 자체가 없다시피 함.
3. 취약점 점검과 패치, 관리도 개발의 과정이라고 보고 알맞은 프로젝트 기한을 설정해야 함.

[국제부 문가용 기자(globoan@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>

  •  
  • 0
  • 페이스북 보내기 트위터 보내기 네이버 밴드 보내기 카카오 스토리 보내기

  •  SNS에서도 보안뉴스를 받아보세요!! 
모니터랩 파워비즈 6개월 2021년7월1~12월31일 까지엔사인 파워비즈 2021년6월1일~11월30일 까지2021 전망보고서위즈디엔에스 2018파워비즈배너 시작 11월6일 20181105-20200131
설문조사
2021년 상반기 발생했던 보안 사건 가운데 가장 파급력이 컸던 이슈는 무엇이라고 보시나요?
솔라윈즈 사건
콜로니얼 파이프라인 사건
카세야 사건
익스체인지 서버 취약점 사건
원자력연구원/KAI 해킹 사건
국내 대기업 주요 정보 다크웹 유출 사건
기타(댓글로)