AI 지원 소프트웨어 개발(AI-assisted software development)은 고립된 코드 완성(code completion)에서 명세 기반 생성(specification-driven generation)으로 변화하고 있습니다. 여기서 비즈니스 요구사항(business requirements), 기술 명세(technical specifications), 수락 기준(acceptance criteria)은 LLM 기반 개발 에이전트(development agents)를 위한 운영 입력값이 됩니다. 이러한 변화는 보안 문제를 야기합니다. 기능적 동작(functional behavior)은 명시적으로 기술되는 반면, 보안 동작(security behavior)은 암묵적이거나 일반적이거나, 또는 생성 후 검토 단계로 미뤄지기 때문입니다. 이로 인해 생성된 시스템은 가시적인 기능적 요구사항은 충족하지만, 권한 규칙(authorization rules), 소유권 경계(ownership boundaries), 입력 검증(input validation), 토큰 거부(token rejection), 민감 데이터 처리(sensitive data handling), 남용 사례 의미론(abuse-case semantics)을 보존하는 데 실패하게 됩니다.
본 논문은 AI 지원 명세 기반 개발을 위한 보안 지식 운영화(security knowledge operationalization) 접근 방식을 제안하며, 두 가지 기여를 결합합니다: 시스템 엔티티(entities), 위협(threats), 리스크(risks), 요구사항(requirements), 구현 규칙(implementation rules), 통제 항목(controls), 검증 시나리오(verification scenarios), 증거(evidence) 간의 추적 가능한 관계를 통해 보안 지식을 표현하는 다층 명세 보안 모델(Multilayer Specification Security Model); 그리고 비즈니스 및 기술 명세를 검증된 보안 강화 생성 계약(security-enriched generation contract)으로 변환하는 보안 지식 전이 방법(Security Knowledge Transition Method)입니다.
우리는 두 가지 실증 연구를 통해 이 접근 방식을 평가합니다: LLM 기반 파이프라인이 시스템 컨텍스트(system context)로부터 구조화된 보안 모델을 도출할 수 있는지 평가하는 히든 오라클(hidden-oracle) 연구, 그리고 세 가지 조건(명시적 보안 요구사항 없음, ASVS 조건부 생성, 다층 보안 모델 조건부 생성) 하에서의 백엔드 생성(backend generation) 연구입니다. 숨겨진 221개의 테스트 블랙박스 API 스위트(black-box API suite)를 대상으로 평가한 결과, 모달 실패(modal failures)는 베이스라인의 50개에서 ASVS 적용 시 42개, 다층 보안 모델(Multilayer Security Model) 적용 시 36개로 감소하였으며, 비즈니스 로직(business logic) 및 관리자 안전(admin safety)과 같은 애플리케이션 특정 카테고리에서 가장 강력한 개선을 보였습니다.