SQLite 치명적 CVE, 알고 보니 LLM이 지어낸 가짜?
SQLite Critical CVEs or LLM Slop?
TL;DR Highlight
LLM이 만든 가짜 SQLite CVE가 NVD에서 Critical 판정을 받았다
Who Should Read
CVE 점수를 기준으로 자동 티켓을 열거나 AI 에이전트로 취약점 트리아지를 돌리는 보안·백엔드 개발자
Core Mechanics
- 가짜 CVE가 Critical로 분류됐다
- 새로 만든 GitHub 저장소가 SQLite 취약점 어드바이저리를 대량 게시했다.
- NVD가 Critical로 분류했고 CISA의 ADP도 동의했다.
- 인용한 코드가 실제로 없었다
- CVE-2026-51302가 말한 exprComputeOperands()는 SQLite 3.41에 없었고 2025년 중반에 추가된 함수였다.
- CVE-2026-51296이 지목한 json.c 3555, 3575번째 줄은 3.41.0의 파일 길이 2706줄을 넘는다.
- 패치도 PoC도 가짜였다
- CVE-2026-51303이 말한 3.51.3 패치는 3.51.2와 diff를 떠도 src/expr.c 변경이 없었다.
- PoC(재현용 공격 코드)는 파서 단계에서 실패하거나 정상 실행되어 크래시를 내지 못했다.
- 55개 중 54개가 날조였다
- 같은 계정이 올린 어드바이저리 55개를 조사했다.
- 54개는 완전한 날조였고 1개만 실제 버그에 검증 안 된 CVE 메타데이터가 붙어 있었다.
- 검증 단계가 없어서 통과했다
- MITRE 제출 폼은 신원 확인이 없고 제출 시 PoC나 재현을 요구하는 단계가 없다.
- NIST가 2024년 2월 이후 심층 분석을 사실상 멈춰 파이프라인이 밀려 있다.
Community Reactions
- 신호 대 잡음비가 떨어져 진짜 CVE를 가려내기 어려워진다는 의견
- LLM이 진짜 CVE도 많이 찾고 있어서 공격자도 최대한 활용할 것이라는 의견이 함께 나왔다.
- CVE에는 당연히 누군가 재현·검증했을 줄 알았다는 반응
- 보안 경험이 없는 댓글 작성자들이 CNA가 검증해야 하는 것 아니냐고 물었다.
- 일반 소프트웨어 팀처럼 재현 절차를 요구하지 않는 이유를 묻는 댓글도 있었다.
- 보안 엔지니어가 자체 도구로 NVD·GHSA를 조회해 봤더니 CVE가 엄청나게 많았다는 경험
- 사내 제품의 실제 운영 버전과 대조하면 해당 CVE 수가 훨씬 적었다고 한다.
- 이 분석 글 자체도 AI가 쓴 것 같다는 지적
- 어떤 댓글이 GPTZero에 넣어 보니 AI 작성 확률 71%로 나왔다고 한다.
- 슬롭을 슬롭으로 반박하는 건 문제라는 의견이 있었다.
How to Apply
- CVE 티켓 자동 생성 전에 존재 검증 추가하기
- 오늘 CVSS 점수만으로 티켓을 여는 규칙을 찾아 일시 보류 단계를 넣어라.
- 벤더 보안 페이지(예: sqlite.org/cves.html)와 커밋·PR 링크 유무를 먼저 확인하라.
- 슬롭 CVE 레드플래그 체크리스트 만들기
- 존재하지 않는 함수, 파일 끝을 넘는 줄 번호, 비어 있는 CPE, 버전 범위 모순을 항목으로 넣어라.
- 4개 중 하나라도 걸리면 수동 검토로 보내라.
- AI 트리아지 에이전트에 코드 존재 확인 단계 넣기
- 패치를 제안하기 전에 해당 버전 태그에서 함수·줄 번호가 실제로 있는지 확인하게 하라.
- 확인에 실패하면 패치 생성 대신 '근거 불충분'으로 반환하게 하라.
- PoC는 격리 환경에서 재현하기
- Docker 컨테이너에서 대상 버전을 빌드하고 AddressSanitizer를 켠 채로 PoC를 그대로 실행하라.
- 크래시가 없으면 우선순위를 낮춰라.
Try It
# Claude나 ChatGPT에 그대로 붙여넣는 프롬프트 (CVE 어드바이저리 가짜 여부 점검용)
너는 보안 트리아지 보조자다. 아래 CVE 어드바이저리가 날조일 가능성을 점검해라. 확실하지 않은 것은 '확인 불가'로 답하고 추측하지 마라.
[어드바이저리]
{{어드바이저리 전문}}
[대상 소프트웨어와 버전]
{{제품명과 버전}}
다음 항목을 각각 '통과/의심/확인 불가'로 표시하고 이유를 한 줄씩 써라.
1. 언급된 함수가 해당 버전에 존재하는가
2. 인용된 줄 번호가 파일 길이 안에 있는가
3. 벤더 보안 페이지에 같은 이슈가 있는가
4. 참조에 커밋 해시나 PR이 있는가
5. CPE·버전 범위가 설명과 모순되지 않는가
6. PoC가 문법상 유효한가
마지막에 사람이 직접 확인해야 할 것을 3개 이내로 정리해라.
이어서 해 볼 것: 결과가 '의심'이면 해당 버전 태그를 clone해서 함수 이름을 grep으로 직접 확인하라.Terminology
관련 논문
같은 시뮬레이션, 다른 근거: 도구 출력을 파일로 넘기면 LLM 에이전트 정확도가 어디서 깎이나
긴 툴 출력을 파일로 넘기자 GPT-5.1은 정확도 11.3%p 하락, 정식 출력 지정하니 회복
가짜 뉴스가 진짜 폭락을: LLM 트레이딩 에이전트 대상 정보 주입 공격
가짜 헤드라인 한 줄로 LLM 트레이딩 에이전트 62%를 조종했다(프롬프트 주입은 14%)
Harness Engineering 101: LLM은 뇌, harness는 몸
에이전트는 JSON 배열을 관리하는 루프이고, 16개 챕터로 직접 만들어 본다
Harness²: 에이전트 harness를 스스로 고쳐 쓰는 재귀 최적화 프레임워크
모델은 고정하고 harness를 재귀로 고쳤더니 벤치마크 점수가 최대 11.8%p 올랐다
해고된 Savannah 경찰관, ICE 요원 남편에게 Flock 계정 공유
경찰관이 Flock 계정을 남편(ICE 요원)에게 공유했고, 감사에서 983건 검색이 드러나 해고됐다
tmux와 Claude Code: 세션, send-keys, 그리고 한계선
tmux로 Claude Code 여러 개를 돌리면 편하지만 에이전트 4개쯤에서 한계가 온다
Hybrid Reasoning Agents: 잠재 공간에서 생각하고 텍스트로 행동하는 LLM 에이전트
잠재 공간 추론과 텍스트 도구 호출을 섞었더니 성능 10.4%↑, 토큰 최대 54.7%↓