논문 정보
제목: Does Fixing Break Security? An Empirical Study of Security Degradation in Iterative LLM-Driven Infrastructure-as-Code Repair
저자: Benjamin Agyekum, Fabio Santos
분야: cs.CR / cs.SE (LLM 보안, Infrastructure-as-Code)
저자: Benjamin Agyekum, Fabio Santos
분야: cs.CR / cs.SE (LLM 보안, Infrastructure-as-Code)
연구 배경
LLM이 생성한 Infrastructure-as-Code(IaC)를 수리하는 과정에서 Checkov, terraform validate 같은 검증 도구의 오류 신호를 피드백으로 반복 수리하는 루프가 사실상 표준 패러다임이 되었다. 그러나 기존 연구들은 "누적 최고 성능(cumulative-best)" 지표만 보고하여, 반복 수리 과정에서 보안 검사 항목이 통과→실패로 회귀(regression)하는 현상은 한 번도 직접 분석된 적이 없다. 본 연구는 이 보안 회귀 문제를 처음으로 정량적으로 규명한다.
핵심 내용
- 실험 설계: IaC-Eval 벤치마크의 5,968개 시나리오 타임라인을 15개 설정(모델별 RAG 6종, 비RAG 9종, 온도 3단계)으로 최대 5회 수리 반복 수행, 양쪽에 Checkov 데이터가 있는 4,440개 반복 전환(iteration transitions)과 30개 CIS 체크 ID를 추적
- 보안 회귀율: 표준(포괄적) 탐지 기준으로 시나리오의 13.8%(전환의 24.8%)에서 회귀 발생. 엄격(단독 실패) 기준으로는 시나리오의 3.3%(전환의 5.2%)로 낮아져, 대부분의 겉보기 회귀는 다중 리소스 측정 아티팩트임을 확인
- 근본 원인: 리소스 구조 재구성(resource restructuring)이 79.0%로 압도적 1위. 회귀 전환은 코드 변경량(churn)이 2.6배(Cohen's d=0.90), 엄격 모드 체크 변동성이 4.9배(d=1.49) 높음
- 자기 교정: 표준 모드 회귀의 36.6%는 평균 1.2회 반복 내 자체 교정되며, 반복 3회가 최적 중단 지점(iteration 3 is the optimal stopping point)
보안 시사점
- LLM 기반 자동 수리 루프는 "고치는 동안 다른 보안을 깨뜨릴" 수 있으며, cumulative-best 지표는 이를 은폐한다 — 보안 평가는 반복 궤적(per-iteration trajectory) 기준으로 재설계 필요
- 리소스 재구성이 주 원인인 만큼, IaC 리팩토링 시 보안 체크 매핑을 유지하는 구조 인지형 피드백 루프(security-aware feedback-loop design)가 필요
- 반복 3회 이후에는 회귀 위험 대비 수익이 감소하므로, 수리 반복 예산(iteration budget)을 명시적으로 제한하는 운영 정책이 실무적으로 유효
- Checkov·terraform validate 등 검증 도구만으로는 회귀 탐지가 불완전하므로, CI 파이프라인에 회귀 전용 모니터링(체크 ID 단위 diff 추적)을 추가하는 것이 권장됨
결론
반복적 LLM IaC 수리는 실제로 보안 회귀를 유발하며, 방어 가능한 보수적 회귀율은 시나리오 기준 약 3.3% 수준이다. 이 연구는 LLM 기반 IaC 자동화의 신뢰성 평가 방식을 바꾸고, 보안 인지형 피드백 루프 설계와 실행 가능한 반복 예산 가이드라인을 제시하는 실무적으로 중요한 근거를 제공한다.