첨단 LLM, 성능은 고도화됐지만 코드 보안 ‘심각한 구멍’

| 김민준 기자

최신 대형 언어 모델(LLM)이 고도화된 기능 벤치마크에서 뛰어난 성능을 보이고 있지만, 정작 코드 품질에서는 더 심각한 버그와 보안 결함을 유발할 가능성이 높다는 분석 결과가 나왔다. 소나소스(SonarSource)가 공개한 이번 연구는 첨단 LLM들의 뒷면을 조명하며, 보안상 치명적인 허점들이 코드 내부에 광범위하게 남아있음을 경고했다.

이번 보고서는 Anthropic의 클로드 소넷 4와 3.7, 오픈AI의 GPT-4o, 메타의 라마 3.2 90B, 오픈소스 모델인 오픈코더-8B 등 총 다섯 개 모델이 완성한 4,400건 이상의 자바 프로그래밍 작업을 평가했다. 소나큐브(SonarQube) 분석 엔진을 통해 코드 정확성과 기능성, 보안성 등을 다각도로 분석한 결과, 모든 모델이 구조적으로 보안 취약성을 드러냈다. 특히 ‘가장 심각한 수준’으로 분류되는 BLOCKER 등급의 결함들이 대다수 모델에서 다수 포착됐다.

구체적으로는 라마(LLaMA) 3.2 90B의 코드 가운데 무려 70% 이상이 BLOCKER 등급 보안 취약성을 포함하고 있었고, GPT-4o는 62.5%, 클로드 소넷 4 역시 60%에 육박하며 그 뒤를 이었다. 해당 취약성은 경로 누출, 인젝션 리스크, 하드코딩된 자격증명 데이터 등으로 나타났으며, 이는 대부분 신뢰되지 않은 데이터 흐름을 추적하지 못하거나, 훈련 데이터에서 잘못된 코딩 패턴을 복제했기 때문에 발생한 것으로 분석됐다.

기능적 성능 면에서 가장 높은 점수를 받은 클로드 소넷 4는 클로드 3.7에 비해 BLOCKER 버그 비중이 약 93% 증가하며, 성능 상승과 품질 저하가 동시에 벌어지고 있음을 보여줬다. 특히 병렬 처리, 리소스 유출, API 계약 위반과 같은 생산 환경에서 시스템 장애를 유발할 수 있는 고위험 버그가 두드러졌다. GPT-4o는 흐름 제어 실수에 의한 오류 발생 비중이 컸고, 오픈코더-8B는 불필요한 코드 다수가 남아 기술부채 누적의 원천이 되고 있었다.

모델별 특성 향상을 위해 소나는 각 모델에 ‘코딩 성격’을 부여해 분석했다. 클로드 소넷 4는 ‘복잡하지만 위험한 고급 설계자’, GPT-4o는 ‘균형 있는 범용 엔지니어’로 각각 평가됐다. 라마 3.2 90B는 기능성과 보안 모두에서 취약한 ‘기대에 미치지 못한 모델’로 지적됐고, 오픈코더-8B는 ‘아이디어 속도전용 프로토타입 제작자’로 속도와 단순성은 갖췄지만 오류 밀도가 높았다. 이전 버전인 클로드 3.7만이 상대적으로 안정성과 설명성에서 균형을 갖췄다는 평을 받았다.

보고서 작성진은 LLM의 기능적 성능이 눈부시게 발전한 것은 분명하지만, 보안과 품질에 대한 체계적인 검증 절차 없이 실서비스에 적용할 경우 심각한 리스크를 초래할 수 있다고 경고했다. 모든 AI 생성 코드는 사람 손으로 쓴 코드와 마찬가지로 ‘신뢰하되 반드시 검토’하는 자세가 필요하다고 강조했다.