github / github/codeql

Can I register complex sources/sinks/sanitizers entirely inside a custom CodeQL pack?

オープン
#21,198 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
question
主要言語
CodeQL
スター
10.1k
フォーク
2.1k
平均マージ
2日 15時間
マージ済み PR(30日)
141

説明

Short background: I want to put all my custom taint modeling (complex QL predicates, annotation equivalence, sanitizers, and normal model files) into a single custom pack so teams can depend on it — without modifying standard / *-all libs.

Concrete example: in Java I have @CustomAnno and I want it treated exactly like Spring’s @RequestMapping (i.e. methods/classes with @CustomAnno are sources). I can do this in Customizations.qll inside java-all/lib, but I don’t want to change the standard lib.

Two short questions:

1. Is it supported to expose complex QL-based sources/sinks/sanitizers from an external pack so the standard taint queries pick them up? If yes — what minimal files/config (qlpack.yml / module layout / naming) are required?

2. If not supported, what is the recommended minimal workaround that keeps good maintainability?

Environment: Java target. I can attach a minimal repro pack if useful.

Thanks!

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Review the Java target's Customizations.qll usage under java-all/lib, then inspect the referenced qlpack.yml, module layout, and naming conventions for external packs. Determine whether standard taint queries consume models from an external pack and document the minimal supported configuration or maintainable workaround.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java
領域
security
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。