피드로 돌아가기
Dev.toSecurity
원문 읽기
AI 캐릭터들에게 서로 논쟁하게 하여 일반 AI 리뷰에서 놓친 버그 3개를 추가 발견한 실험
I Made My AI Reviewer Argue With Itself — and It Found Bugs I Never Would
AI 요약
Context
기존 AI 코드 리뷰는 단일 검토자가 정적 피드백을 제공하는 구조로 설계 결함 검증에 한계가 있다. Plain AI는 JWT 사용을 전제로 누락된 항목만 나열하며 설계 자체를 의심하지 않는다.
Technical Solution
- DGE 툴킷 설치: npm install @unlaxer/dge-toolkit && npx dge-install
- Claude Code에서 DGE 캐릭터 생성: Columbo, Picard, Socrates 등이 설계 문서를 두고 논쟁
- 캐릭터별 역할 분담: Quality Guardian 품질 검증, Lazy Genius 불필요 기능 지적, Philosopher 논리적 근거 검증
- 병렬 격리 실행: DGE와 Plain AI를 별도 프로세스에서 동시 실행하여 편향 제거
- 결과 병합: DGE-only, Plain-only, Both 유형으로 취약점 분류
Impact
동일 auth API spec 검토 결과, Plain AI 9개 vs DGE 28개 취약점 발견. DGE만 찾은 3개 설계 결함: JWT 선택 근거 부재, Token 만료 시간 미정의, Schema OAuth 미호환. 실제 프로젝트에서 path traversal, RW mount + auto-accept 파일 파괴, race condition + auto-accept 세션 오염 등 복합 공격 체인 10개를 단일 세션에서 발견.
Key Takeaway
보안 리뷰에서 캐릭터 간 논쟁 구조는 단일 검토자의視野를 넘어 다중 관점의 복합 취약점을 발견하게 한다.
실천 포인트
보안 감사나 설계 검토 시 DGE 툴킷으로 여러 AI 캐릭터에게 격리 환경에서 논쟁하게 하면 개별 항목 체크리스트를 넘어 설계 결정 자체의 근거를 의심하는 취약점을 발견할 수 있다