Kotlin 2.4.0 지원과 AI 프롬프트 주입 탐지 강화
CodeQL에 Kotlin 2.4.0 지원과 시스템 프롬프트 주입 탐지가 추가되고 여러 언어의 분석 정확도가 개선됐다.
교안에 영향
예전 안내 글에서 Kotlin 지원 범위를 2.4.0보다 낮게 적었다면 틀립니다.
요약
- Kotlin 2.4.0까지 지원합니다. - js/system-prompt-injection을 추가해 AI 모델의 시스템 프롬프트로 신뢰할 수 없는 값이 들어가는 경우를 탐지합니다. - Go, Python, Swift, GitHub Actions의 쿼리와 모델링을 개선해 오탐을 줄이거나 추가 결과를 찾습니다. - C#, Go, JavaScript/TypeScript에서 새 흐름 원본과 프롬프트 주입 싱크를 추가해 보안 탐지 범위를 넓혔습니다.
바뀐 것
개선
- Go의 go/unhandled-writable-file-close 쿼리가 더 적은 false positive를 내도록 개선했습니다.
- Python의 py/modification-of-locals 쿼리가 더 적은 false positive를 내도록 개선했습니다.
- Swift의 CryptoKit 모델링을 개선해 swift/weak-sensitive-data-hashing과 swift/weak-password-hashing 쿼리가 더 많은 결과를 찾을 수 있게 했습니다.
- GitHub Actions의 actions/pr-on-self-hosted-runner 쿼리가 최신 표준 runner labels를 인식하도록 업데이트했습니다.
기타
- Kotlin 버전 2.4.0까지 지원합니다.
- C#에서 Razor Page handler method parameters, 예를 들어 OnGet, OnPost, OnPostAsync의 매개변수를 remote flow sources로 추가했습니다.
- Go의 log/slog 패키지 모델을 추가했습니다.
- JavaScript/TypeScript에서 OpenAI, Anthropic, Google GenAI SDK API의 추가 prompt injection sinks를 지원합니다.
- JavaScript/TypeScript에 js/system-prompt-injection 쿼리를 추가했습니다.
- JavaScript/TypeScript에 experimental javascript/ssrf-ipv6-transition-incomplete-guard 쿼리를 추가했습니다.
수정
- actions/untrusted-checkout/medium의 이름, 설명, 경고 메시지를 nonprivileged context에 적용된다는 점이 분명하도록 수정했습니다.