Michael B. Gale
714296bcc0
Merge pull request #20778 from github/release-prep/2.23.4
...
Release preparation for version 2.23.4
2025-11-07 17:52:45 +00:00
Michael B. Gale
0cbc9358de
Revert C++ range analysis change note
2025-11-07 17:39:40 +00:00
Michael B. Gale
262bfe0351
C#: Minor changelog improvements
2025-11-07 17:39:10 +00:00
github-actions[bot]
6342da9503
Release preparation for version 2.23.4
2025-11-07 17:37:29 +00:00
Michael B. Gale
eb32c32d4c
Merge pull request #20777 from github/revert-20745-release-prep/2.23.4
...
Revert "Release preparation for version 2.23.4"
2025-11-07 17:35:35 +00:00
Michael B. Gale
9d2206be33
Merge pull request #20775 from github/esteffin/revert-20645-cpp-range-analysis-measure
...
Revert "Merge pull request #20645 from paldepind/cpp/range-analysis-m…
2025-11-07 17:29:15 +00:00
Michael B. Gale
6ce8f07290
Revert "Release preparation for version 2.23.4"
2025-11-07 17:28:28 +00:00
Enrico Steffinlongo
e7c029ae7d
Revert "Merge pull request #20645 from paldepind/cpp/range-analysis-measure"
...
This reverts commit a0a6f288b5 , reversing
changes made to 32f21d6d49 .
2025-11-07 16:49:47 +00:00
Michael B. Gale
da1e93eb0c
Merge pull request #20754 from github/mbg/2.23.4/backport-dont-fail-if-no-js
...
Backport: Merge pull request #20752 from asgerf/actions/dont-fail-if-no-js
2025-11-04 12:51:24 +00:00
Asger F
6790684767
Merge pull request #20752 from asgerf/actions/dont-fail-if-no-js
...
Actions: don't fail if no JS/TS code was found
2025-11-04 12:19:54 +00:00
Michael B. Gale
637e12e7a8
Merge pull request #20745 from github/release-prep/2.23.4
...
Release preparation for version 2.23.4
2025-11-03 15:15:25 +00:00
Michael B. Gale
e825a3acf7
C#: Minor changelog improvements
2025-11-03 15:03:46 +00:00
github-actions[bot]
64fcdd1f2f
Release preparation for version 2.23.4
2025-11-03 14:52:23 +00:00
Jeroen Ketema
d354b0c97e
Merge pull request #20732 from jketema/swift-6.2-elements
...
Swift: Support AST elements new in Swift 6.2
2025-10-31 19:33:13 +01:00
Ian Lynagh
7ff696bd2d
Merge pull request #20726 from igfoo/igfoo/ClassInstanceStack
...
Kotlin: Avoid infinite recursion when extracting recursive interfaces
2025-10-31 16:18:39 +00:00
Anders Schack-Mulligen
bda6513fc1
Merge pull request #20737 from aschackmull/csharp/deprecate-abstractvalue
...
C#: Deprecate AbstractValue.
2025-10-31 15:20:24 +01:00
Ian Lynagh
06218d8acd
Kotlin: Add a test for recursive interfaces
2025-10-31 13:42:44 +00:00
Ian Lynagh
9182da1d58
Kotlin: Add a test for nested types
2025-10-31 13:42:44 +00:00
Ian Lynagh
1efecc099c
Kotlin: Avoid infinite recursion when extracting recursive interfaces
2025-10-31 13:42:43 +00:00
Anders Schack-Mulligen
fa20075a4d
C#: Review fix and simplification.
2025-10-31 14:41:32 +01:00
Anders Schack-Mulligen
4f6528a9fb
C#: Deprecate AbstractValue.
2025-10-31 14:23:23 +01:00
Anders Schack-Mulligen
e558c0219c
Merge pull request #20734 from aschackmull/csharp/tweak-nullness
...
C#: Allow nullness sources with SSA at entry.
2025-10-31 14:14:43 +01:00
Anders Schack-Mulligen
09378b8499
Merge pull request #20665 from aschackmull/csharp/guards-replace
...
C#: Replace old Guards with the new shared implementation.
2025-10-31 14:12:47 +01:00
Tom Hvitved
95e60ad4a7
Merge pull request #20705 from hvitved/rust/type-inference-unit
...
Rust: Infer more `()` types
2025-10-31 13:43:10 +01:00
Geoffrey White
d8fff44048
Merge pull request #20712 from geoffw0/macrometric2
...
Rust: Exclude skipped files in rust/diagnostic/database-quality
2025-10-31 11:25:41 +00:00
Jeroen Ketema
2a8e3bee36
Swift: Add change note
2025-10-31 12:06:52 +01:00
Jeroen Ketema
94f8ea5612
Swift: Add upgrade and downgrade scripts
2025-10-31 11:35:50 +01:00
Anders Schack-Mulligen
5aa53287ce
C#: Allow nullness sources with SSA at entry.
2025-10-31 11:25:37 +01:00
Tom Hvitved
f672f6b731
Merge pull request #20727 from hvitved/rust/variable-overlap-fix
...
Rust: Fix variable access overlap
2025-10-31 11:07:30 +01:00
Jeroen Ketema
7301bc74cf
Swift: Fix key path numbering in upgrade and downgrade scripts
2025-10-31 11:01:04 +01:00
Jeroen Ketema
92ca0c2b62
Swift: Update expected test results
2025-10-31 10:53:11 +01:00
Tom Hvitved
6d64800e85
Rust: Move variable consistency check into AstConsistency.qll
2025-10-31 10:42:51 +01:00
Jeroen Ketema
eab6579e12
Swift: sync files
2025-10-31 10:24:03 +01:00
Jeroen Ketema
f4d1e1c034
Swift: Handle InlineArrayTypes
2025-10-31 10:15:07 +01:00
Jeroen Ketema
72e8ec3951
Swift: Update comment for LocatableTypes
2025-10-31 10:02:12 +01:00
Jeroen Ketema
b9d0cb7746
Swift: Add basic support for experimental using decls
...
Note that we cannot write tests for these at the moment. Passing
```
-enable-experimental-feature DefaultIsolationPerFile
```
to the extractor results in:
```
error: experimental feature 'DefaultIsolationPerFile' cannot be enabled in production compile
```
2025-10-31 09:58:12 +01:00
Jeroen Ketema
67b6b9cd15
Swift: Support UnsafeExpr
2025-10-31 09:58:10 +01:00
Jeroen Ketema
119b058629
Swift: Handle method and initializer key path components in QL
...
Note that it does not seem to be possible to write test that exercise this
code. Passing `-enable-experimental-feature KeyPathWithMethodMembers` to the
extractor results in:
```
error: experimental feature 'KeyPathWithMethodMembers' cannot be enabled in production compiler
```
2025-10-31 09:58:09 +01:00
Jeroen Ketema
b08b123184
Swift: Support new accessors
2025-10-31 09:57:58 +01:00
Tom Hvitved
7d5664f2a8
Address review comment
2025-10-31 09:43:18 +01:00
Tom Hvitved
f850025583
Rust: Add another type inference test
2025-10-31 09:39:00 +01:00
Asger F
a1a9626eae
Merge pull request #20421 from asgerf/js/compile-for-overlay-eval
...
JS: Add compileForOverlayEval: true
2025-10-31 09:21:16 +01:00
Tom Hvitved
5a2467414c
Rust: Fix variable access overlap
2025-10-30 21:52:36 +01:00
Tom Hvitved
3d7b60a439
Rust: Add variable consistency query
2025-10-30 21:40:37 +01:00
Tom Hvitved
d71f2dee9c
Rust: Add more variable tests
2025-10-30 21:39:28 +01:00
Asger F
c583b480af
JS: Add pragma[nomagic] just to be safe
...
The DIL is unchanged
2025-10-30 15:31:51 +01:00
Asger F
1f7671cf5e
JS: Ensure integration test contains one valid file
2025-10-30 15:31:51 +01:00
Asger F
0acfacefbf
JS: Recursively delete source archive so emptiness detection works
2025-10-30 15:31:51 +01:00
Asger F
a5819a14be
JS: Fix bad join order in getNextToken()
2025-10-30 15:31:51 +01:00
Asger F
39f74d808b
JS: Add compileForOverlayEval
2025-10-30 15:31:51 +01:00
Simon Friis Vindum
a25ae3922d
Merge pull request #20682 from paldepind/rust/ti-condition
...
Rust: Refactor using shared constraint satisfaction
2025-10-30 15:19:16 +01:00
Simon Friis Vindum
c648aa69b8
Rust: Rename predicates
2025-10-30 14:35:17 +01:00
Tom Hvitved
cca458c2ac
Rust: Address review comments and handle ! types in type inference
2025-10-30 13:30:42 +01:00
Geoffrey White
0e7d410163
Merge branch 'main' into macrometric2
2025-10-30 10:19:11 +00:00
Tom Hvitved
5697a7e612
Rust: More type inference tests
2025-10-30 10:43:44 +01:00
Simon Friis Vindum
b189f1fe3f
Rust: Refactor using shared constraint satisfaction
2025-10-30 08:18:12 +01:00
Jeroen Ketema
26f59a8786
Merge pull request #20710 from jketema/swift-rsc
...
Swift: Do not include the embedded resources
2025-10-29 17:38:07 +01:00
Jeroen Ketema
cf2cd20884
Swift: Update resources
2025-10-29 15:54:17 +01:00
Jeroen Ketema
ea6b05eda3
Update docs/codeql/codeql-overview/system-requirements.rst
2025-10-29 15:49:53 +01:00
Tom Hvitved
bc53fee1c5
Rust: Infer more () types
2025-10-29 15:43:00 +01:00
Tom Hvitved
f395162afd
Rust: More type inference tests
2025-10-29 15:41:23 +01:00
Tom Hvitved
3c663d8ebf
Merge pull request #20715 from hvitved/rust/type-inference-overlap-test
...
Rust: Add type inference tests for method resolution overlap
2025-10-29 15:39:07 +01:00
Anders Schack-Mulligen
900d0d2477
C#: Accept test changes for assert split removal.
2025-10-29 15:17:34 +01:00
Tom Hvitved
6ed8bcbcf3
Rust: Add type inference tests for method resolution overlap
2025-10-29 14:53:28 +01:00
Tom Hvitved
e5f1238e26
Merge pull request #20707 from paldepind/rust/ti-self-trait
...
Rust: Improve handling of `Self` type parameter
2025-10-29 13:17:14 +01:00
Anders Schack-Mulligen
51a577a429
Merge pull request #20713 from aschackmull/dataflow/qldoc1
...
Dataflow: Minor drive-by qldoc addition.
2025-10-29 13:13:43 +01:00
Geoffrey White
7a864c5244
Rust: Implement suggestion from review.
2025-10-29 12:13:12 +00:00
Anders Schack-Mulligen
87d89fd00f
C#: Fix CFG for assertion.
2025-10-29 13:04:33 +01:00
Anders Schack-Mulligen
e61ddf59d7
C#: Remove assertion splitting.
2025-10-29 13:04:32 +01:00
Anders Schack-Mulligen
b48d4d4834
C#: Recognize assertions as Guards.
2025-10-29 13:04:32 +01:00
Anders Schack-Mulligen
500fdb8723
Guards: Add support for assertions that exit rather than throw.
2025-10-29 13:04:29 +01:00
Anders Schack-Mulligen
72f1fe5d58
C#: Exclude nullness sources that are deemed non-null.
2025-10-29 13:03:51 +01:00
Anders Schack-Mulligen
0df0816c95
Guards: Minor improvement to implications.
2025-10-29 13:03:51 +01:00
Anders Schack-Mulligen
cbfb8fd110
C#: Accept some test changes.
2025-10-29 13:03:50 +01:00
Anders Schack-Mulligen
7241bedf05
C#: Replace Guards with the new implementation.
2025-10-29 13:03:50 +01:00
Anders Schack-Mulligen
8b3e62652c
Guards: Only prune actually trivial guards.
2025-10-29 13:03:46 +01:00
Anders Schack-Mulligen
84b8b1c01f
C#: Minor test tweak.
2025-10-29 13:02:08 +01:00
Anders Schack-Mulligen
dc4abc952f
C#: Replace references to getANullCheck.
2025-10-29 13:02:08 +01:00
Anders Schack-Mulligen
46fc006c5f
C#: Update NullCheck test to reflect what nullness use.
2025-10-29 13:02:07 +01:00
Anders Schack-Mulligen
1aa0e7c2da
C#: Make private.
2025-10-29 13:02:07 +01:00
Anders Schack-Mulligen
e3fc3192ac
C#: Remove tests referencing impliesStep.
2025-10-29 13:02:06 +01:00
Anders Schack-Mulligen
9776e8f828
C#: Remove an irrelevant reference to impliesStep.
2025-10-29 13:02:06 +01:00
Anders Schack-Mulligen
4ea90e06a5
Dataflow: Minor drive-by qldoc addition.
2025-10-29 12:58:56 +01:00
Geoffrey White
558ca74e9c
Merge pull request #20702 from geoffw0/gen2
...
Rust: Generalize more models
2025-10-29 11:32:00 +00:00
Geoffrey White
5ca0bd071d
Rust: Exclude skipped files from CallTargetStats and ExprTypeStats as well.
2025-10-29 10:42:04 +00:00
Geoffrey White
25e4b790a3
Rust: Exclude skipped files from MacroCallTargetStats.
2025-10-29 10:42:03 +00:00
Simon Friis Vindum
ce8cffc331
Rust: Address comments
2025-10-29 11:18:02 +01:00
Tom Hvitved
b7293541cd
Merge pull request #20704 from hvitved/rust/fix-bad-joins
...
Rust: Fix two bad joins
2025-10-29 11:11:54 +01:00
Jeroen Ketema
6906c88781
Swift: Update change note
2025-10-29 11:08:16 +01:00
Jeroen Ketema
2505c8f3e3
Swift: Improve docs
2025-10-29 11:06:50 +01:00
Jeroen Ketema
9f498df9fa
Swift: Do not include the embedded resources
2025-10-29 11:00:04 +01:00
Simon Friis Vindum
9022f996e8
Rust: Improve handling of occurrences of the Self type parameter
2025-10-29 10:41:46 +01:00
Simon Friis Vindum
9ff3c61c6e
Rust: Add type inference tests involving Self
2025-10-29 10:41:44 +01:00
yoff
4461be180a
Merge pull request #19539 from yoff/java/conflicting-access
2025-10-28 20:37:44 +01:00
Geoffrey White
6f1eca8be1
Rust: Make the QLDoc for fromSource a bit more precise.
2025-10-28 16:22:25 +00:00
Tom Hvitved
f2380d3ef1
Merge pull request #20612 from hvitved/rust/type-inference-blanket-non-satisfaction
...
Rust: Compute incompatible blanket implementations
2025-10-28 14:00:55 +01:00
Tom Hvitved
b3bbe78974
Rust: Fix bad join
...
Before
```
Pipeline standard for TypeInference::MethodCallMatching::directTypeMatch/6#f0fb0b61@31ee5u2w was evaluated in 821 iterations totaling 1057ms (delta sizes total: 689971).
416937 ~1% {6} r1 = SCAN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev_delta` OUTPUT In.0, In.3, In.1, In.2, In.4, In.5
222757 ~2% {8} r2 = JOIN r1 WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.3, _, Lhs.4, Rhs.2
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
164360 ~3% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
315350783 ~1% {6} r3 = SCAN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev` OUTPUT In.0, In.3, In.1, In.2, In.4, In.5
593815 ~1% {8} r4 = JOIN r3 WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev_delta` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.3, _, Lhs.4, Rhs.2
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
342226 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
826517 ~0% {8} r5 = JOIN r1 WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.4, _, Lhs.4, Rhs.3
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
345294 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
73715 ~0% {8} r6 = JOIN r3 WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev_delta` ON FIRST 3 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.4, _, Lhs.4, Rhs.3
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
47802 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
899682 ~5% {6} r7 = r2 UNION r4 UNION r5 UNION r6
711040 ~6% {6} | AND NOT `TypeInference::MethodCallMatching::directTypeMatch/6#f0fb0b61#prev`(FIRST 6)
return r7
```
After
```
Pipeline standard for TypeInference::MethodCallMatching::directTypeMatch/6#f0fb0b61@ad458u2w was evaluated in 821 iterations totaling 374ms (delta sizes total: 691168).
222757 ~2% {8} r1 = JOIN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev_delta` WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.3, _, Lhs.4, Rhs.2
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
164360 ~3% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
593815 ~1% {8} r2 = JOIN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev` WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev_delta` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.3, _, Lhs.4, Rhs.2
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
342226 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
826517 ~0% {8} r3 = JOIN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev_delta` WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.4, _, Lhs.4, Rhs.3
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
345294 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
73715 ~0% {8} r4 = JOIN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev` WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev_delta` ON FIRST 3 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.4, _, Lhs.4, Rhs.3
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
47802 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
899682 ~5% {6} r5 = r1 UNION r2 UNION r3 UNION r4
711095 ~6% {6} | AND NOT `TypeInference::MethodCallMatching::directTypeMatch/6#f0fb0b61#prev`(FIRST 6)
return r5
```
2025-10-28 13:09:39 +01:00
Tom Hvitved
104ba0e291
Rust: Fix bad join
...
Before
```
Pipeline standard for TypeInference::MethodCallMatching::AccessConstraint::RelevantAccess.getTypeAt/1#dispred#e8abf748@ada3a07w was evaluated in 801 iterations totaling 31ms (delta sizes total: 182871).
50151 ~1% {4} r1 = SCAN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev_delta OUTPUT In.0, In.2, In.3, In.4
39574 ~0% {5} | JOIN WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev` ON FIRST 2 OUTPUT Lhs.3, Rhs.3, _, Lhs.2, Rhs.2
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
36996 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
36102333 ~0% {4} r2 = SCAN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev OUTPUT In.0, In.2, In.3, In.4
90175 ~1% {5} | JOIN WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev_delta` ON FIRST 2 OUTPUT Lhs.3, Rhs.3, _, Lhs.2, Rhs.2
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
65014 ~1% {3} | SCAN OUTPUT In.0, In.2, In.1
50151 ~1% {5} r3 = SCAN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev_delta OUTPUT In.2, In.0, In.1, In.3, In.4
24208 ~1% {4} | JOIN WITH `FunctionType::FunctionPosition.isSelf/0#dispred#9e84d302` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4
95022 ~0% {9} | JOIN WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev` ON FIRST 1 OUTPUT Lhs.2, Lhs.3, Rhs.2, Rhs.3, Rhs.4, _, Rhs.1, Lhs.1, _
{6} | REWRITE WITH Tmp.5 := ";", Tmp.5 := (In.6 ++ Tmp.5), Tmp.8 := "", Out.5 := InverseAppend(Tmp.5,Tmp.8,In.7) KEEPING 6
93919 ~1% {7} | SCAN OUTPUT In.0, In.1, In.2, In.3, In.4, In.5, _
{6} | REWRITE WITH NOT [NOT [Tmp.6 := "borrow", TEST InOut.5 = Tmp.6, Tmp.6 := true, TEST InOut.2 = Tmp.6], NOT [Tmp.6 := "", TEST InOut.5 = Tmp.6, Tmp.6 := true, TEST InOut.2 != Tmp.6]] KEEPING 6
81298 ~1% {5} | SCAN OUTPUT In.1, In.4, _, In.0, In.3
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
64110 ~1% {3} | SCAN OUTPUT In.0, In.2, In.1
36102333 ~0% {5} r4 = SCAN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev OUTPUT In.2, In.0, In.1, In.3, In.4
17473531 ~0% {4} | JOIN WITH `FunctionType::FunctionPosition.isSelf/0#dispred#9e84d302` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4
47409 ~1% {9} | JOIN WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev_delta` ON FIRST 1 OUTPUT Lhs.2, Lhs.3, Rhs.2, Rhs.3, Rhs.4, _, Rhs.1, Lhs.1, _
{6} | REWRITE WITH Tmp.5 := ";", Tmp.5 := (In.6 ++ Tmp.5), Tmp.8 := "", Out.5 := InverseAppend(Tmp.5,Tmp.8,In.7) KEEPING 6
29885 ~0% {7} | SCAN OUTPUT In.0, In.1, In.2, In.3, In.4, In.5, _
{6} | REWRITE WITH NOT [NOT [Tmp.6 := "borrow", TEST InOut.5 = Tmp.6, Tmp.6 := true, TEST InOut.2 = Tmp.6], NOT [Tmp.6 := "", TEST InOut.5 = Tmp.6, Tmp.6 := true, TEST InOut.2 != Tmp.6]] KEEPING 6
16952 ~1% {5} | SCAN OUTPUT In.1, In.4, _, In.0, In.3
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
16829 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
182949 ~1% {3} r5 = r1 UNION r2 UNION r3 UNION r4
182949 ~1% {3} | AND NOT `TypeInference::MethodCallMatching::AccessConstraint::RelevantAccess.getTypeAt/1#dispred#e8abf748#prev`(FIRST 3)
return r5
```
After
```
Pipeline standard for TypeInference::MethodCallMatching::AccessConstraint::RelevantAccess.getTypeAt/1#dispred#e8abf748@31ee547w was evaluated in 801 iterations totaling 19ms (delta sizes total: 182946).
81298 ~0% {5} r1 = JOIN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev_delta WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev` ON FIRST 3 OUTPUT Lhs.4, Rhs.4, _, Lhs.3, Rhs.3
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
64110 ~1% {3} | SCAN OUTPUT In.0, In.2, In.1
39574 ~0% {5} r2 = JOIN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev_delta WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev` ON FIRST 2 OUTPUT Lhs.4, Rhs.3, _, Lhs.3, Rhs.2
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
36996 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
16952 ~0% {5} r3 = JOIN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev_delta` ON FIRST 3 OUTPUT Lhs.4, Rhs.4, _, Lhs.3, Rhs.3
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
16829 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
90175 ~0% {5} r4 = JOIN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev_delta` ON FIRST 2 OUTPUT Lhs.4, Rhs.3, _, Lhs.3, Rhs.2
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
65014 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
182949 ~1% {3} r5 = r1 UNION r2 UNION r3 UNION r4
182949 ~1% {3} | AND NOT `TypeInference::MethodCallMatching::AccessConstraint::RelevantAccess.getTypeAt/1#dispred#e8abf748#prev`(FIRST 3)
return r5
```
2025-10-28 13:09:32 +01:00
Nora Dimitrijević
727bddea19
Merge pull request #20607 from d10c/d10c/update-diff-informed-testing
...
Update diff-informed testing to always treat sources and sinks as alert locations
2025-10-28 11:52:31 +01:00
Tom Hvitved
409f7fb743
Address review comments
2025-10-28 11:48:45 +01:00
Geoffrey White
d6c4ab2724
Merge branch 'main' into gen2
2025-10-28 09:26:13 +00:00
Geoffrey White
abcc1712d5
Rust: Remove more redundant models.
2025-10-28 09:26:11 +00:00
Nora Dimitrijević
a0975e7e19
Constrain location overrides to actual sources/sinks
2025-10-28 09:42:20 +01:00
Nora Dimitrijević
96e1536769
C++/SqlTainted
2025-10-28 09:42:17 +01:00
Nora Dimitrijević
8e0c453c37
Rust/InsecureCookie
2025-10-28 09:42:14 +01:00
Nora Dimitrijević
4952cb27fb
Rust/AccessAfterLifetime
2025-10-28 09:42:11 +01:00
Nora Dimitrijević
0f0bd0f455
Go/SSRF
...
go/ql/src/experimental/CWE-918/SSRF.ql
2025-10-28 09:42:09 +01:00
Nora Dimitrijević
d41268fc84
Go/UnhandledCloseWritableHandle
2025-10-28 09:42:06 +01:00
Nora Dimitrijević
ec63547925
C++/UseOfHttp
2025-10-28 09:42:03 +01:00
Nora Dimitrijević
a65d4d5997
C++/TaintedAllocationSize
2025-10-28 09:42:01 +01:00
Nora Dimitrijević
f3d51e0151
C++/ArithmeticUncontrolled
2025-10-28 09:41:57 +01:00
Nora Dimitrijević
1321cbb021
C++/DecompressionBombs
2025-10-28 09:41:55 +01:00
Nora Dimitrijević
bbe2bf2b7f
C++/CleartextTransmission
2025-10-28 09:41:52 +01:00
Nora Dimitrijević
b0180409f4
C++/CleartextFileWrite
2025-10-28 09:41:49 +01:00
Nora Dimitrijević
d89aa0f19d
C++/CleartextBufferWrite
2025-10-28 09:41:46 +01:00
Nora Dimitrijević
17b261a506
C++/AuthenticationBypass
2025-10-28 09:41:43 +01:00
Nora Dimitrijević
0ed27f4e81
C++/CleartextSqliteDatabase
2025-10-28 09:41:40 +01:00
Nora Dimitrijević
f7a1a4cf75
C++/NonConstantFormat
2025-10-28 09:41:38 +01:00
Nora Dimitrijević
2756e8255f
C++/UnboundedWrite
2025-10-28 09:41:35 +01:00
Nora Dimitrijević
a4ac0392a6
C++/OverflowDestination
2025-10-28 09:41:32 +01:00
Nora Dimitrijević
65d79ff6fc
C++/ExecTainted
2025-10-28 09:41:29 +01:00
Nora Dimitrijević
464f6cb096
C++/ConstantSizeArrayOffByOne
2025-10-28 09:41:26 +01:00
Nora Dimitrijević
974d174757
Actions/CodeInjectionQuery
...
actions/ql/src/Security/CWE-094/CodeInjectionMedium.ql
actions/ql/src/Security/CWE-094/CodeInjectionCritical.ql
2025-10-28 09:41:24 +01:00
Nora Dimitrijević
62fde8f6e7
Actions/ArgumentInjectionQuery
...
actions/ql/src/experimental/Security/CWE-088/ArgumentInjectionCritical.ql
actions/ql/src/experimental/Security/CWE-088/ArgumentInjectionMedium.ql
2025-10-28 09:41:21 +01:00
Nora Dimitrijević
c40223319c
Actions/EnvVarInjectionQuery
...
actions/ql/src/Security/CWE-077/EnvVarInjectionMedium.ql
actions/ql/src/Security/CWE-077/EnvVarInjectionCritical.ql
2025-10-28 09:41:18 +01:00
Nora Dimitrijević
edc72d29d7
Actions/EnvPathInjectionQuery
...
actions/ql/src/Security/CWE-077/EnvPathInjectionMedium.ql
actions/ql/src/Security/CWE-077/EnvPathInjectionCritical.ql
2025-10-28 09:41:16 +01:00
Nora Dimitrijević
1f53ffbdd7
Actions/ArtifactPoisoningQuery
...
actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql
actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql
2025-10-28 09:41:13 +01:00
Nora Dimitrijević
8a750b3125
Swift/UnsafeUnpackQuery
...
swift/ql/src/experimental/Security/CWE-022/UnsafeUnpack.ql
2025-10-28 09:41:10 +01:00
Nora Dimitrijević
895bd93062
Swift/UnsafeJsEvalQuery
...
swift/ql/src/queries/Security/CWE-094/UnsafeJsEval.ql
2025-10-28 09:41:08 +01:00
Nora Dimitrijević
cd86e7d6f5
Swift/StringLengthConflationQuery
...
swift/ql/src/queries/Security/CWE-135/StringLengthConflation.ql
2025-10-28 09:41:05 +01:00
Nora Dimitrijević
5a6f731ab7
Swift/StaticInitializationVectorQuery
...
swift/ql/src/queries/Security/CWE-1204/StaticInitializationVector.ql
2025-10-28 09:41:02 +01:00
Nora Dimitrijević
7ba7c435f2
Swift/InsufficientHashIterationsQuery
...
swift/ql/src/queries/Security/CWE-916/InsufficientHashIterations.ql
2025-10-28 09:41:00 +01:00
Nora Dimitrijević
6c52d4ba91
Swift/ConstantPasswordQuery
...
swift/ql/src/queries/Security/CWE-259/ConstantPassword.ql
2025-10-28 09:40:57 +01:00
Nora Dimitrijević
c190fae737
Swift/CleartextStoragePreferencesQuery
...
swift/ql/src/queries/Security/CWE-312/CleartextStoragePreferences.ql
2025-10-28 09:40:54 +01:00
Nora Dimitrijević
2332cea330
Swift/CleartextStorageDatabaseQuery
...
swift/ql/src/queries/Security/CWE-311/CleartextStorageDatabase.ql
2025-10-28 09:40:51 +01:00
Nora Dimitrijević
462d8c5dc4
Shared: update qldoc
2025-10-28 09:40:48 +01:00
Nora Dimitrijević
6ede0a7950
Ruby/WeakFilePermissions
2025-10-28 09:40:46 +01:00
Nora Dimitrijević
495be51ae7
Ruby/WeakParams
2025-10-28 09:40:43 +01:00
Nora Dimitrijević
50f2540db1
Ruby/ManuallyCheckHttpVerb
2025-10-28 09:40:41 +01:00
Nora Dimitrijević
6519bd9909
Ruby/PolynomialReDoSQuery
...
ruby/ql/src/queries/security/cwe-1333/PolynomialReDoS.ql
2025-10-28 09:40:38 +01:00
Nora Dimitrijević
1ff24cbee8
Python/LdapInsecureAuth
...
python/ql/src/experimental/Security/CWE-522/LdapInsecureAuth.ql
2025-10-28 09:40:35 +01:00
Nora Dimitrijević
998de144ea
Python/CorsBypass
2025-10-28 09:40:32 +01:00
Nora Dimitrijević
4bc9ede2e8
Python/UnsafeUsageOfClientSideEncryptionVersion
2025-10-28 09:40:30 +01:00
Nora Dimitrijević
6d57316862
Python/UnsafeUnpackQuery
...
python/ql/src/experimental/Security/CWE-022bis/UnsafeUnpack.ql
2025-10-28 09:40:27 +01:00
Nora Dimitrijević
37fff48dcd
Python/ServerSideRequestForgeryQuery
...
python/ql/src/Security/CWE-918/PartialServerSideRequestForgery.ql
2025-10-28 09:40:24 +01:00
Nora Dimitrijević
baccdcc07f
Python/PolynomialReDoSQuery
...
python/ql/src/Security/CWE-730/PolynomialReDoS.ql
2025-10-28 09:40:21 +01:00
Nora Dimitrijević
bb80d83276
JS/SSRF
...
javascript/ql/src/experimental/Security/CWE-918/SSRF.ql
2025-10-28 09:40:19 +01:00
Nora Dimitrijević
bcdbe0b50a
JS/PolynomialReDoSQuery
...
javascript/ql/src/Performance/PolynomialReDoS.ql
2025-10-28 09:40:16 +01:00
Nora Dimitrijević
94343254e3
JS/ShellCommandInjectionFromEnvironmentQuery
...
javascript/ql/src/Security/CWE-078/ShellCommandInjectionFromEnvironment.ql
2025-10-28 09:40:14 +01:00
Nora Dimitrijević
71cf042607
JS/IndirectCommandInjectionQuery
...
javascript/ql/src/Security/CWE-078/IndirectCommandInjection.ql
2025-10-28 09:40:11 +01:00
Nora Dimitrijević
2a30ea923a
JS/CommandInjectionQuery
...
javascript/ql/src/experimental/heuristics/ql/src/Security/CWE-078/CommandInjection.ql
javascript/ql/src/Security/CWE-078/CommandInjection.ql
2025-10-28 09:40:09 +01:00
Nora Dimitrijević
f24a6f64ab
Java/WebviewDebugEnabledQuery
...
java/ql/src/Security/CWE/CWE-489/WebviewDebuggingEnabled.ql
2025-10-28 09:40:06 +01:00
Nora Dimitrijević
518c0818a4
Java/UnsafeDeserializationQuery
...
java/ql/src/Security/CWE/CWE-502/UnsafeDeserialization.ql
2025-10-28 09:40:03 +01:00
Nora Dimitrijević
4439322e88
Java/TempDirLocalInformationDisclosureQuery
...
java/ql/src/Security/CWE/CWE-200/TempDirLocalInformationDisclosure.ql
2025-10-28 09:40:01 +01:00
Nora Dimitrijević
2a889f4f98
Java/TaintedPermissionsCheckQuery
...
java/ql/src/Security/CWE/CWE-807/TaintedPermissionsCheck.ql
2025-10-28 09:39:58 +01:00
Nora Dimitrijević
697f428eae
Java/TaintedEnvironmentVariableQuery
...
java/ql/src/Security/CWE/CWE-078/ExecTaintedEnvironment.ql
2025-10-28 09:39:55 +01:00
Nora Dimitrijević
72a97773b1
Java/NumericCastTaintedQuery
...
java/ql/src/Security/CWE/CWE-681/NumericCastTainted.ql
2025-10-28 09:39:52 +01:00
Nora Dimitrijević
247ae1d23c
Java/MaybeBrokenCryptoAlgorithmQuery
...
java/ql/src/Security/CWE/CWE-327/MaybeBrokenCryptoAlgorithm.ql
2025-10-28 09:39:50 +01:00
Nora Dimitrijević
eebff9c282
Java/ImproperValidationOfArrayConstructionFlow
...
java/ql/src/Security/CWE/CWE-129/ImproperValidationOfArrayConstruction.ql
2025-10-28 09:39:47 +01:00
Nora Dimitrijević
9eeeec336e
Java/ImproperValidationOfArrayConstructionCodeSpecifiedQuery
...
java/ql/src/Security/CWE/CWE-129/ImproperValidationOfArrayConstructionCodeSpecified.ql
2025-10-28 09:39:45 +01:00
Nora Dimitrijević
dc1dff98b0
Java/ConditionalBypass
...
java/ql/src/Security/CWE/CWE-807/ConditionalBypass.ql
2025-10-28 09:39:42 +01:00
Nora Dimitrijević
4482e831d7
Java/CommandLineQuery
...
85a4dd0325/java/ql/src/Security/CWE/CWE-078/ExecTainted.ql
857b51be58/java/ql/src/Security/CWE/CWE-078/ExecUnescaped.ql
b6e56f26c7/java/ql/src/experimental/Security/CWE/CWE-078/ExecTainted.ql
2025-10-28 09:39:39 +01:00
Nora Dimitrijević
b023880a0a
Java/BrokenCryptoAlgorithmQuery
...
java/ql/src/Security/CWE/CWE-327/BrokenCryptoAlgorithm.ql
2025-10-28 09:39:37 +01:00
Nora Dimitrijević
1129230e10
Java/ArithmeticUncontrolledQuery
...
java/ql/src/Security/CWE/CWE-190/ArithmeticUncontrolled.ql
2025-10-28 09:39:34 +01:00
Nora Dimitrijević
a228936c63
Java/ArithmeticTainted
...
java/ql/src/Security/CWE/CWE-190/ArithmeticTainted.ql
2025-10-28 09:39:31 +01:00
Nora Dimitrijević
913550f408
Java/ArbitraryApkInstallationQuery
...
java/ql/src/Security/CWE/CWE-094/ArbitraryApkInstallation.ql
2025-10-28 09:39:29 +01:00
Nora Dimitrijević
59a8e9b78c
Go/InsufficientKeySize
2025-10-28 09:39:27 +01:00
Nora Dimitrijević
7722f31cb8
Go/DivideByZero
2025-10-28 09:39:24 +01:00
Nora Dimitrijević
ba22f0d7d2
C#/DontInstallRootCert
2025-10-28 09:39:21 +01:00
Nora Dimitrijević
ad31f1ab6d
C++/WordexpTainted
...
Same file usees source and sink as endpoints
2025-10-28 09:39:19 +01:00
Nora Dimitrijević
5a1a887fd2
Actions/ReusableWorkflowsSummaries
2025-10-28 09:39:16 +01:00
Nora Dimitrijević
1243c6362d
Actions/ReusableWorkflowsSources
2025-10-28 09:39:14 +01:00
Nora Dimitrijević
a972ef7e31
Actions/ReusableWorkflowsSinks
...
Same file uses source as endpoint
2025-10-28 09:39:11 +01:00
Nora Dimitrijević
9c24ce0650
Actions/CompositeActionsSummaries
...
Same file uses source as endpoint
2025-10-28 09:39:09 +01:00
Nora Dimitrijević
78f2cee51c
Actions/CompositeActionsSources
...
Same file uses source as endpoint
2025-10-28 09:39:06 +01:00
Nora Dimitrijević
d36b721513
Actions/CompositeActionsSinks
...
Same file uses source as endpoint
2025-10-28 09:38:55 +01:00
Nora Dimitrijević
bb10307303
Actions/SecretExfiltrationQuery
...
actions/ql/src/experimental/Security/CWE-200/SecretExfiltration.ql uses source as endpoint
2025-10-28 09:38:38 +01:00
Nora Dimitrijević
890ca8e7d1
Actions/RequestForgeryQuery
...
actions/ql/src/experimental/Security/CWE-918/RequestForgery.ql uses source as endpoint
2025-10-28 09:38:21 +01:00
Nora Dimitrijević
3fa8259042
Actions/OutputClobberingQuery
...
actions/ql/src/experimental/Security/CWE-074/OutputClobberingHigh.ql uses source as endpoint
2025-10-28 09:38:01 +01:00
Asger F
8d49f26f3d
Merge pull request #20397 from asgerf/js/build-artifact-leak-fp
...
JS: Fix FP in js/build-artifact-leak when keys come from an array of constants
2025-10-28 06:40:13 +01:00
Geoffrey White
b76f27d10b
Rust: Remove redundant model.
2025-10-27 18:47:17 +00:00
Geoffrey White
03204b7881
Rust: Accept tests repaired.
2025-10-27 17:53:40 +00:00
Alexander Eyers-Taylor
227e1fcbde
Merge pull request #20598 from github/alexet/overlay-query-libraries
...
Java: Make some query libraries local.
2025-10-27 17:52:27 +00:00
Geoffrey White
0c92b33b8f
Revert "Rust: Generalize more models."
...
This reverts commit 56811d02ac .
2025-10-27 17:47:00 +00:00
Geoffrey White
a468b1d647
Rust: Accept regressions spotted by CI.
2025-10-27 17:46:01 +00:00
Paolo Tranquilli
630ea7bd0a
Merge pull request #20641 from github/redsun82/fix-pytest-build-as-test-windows
...
Pytest: fix the `build-as-test` mode on Windows
2025-10-27 15:47:24 +01:00
Geoffrey White
56811d02ac
Rust: Generalize more models.
2025-10-27 14:11:09 +00:00
Idriss Riouak
11a7d53002
Merge pull request #20657 from github/idrissrio/java-maven-fix
...
Java: Add integration test to reproduce regression
2025-10-27 15:09:41 +01:00
yoff
406e48b3bb
java: fix aliasing FP
...
reorganise code, adding `LockField`
2025-10-27 14:30:25 +01:00
yoff
531b994819
java: add test for aliasing
...
found by triage
2025-10-27 14:27:32 +01:00
idrissrio
d473b36918
Java: Accept new test results after extractor changes
2025-10-27 14:26:48 +01:00
idrissrio
714b2ad565
Java: Add integration test for maven
2025-10-27 14:26:47 +01:00
Simon Friis Vindum
35b4a36f37
Merge pull request #20691 from paldepind/cpp/range-analysis-refactor
...
C++: A few small refactors to the simple range analysis library
2025-10-27 14:15:37 +01:00
Anders Schack-Mulligen
31428b2f66
Merge pull request #20700 from aschackmull/java/delete-old-ssa-consistency
...
Java: Remove old SSA consistency queries.
2025-10-27 14:12:09 +01:00
Paolo Tranquilli
105f810654
Merge pull request #20658 from github/redsun82/csharp-fix-xframe-options-in-location
...
Csharp: fix `cs/web/missing-x-frame-options` to also consider `location` elements
2025-10-27 13:49:09 +01:00
Geoffrey White
bd11873e0d
Rust: Generalize a model of futures_io...poll_read.
2025-10-27 12:22:13 +00:00
Chris Smowton
2e0e9e0834
Merge pull request #20550 from github/smowton/admin/document-rails-5-csrf
...
Ruby: Update CSRF protection notes in documentation
2025-10-27 12:19:16 +00:00
Anders Schack-Mulligen
96fc1e889a
Java: Accept .expected file.
2025-10-27 13:17:53 +01:00
Geoffrey White
c8b8046302
Rust: Generalize a model of alloc::boxed::Box.
2025-10-27 12:09:05 +00:00
Geoffrey White
d650ccb74b
Rust: Generalize some std::io::Read models.
2025-10-27 12:09:04 +00:00
Anders Schack-Mulligen
02a942554d
Java: Remove old SSA consistency queries.
2025-10-27 12:55:43 +01:00
Jeroen Ketema
47b26ddea4
Merge pull request #20446 from github/jketema/swift-6.2
...
Swift: Make extractor compile with Swift 6.2
2025-10-27 12:24:16 +01:00
Jeroen Ketema
be0d405f6d
Swift: Update artifacts
2025-10-27 11:28:53 +01:00
yoff
83508ba661
java: adjust qhelp and examples for SafePublication
2025-10-27 11:25:51 +01:00
Jeroen Ketema
aabc8bc38b
Swift: Fix typo in change note
2025-10-27 10:54:39 +01:00
Jeroen Ketema
2022dd833e
Swift: Address review comments
2025-10-27 10:48:02 +01:00
Paolo Tranquilli
3f98d32124
C#: Update change note for location handling in query
2025-10-27 09:51:10 +01:00
Nicolas Will
d4787520fd
Merge pull request #20690 from bdrodes/weak_symmetric_cipher_bug
...
Crypto: Fix bug in weak symmetric cipher query
2025-10-24 22:38:07 +02:00
Nicolas Will
e7bd435bee
Merge pull request #20696 from bdrodes/bad_mac_decrypt_then_mac
...
Crypto: Adding bad decrypt then mac order query.
2025-10-24 22:07:26 +02:00
REDMOND\brodes
65d0ca9e53
Crypto: Simplifying expression for ql-for-ql alert.
2025-10-24 14:08:25 -04:00
REDMOND\brodes
0394816756
Crypto: typo fix
2025-10-24 14:06:52 -04:00
REDMOND\brodes
b20689fa46
Crypto: removing comments
2025-10-24 14:06:08 -04:00
REDMOND\brodes
0e624f51d5
Crypto: Adding bad decrypt then mac order query. Fixes to BadMacOrderMacOnEncryptPlaintext as well.
2025-10-24 12:44:28 -04:00
Simon Friis Vindum
d1ea1af945
C++: Make small trivial tweaks
2025-10-24 16:16:57 +02:00
Simon Friis Vindum
5709964fbf
C++: Simplify boundFromGuard
...
The last disjunct in `boundFromGuard` is moved into `linearBoundFromGuard`. This avoids repeating the calculation for `boundValue`.
`getBounds` and `getExprTypeBounds` are turned into predicates with result. Their middle argument was the "output" which was confusing.
2025-10-24 16:12:05 +02:00
Simon Friis Vindum
383e6a44aa
C++: Use or instead of if
...
The proposition in the true branch implied the condition, so `or` is more appropriate. Also eliminated an existentially quantified variable.
2025-10-24 16:08:35 +02:00
Simon Friis Vindum
3af9885489
C++: Fix typos in tests
2025-10-24 16:04:34 +02:00
Simon Friis Vindum
17e0dec08a
C++: Add toString for RelationStrictness
...
This helps for debugging.
2025-10-24 16:01:38 +02:00
Simon Friis Vindum
a0a6f288b5
Merge pull request #20645 from paldepind/cpp/range-analysis-measure
...
C++: Range analysis measure bounds
2025-10-24 15:30:07 +02:00
Jeroen Ketema
74384bbeae
Swift: Add change notes
2025-10-24 14:38:01 +02:00
Jeroen Ketema
e415772688
Swift: Add upgrade and downgrade scripts
2025-10-24 14:38:00 +02:00
Jeroen Ketema
2843761471
Swift: Special case the xcode-fails-spm-works test results on macOS 26
...
macOS 26 comes with Xcode 26, which does not call the compiler on the file
with the `#error` diagnostic directive.
2025-10-24 14:37:58 +02:00
Jeroen Ketema
79fd35a482
Swift: Remove flags related to explict modules in the tracer config
...
We have not found a good way to support these.
2025-10-24 14:37:57 +02:00
Jeroen Ketema
06d0d48416
Swift: Work around assertion failures in mangler
2025-10-24 14:37:55 +02:00
Jeroen Ketema
4d9827ff77
Swift: Update expected integration test results
2025-10-24 14:37:54 +02:00
Jeroen Ketema
192c9c3820
Swift: Document that tests disabled with Swift 6.1 are still broken with 6.2
2025-10-24 14:37:53 +02:00
Jeroen Ketema
b50ffe2e0c
Swift: Update PoundDiagnosticDecl test
...
These elements are no longer present in the Swift 6.2 AST.
2025-10-24 14:37:52 +02:00
Jeroen Ketema
7890dc6030
Swift: Update expected test results after 6.2 update
2025-10-24 14:37:51 +02:00
Jeroen Ketema
bc835a310a
Swift: Update KeyPathComponent for new kind values
2025-10-24 14:37:49 +02:00
Jeroen Ketema
d890feedda
Swift: Compensate for backwards going locations
2025-10-24 14:37:48 +02:00
Jeroen Ketema
626bc55caf
Swift: Fix AvailabilitySpec trap generation
2025-10-24 14:37:47 +02:00
Jeroen Ketema
300b5b15e7
Swift: Mangle function type lifetimes
2025-10-24 14:37:46 +02:00
Jeroen Ketema
e79c0b0405
Swift: Update generated files
2025-10-24 14:37:45 +02:00
Jeroen Ketema
22dddb0216
Swift: Fix unavailability checks after 6.2 upgrade
2025-10-24 14:37:43 +02:00
Jeroen Ketema
2ef8bb0c53
Swift: Make extractor compile with Swift 6.2
2025-10-24 14:37:42 +02:00
Tom Hvitved
32f21d6d49
Merge pull request #20688 from hvitved/java/request-forgery-matches-sanitizer
...
Java: Treat `x.matches(regexp)` as a sanitizer for request forgery
2025-10-24 14:34:32 +02:00
REDMOND\brodes
ed492c7d5a
Crypto: Fixed bug in WeakSymmetricCipher.qll, forgot to not only filter if !=AES but the algorithm must still be a SymmetriCipher algorithm.
2025-10-24 08:16:22 -04:00
Tom Hvitved
a4eab484ce
Address review comments
2025-10-24 13:32:39 +02:00
Joe Farebrother
8c277bd1d9
Merge pull request #20494 from joefarebrother/python-insecure-cookie-split
...
Python: Split Insecure Cookie query into multiple queries
2025-10-24 11:10:20 +01:00
Tom Hvitved
0e885e9297
Rust: Compute incompatible blanket implementations
2025-10-24 11:37:24 +02:00
Tom Hvitved
2a43a95049
Rust: More type inference tests
2025-10-24 11:37:22 +02:00
Tom Hvitved
672977acfa
Merge pull request #20592 from hvitved/rust/type-inference-branch-propagation
...
Rust: Non-symmetric type propagation for lub coercions
2025-10-24 11:35:24 +02:00
Tom Hvitved
ce379161fc
Add change note
2025-10-24 09:34:11 +02:00
Tom Hvitved
74411ff979
Merge pull request #20687 from hvitved/js/remove-invalid-qhelp-links
...
JS: Remove two invalid QHelp links
2025-10-24 09:22:33 +02:00
Tom Hvitved
7a9cb64e2e
Java: Treat x.matches(regexp) as a sanitizer for request forgery
2025-10-24 09:06:57 +02:00
Anders Schack-Mulligen
3542cdab43
Merge pull request #20677 from aschackmull/csharp/disable-exc-split
...
C#: Delete exception splitting.
2025-10-24 08:46:33 +02:00
Tom Hvitved
eb9df008b0
JS: Remove two invalid QHelp links
2025-10-24 08:45:12 +02:00
Tom Hvitved
ff31f0e3df
Address review comments
2025-10-23 20:17:28 +02:00
Geoffrey White
7acd214d7b
Merge pull request #20673 from geoffw0/sourcestest
...
Rust: Split up the dataflow/sources test
2025-10-23 13:08:43 +01:00
Anders Schack-Mulligen
6f72234fec
Merge pull request #20680 from aschackmull/shared/align-ssa-interface
...
Shared: Align SSA interfaces in Guards and ControlFlowReachability with shared SSA
2025-10-23 13:12:31 +02:00
Anders Schack-Mulligen
ebb50cd402
C#: Accept qltest changes.
2025-10-23 12:48:44 +02:00
Paolo Tranquilli
d11b44599e
Merge pull request #20679 from github/redsun82/fix-rust-vendor-check
...
Bazel: upgrade `rules_rust`
2025-10-23 12:14:32 +02:00
Anders Schack-Mulligen
72d83cc966
ControlFlowReachability: Align the SSA signature with the one from shared SSA.
2025-10-23 10:57:21 +02:00
Paolo Tranquilli
8f5f65e5fa
Bazel: upgrade rules_rust
2025-10-23 10:49:51 +02:00
Anders Schack-Mulligen
f257c7a570
Guards: Align the SSA signature with the one from shared SSA.
2025-10-23 10:23:22 +02:00
Anders Schack-Mulligen
f6cddc9db7
Merge pull request #20678 from aschackmull/shared/rename-cfg-reach
...
Shared/Java: Rename ControlFlowReachability library.
2025-10-23 10:22:15 +02:00
Geoffrey White
47334fbab7
Rust: Accept changes to the web_frameworks results.
2025-10-23 09:06:11 +01:00
Anders Schack-Mulligen
20147cdd2b
Shared/Java: Rename ControlFlowReachability library.
2025-10-23 09:07:34 +02:00
Anders Schack-Mulligen
dff327ea16
C#: Delete exception splitting.
2025-10-23 08:56:56 +02:00
Anders Schack-Mulligen
8a3f62b9b6
Merge pull request #20558 from aschackmull/csharp/guards3
...
C#: Instantiate shared Guards and shared ControlFlowReachability and replace nullness
2025-10-23 08:43:14 +02:00
Nicolas Will
c7ef8a5ab3
Merge pull request #20605 from bdrodes/santander-java-crypto-check
...
Crypto: Add Java Cryptographic Analysis Queries
2025-10-23 01:30:50 +02:00
REDMOND\brodes
bdad95d810
Crypto: Fixed alphabetical ordering issue in not_included_in_qls.expected
2025-10-22 15:56:14 -04:00
REDMOND\brodes
08379393b3
Crypto: Fix off by one column issue in unit tests.
2025-10-22 15:50:33 -04:00
REDMOND\brodes
3561d01144
Crytpo: Trying to fix in pipeline test failure, experimentally altering a line to see if this forces the test to pass. The test is off by one column in the piepline
2025-10-22 14:16:12 -04:00
Tom Hvitved
65b706ab80
Rust: Non-symmetric type propagation for lub coercions
2025-10-22 19:57:38 +02:00
Tom Hvitved
00bf049c85
Rust: Add more type inference tests
2025-10-22 19:57:37 +02:00
Tom Hvitved
c84cec9d29
Merge pull request #20664 from hvitved/rust/callable-get-body
...
Rust: Add `Callable.getBody()`
2025-10-22 19:57:14 +02:00
Geoffrey White
e18bf1661a
Rust: Accept result de-regression.
2025-10-22 17:52:12 +01:00
Geoffrey White
6b08297c2a
Rust: Repair after merge.
2025-10-22 17:46:25 +01:00
Geoffrey White
bc4d8a8425
Merge branch 'main' into sourcestest
2025-10-22 17:31:25 +01:00
Ben Rodes
e16543ab6d
Merge branch 'main' into santander-java-crypto-check
2025-10-22 11:51:13 -04:00
Geoffrey White
5d2ddbfa8e
Merge pull request #20670 from geoffw0/missingmetric
...
Rust: Add expressions with known type metric
2025-10-22 15:42:48 +01:00
Tom Hvitved
4b6c39004f
Rust: Add DB downgrade script
2025-10-22 16:40:56 +02:00
Tom Hvitved
8b10f68e28
Rust: Add DB upgrade scripts
2025-10-22 16:40:54 +02:00
Tom Hvitved
944ebc5267
Rust: Add Callable.getBody()
2025-10-22 16:40:53 +02:00
Tom Hvitved
7d0509b6af
Merge pull request #20282 from hvitved/rust/type-inference-method-call-resolution-rework
...
Rust: Rework call resolution and type inference for calls
2025-10-22 16:37:26 +02:00
REDMOND\brodes
db6d3ad054
Crypto: Fix typo in not_included_in_qls.expected.
2025-10-22 10:31:19 -04:00
REDMOND\brodes
dd60cf9395
Crypto: Adjust output of bad mac order queries, update associated bad mac order expected results, fix erroneous change to ID for a slicing query, update model to specify elliptic curve type as a property, update associated graph test expected files, update the not_included_in_qls.expected to reflect all queries now under quantum.
2025-10-22 10:29:31 -04:00
Florin Coada
83f9fb14b9
Merge pull request #20660 from github/changedocs/2.23.3
...
Add changelog entry for CodeQL CLI version 2.23.3
2025-10-22 14:58:00 +01:00
Anders Schack-Mulligen
7d0e4f58f3
C#: Fix join-order issue in ConstantCondition.
2025-10-22 15:52:51 +02:00
Anders Schack-Mulligen
f172e36eee
C#: Address more review comments.
2025-10-22 15:50:10 +02:00
Paolo Tranquilli
35990586ae
Merge pull request #20672 from github/redsun82/copilot
...
Copilot: move instructions to path-specific files
2025-10-22 15:41:28 +02:00
Michael Nebel
83343e1031
Merge pull request #20663 from michaelnebel/csharp/dotnet10rc2traced
...
C#: Tracer support for invoking `csc` directly.
2025-10-22 15:36:34 +02:00
Tom Hvitved
cf05414a93
Address review comments (iv)
2025-10-22 15:29:57 +02:00
Geoffrey White
6878a43223
Rust: Add missing file.
2025-10-22 14:18:16 +01:00
Paolo Tranquilli
f0c56edfc7
Update .github/instructions/expected-files.instructions.md
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-22 15:14:51 +02:00
Paolo Tranquilli
31627b4eb9
Copilot: move instructions to path-specific files
...
This is now supported. See
https://docs.github.com/en/copilot/how-tos/configure-custom-instructions/add-repository-instructions
for details.
2025-10-22 14:54:37 +02:00
Geoffrey White
8336a956c0
Rust: Add consistency check failures.
2025-10-22 13:50:49 +01:00
Michael Nebel
47c751be32
C#: Only run integration test on windows and linux.
2025-10-22 14:12:17 +02:00
Michael Nebel
6a02649334
Merge pull request #20555 from michaelnebel/csharp/staridlocationsbuildless
...
C#: `*` on Source locations in BMN.
2025-10-22 13:28:11 +02:00
Michael Nebel
7a414089e4
C#: Use autobuilder instead of supplying build command.
2025-10-22 13:25:23 +02:00
Michael Nebel
e14879ba33
C#: Add integration test for DB creation using .NET 10 RC 2.
2025-10-22 12:59:40 +02:00
Michael Nebel
d5ff9bf5d0
C#: Collapse tracer cases for csc, csc.exe and mcs.exe and remote quoting.
2025-10-22 11:58:02 +02:00
Owen Mansel-Chan
50e0ca8cb4
Merge pull request #20622 from owen-mc/docs/fix-dataflow-examples
...
Docs: add path query example to data flow docs
2025-10-22 10:57:42 +01:00
Tom Hvitved
2cc8b7f6dd
Address review comments (iii)
2025-10-22 11:07:20 +02:00
Anders Schack-Mulligen
c44e6fc3f0
C#: Qldoc tweaks.
2025-10-22 10:22:26 +02:00
Geoffrey White
9b11ec53d4
Rust: Merge InlineFlow.ql test queries using .qlrefs.
2025-10-22 09:02:18 +01:00
Geoffrey White
4893f53607
Rust: Fix a comment.
2025-10-22 09:02:15 +01:00
Geoffrey White
42224fe642
Rust: Clean up the sources test directory.
2025-10-22 09:02:14 +01:00
Geoffrey White
7efd4d26a0
Rust: Accept result regression.
...
Presumably because of a change in context, e.g. the module wrapping
this test now, or the different inputs. Either way we *should* be
able to get the result, and what we *actually* get in our analysis
doesn't change here either. We've just slightly changed the test
and exposed a gap.
2025-10-22 09:02:12 +01:00
Geoffrey White
8a7e206401
Rust: Move the remaining test_futures_io test into net.
2025-10-22 09:02:11 +01:00
Geoffrey White
8c02cb2ed1
Rust: Split off sources/web_frameworks.
2025-10-22 09:02:10 +01:00
Geoffrey White
5ba331e986
Rust: Splits off sources/net.
2025-10-22 09:01:34 +01:00
Geoffrey White
7ddd441e5f
Rust: Split off sources/database test.
2025-10-22 09:00:42 +01:00
Geoffrey White
81132beec0
Rust: Split off sources/stdin test.
2025-10-22 09:00:18 +01:00
Geoffrey White
0cc9331abf
Rust: Split off sources/file test.
2025-10-22 08:59:50 +01:00
Geoffrey White
a631130030
Rust: Split off sources/env test.
2025-10-22 08:58:59 +01:00
Tom Hvitved
5550da4870
Address review comments (ii)
2025-10-21 20:53:39 +02:00
Tom Hvitved
41602d3efa
Address review comments
2025-10-21 18:44:42 +02:00
Tom Hvitved
c2ba4ba3fc
Rust: Add change note
2025-10-21 18:44:41 +02:00
Tom Hvitved
ee0467d74c
Rust: Update expected output
2025-10-21 18:44:37 +02:00
Tom Hvitved
2f2c6866c4
Rust: Use doublyBoundedFastTC in TraitIsVisible
2025-10-21 17:58:54 +02:00
Tom Hvitved
4b70d20cd6
Rust: Rework call resolution and type inference for calls
2025-10-21 17:58:52 +02:00
Tom Hvitved
e12e9045a3
Rust: Add more type inference tests
2025-10-21 17:58:51 +02:00
Owen Mansel-Chan
c8c1c6e592
Address review comments
2025-10-21 16:54:28 +01:00
REDMOND\brodes
b374ba3d0c
Crypto: Updating java 'location' information to be just a location's toString to be more verbose/precise.
2025-10-21 11:48:37 -04:00
Paolo Tranquilli
6d31c6abe0
Merge branch 'main' into redsun82/fix-pytest-build-as-test-windows
2025-10-21 17:04:57 +02:00
REDMOND\brodes
ddeb42cddb
Crypto: Adding false positive to BadMacUse.java, we have no way to avoid this FP currently but should note it exists in the test case.
2025-10-21 11:04:57 -04:00
Paolo Tranquilli
a0d2005e1f
Merge pull request #20655 from github/redsun82/rust-file-semantics-predicates
...
Rust: introduce `ExtractedFile::hasSemantics` and `::isSkippedByCompilation`
2025-10-21 17:02:28 +02:00
REDMOND\brodes
c50175bc9b
Crypto: ql-for-ql alert fixes.
2025-10-21 10:32:00 -04:00
Geoffrey White
edabfa73bf
Rust: Delete a no-longer-used test file.
2025-10-21 15:30:32 +01:00
Simon Friis Vindum
f207404b0d
C++: Accept test changes
2025-10-21 16:03:12 +02:00
Geoffrey White
7da00b3e9d
Rust: Change note.
2025-10-21 13:33:17 +01:00
Geoffrey White
751d62aefb
Rust: Add the metric to rust/diagnostic/database-quality (with a very low threshold for the time being).
2025-10-21 13:29:46 +01:00
Geoffrey White
a4aa397ea0
Merge pull request #20634 from geoffw0/mysql2
...
Rust: Model mysql and mysql_async sources
2025-10-21 13:23:03 +01:00
yoff
9e77e5b046
java: add test with deeper paths
...
also format test files
2025-10-21 14:02:36 +02:00
yoff
f183a7223f
java: add test for notFullyMonitored
2025-10-21 13:40:29 +02:00
yoff
f4878b3806
java: make as many predicates private as possible
2025-10-21 13:25:26 +02:00
yoff
de05bfbce3
java: address review comments
...
- do not use `getQualifiedName`
- use camelCase
- rework alert predicates
2025-10-21 13:25:26 +02:00
Michael Nebel
def522d122
C#: Make sure that the file exists before attempting to get version info.
2025-10-21 13:12:21 +02:00
Michael Nebel
af5622a60e
C#: Address review comments.
2025-10-21 13:03:53 +02:00
Geoffrey White
d691c3215f
Rust: Add expressions with unknown type metric (expected by DCA).
2025-10-21 12:00:25 +01:00
yoff
715acefacc
Apply suggestions from code review
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2025-10-21 12:52:59 +02:00
Anders Schack-Mulligen
414e5ecbce
Merge pull request #20646 from aschackmull/ssa/ssa-sig
...
SSA: Add a shared signature for SSA and a module to implement it.
2025-10-21 12:14:08 +02:00
Paolo Tranquilli
316225bb88
Csharp: rename predicate
2025-10-21 11:47:54 +02:00
Paolo Tranquilli
6f8b1f6f4c
Csharp: address review
2025-10-21 11:43:58 +02:00
Michael Nebel
6bc15bcedc
C#: Add change-note.
2025-10-21 11:42:19 +02:00
Michael Nebel
e560ac197f
C#: Tracer support for invoking csc directly.
2025-10-21 11:16:55 +02:00
Paolo Tranquilli
c728503517
Merge branch 'main' into redsun82/csharp-fix-xframe-options-in-location
2025-10-21 11:15:46 +02:00
Anders Schack-Mulligen
242f12d4be
SSA: Remove variable capture reference from shared class.
2025-10-21 10:52:49 +02:00
Simon Friis Vindum
0badcfd663
C++: Address review comments
2025-10-21 09:47:58 +02:00
REDMOND\brodes
22c0f9fa91
Crypto: Adding a proof of concept bad mac ordering predicate that takes in an ArtifactNode to be used for graph generation to intercept nodes with known mac ordering issues, in order to format the node and output error messages in the graph.
2025-10-20 16:24:31 -04:00
REDMOND\brodes
eff94ef91f
Crypto: To allow for graph generation to have properties informed by assessments, altering a few queries weak/vuln/bad crypto to have qll files that can be accessed for other purposes, like graph generation. Also altering weak symmetric cipher to look for non-aes algorithms to be more comprehensive.
2025-10-20 15:51:07 -04:00
REDMOND\brodes
cc436e897d
Merge branch 'santander-java-crypto-check' of https://github.com/bdrodes/codeql into santander-java-crypto-check
2025-10-20 15:24:40 -04:00
REDMOND\brodes
354effe829
Crypto: Missing hash algorithms for HMAC operations in jca.
2025-10-20 15:24:18 -04:00
Taus
9efa20dfc7
Merge pull request #20654 from github/tausbn/add-query-history-patcher
...
Misc: Add script for patching the query history
2025-10-20 17:46:39 +02:00
Florin Coada
2c31090cf6
Update codeql-cli-2.23.3.rst
2025-10-20 14:20:17 +01:00
Florin Coada
aeee30b0c6
Add changelog entry for CodeQL CLI version 2.23.3
2025-10-20 14:17:40 +01:00
Geoffrey White
e4e7b1c528
Merge branch 'main' into mysql2
2025-10-20 14:06:48 +01:00
Anders Schack-Mulligen
be626bf0ce
SSA: Address some review comments.
2025-10-20 14:02:56 +02:00
Geoffrey White
1047c3e014
Merge pull request #20652 from geoffw0/gen1
...
Rust: Generalize some models
2025-10-20 12:37:53 +01:00
Asger F
d7cf5ef645
Merge pull request #20647 from asgerf/js/type-resolution-cache
...
JS: Avoid magic and improve a join in type resolution
2025-10-20 11:50:23 +02:00
Geoffrey White
7b32cd4868
Merge pull request #20649 from geoffw0/mv1
...
Rust: Move rust/weak-sensitive-data-hashing
2025-10-20 10:17:40 +01:00
Tom Hvitved
85abcddd0e
Merge pull request #20614 from hvitved/dataflow/debug-predicates
...
Data flow: Add various debug predicates
2025-10-20 11:01:41 +02:00
Michael B. Gale
4441303623
Merge pull request #20625 from github/mbg/csharp/proxy-log-messages
2025-10-20 10:00:58 +01:00
Tom Hvitved
f71cfac40a
Data flow: Add various debug predicates
2025-10-20 09:59:40 +02:00
Ben Rodes
2b683c210f
Merge branch 'main' into santander-java-crypto-check
2025-10-18 17:56:43 -04:00
REDMOND\brodes
c01c060476
Crypto: more ID renaming to include "examples", fix singleton issues with ql-for-ql, use formatted test for WeakAsymmetricKeyGenSize (add post processing in the qlref), misc expected files updated (test passed locally but on rerun vscode reports failures, known bug with vscode unit tests).
2025-10-17 14:13:53 -04:00
REDMOND\brodes
540daa6df2
Crypto: weak symmetric cipher tests.
2025-10-17 13:40:15 -04:00
REDMOND\brodes
b06e05362b
Crypto: altering all query IDs in examples to have "examples" in the ID, to make clear the query is not intended for production.
2025-10-17 13:39:50 -04:00
REDMOND\brodes
1b205d8673
Removing WeakRSA, this is redundant with weak asymmetric key size.
2025-10-17 13:39:05 -04:00
REDMOND\brodes
b4ecb91c83
Crypto: Add missing cipher algorithms to JCA. Update node tests to account for missing cipher algorithms.
2025-10-17 13:38:47 -04:00
REDMOND\brodes
f480d90a68
Crypto: Add missing block mode JCA Models, add block mode unit tests
2025-10-17 13:13:14 -04:00
REDMOND\brodes
e12734162f
Crypto: WeakKDFKeySize tests.
2025-10-17 12:32:24 -04:00
REDMOND\brodes
628bab92fc
Crypto: Modify BadMacOrderMacOnEncryptPlaintext to be a path query that traces through any intermediate encrypt or mac to the final encrypt or mac.
2025-10-17 12:06:34 -04:00
REDMOND\brodes
ff7840dc9f
Crypto: removing precision tags on experimental queries.
2025-10-17 10:52:32 -04:00
Paolo Tranquilli
4b04b49ca9
Merge branch 'main' into redsun82/rust-file-semantics-predicates
2025-10-17 15:10:55 +02:00
Paolo Tranquilli
6a6015e0eb
Rust: accept test changes
2025-10-17 15:10:49 +02:00
Owen Mansel-Chan
66f95bcbcd
Merge pull request #20603 from owen-mc/update-broken-algo-qhelp
...
Many languages: Update broken algo qhelp
2025-10-17 12:30:43 +01:00
Paolo Tranquilli
0c719af33c
Csharp: add change note
2025-10-17 12:05:52 +02:00
Paolo Tranquilli
c3fd06c8a4
Csharp: fix cs/web/missing-x-frame-options to also consider location elements
...
As explained in
https://learn.microsoft.com/en-us/previous-versions/aspnet/ms178692(v=vs.100) ,
it is possible to add `system.webServer` elements nested inside
`location` elements in `Web.config`.
2025-10-17 11:27:31 +02:00
Simon Friis Vindum
979b05cc1a
C++: Apply suggested fixes from review
2025-10-17 09:50:36 +02:00
yoff
3a0a8999d5
java: fix ql alerts
2025-10-17 01:52:23 +02:00
yoff
61a3e9630f
java: rewrite conflict detection
...
- favour unary predicates over binary ones
(the natural "conflicting access" is binary)
- switch to a dual solution to trade recursion through forall for simple existentials.
Co-authored-by: Anders Schack-Mulligen <aschackmull@github.com >
2025-10-17 01:43:04 +02:00
REDMOND\brodes
ef6f0222f2
Crypto: Addressing FPs in BadMacOrderMacOnEncryptPlaintext
2025-10-16 16:11:42 -04:00
REDMOND\brodes
5923e5cbb0
Crypto: Bad expected files in last push.
2025-10-16 15:45:27 -04:00
REDMOND\brodes
700f34e53a
Crypto: Bad Mac use tests, and fix for BadMacOrderMacOnEncryptPlaintext (barriers were blocking flow through an encrypt to a subsequent mac on the same plaintext)
2025-10-16 15:44:57 -04:00
REDMOND\brodes
b9b0037e07
Crypto: Comment todo for observed missing modeled case. Tests for weak and unknown KDF iteration count.
2025-10-16 14:07:45 -04:00
Paolo Tranquilli
4aef1ba9d1
Rust: clean up
2025-10-16 17:20:41 +02:00
REDMOND\brodes
3f36b09b3c
Crypto: Rename tests for weak asymmetric key gen size.
2025-10-16 11:18:36 -04:00
Paolo Tranquilli
a9ae583e14
Rust: introduce File::hasSemantics and File::isSkippedByCompilation
2025-10-16 17:08:12 +02:00
REDMOND\brodes
a64a24d25d
Crypto: Comment in Language.qll
2025-10-16 11:03:49 -04:00
REDMOND\brodes
79ccef3a58
Crypto: Initial sketch for unknown hash, the model needs to recognize unknowns but where the algorithm category (e.g., hashing) is known.
2025-10-16 11:03:16 -04:00
Taus
3c2635767e
Misc: Add script for patching the query history
...
Adds `patch_query_history.py` in the `misc/scripts` directory. Its
function is to extend the existing VSCode query history with a new entry
whose JSON evaluator log summary points at a log that was created
outside of VSCode.
This enables the use of e.g. the Performance Comparison View on runs
that were not initiated from within VSCode.
2025-10-16 15:00:43 +00:00
REDMOND\brodes
d2598d4f5d
Crypto: Updating weak hash tests
2025-10-16 10:56:08 -04:00
REDMOND\brodes
4860034d41
Crypto: Weak Hash test cases update and expected file.
2025-10-16 10:40:53 -04:00
Geoffrey White
5d95fad467
Rust: Changes suggested by Copilot (with effect on tests).
2025-10-16 14:59:06 +01:00
Simon Friis Vindum
68d4240c26
C++: Add change note
2025-10-16 15:56:11 +02:00
Simon Friis Vindum
9502d83f2c
C++: Add debug predicates
2025-10-16 15:05:48 +02:00
Simon Friis Vindum
c1f0f3da96
C++: Handle guard phi nodes differently
2025-10-16 15:05:46 +02:00
Simon Friis Vindum
99103a5741
C++: Add additional test for range analysis
2025-10-16 15:05:45 +02:00
Simon Friis Vindum
8896a7210b
C++: Add number of bounds test to simple range analysis
2025-10-16 15:05:44 +02:00
Simon Friis Vindum
7eacd87343
C++: Apply widening based on number of bounds measure
2025-10-16 15:05:42 +02:00
Geoffrey White
397563dd0e
Rust: Accept consistency check .expected changes.
2025-10-16 13:54:11 +01:00
Nora Dimitrijević
e120e5c3ba
Merge pull request #20337 from d10c/d10c/python-overlay-compilation-plus-extractor
...
Python: enable overlay compilation + extractor overlay support
2025-10-16 14:49:01 +02:00
Geoffrey White
d4a599c51d
Rust: Accept more minor test expectation changes.
2025-10-16 12:41:49 +01:00
Geoffrey White
b933f8df89
Merge branch 'main' into gen1
2025-10-16 12:38:59 +01:00
Geoffrey White
8f7d3798ad
Rust: Allow rows to be direct sources of taint as well.
2025-10-16 12:14:50 +01:00
Geoffrey White
f310d535ae
Rust: Add models.
2025-10-16 12:07:54 +01:00
Geoffrey White
08ca643cd3
Rust: Test sources for mysql and mysql_async.
2025-10-16 11:55:24 +01:00
Geoffrey White
75a34a4881
Merge pull request #20631 from geoffw0/mysql
...
Rust: Model mysql and mysql_async query sinks
2025-10-16 11:42:33 +01:00
Geoffrey White
ee86655742
Rust: Update another affected test.
2025-10-16 11:37:57 +01:00
Geoffrey White
c56de30248
Rust: Fix merge conflict in .expected file.
2025-10-16 11:16:54 +01:00
Geoffrey White
c30e9a96d4
Rust: Accept changes to other test expectations.
2025-10-16 11:00:29 +01:00
Geoffrey White
217508e2c2
Merge branch 'main' into gen1
2025-10-16 09:35:29 +01:00
Geoffrey White
1936abaaee
Merge pull request #20650 from geoffw0/mv2
...
Rust: Rename stdlib model files to be consistent with others.
2025-10-16 08:47:47 +01:00
Simon Friis Vindum
744b11e421
Merge pull request #20543 from paldepind/rust/model-actix-web
...
Rust: Add models for actix-web
2025-10-16 08:48:06 +02:00
REDMOND\brodes
25599e9b4b
crypto: Update JCA model macs to take into consideration update calls (use prior pattern for signatures). Misc. bug fixes.
2025-10-15 16:25:36 -04:00
Geoffrey White
510597666a
Rust: Change note.
2025-10-15 20:31:47 +01:00
Geoffrey White
612e95b7a4
Rust: More deduplication.
2025-10-15 20:31:46 +01:00
Geoffrey White
483ab5929a
Rust: Combine and expand some of the models.
2025-10-15 20:31:43 +01:00
REDMOND\brodes
15e266db94
Crypto: Tweaks to bad crypto ordering queries.
2025-10-15 14:20:40 -04:00
REDMOND\brodes
9a6aac1300
Crypto: To get unreferenced parameters as general sources for Java, I've included the caveat that if a function is called, all the calls appear to be in test files.
2025-10-15 14:20:16 -04:00
REDMOND\brodes
c6174fbb93
Crypto: remove precision tag
2025-10-15 14:10:16 -04:00
Geoffrey White
ea6c7cfba0
Rust: Generalize stdlib 'a as b' models.
2025-10-15 19:08:05 +01:00
Geoffrey White
072eca233d
Rust: Update consistency check .expected.
2025-10-15 16:50:47 +01:00
Geoffrey White
eb1555c45e
Rust: Update the suite list .expected files.
2025-10-15 16:08:08 +01:00
Geoffrey White
f4a6efa9e0
Rust: Rename stdlib model files to be consistent with others.
2025-10-15 16:02:42 +01:00
REDMOND\brodes
631e482fd6
Crytpo: when key encapsulation or cipher operations have multiple modes at a node, the node name must reflect that it may be any mode.
2025-10-15 11:01:49 -04:00
Geoffrey White
c68112fb60
Rust: Move the CWE-328 test.
2025-10-15 15:24:25 +01:00
Geoffrey White
c7f0e41660
Rust: Move the existing CWE-327 test.
2025-10-15 15:24:14 +01:00
Geoffrey White
9dcc0a0d81
Rust: Move rust/weak-sensitive-data-hashing to CWE-327.
2025-10-15 15:14:16 +01:00
Geoffrey White
48ca04bc40
Rust: Repair test annotations following format and accept .expected changes.
2025-10-15 15:00:28 +01:00
Geoffrey White
28c139abfb
Rust: Format the test.
2025-10-15 14:42:12 +01:00
Geoffrey White
5544dfff6d
Update rust/ql/test/query-tests/security/CWE-089/mysql.rs
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-10-15 14:31:10 +01:00
REDMOND\brodes
c7be23e1fe
Crypto: Remove all precision tags from all experimental queries. Precision is largely in flux while the models are being developed.
2025-10-15 09:22:04 -04:00
REDMOND\brodes
bf9a249624
Crypto: Experimental queries for mac ordering
2025-10-15 08:06:50 -04:00
REDMOND\brodes
ee08385e31
Crytpo: Update JCA keyagreement to type conversion, XDH is a type of ECDH.
2025-10-15 08:06:19 -04:00
Jeroen Ketema
129c8bf2e0
Merge pull request #20639 from jketema/swift-trace
...
Swift: Make tracer config handle resource-dirs passed to clang
2025-10-15 13:16:15 +02:00
Asger F
c6577c8590
JS: Avoid magic and improve a join in type resolution
2025-10-15 11:54:28 +02:00
Simon Friis Vindum
70a8c4f37f
C++: Add range analysis examples that explode
2025-10-15 11:42:17 +02:00
Joe Farebrother
f57526eedc
Merge pull request #20572 from joefarebrother/java-httponly-cookie-promote
...
Java: Promote Sensitive Cookie without HttpOnly query from experimental
2025-10-15 10:28:40 +01:00
Simon Friis Vindum
8aaf9f696a
C++: Factor out widening of bounds
2025-10-15 11:11:45 +02:00
Anders Schack-Mulligen
b196714794
SSA: Add a shared signature for SSA and a module to implement it.
2025-10-15 11:01:58 +02:00
Jeroen Ketema
9fc8faa048
Swift: Address review comments
2025-10-15 10:09:13 +02:00
Napalys Klicius
7bf677d056
Merge pull request #20644 from Napalys/napalys/remove_quality_syntax_err
...
JS: remove quality tag from SyntaxError query
2025-10-15 09:45:02 +02:00
Napalys Klicius
45e8164f14
JS: remove quality tag from SyntaxError query
2025-10-15 09:07:11 +02:00
Joe Farebrother
e95e1a0386
Update integration test
2025-10-14 16:27:28 +01:00
Joe Farebrother
d8b37d0cde
Review suggestions - update comments and description
2025-10-14 16:03:40 +01:00
Paolo Tranquilli
b6aee67b42
Pytest: fix the build-as-test mode on Windows
...
This mode (enabled with `--codeql=build-as-test` or setting
`PYTEST_CODEQL=build-as-test` in the environment) is an experimental
mode that makes the pytest dist installation run as a test. This
allows to avoid running the installation in case nothing changed in the
dist, leveraging bazel's test caching mechanism, and accelrating the
dev loop when working on integration test code. This mode might become
the default for devs in the future.
Up until now, this mode was only working on POSIX systems. This commit
fixes it on Windows. The issue was `native_test` being unable to wrap
a `py_binary` target because of an `.exe` suffix mismatch. Turning the
`native_test` into a full-fledged `py_test` solves the issue.
2025-10-14 15:44:07 +02:00
Owen Mansel-Chan
2e0915ebed
Add missing links to "Creating path queries"
2025-10-14 13:21:52 +01:00
Henry Mercer
c2309a9aca
Merge pull request #20638 from github/post-release-prep/codeql-cli-2.23.3
...
Post-release preparation for codeql-cli-2.23.3
2025-10-14 13:03:22 +01:00
Jeroen Ketema
b6b3767460
Swift: Make tracer config handle resource-dirs passed to clang
2025-10-14 13:50:36 +02:00
Anders Schack-Mulligen
da0b168b2e
Merge pull request #20627 from hvitved/csharp/property-descriptor-get-value-neutral
...
C#: Add neutral model for `System.ComponentModel.PropertyDescriptor.GetValue`
2025-10-14 13:31:40 +02:00
github-actions[bot]
6dd07790ac
Post-release preparation for codeql-cli-2.23.3
2025-10-14 11:16:33 +00:00
Henry Mercer
aa3000df13
Merge pull request #20637 from github/henrymercer/update-expected-output
...
Actions: Update `SecretExfiltration` output for typo fix
2025-10-14 11:47:18 +01:00
Henry Mercer
b737bccb07
Python: Fix "be be" typos in qhelp
2025-10-14 11:33:24 +01:00
Henry Mercer
5310469d69
Actions: Update SecretExfiltration output for typo fix
2025-10-14 11:33:01 +01:00
Henry Mercer
836e3958a9
Merge pull request #20635 from github/release-prep/2.23.3
...
Release preparation for version 2.23.3
2025-10-14 11:17:48 +01:00
Henry Mercer
17352a101d
Rephrase C++ BMN changelog note
2025-10-14 11:13:23 +01:00
Henry Mercer
9466279909
Prefer code quotes for BMN
2025-10-14 11:10:42 +01:00
Henry Mercer
9507ec0853
Fix "be be" typos
2025-10-14 11:09:43 +01:00
github-actions[bot]
33542f7d40
Release preparation for version 2.23.3
2025-10-14 09:30:24 +00:00
REDMOND\brodes
55bbcee301
Crypto: Make WeakAsymmetricKeyGenSize a path problem.
2025-10-13 17:04:29 -04:00
REDMOND\brodes
7e8acd76c3
Crypto: Update WeakAsymmetricKeyGenSize to a path problem.
2025-10-13 15:48:32 -04:00
REDMOND\brodes
8b5a42328e
Crypto: Convert ReusedNonce.ql into a path problem.
2025-10-13 15:34:41 -04:00
REDMOND\brodes
7847e92670
Crypto: Update KDF iteration and count to be path problems
2025-10-13 15:30:53 -04:00
REDMOND\brodes
76128ed8dc
Crypto: Update InsecureIVorNonce to be a path problem.
2025-10-13 15:29:57 -04:00
Geoffrey White
93eb7ce1af
Rust: Accept test changes following suggested edit.
2025-10-13 19:28:40 +01:00
Geoffrey White
35f3fbf357
Rust: Accept consistency regressions.
2025-10-13 19:19:18 +01:00
REDMOND\brodes
bd068c2a69
Crypto: Updating expected file for weak asymmetric key gen size.
2025-10-13 12:08:07 -04:00
REDMOND\brodes
4b241d7065
Crypto: adding initial weak hash query overhaul and tests, but no expected file yet.
2025-10-13 12:04:51 -04:00
REDMOND\brodes
08abdb8c85
Crypto: Adding a "javaConstant" concept to handle config files.
2025-10-13 12:03:41 -04:00
Geoffrey White
1d7ccb6f2b
Update rust/ql/lib/codeql/rust/frameworks/mysql.model.yml
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-13 16:42:36 +01:00
yoff
ab78f2b724
Merge pull request #20630 from github/tausbn/python-fix-importerror-in-imp
...
Python: Fix `ImportError` in `imp.py` under Python 3.14
2025-10-13 17:31:47 +02:00
Simon Friis Vindum
d9c76f258e
Rust: Add suggested model for into_inner for tuples
2025-10-13 16:22:03 +02:00
Simon Friis Vindum
9e2ee04879
Merge branch 'main' into rust/model-actix-web
2025-10-13 16:04:12 +02:00
Joe Farebrother
9cb593b020
Update tests
2025-10-13 14:51:37 +01:00
Joe Farebrother
093b04f79f
Update comments
2025-10-13 14:51:30 +01:00
Joe Farebrother
696ec29dae
Upgrade integration tests
2025-10-13 14:51:24 +01:00
Joe Farebrother
1c54296545
Add change note
2025-10-13 14:51:17 +01:00
Joe Farebrother
c4781146c0
Remove experimental query and tests
2025-10-13 14:51:10 +01:00
Joe Farebrother
c799f93811
Update tests and add inline expectations
2025-10-13 14:51:04 +01:00
Joe Farebrother
e1cf3d30d2
Update documentation, rename things and add more comments to explain how the implementation works, remove filter for test code (prefer to filter in code scanning ui than in query logic)
2025-10-13 14:50:57 +01:00
Joe Farebrother
54aefe0dce
Copy experimental query to main
2025-10-13 14:50:51 +01:00
Taus
c4b27d5f28
Python: Fix ImportError in imp.py under Python 3.14
...
It seems `_ERR_MSG` was silently removed in Python 3.14, leading to an
`ImportError` when running the extractor.
To fix this, we explicitly set `_ERR_MSG` when the existing import fails
(using `_ERR_MSG_PREFIX` which is available in Python 3.14+, along with
the bits that make up the difference between this and `_ERR_MSG`).
2025-10-13 13:50:43 +00:00
Mathias Vorreiter Pedersen
b57243e073
Merge pull request #20579 from aschackmull/shared/rangeanalysis-joinorder
...
Rangeanalysis: Fix a bad join-order in boundedPhiRankStep.
2025-10-13 14:46:48 +02:00
Michael B. Gale
e65f8eacbc
Merge pull request #20609 from github/dependabot/go_modules/go/extractor/extractor-dependencies-5148baeadc
...
Bump the extractor-dependencies group in /go/extractor with 2 updates
2025-10-13 10:33:14 +01:00
dependabot[bot]
500421d891
Bump the extractor-dependencies group in /go/extractor with 2 updates
...
Bumps the extractor-dependencies group in /go/extractor with 2 updates: [golang.org/x/mod](https://github.com/golang/mod ) and [golang.org/x/tools](https://github.com/golang/tools ).
Updates `golang.org/x/mod` from 0.28.0 to 0.29.0
- [Commits](https://github.com/golang/mod/compare/v0.28.0...v0.29.0 )
Updates `golang.org/x/tools` from 0.37.0 to 0.38.0
- [Release notes](https://github.com/golang/tools/releases )
- [Commits](https://github.com/golang/tools/compare/v0.37.0...v0.38.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/mod
dependency-version: 0.29.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
- dependency-name: golang.org/x/tools
dependency-version: 0.38.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-10-13 03:14:48 +00:00
Tom Hvitved
2577452849
C#: Add neutral model for System.ComponentModel.PropertyDescriptor.GetValue
2025-10-12 09:06:54 +02:00
REDMOND\brodes
e76ced1513
Crypto: Updating weak asymmetric key gen to include key exchange.
2025-10-10 15:32:39 -04:00
REDMOND\brodes
d68f3cff8b
Crypto: InsecureIVorNonceSource now ignored null to avoid being too noisy.
2025-10-10 14:51:16 -04:00
REDMOND\brodes
ffd191d0e1
Crypto: missing new endpoint to get the creating operation for a key if known.
2025-10-10 14:50:50 -04:00
REDMOND\brodes
36673659ad
Crypto: Weak asymmetric key gen size fixes and test.
2025-10-10 14:49:35 -04:00
REDMOND\brodes
758759a304
Crypto: Reused nonce query updates and test updates to address false positives.
2025-10-10 12:25:31 -04:00
Geoffrey White
106bad2764
Rust: Add test cases for bad use of prepared statements as well.
2025-10-10 17:17:08 +01:00
Geoffrey White
c102ce41b7
Rust: Claim support for the two libraries.
2025-10-10 17:12:48 +01:00
Geoffrey White
859c1ef55d
Rust: Change note.
2025-10-10 17:11:20 +01:00
Geoffrey White
f16742bf74
Rust: Add models.
2025-10-10 17:09:46 +01:00
Michael B. Gale
47632cdbd1
C#: Improve log messages in DotNetCliInvoker
2025-10-10 17:08:24 +01:00
Owen Mansel-Chan
944e116cc0
Add path query example to other lang data flow docs
2025-10-10 16:22:50 +01:00
Geoffrey White
f15a34f361
Rust: Add test cases for transactions as well.
2025-10-10 16:10:57 +01:00
Geoffrey White
883e00558a
Rust: Add test cases for the mysql_async library.
2025-10-10 16:10:56 +01:00
Geoffrey White
ef93b364da
Rust: Add test cases for the mysql library.
2025-10-10 15:05:21 +01:00
Owen Mansel-Chan
3c80690ba8
Fix link syntax
2025-10-10 13:58:19 +01:00
Michael Nebel
9ec0c9d5f2
C#: Add change note.
2025-10-10 14:06:45 +02:00
Michael Nebel
56ff0baba3
C#: Use * IDs for source locations.
2025-10-10 14:03:49 +02:00
Michael Nebel
ab9f78fee2
Merge pull request #20617 from michaelnebel/csharp/unboundlocations
...
C#: Reduce location TRAP creation for Fields, Parameters, Constructors, Destructors and Operators.
2025-10-10 13:47:57 +02:00
Tom Hvitved
d842107633
Merge pull request #20621 from hvitved/rust/static-target-addressable
...
Rust: Include tuple structs/variants in `CallExprBase.getStaticTarget()`
2025-10-10 13:00:28 +02:00
Michael Nebel
b8c3a28de3
C#: Add change note.
2025-10-10 11:47:19 +02:00
Owen Mansel-Chan
100463572b
Add path query example to python data flow docs
2025-10-10 10:37:09 +01:00
Owen Mansel-Chan
2930e793f1
Fix mistakes in Go data flow examples in docs
2025-10-10 10:36:23 +01:00
Owen Mansel-Chan
87f32dc49f
Merge pull request #20613 from owen-mc/go/sanitize-simpletypes-request-forgery
...
Go: sanitize simple types in `go/request-forgery`
2025-10-10 09:15:30 +01:00
Tom Hvitved
0fc2875527
Rust: Include tuple structs/variants in CallExprBase.getStaticTarget()
2025-10-10 09:48:08 +02:00
Owen Mansel-Chan
2c6af0cdb7
Merge pull request #20580 from owen-mc/codeowners-for-shared-libs-and-catchall
...
Add code owners for `/shared/` and a catch-all
2025-10-09 16:31:17 +01:00
Michael Nebel
e8fd843e52
C#: Update some tuple related tests.
2025-10-09 16:33:47 +02:00
Owen Mansel-Chan
11f20457e2
Fix team name
2025-10-09 14:15:07 +01:00
REDMOND\brodes
fba80870a6
Crypto: Example query reorg - moving queries of this PR into 'examples' subdirectories.
2025-10-09 09:03:00 -04:00
REDMOND\brodes
deb43735be
Crypto: Minor fixes to WeakSymmetricCipher, change to a singular name for consistency.
2025-10-09 08:39:39 -04:00
yoff
5109babd92
java: add qldoc
...
These interfaces were previously in a .ql file.
Also, use the XXAccess variants.
2025-10-09 14:20:28 +02:00
REDMOND\brodes
3dedda4233
Merge branch 'santander-java-crypto-check' of https://github.com/bdrodes/codeql into santander-java-crypto-check
2025-10-09 08:18:04 -04:00
REDMOND\brodes
c6cc4fff51
Crypto: Minor fixes to WeakBlockModes, WeakHash to consider SHA3 ok, Added unknown hash.
2025-10-09 08:16:28 -04:00
Michael Nebel
89681a49e6
C#: Only extract the unbound locations for constructors, destructors and user defined operators and use this in the QL code.
2025-10-09 14:13:27 +02:00
Michael Nebel
02428fc467
C#: Add some location examples for constructors, destructors and operators.
2025-10-09 14:13:24 +02:00
Michael Nebel
051b83f036
C#: Only extract the unbound location for fields and parameters and use this location in the QL code.
2025-10-09 14:04:13 +02:00
Michael Nebel
f200c3ce85
C#: Add field location example.
2025-10-09 14:04:10 +02:00
Michael Nebel
b9eae31172
C#: Add parameter locations test.
2025-10-09 14:04:08 +02:00
Nicolas Will
fdba3acc4b
Crypto: Fix QL-for-QL alert and auto-format
2025-10-09 13:59:51 +02:00
yoff
1ad239459f
java: move shared code into Concurrency.qll
2025-10-09 13:36:35 +02:00
Owen Mansel-Chan
37151791b4
Add change notes
2025-10-09 12:26:32 +01:00
Owen Mansel-Chan
3cbce80d0b
Add SimpleTypeSanitizer to go/request-forgery
2025-10-09 12:17:21 +01:00
Owen Mansel-Chan
7599fdd8fa
Add request forgery test for numeric type
2025-10-09 12:17:19 +01:00
Owen Mansel-Chan
0c9cd09140
Make NumericOrBooleanSanitizer easier to access and rename it
2025-10-09 12:17:17 +01:00
yoff
f90e9dbb5e
java: favour inline_late over inline
...
This gives much greater control over the join-order
2025-10-09 13:01:25 +02:00
yoff
26c1b2f143
java: adjust test expectations; new queries are enabled in extended
2025-10-09 12:29:42 +02:00
Idriss Riouak
f52e3dcb7f
Merge pull request #20601 from github/idrissrio/java-localhost
...
Java integration test: wait for test servers to come up before running test
2025-10-09 10:57:11 +02:00
Geoffrey White
a7c166d161
Merge pull request #20599 from geoffw0/rust-ga-change-note
...
Rust: Add change note for Rust GA.
2025-10-09 08:51:44 +01:00
yoff
830f02af1f
java: fixes from the CI bots
2025-10-09 09:37:31 +02:00
yoff
93fc287ef1
java: add auto-generated overlay annotations
2025-10-09 09:25:57 +02:00
yoff
a1671ea8af
java: small cleanups
...
- add missing qldoc
- remove use of `getErasure`
- remove use of `getTypeDescriptor`
- define `ExposedField`
2025-10-09 09:16:25 +02:00
yoff
821b1de5b3
java: inline char pred
2025-10-09 09:16:25 +02:00
yoff
01ddc11fa7
java: address some review comments
2025-10-09 09:16:25 +02:00
yoff
77734f83d5
java: better detection of thread safe fields.
...
Identified by triage of DCA results.
Previously, we did not use the erased type, so would not recgnize `CompletableFuture<R>`.
We now also recognize safe initializers.
2025-10-09 09:16:25 +02:00
yoff
bf138693a3
java: update expectations for java-code-quality suite
2025-10-09 09:16:07 +02:00
yoff
096d5f2a56
java: implement SCC contraction of the call graph
...
Our monitor analysis would be fooled by cycles in the call graph,
since it required all edges on a path to a conflicting access to be either
- targetting a method where the access is monitored (recursively) or
- monitored locally, that is the call is monitored in the calling method
For access to be monitored (first case) all outgoing edges (towards an access) need
to satisfy this property. For a loop, that is too strong, only edges out of the loop
actually need to be protected. This led to FPs.
2025-10-09 09:14:16 +02:00
yoff
5b30153113
java: add Escaping query (P1)
2025-10-09 09:14:16 +02:00
yoff
328b53576a
java: add SafePublication query (P2)
2025-10-09 09:14:16 +02:00
yoff
fe487e8bf0
java: add ThreadSafe query (P3)
...
Co-authored-by: Raúl Pardo <raul.pardo@protonmail.com >
Co-authored-by: SimonJorgensenMancofi <simon.jorgensen@mancofi.dk >
Co-authored-by: Bjørnar Haugstad Jåtten <bjornjaat@hotmail.com >
2025-10-09 09:14:16 +02:00
idrissrio
546d59ff9d
Java: Wait for test HTTP servers to be ready before running buildless test
2025-10-09 08:37:54 +02:00
REDMOND\brodes
f524de4afc
Crypto: Updating insecure iv/nonce to consider if an operation is known for it, and if so do not alert on non-secure random if it is tied to decryption
2025-10-08 16:27:18 -04:00
REDMOND\brodes
7a57496c54
Crypto: Missing test update.
2025-10-08 14:16:47 -04:00
REDMOND\brodes
11e81395b5
Crypto: Updated default flows to use taint tracking (this is needed to fix false positives in the unknown IV/Nonce query). Add the unknown IV/Nonce query and associated test cases. Fix unknown IV/Nonce query to focus on cases where the oepration isn't known or the operation subtype is not encrypt or wrap.
2025-10-08 14:14:17 -04:00
REDMOND\brodes
75b5a9fda8
Crypto: Update general regression test results to account for removal of JCA random source.
2025-10-08 12:55:11 -04:00
REDMOND\brodes
8e10e1937d
Crypto: Adding query for unknown IV initialization.
2025-10-08 12:49:54 -04:00
REDMOND\brodes
83ff70bcd8
Crypto: Adding tests for insecure iv or nonce. Updating generic literal sources to include array literals.
2025-10-08 12:47:58 -04:00
Jon Janego
83519a9fcc
Merge pull request #20606 from github/changedocs-2.23.2
...
changedocs for 2.23.2
2025-10-08 11:07:58 -05:00
Jon Janego
4534d67107
Merge branch 'main' into changedocs-2.23.2
2025-10-08 11:00:45 -05:00
Jon Janego
9c610e8bab
Update links in CodeQL CLI changelog
2025-10-08 10:57:17 -05:00
Owen Mansel-Chan
2f22acdd06
Remove hashing example when not covered by query
2025-10-08 16:48:57 +01:00
Jon Janego
f8626cd417
changedocs for 2.23.2
2025-10-08 10:42:10 -05:00
REDMOND\brodes
bd34b6ce02
Crypto: Removing JCA model of random, need to reassess this as this impacts the insecure IV/Nonce query. Updated name of the Insecure nonce query to be InsecureIVorNonce
2025-10-08 11:41:21 -04:00
REDMOND\brodes
143be8cc35
Crypto: Remove redundant queries.
2025-10-08 10:26:05 -04:00
REDMOND\brodes
1b1b333e8b
Crypto: Modify suggested queries per misc. side conversations on standards. Remove redundant query. Fix QL-for-QL issues.
2025-10-08 10:21:06 -04:00
REDMOND\brodes
cf88e3f52d
Crypto: Standardize naming where use of "family" and "type" have been used. Prefer 'type'.
2025-10-08 09:54:53 -04:00
REDMOND\brodes
bba541c016
Merge remote-tracking branch 'upstream/java-crypto-check' into santander-java-crypto-check
2025-10-08 09:30:26 -04:00
Owen Mansel-Chan
0bcdb91639
Improve qhelp for broken crypto algo queries
...
Previously it focussed too much on the risk of data being decrypted,
and didn't explain why using weak algorithms is a problem in other
contexts.
2025-10-08 14:10:54 +01:00
Owen Mansel-Chan
2a1c9d8ec1
Remove erroneous comma
2025-10-08 14:08:36 +01:00
Owen Mansel-Chan
90db349f4b
State that ruby broken crypto algo doesn't deal with hashing
2025-10-08 14:05:00 +01:00
Geoffrey White
d39c8d155c
Merge pull request #20574 from geoffw0/rustga3
...
Rust: Docs updates
2025-10-08 11:04:29 +01:00
Anders Schack-Mulligen
2d9b249367
Merge pull request #20600 from aschackmull/java/constant-exp-fix
...
Java: Fix bug in ConstantExpAppearsNonConstant.
2025-10-08 11:40:50 +02:00
Michael Nebel
4cc6a07620
Merge pull request #20593 from michaelnebel/csharp/reducetypeparameterandtuplelocations
...
C#: Reduce Type Parameter- and Tuple type location extraction.
2025-10-08 11:36:32 +02:00
Anders Schack-Mulligen
99f5dcaaa4
Java: Fix bug in ConstantExpAppearsNonConstant.
2025-10-08 10:32:51 +02:00
Michael Nebel
cdfa58645a
C#: Add change-note.
2025-10-08 10:14:51 +02:00
Idriss Riouak
28fe20e3e4
Merge pull request #20595 from github/idrissrio/java-lambda
...
Java: Add integration test for buildless lambda recovery
2025-10-08 09:53:29 +02:00
Paolo Tranquilli
75a7507017
Merge pull request #20590 from github/redsun82/rust-test-compatibility
...
Rust: test with the 1.90 toolchain
2025-10-08 09:00:30 +02:00
Asger F
10c9b747a5
Merge pull request #20586 from asgerf/js/api-graphs-block-this
...
JS: Restrict receiver-flow in API graphs
2025-10-08 08:41:56 +02:00
Geoffrey White
8a2be0910c
Rust: Add change note for Rust GA.
2025-10-07 23:10:31 +01:00
Ian Lynagh
2918d30697
Merge pull request #20597 from github/igfoo/bmn-ga
...
C++: Add a changenote for C/C++ BMN GA
2025-10-07 22:57:32 +01:00
Alexander Eyers-Taylor
825d3709d8
Merge pull request #20386 from github/alexet/overlay-informed-dataflow
...
Dataflow: Overlay informed dataflow.
2025-10-07 20:22:57 +01:00
Alex Eyers-Taylor
77d4af153d
Java: Make some query libraries local.
2025-10-07 18:24:37 +01:00
Alex Eyers-Taylor
193cd46a76
DataFlow: Adress comments on overlay informed dataflow
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
7a8d2392ee
Daatflow: Fix bug
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
542bdf0792
Java: Use Overlay dataflow in java.
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
3c110f2eb8
DataFlow: Add code for merging base with overlay.
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
c49e2ab2da
DataFlow: Add code to do overlay informed dataflow.
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
82e4fc9f0f
AlertFiltering: Expose filtering further.
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
8c02130bcf
DataFlow: Rearrange files to group the parts that can be shared with overlay aware.
2025-10-07 17:52:12 +01:00
Ian Lynagh
791a92b146
C++: Add a changenote for C/C++ BMN GA
2025-10-07 17:32:36 +01:00
idrissrio
f69e5f5ffc
Java: Accept new test results after extractor changes
2025-10-07 16:55:53 +02:00
idrissrio
55b15a261a
Java: Add integration test for buildless lambda recovery
2025-10-07 16:55:52 +02:00
Michael Nebel
eb84b1441a
C#: Add some locations tests for type parameters and tuple types.
2025-10-07 15:26:33 +02:00
Michael Nebel
f0842e430d
C#: Respect the context when extracting locations for type parameters and tuple typles.
2025-10-07 15:26:31 +02:00
Anders Schack-Mulligen
18e33b193e
Merge pull request #20589 from aschackmull/java/array-entrypoint-read-taint
...
Java: Allow taint-read-steps for array sources.
2025-10-07 15:04:03 +02:00
Michael Nebel
ea4d4751f3
Merge pull request #20581 from michaelnebel/csharp/reducetyplocationtuples
...
C#: Reduce location tuple extraction for named types.
2025-10-07 14:50:36 +02:00
Paolo Tranquilli
122b7ebba8
Rust: accept test changes
2025-10-07 14:49:08 +02:00
Michael Nebel
584d8c5377
C#: Add change-note.
2025-10-07 14:24:21 +02:00
Anders Schack-Mulligen
7dadbc43fb
Java: Add change note.
2025-10-07 13:51:49 +02:00
Owen Mansel-Chan
b0c8fcda35
Merge pull request #20591 from owen-mc/shared/update-inline-expectations-qldoc
...
Shared: Correct comment about empty `.expected` file
2025-10-07 12:47:11 +01:00
Anders Schack-Mulligen
f0bfd7053e
Java: Add test case.
2025-10-07 13:40:44 +02:00
Owen Mansel-Chan
db9bb83898
Move rule for /ql/ for consistency
2025-10-07 12:33:32 +01:00
Owen Mansel-Chan
f83b80a584
Add codeql-alert-coverage-eng as catch-all
2025-10-07 12:32:38 +01:00
Owen Mansel-Chan
101d2ddd4f
Use new team for shared library reviewers
2025-10-07 12:12:49 +01:00
Kasper Svendsen
0396756cd9
Merge pull request #20184 from Marcono1234/patch-1
...
Doc: Fix link to `warnOnImplicitThis` GitHub docs
2025-10-07 13:08:32 +02:00
Kasper Svendsen
74fb46c849
Merge branch 'main' into patch-1
2025-10-07 12:59:56 +02:00
Owen Mansel-Chan
bf76cab7e0
Correct comment about empty .expected file
2025-10-07 11:48:25 +01:00
Idriss Riouak
c809cce170
Merge pull request #20588 from github/idrissrio/macos-26
...
Java: Fix buildless test HTTP server binding on macOS26
2025-10-07 12:17:51 +02:00
Paolo Tranquilli
ace2ff5775
Rust: test with the 1.90 toolchain
2025-10-07 11:32:20 +02:00
Nora Dimitrijević
c749607db8
Bump python extractor version to 7.1.5
2025-10-07 11:22:16 +02:00
Anders Schack-Mulligen
11665bea0a
Java: Allow taint-read-steps for array sources.
2025-10-07 10:10:02 +02:00
Michael Nebel
f9d62a0efc
C#: Narrow the use of unbound declaration locations to nested types.
2025-10-07 09:43:39 +02:00
idrissrio
5c6d187ef2
Java: Fix buildless test HTTP server binding on macOS26
2025-10-07 09:24:55 +02:00
Nicolas Will
e2a8d58e02
Merge pull request #20583 from bdrodes/jca_signature_extensions
...
Crypto: Add JCA signatures, RNG, and unit tests
2025-10-06 18:51:30 +02:00
REDMOND\brodes
cb812b47ed
Crypto: more non-ascii removal.
2025-10-06 11:53:39 -04:00
Nicolas Will
9e278b9fa4
Merge pull request #20258 from bdrodes/java_nonce_reuse_tests
...
Crypto: Add reuse nonce test for Java
2025-10-06 17:42:25 +02:00
REDMOND\brodes
017a956d5e
Crypto: more non-ascii removal.
2025-10-06 11:34:45 -04:00
REDMOND\brodes
abeb3141b1
Crypto: Formatting test cases, more removal of non-ascii
2025-10-06 10:46:09 -04:00
Michael Nebel
6149608c03
C#: Always use the unbound type declaration location for type location.
2025-10-06 16:41:12 +02:00
Michael Nebel
b362b4657f
C#: Add some examples with nested types.
2025-10-06 16:40:13 +02:00
Nicolas Will
15e9bb9cc1
Format Test and update .expected
2025-10-06 16:29:25 +02:00
REDMOND\brodes
96f6832a6f
Crypto: Updating expected files for unit tests.
2025-10-06 10:07:15 -04:00
REDMOND\brodes
606aef38cb
Crypto: Removing non-ascii characters from unit tests
2025-10-06 09:56:14 -04:00
Ben Rodes
b32a6407b9
Update java/ql/lib/experimental/quantum/JCA.qll
...
Co-authored-by: Nicolas Will <nicolaswill@github.com >
2025-10-06 09:04:19 -04:00
Idriss Riouak
4a1157bff9
Merge pull request #20491 from github/idrissrio/java-maven
...
Java: Integration tests for Maven 4
2025-10-06 14:57:22 +02:00
Nicolas Will
378eb18db5
Merge branch 'main' into jca_signature_extensions
2025-10-06 14:50:15 +02:00
Nicolas Will
579da1dbd6
Fix QL-for-QL alerts
2025-10-06 14:45:45 +02:00
Michael Nebel
7b61a5fffa
C#: Update some test expected output that uses the location of the implicit constructor.
2025-10-06 14:02:17 +02:00
Michael Nebel
0ba9b80d08
C#: Add some more partial class related tests.
2025-10-06 14:02:15 +02:00
Michael Nebel
12dc65d170
C#: For implicit constructors, pick a unique source location as reporting location (if any).
2025-10-06 14:02:13 +02:00
Michael Nebel
b5592ad42f
C#: Add partial class example.
2025-10-06 14:02:12 +02:00
Michael Nebel
0cd7c37209
C#: Avoid extracting duplicate type locations.
2025-10-06 14:02:10 +02:00
Michael Nebel
f2b45b8726
C#: Add type locations test.
2025-10-06 14:02:07 +02:00
Geoffrey White
1c8ee0af89
Rust: Fix backticks.
2025-10-06 11:40:41 +01:00
Geoffrey White
a31c10c4fa
Apply suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2025-10-06 11:37:40 +01:00
Nora Dimitrijević
ece121070b
Add change note.
2025-10-06 12:31:21 +02:00
Nora Dimitrijević
9d7c52423a
Basic python overlay tests
...
The base source is in basic-overlay-eval/orig_src,
the overlay source is in basic-full-eval.
We run two tests: a full evaluation test in basic-full-eval,
and an overlay evaluation test in basic-overlay-eval.
The test source and expected results are the SAME,
due to the .qlref, meaning we expect the same results
for full and overlay evaluation.
2025-10-06 12:30:08 +02:00
Nora Dimitrijević
20d4e429ca
Add consistency query (exactly one path for every entity)
2025-10-06 11:47:56 +02:00
Nora Dimitrijević
7174d4c8ba
Overlay.qll: discard predicates
...
for dbscheme elements with direct or indirect location links in dbscheme.
- Unify discardable entities under one Discardable superclass.
- Two discard predicates depending on TRAP ID type.
- Future-proof the XML and Yaml discard predicates for when their
extractors become incremental.
2025-10-06 11:47:51 +02:00
Nora Dimitrijević
1a9683f986
Add @top database type
2025-10-06 11:47:14 +02:00
Nora Dimitrijević
6f208e9dec
Write overlay metadata at end of extraction.
2025-10-06 11:47:12 +02:00
Nora Dimitrijević
49b18db044
Python extractor: in overlay mode, traverse only changed files
...
- fall back to full extraction on overlay changes json read error
- we filter both root modules and (transitive) imports against the overlay-changes json.
2025-10-06 11:47:09 +02:00
Asger F
587ad5c600
JS: Refine criteria so that explicit this-passing is not affected
2025-10-06 11:43:18 +02:00
Asger F
4d33190241
JS: Restrict this-argument passing in API graphs
2025-10-06 11:42:36 +02:00
Asger F
84c788a027
JS: Add API graph test for explicit 'this' passing
2025-10-06 11:40:40 +02:00
Nora Dimitrijević
e0cf719cb9
Path transformer: handle Windows-style paths
...
And don't add slash to start of path patterns on Windows.
2025-10-06 11:37:04 +02:00
Nora Dimitrijević
29b1a7403b
Support CODEQL_PATH_TRANSFORMER env var in python path renamer
...
The new name is required by overlay support.
2025-10-06 11:37:02 +02:00
Nora Dimitrijević
1574b5fd91
Add synthetic data to dbscheme.stats for databaseMetadata/overlayChangedFiles
2025-10-06 11:37:00 +02:00
Nora Dimitrijević
1c3a7f2b1e
Add database upgrade/downgrade scripts
2025-10-06 11:36:58 +02:00
Nora Dimitrijević
a88d3397cd
Add overlay builtins to python dbscheme
2025-10-06 11:36:56 +02:00
Nora Dimitrijević
4c9ca93cdf
Turn on overlay support in codeql-extractor.yml
2025-10-06 11:36:54 +02:00
Nora Dimitrijević
dac50fa0c1
Enable overlay compilation in lib/qlpack.yml
2025-10-06 11:36:51 +02:00
idrissrio
a22ec2d9c6
Java: Accept new test results after extractor changes
2025-10-06 11:18:16 +02:00
idrissrio
f6b6a007b1
Java: Add integration tests for Maven 4
2025-10-06 11:18:15 +02:00
Simon Friis Vindum
1f2cca7d00
Merge pull request #20547 from paldepind/rust/function-as-lambda
...
Rust: Handle functions as data flow lambdas
2025-10-06 10:15:55 +02:00
REDMOND\brodes
9fa30a3884
Crypto: Updating algorithm string literals and key generation algorithm literal sources to include signatures.
2025-10-03 18:09:27 -04:00
REDMOND\brodes
9c5765a48c
Crypto: Add missing string constants for signature algorithms.
2025-10-03 17:17:07 -04:00
REDMOND\brodes
66e9d7671d
Crypto: Add jca unit tests.
2025-10-03 13:32:02 -04:00
REDMOND\brodes
f4fea6d635
Crypto: Fix consistency update with "other" vs "unknown" naming convetions for openssl.
2025-10-03 12:10:48 -04:00
REDMOND\brodes
f1eb6511a7
Crypto: Add modeling for JCA signatures. Make consistent use of "unknown" or "other" for unrecognized types.
2025-10-03 12:07:37 -04:00
Anders Schack-Mulligen
84a65bef43
C#: Add change note.
2025-10-03 16:29:56 +02:00
Anders Schack-Mulligen
fad49ffbfb
C++: Accept qltest change (useless guard tautology removed).
2025-10-03 15:59:54 +02:00
Anders Schack-Mulligen
613c789378
C#: Remove some obsolete tests.
2025-10-03 15:29:36 +02:00
Anders Schack-Mulligen
b392767252
C#: Accept qltest changes.
2025-10-03 15:29:35 +02:00
Anders Schack-Mulligen
df6172b1f3
C#: Update nullness qltest
2025-10-03 15:29:35 +02:00
Anders Schack-Mulligen
64810f6fb5
C#: Improve ConstantCondition.ql
2025-10-03 15:29:34 +02:00
Anders Schack-Mulligen
587901bc8a
C#: Replace NullMaybe.ql implementation.
2025-10-03 15:29:34 +02:00
Anders Schack-Mulligen
6cfadbfe90
C#: Clean up.
2025-10-03 15:29:33 +02:00
Anders Schack-Mulligen
c2d21e95b9
C#: Instantiate ControlFlowReachability and implement new nullness.
2025-10-03 15:29:33 +02:00
Anders Schack-Mulligen
449059f1ac
C#: Disable FinallySplit, BooleanSplit, and LoopSplit
2025-10-03 15:29:32 +02:00
Anders Schack-Mulligen
b52a9a818c
C#: Instantiate shared Guards.
2025-10-03 15:29:32 +02:00
Anders Schack-Mulligen
c01ac307b0
Guards: Disregard more trivial guards.
2025-10-03 15:29:31 +02:00
Anders Schack-Mulligen
ca7d56023a
ControlFlow: Rename getAPhiInput to getAnInput.
2025-10-03 15:29:31 +02:00
Anders Schack-Mulligen
64caae554a
Guards: Refactor representation of false.
2025-10-03 15:29:30 +02:00
Simon Friis Vindum
402d58bc3a
Merge pull request #20553 from paldepind/rust-ruby/update-cargo-deps
...
Rust, ruby: Update cargo dependencies
2025-10-03 14:50:55 +02:00
Owen Mansel-Chan
ef1fe6cabc
Add code owners for /shared/
2025-10-03 10:40:45 +01:00
Anders Schack-Mulligen
2e9e357d7e
Rangeanalysis: Fix a join-order.
2025-10-03 10:52:52 +02:00
Jeroen Ketema
7807804f4d
Merge pull request #20573 from MathiasVP/fix-bad-magic-on-get-file
...
C++: Fix bad magic on `Element.getFile`
2025-10-03 01:21:32 +02:00
Owen Mansel-Chan
218c2a59eb
Merge pull request #14751 from owen-mc/go/feature/use-use-flow
...
Go: Switch from def-use flow to use-use flow
2025-10-02 23:53:54 +01:00
REDMOND\brodes
a46bd4c4ca
Crypto: JCA random number generation model.
2025-10-02 15:21:28 -04:00
REDMOND\brodes
507174e44f
Crypto: Fix bug in MacOperationNode constructor with detecting if the operation is also used for signatures.
2025-10-02 15:20:59 -04:00
Geoffrey White
479e735e77
Rust: Mirror information from supported-versions-compilers.rst in system-requirements.rst.
2025-10-02 19:00:30 +01:00
Geoffrey White
fb738f2d02
Rust: Update creating-path-queries.rst.
2025-10-02 18:36:39 +01:00
Ben Rodes
e823d80f0c
Merge branch 'main' into java_nonce_reuse_tests
2025-10-02 13:31:40 -04:00
Geoffrey White
3b1d6cd3d9
Rust: Add missing link (to existing doc).
2025-10-02 18:31:26 +01:00
Nicolas Will
cbe34f101b
Merge pull request #19944 from bdrodes/signature_model_refactor
...
Crypto: Refactor Model and signatures, fix models, add unit tests
2025-10-02 19:30:46 +02:00
Geoffrey White
4ec18c8a79
Rust: Remove the experimental note in supported-frameworks.rst.
2025-10-02 18:21:52 +01:00
Nicolas Will
4901cdf929
Crypto: Refactor and change casts to super
2025-10-02 18:43:38 +02:00
Mathias Vorreiter Pedersen
bc0b87632d
C++: Fix bad magic on Element.getFile when running on InconsistentCheckReturnNull.qll:
...
Evaluated non-recursive predicate Element::Element.getFile/0#dispred#536cb5f3#bb@f6f5329i in 182326ms (size: 50437).
Evaluated relational algebra for predicate Element::Element.getFile/0#dispred#536cb5f3#bb@f6f5329i with tuple counts:
2029351 ~0% {2} r1 = SCAN `Expr::Expr.getLocation/0#dispred#0a3d90c6` OUTPUT In.1, In.0
2029351 ~0% {2} | JOIN WITH `Location::Location.getStartLine/0#d54f9e6c` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
1168789 ~0% {2} | JOIN WITH `InconsistentCheckReturnNull::assertInvocation/2#b2a4c9e3_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
5533128288 ~0% {3} | JOIN WITH `Location::Location.getContainer/0#9edabfb6_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0
50413 ~0% {2} | JOIN WITH `Element::Element.getLocation/0#dispred#6c3f5b09#bf` ON FIRST 2 OUTPUT Lhs.0, Lhs.2
3043 ~0% {2} r2 = JOIN `project#InconsistentCheckReturnNull::relevantFunctionCall/2#d18cd566` WITH `Expr::Expr.getLocation/0#dispred#0a3d90c6` ON FIRST 1 OUTPUT Rhs.1, Lhs.0
3043 ~0% {2} r3 = JOIN r2 WITH locations_default ON FIRST 1 OUTPUT Rhs.4, Lhs.1
1945 ~3% {2} | JOIN WITH `InconsistentCheckReturnNull::assertInvocation/2#b2a4c9e3_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
9106248 ~2% {3} | JOIN WITH `Location::Location.getContainer/0#9edabfb6_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0
0 ~0% {2} | JOIN WITH `Element::Element.getLocation/0#dispred#6c3f5b09#bf` ON FIRST 2 OUTPUT Lhs.0, Lhs.2
3043 ~0% {3} r4 = JOIN r2 WITH locations_default ON FIRST 1 OUTPUT _, Lhs.1, Rhs.4
3043 ~0% {2} | REWRITE WITH Tmp.0 := 1, Out.0 := (In.2 + Tmp.0) KEEPING 2
2013 ~0% {2} | JOIN WITH `InconsistentCheckReturnNull::assertInvocation/2#b2a4c9e3_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
9621327 ~0% {3} | JOIN WITH `Location::Location.getContainer/0#9edabfb6_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0
24 ~3% {2} | JOIN WITH `Element::Element.getLocation/0#dispred#6c3f5b09#bf` ON FIRST 2 OUTPUT Lhs.0, Lhs.2
50437 ~0% {2} r5 = r1 UNION r3 UNION r4
return r5
2025-10-02 17:36:21 +01:00
Owen Mansel-Chan
f35d28de45
Change note for bug fix in go/unvalidated-url-redirection
2025-10-02 17:03:55 +01:00
Owen Mansel-Chan
cce44b1f54
Update change notes for api changes
2025-10-02 16:52:16 +01:00
Owen Mansel-Chan
4d4862899e
Preserve old behaviour of Write.writesComponent
2025-10-02 16:50:18 +01:00
REDMOND\brodes
9673b81677
Crypto: Update JCA 'wihHmac" raw name to be the entire raw string, not just "Hmac"
2025-10-02 11:49:23 -04:00
REDMOND\brodes
704a06e1fa
Crypto: Update JCA PBKDF2 modeling: 1) add further inheritance structures to make the inheritance decomposition and caveats clearer, and 2) use getConsumer to establish the hash and hmac consumer. Update the Model to expect hash node types specifically for HMAC getHashALgorithmOrUnknown.
2025-10-02 11:45:13 -04:00
Owen Mansel-Chan
d8891e34d1
Small improvement to go/unhandled-writable-file-close
2025-10-02 15:15:51 +01:00
REDMOND\brodes
850c1ec12d
Crypto: Fix use of a member where a singleton set literal exists
2025-10-02 09:20:40 -04:00
REDMOND\brodes
b08533b322
Crypto: Fix missing output variable
2025-10-02 09:10:50 -04:00
REDMOND\brodes
c37b7c1389
Merge branch 'signature_model_refactor' of https://github.com/bdrodes/codeql into signature_model_refactor
2025-10-02 09:05:09 -04:00
REDMOND\brodes
38421cec94
Crypto: Missing casing fix for JCA classes
2025-10-02 09:04:23 -04:00
Ben Rodes
d251b3f9f7
Merge branch 'main' into signature_model_refactor
2025-10-02 09:02:34 -04:00
REDMOND\brodes
329a7dee1c
Crypto: Fixing JCA class naming casing for PBKDF2 classes.
2025-10-02 09:02:17 -04:00
Tom Hvitved
b4c979f586
Merge pull request #20548 from hvitved/rust/macro-call-resolution
...
Rust: Macro call resolution
2025-10-02 14:54:10 +02:00
Jeroen Ketema
a34d6d484a
Merge pull request #20485 from MathiasVP/use-shared-guards-library
...
C++: Switch to the shared Guards library
2025-10-02 14:19:49 +02:00
Owen Mansel-Chan
7fdda87b06
Fix go/impossible-interface-nil-check for separate post-update nodes
...
When tracing back from nil checks on interfaces, ignore post-update
nodes. There will always be a corresponding pre-update node that
contains the information we want.
2025-10-02 12:34:58 +01:00
Michael Nebel
b5aa972bd1
Merge pull request #20525 from michaelnebel/csharp/reducelocationtuples
...
C#: Reduce location tuples.
2025-10-02 12:32:35 +02:00
Michael Nebel
57efa05215
C#: Add change note.
2025-10-02 11:34:14 +02:00
Tom Hvitved
f8b104d174
Rust: Use doubleBoundedFastTC for resolving $crate paths
2025-10-02 11:22:56 +02:00
Philip Ginsbach
d889fa8d39
Merge pull request #20571 from github/ginsbach/MoreAnnotationDocs
...
document `extensible` and `additional` in QL reference and spec
2025-10-02 09:11:06 +01:00
Philip Ginsbach
a2d31be152
improve the wording based on PR review feedback
2025-10-02 09:02:20 +01:00
Michael Nebel
4f833ca7fe
Merge pull request #20513 from ewillonermsft/systemwebhttprequest-test-stubs
...
Add additional SystemWeb HttpRequset properties to C# test stubs
2025-10-02 09:22:55 +02:00
Michael Nebel
191dae47fd
C#: Add a stub for the System.Uri class for the CWE-611 test.
2025-10-01 14:44:54 -07:00
ewillonermsft
6f57e5a13e
Merge branch 'main' into systemwebhttprequest-test-stubs
2025-10-01 14:33:09 -07:00
REDMOND\brodes
d49efefefa
Crypto: Fix for non-monotonic recursion in JCA
2025-10-01 14:36:26 -04:00
Mark C
f38ab45e94
removed all @security.severity ratings to keep the main impartial
2025-10-01 17:49:45 +01:00
Mathias Vorreiter Pedersen
011739cbd9
Merge branch 'main' into use-shared-guards-library
2025-10-01 17:21:05 +01:00
Mathias Vorreiter Pedersen
6eb2aad7da
Merge pull request #20569 from aschackmull/guards/uniquevalue-perf
...
Guards: Improve performance for phi nodes with many incoming constant values.
2025-10-01 17:19:42 +01:00
Owen Mansel-Chan
2629369c93
Improve additional flow step for Host field
2025-10-01 16:18:05 +01:00
Philip Ginsbach
f0b39099e3
discuss 'extensible' whenever the spec mentions 'external'
2025-10-01 16:18:04 +01:00
Owen Mansel-Chan
c006777714
Simplify PathAssignmentBarrier
2025-10-01 16:18:03 +01:00
Philip Ginsbach
3159b299f7
member predicates cannot be 'external'
2025-10-01 16:18:02 +01:00
Owen Mansel-Chan
6d6852fb8d
Test PathAssignmentBarrier for OpenUrlRedirect
2025-10-01 16:18:02 +01:00
Philip Ginsbach
341a1191a3
language reference section on 'extensible' annotation
2025-10-01 16:18:00 +01:00
Owen Mansel-Chan
f0f5fc7eac
Improve SSRF additional flow step
2025-10-01 16:18:00 +01:00
Philip Ginsbach
bd3bcf981a
language reference section on 'additional' annotation
2025-10-01 16:17:58 +01:00
Owen Mansel-Chan
c9ce2c8043
Add test for assignment to Url.Host field
2025-10-01 16:17:58 +01:00
Owen Mansel-Chan
8b04d0a2b9
Convert SSRF tests to inline expectations tests
2025-10-01 16:17:57 +01:00
Philip Ginsbach
7893768cb2
update annotation docs to reference type unions
2025-10-01 16:17:55 +01:00
Philip Ginsbach
8160ef6e81
update annotation docs to reference signatures
2025-10-01 16:17:53 +01:00
Owen Mansel-Chan
6e4dbe8e22
Fix SafeUrlFlow so test passes
2025-10-01 16:17:52 +01:00
Owen Mansel-Chan
620ae33e0c
Make SafeUrlFlow test more comprehensive (failing)
2025-10-01 16:17:04 +01:00
REDMOND\brodes
92dac0341c
Crypto: Adding necessary model interfaces for MacOperationCall in JCA.
2025-10-01 11:13:37 -04:00
Owen Mansel-Chan
8a21a4ff92
Deprecate WriteNode.writesComponent
2025-10-01 16:13:33 +01:00
Owen Mansel-Chan
59e3c14a5e
Add and use WriteNode.writesElementPreUpdate
2025-10-01 16:13:31 +01:00
Owen Mansel-Chan
6fcd35885e
Fix pointer content store step for write to field of pointer dereference
2025-10-01 16:13:29 +01:00
Owen Mansel-Chan
2ffb638b7e
Delete WriteNode.writesFieldOnSsaWithFields
...
This can be easily expressed in terms of `WriteNode.writesFieldPreUpdate`.
2025-10-01 16:13:27 +01:00
Owen Mansel-Chan
489b8431ea
Add and use WriteNode.writesFieldPreUpdate
2025-10-01 16:13:25 +01:00
Owen Mansel-Chan
c9a2816bfe
Fix OpenUrlRedirect barrier for write to Url.Host
2025-10-01 16:13:24 +01:00
Owen Mansel-Chan
414bab1f30
Add OpenUrlRedirect tests for Url.Host field
2025-10-01 16:13:22 +01:00
Owen Mansel-Chan
1144bb99b4
Convert OpenUrlRedirect tests to InlineExpectations
2025-10-01 16:13:21 +01:00
Owen Mansel-Chan
7b426186aa
Rephrase change note to avoid technical terms
2025-10-01 16:13:19 +01:00
Owen Mansel-Chan
630a8446ad
Rename confusing predicate and add qldoc
2025-10-01 16:13:17 +01:00
Owen Mansel-Chan
b1bcbec37d
Use slightly less confusing syntax
2025-10-01 16:13:15 +01:00
Owen Mansel-Chan
1d9a93a731
Rename helper predicate
2025-10-01 16:13:14 +01:00
Owen Mansel-Chan
4ee236d73f
Delete commented out code
2025-10-01 16:13:12 +01:00
Owen Mansel-Chan
25f182302d
Fix email injection sink that needs local flow
2025-10-01 16:13:10 +01:00
Owen Mansel-Chan
f5f6d64d9d
Add change notes
2025-10-01 16:13:08 +01:00
Owen Mansel-Chan
52b6539697
Typo
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-01 16:13:06 +01:00
Owen Mansel-Chan
a9420d46c8
Fix bad join order
2025-10-01 16:13:04 +01:00
Owen Mansel-Chan
6cb69535a5
Add missing qldocs
2025-10-01 16:13:03 +01:00
Owen Mansel-Chan
5efc8ac1a4
Fix backwards flow through TaintTracking::FunctionModel
...
We only do this for taint models as there isn't any backwards flow
through data flow function models.
2025-10-01 16:13:01 +01:00
Owen Mansel-Chan
3906f2560d
Adjust Stack Exposure test so it passes
...
A minor bug in our CFG means that we evaluate the base of a
SliceExpr before the bounds. Since the bounds may have side
effects, as in this case, it would be better to evaluate them first.
But in the short term I am just adjusting the test to make it work.
2025-10-01 16:12:59 +01:00
Owen Mansel-Chan
62155876c5
Fix flow to variable capture
...
The jump step to a `SsaCaptureVariable` should start at the last use
before it, rather than from the previous definition.
2025-10-01 16:12:57 +01:00
Owen Mansel-Chan
748c53a791
Refactor: Create writesFieldOnSsaWithFields
2025-10-01 16:12:56 +01:00
Owen Mansel-Chan
cf6cfe2a1e
Non-initializing writes should target post-update nodes
2025-10-01 16:12:54 +01:00
Owen Mansel-Chan
8a3bd8408b
Fix test expectations for Cleartext Logging
...
One spurious alert was removed, one missing alert was added, and some
source locations changed.
2025-10-01 16:12:52 +01:00
Owen Mansel-Chan
3229630598
Make store step to send stmt's channel use post-update node
2025-10-01 16:12:51 +01:00
Owen Mansel-Chan
ac71f9cd8e
Expected change in test output
...
These sources are now modeled using models-as-data, which (probably
correctly) uses the post-update node as the source. But the deprecated
QL models still exist, so we get two test results for each of these
calls.
2025-10-01 16:12:49 +01:00
Owen Mansel-Chan
d2230c531d
Expected changes in test output
2025-10-01 16:12:47 +01:00
Owen Mansel-Chan
118def8d28
Make separate post-update nodes
2025-10-01 16:12:45 +01:00
Owen Mansel-Chan
a0c647ce83
Add Email Injection tests for reverse flow models
2025-10-01 16:12:43 +01:00
Owen Mansel-Chan
9892836f14
Switch order of PUN test output
2025-10-01 16:12:42 +01:00
Owen Mansel-Chan
89ae0e3bf3
Inline predicate only used once
2025-10-01 16:12:40 +01:00
Owen Mansel-Chan
05a16dc100
Convert post-update logic to IR (part 3)
2025-10-01 16:12:38 +01:00
Owen Mansel-Chan
ad1801827b
Implement writesComponent at IR level
2025-10-01 16:12:37 +01:00
Owen Mansel-Chan
203952fa47
Convert post-update logic to IR (part 2)
...
Note that we don't create post-update nodes for method receivers if the
call to the method is indirect, via a function variable. We could aim to
do this in future.
2025-10-01 16:12:35 +01:00
Owen Mansel-Chan
c8b8e25fbb
Convert post-update logic to IR (part 1)
2025-10-01 16:12:34 +01:00
Owen Mansel-Chan
7a515c101a
Pull out post-update node logic into predicate
2025-10-01 16:12:32 +01:00
Owen Mansel-Chan
d13d7173ed
Fix QLDoc typo
2025-10-01 16:12:30 +01:00
Owen Mansel-Chan
14301e0af4
Expected changes in dataflow edges
2025-10-01 16:12:28 +01:00
Owen Mansel-Chan
c20abf6d58
Line numbers change because 3 lines were added
2025-10-01 16:12:27 +01:00
Owen Mansel-Chan
521066578b
Test result that was missing is now found
2025-10-01 16:12:25 +01:00
Owen Mansel-Chan
3594dba83c
Make insecure randomness test more realistic
2025-10-01 16:12:24 +01:00
Owen Mansel-Chan
32de2113a6
Use _ instead of exists variable x2
2025-10-01 16:12:22 +01:00
Chris Smowton
a3eb0100a6
Optimise join order for varBlockReaches
2025-10-01 16:12:21 +01:00
Owen Mansel-Chan
9068315f03
Fix IncorrectIntegerConversion for use-use flow
...
We were assuming that `sink` only had one successor, the TypeCastNode, but it
can now have an adjacent use as well.
2025-10-01 16:12:19 +01:00
Owen Mansel-Chan
b2a9cecd69
Fix Allocation Size Overflow for use-use flow
...
We have an operator expression like `x * 5`. We want to follow where the
value of the operator expression goes. We used to follow local flow from
an operand, but now there is flow from that operand to the next use of
the variable. The fix is to explicitly start local flow from the
operator expression.
There are also some expected edge changes due to use-use flow.
2025-10-01 16:12:18 +01:00
Owen Mansel-Chan
4e04d27d32
Adjust SafeFormatArgumentSanitizer to use-use flow
...
Make it sanitize the result of the call rather than the input, so that
further uses of the input are still tainted. This means that it catches
things like `log.Print(fmt.Sprintf("user %q logged in.\n", username))`
where the argument to the LoggerCall contains a StringFormatCall, but
it misses things like `log.Printf("user %q logged in.\n", username)`. So
we extract the logic into a predicate and apply it as a condition in the
sink as well.
The downside of this approach is that if there are two tainted inputs
and only one has a safe format argument then we still sanitize the
result. Hopefully this is rare.
2025-10-01 16:12:16 +01:00
Owen Mansel-Chan
49b8b0bca3
Remove local flow step from SSA defn to SSA capture
2025-10-01 16:12:15 +01:00
Owen Mansel-Chan
b4743155f6
Include first step from SsaVariableCapture
...
Without this change the test
go/ql/test/query-tests/InconsistentCode/UnhandledCloseWritableHandle/UnhandledCloseWritableHandle.qlref
was failing.
2025-10-01 16:12:14 +01:00
Owen Mansel-Chan
5267671b15
Clean up code in basicLocalFlowStep
...
No changes in functionality.
2025-10-01 16:12:12 +01:00
Owen Mansel-Chan
4484d5bfa9
Add missing QLDoc
2025-10-01 16:12:09 +01:00
Owen Mansel-Chan
16a11b48ad
Switch to use-use dataflow. This will make post-update nodes easy to implement.
...
Queries / tests that required changes:
* The CleartextLogging and MissingErrorCheck queries are updated because they assumed def-use flow
* The CommandInjection query works around the shortcomings of use-use flow by essentially reintroducing def-use flow when it applies a sanitizer
* The OpenUrlRedirect query currently just accepts its fate; the tests are updated to avoid excess sanitization while the query comments on the problem. We should choose this approach or the CommandInjection one.
2025-10-01 16:12:07 +01:00
Simon Friis Vindum
1408c245e0
Merge pull request #20557 from paldepind/rust/type-inference-delete-predicates
...
Rust: Remove member predicates on `Type`
2025-10-01 16:48:41 +02:00
Owen Mansel-Chan
ff3d795a8f
Merge pull request #20556 from owen-mc/go/test/safeurlflow
...
Go: Add tests for SafeUrlFlow, and fix a latent bug
2025-10-01 15:05:55 +01:00
Geoffrey White
f96a42c075
Merge pull request #20561 from geoffw0/basicquery
...
Rust: Add Basic query for Rust code doc
2025-10-01 14:20:11 +01:00
Owen Mansel-Chan
8983ac9212
Phrase test in terms of safe URLs
2025-10-01 14:13:15 +01:00
Tom Hvitved
dd3debc2d5
Address review comments
2025-10-01 14:41:28 +02:00
Anders Schack-Mulligen
a1028d604c
Guards: Improve performance for uniqueValue.
2025-10-01 14:08:37 +02:00
Mathias Vorreiter Pedersen
b0e9238ddf
Merge branch 'main' into use-shared-guards-library
2025-10-01 11:59:17 +01:00
Geoffrey White
b02c19b5bf
Rust: Slightly cleaner screenshots.
2025-10-01 11:59:08 +01:00
Mark C
c5cf0ffa75
added java cryptographic check queries
2025-10-01 11:55:51 +01:00
Geoffrey White
936702a0e5
Rust: Update graphics.
2025-10-01 11:49:54 +01:00
Mathias Vorreiter Pedersen
353ee8baa0
C++: Port a test from the experimental directory to show that it works in the non-experimental "new" range analysis.
2025-10-01 11:33:47 +01:00
Chris Smowton
f5ae5bed47
Merge pull request #20560 from smowton/smowton/fix/start-in-constructor-fp
...
Java: note that classes with entirely private constructors can't be subclassed
2025-10-01 11:16:50 +01:00
Geoffrey White
2c7291d27e
Rust: Fix toctree bug.
2025-10-01 11:12:29 +01:00
Ben Ahmady
513dcf1cb4
Merge branch 'main' into basicquery
2025-10-01 11:02:19 +01:00
Owen Mansel-Chan
c93852d87a
Improve comments in test file
2025-10-01 11:01:58 +01:00
Simon Friis Vindum
daf0cf1c1b
Rust: Rename predicates
2025-10-01 11:43:51 +02:00
Owen Mansel-Chan
dd3f754cb3
Add change note.
2025-10-01 09:32:00 +01:00
Simon Friis Vindum
a359a24c9e
Merge pull request #20559 from paldepind/rust/string-add-ref
...
Rust: Add taint model for add on `String`
2025-10-01 09:38:54 +02:00
Geoffrey White
372b5870b1
Merge pull request #20554 from geoffw0/docs1
...
Rust: Consistency fix for reusables/extractors.rst.
2025-09-30 17:41:05 +01:00
Geoffrey White
92122fef58
Rust: statement -> expression.
2025-09-30 15:48:26 +01:00
Geoffrey White
d9955ce93c
Merge pull request #20503 from geoffw0/cookie
...
Rust: New query rust/insecure-cookie
2025-09-30 15:26:37 +01:00
Tom Hvitved
537e7a8ec3
Rust: Fix formatting
2025-09-30 16:24:38 +02:00
Tom Hvitved
701cff3ca4
Rust: Macro call resolution
2025-09-30 16:21:02 +02:00
Owen Mansel-Chan
a2a9575587
Add tests for safe URL flow
2025-09-30 15:05:42 +01:00
Simon Friis Vindum
19871a2653
Rust: Accept test changes
2025-09-30 15:26:30 +02:00
Geoffrey White
771d9345b5
Merge branch 'main' into basicquery
2025-09-30 14:19:00 +01:00
Mathias Vorreiter Pedersen
ca53a8e787
C++: Update QLDoc.
2025-09-30 14:15:55 +01:00
Mathias Vorreiter Pedersen
1b2bd30a29
Update cpp/ql/lib/semmle/code/cpp/controlflow/IRGuards.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2025-09-30 14:14:19 +01:00
Chris Smowton
f88daff45f
Java: note that classes with entirely private constructors can't be subclassed
2025-09-30 13:57:44 +01:00
Simon Friis Vindum
49efd574a0
Rust: Add taint model for add on String
2025-09-30 14:48:03 +02:00
Idriss Riouak
fa8cbeeb44
Merge pull request #20546 from github/idrissrio/ql-constant
...
Java: Fix false positives in evaluation-to-constant query for ErrorType
2025-09-30 14:24:28 +02:00
Chris Smowton
ff4b97bf2d
Reword
2025-09-30 13:08:03 +01:00
Simon Friis Vindum
c878af2b9d
Rust: Remove member predicates on Type
2025-09-30 13:28:33 +02:00
Owen Mansel-Chan
5b07e8c9c4
Fix bug in UnsafeFieldReadSanitizer
2025-09-30 12:05:06 +01:00
Owen Mansel-Chan
b5fda88bd3
Remove duplication of UnsafeFieldReadSanitizer
2025-09-30 12:04:39 +01:00
idrissrio
63771110a5
Java: Address review comment
2025-09-30 11:46:37 +02:00
Michael Nebel
018ccb3354
C#: Update locations test expected output.
2025-09-30 11:33:28 +02:00
Michael Nebel
d7a2c7da18
C#: Adjust the QL library to use the locations of the unbound declarations.
2025-09-30 11:33:26 +02:00
Michael Nebel
b2cbac3250
C#: Temporarily update the test expected file.
2025-09-30 11:33:23 +02:00
Michael Nebel
443c183e41
C#: Only extract locations for unbound declarations (if a declaration can be unfound) and don't extract empty locations.
2025-09-30 11:33:21 +02:00
Michael Nebel
e9901305b2
C#: Rename GeneratedLocation to EmptyLocation and make sure that we always create one such location.
2025-09-30 11:33:19 +02:00
Michael Nebel
5843fdbdd8
C#: Add a locations example.
2025-09-30 11:33:17 +02:00
Geoffrey White
90a7a58929
Merge pull request #20515 from geoffw0/libs
...
Rust: Update Supported languages and frameworks
2025-09-30 09:56:09 +01:00
Geoffrey White
a286631018
Merge pull request #20512 from geoffw0/stmtlist
...
Rust: Improve StmtList
2025-09-30 09:53:55 +01:00
Nick Rolfe
9688d84f3e
Merge pull request #20549 from github/post-release-prep/codeql-cli-2.23.2
...
Post-release preparation for codeql-cli-2.23.2
2025-09-30 09:45:22 +01:00
Simon Friis Vindum
ef80ff416f
Bazel: regenerate vendored cargo dependencies
2025-09-30 10:28:42 +02:00
Simon Friis Vindum
4846cf4791
Cargo: upgrade dependencies
2025-09-30 10:21:17 +02:00
Chris Smowton
f1239352ce
Note issue in related query
2025-09-29 18:43:59 +01:00
Chris Smowton
18c5cb10d9
Ruby: Update CSRF protection notes in documentation
...
Autofix is confused about how the `protect_from_forgery` method works in Rails >= 5: GPT-5 says:
> In modern Rails versions (>=5, including 6 and 7 which this gem permits), ActionController::Base already enables CSRF protection by default with the `:exception` strategy; an explicit call to `protect_from_forgery` without options does not weaken security.
This is false: manual testing confirms that it actually does downgrade from `:exception` to `:null-session` behaviour when a manual call is made.
I can't find any authoritative source showing this gotcha, so I can see how the AI is confused and how humans might also struggle to verify the truth.
2025-09-29 18:42:11 +01:00
github-actions[bot]
a7a4e43991
Post-release preparation for codeql-cli-2.23.2
2025-09-29 15:10:19 +00:00
Nick Rolfe
a05ffdbc81
Merge pull request #20545 from github/release-prep/2.23.2
...
Release preparation for version 2.23.2
2025-09-29 15:35:24 +01:00
Nick Rolfe
a76d736136
C#: tweak changelog wording
2025-09-29 15:32:52 +01:00
Simon Friis Vindum
98a20f9820
Rust: Add change note
2025-09-29 14:58:34 +02:00
Simon Friis Vindum
37ffe82ac9
Rust: Handle functions as lambdas
2025-09-29 14:49:04 +02:00
Simon Friis Vindum
0728692e93
Rust: Add tests for functions as lambdas
2025-09-29 14:46:53 +02:00
idrissrio
b82d8c2252
Java: Accept new test results after query change
2025-09-29 13:38:01 +02:00
idrissrio
659afb5f30
Java: Fix false positives in evaluation-to-constant query for ErrorType
2025-09-29 13:37:25 +02:00
idrissrio
e0444c531b
Java: Add integration test for constant expr detection
2025-09-29 13:37:20 +02:00
Simon Friis Vindum
84c6a3a376
Rust: Add change note for actix-web models
2025-09-29 13:03:10 +02:00
Kasper Svendsen
b52fff2f81
Merge pull request #20505 from kaspersv/kaspersv/future-proof-java-discarding2
...
Overlay: Discard Java config and XML base entities in overlay extracted files
2025-09-29 13:01:08 +02:00
github-actions[bot]
d2130a589b
Release preparation for version 2.23.2
2025-09-29 10:28:45 +00:00
Simon Friis Vindum
6b7d5d2902
Rust: Add models for actix-web
2025-09-29 09:14:03 +02:00
Jeroen Ketema
9dfd87c284
Merge pull request #20514 from jketema/permissive
...
C++: Update tests after extractor changes
2025-09-28 16:56:31 +02:00
Geoffrey White
c7f6f2c8e1
Rust: Consistency fix for reusables/extractors.rst.
2025-09-26 16:40:25 +01:00
Owen Mansel-Chan
18a1075e70
Merge pull request #20523 from smowton/smowton/fix/mistyped-exp-fp
...
Go: mistyped-exponentiation: notice constants with likely-bitmask values
2025-09-26 16:02:30 +01:00
Owen Mansel-Chan
f5f61193a0
Delete change note
2025-09-26 15:33:26 +01:00
Geoffrey White
1236e2b829
Rust: Add references to alternatives in the getStmtOrExpr methods.
2025-09-26 14:55:06 +01:00
Geoffrey White
a0b533bd40
Merge pull request #20529 from geoffw0/convert
...
Rust: Correct from model to taint
2025-09-26 14:48:58 +01:00
Geoffrey White
4570d7e46e
Rust: Replace getBlockChildNode with uses of getStmtOrExpr.
2025-09-26 14:32:36 +01:00
Geoffrey White
27b6f12b3c
Rust: Use the suggested cleaner implementation for getStmtOrExpr.
2025-09-26 14:30:31 +01:00
Florin Coada
ba07daa50a
Merge pull request #20532 from github/coadaflorin/changelog-fixes
...
Update changelog for CodeQL CLI 2.23.1
2025-09-26 14:21:21 +01:00
Geoffrey White
1635ef9ad9
Merge branch 'main' into convert
2025-09-26 14:11:04 +01:00
Florin Coada
5a0bae27ac
Update changelog for CodeQL CLI 2.23.1
2025-09-26 13:57:57 +01:00
Anders Schack-Mulligen
f4388c80d0
Merge pull request #20519 from aschackmull/controlflowreach/perf2
...
ControlFlow: Split only on relevant values.
2025-09-26 14:51:49 +02:00
Florin Coada
a4f5e9aaf5
Update changelog for CodeQL CLI 2.23.1
...
Added acknowledgment for the original contributor of the 'Permissive CORS configuration' query and clarified the detection of path injection in Go.
2025-09-26 13:46:12 +01:00
Florin Coada
f6fe469e02
Merge pull request #20531 from github/coadaflorin-formatingfix2
...
Fix formatting in codeql-cli-2.23.1.rst
2025-09-26 13:31:22 +01:00
Florin Coada
3e9332edfa
Fix formatting in codeql-cli-2.23.1.rst
2025-09-26 13:16:45 +01:00
Florin Coada
f8388c521e
Merge pull request #20530 from github/coadaflorin/attributer-query
...
Attribute `js/cors-permissive-configuration` to original author
2025-09-26 13:11:08 +01:00
Anders Schack-Mulligen
2c29f21004
Shared: Address review comments.
2025-09-26 13:59:53 +02:00
Tom Hvitved
615b0a0310
Merge pull request #20502 from hvitved/rust/path-resolution-check-arity
...
Rust: Check call arities in path resolution
2025-09-26 13:45:26 +02:00
Tom Hvitved
4c7b66c66a
Address review comments
2025-09-26 13:14:44 +02:00
Geoffrey White
77e7898f71
Rust: Use US spelling in comment.
2025-09-26 11:49:23 +01:00
Geoffrey White
f458149655
Rust: Remove a sentance from the qhelp.
2025-09-26 11:32:45 +01:00
Geoffrey White
57f84873b4
Rust: Split off cookieOptionalBarrier predicate (as suggested) and expand / clarify the QLDoc.
2025-09-26 11:29:17 +01:00
Geoffrey White
21fe142955
Update rust/ql/src/queries/security/CWE-614/InsecureCookie.qhelp
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-09-26 10:39:49 +01:00
Florin Coada
ba520c60d2
Update 2.1.0.md
2025-09-26 10:11:03 +01:00
Florin Coada
09833e2541
Update CHANGELOG for query promotion and acknowledgment
...
Promote 'Permissive CORS configuration' query to default suite and acknowledge contributor.
2025-09-26 10:09:30 +01:00
Florin Coada
2f96e32ec9
Update 2.1.0.md
2025-09-26 10:08:31 +01:00
Geoffrey White
3a03bb5a0b
Rust: Repair rust/hard-coded-cryptographic-value, which had an unintentional dependence on the taint flow.
2025-09-26 10:03:38 +01:00
Geoffrey White
74a350a432
Rust: Effect on tests.
2025-09-26 09:55:16 +01:00
Tom Hvitved
c52709a5f0
Merge pull request #20516 from hvitved/rust/type-inference-union-pointer-never
...
Rust: Model union, never, and pointer types
2025-09-26 10:26:05 +02:00
Tom Hvitved
7a74efcc82
Update rust/ql/lib/codeql/rust/elements/internal/UnionImpl.qll
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-09-26 09:57:13 +02:00
Geoffrey White
ff554055a6
Rust: Correct 'from' model to taint.
2025-09-26 08:43:35 +01:00
Simon Friis Vindum
6678e79239
Merge pull request #20526 from geoffw0/lock
...
Rust: Add missing Cargo.lock files
2025-09-26 08:57:21 +02:00
ewillonermsft
c89ce067a3
Merge branch 'main' into systemwebhttprequest-test-stubs
2025-09-25 12:58:34 -07:00
ewillonermsft
b267bd11e0
Update properties to getters which is inline with the actual implementation.
2025-09-25 10:37:56 -07:00
ewillonermsft
b49b84e072
Remove this[] logic from the commit.
...
Stub should not include code logic.
2025-09-25 10:10:48 -07:00
Geoffrey White
39ceadaa26
Merge pull request #20520 from geoffw0/gitignore
...
Add .orig files to the .gitignore.
2025-09-25 18:10:24 +01:00
Geoffrey White
656a7bc378
Rust: Add missing Cargo.lock files to query tests.
2025-09-25 17:40:59 +01:00
Chris Smowton
9e7a5214f3
Change note
2025-09-25 15:40:26 +01:00
Chris Smowton
e9cccb46c0
Go: mistyped-exponentiation: notice constants with likely-bitmask values
2025-09-25 15:19:40 +01:00
Tom Hvitved
1a4cfba93a
Merge pull request #20427 from felickz/ruby-framework-grape
...
Ruby: Add support for Grape Framework
2025-09-25 16:12:34 +02:00
Taus
e592fd60ff
Merge pull request #20495 from github/tausbn/python-fix-unmatchable-dollar-in-lookahead
...
Python: Fix false positive for unmatchable dollar/caret
2025-09-25 15:27:32 +02:00
Geoffrey White
dba4b5e5a9
Rust: Add images.
2025-09-25 14:21:54 +01:00
Geoffrey White
db3d177300
Rust: Port the code examples to Rust / CodeQL for Rust.
2025-09-25 14:21:53 +01:00
Geoffrey White
1211dc8f3c
Rust: Replace 'swift' with 'rust'.
2025-09-25 14:21:52 +01:00
Geoffrey White
f4758fe3e5
Rust: Add a basic-query-for-rust-code.rst (copied from Swift).
2025-09-25 14:21:51 +01:00
Geoffrey White
b22227d0f4
Add .orig files to .gitignore.
2025-09-25 14:03:39 +01:00
Anders Schack-Mulligen
109b6a1d79
ControlFlow: Split only on relevant values.
2025-09-25 15:03:35 +02:00
Mathias Vorreiter Pedersen
c1c1f60241
C++: Delete incorrect comment and add a bunch of barrier guard tests.
2025-09-25 12:56:46 +01:00
Mathias Vorreiter Pedersen
04ce4057e1
C++: Add more comments to describe the constant expression hack.
2025-09-25 12:43:57 +01:00
Mathias Vorreiter Pedersen
5b5c1de05b
C++: Fix fan-out.
2025-09-25 12:33:44 +01:00
Tom Hvitved
2a814dd37c
Rust: Model union, never, and pointer types
2025-09-25 12:33:51 +02:00
Geoffrey White
a72eb87c93
Rust: Remove one that is essentially a duplicate.
2025-09-25 10:35:47 +01:00
Geoffrey White
a45a3e427c
Rust: Update supported frameworks.
2025-09-25 10:28:10 +01:00
Joe Farebrother
cb7b1efe81
Update alert message
2025-09-25 09:52:27 +01:00
Jeroen Ketema
e41b5f2bc0
C++: Update tests after extractor changes
2025-09-25 09:52:22 +02:00
Mathias Vorreiter Pedersen
b169ccf29a
C++: Fully delete TRange.
2025-09-25 08:30:42 +01:00
ewillonermsft
b2fc68ff81
Add additional SystemWeb HttpRequset properties to C# test stubs
2025-09-24 18:24:36 -07:00
Mathias Vorreiter Pedersen
a07d03f49b
C++: Use the 'StoreInstruction' instead of the 'ReturnValueInstruction' when detecting return expressions.
2025-09-24 20:09:35 +01:00
Mathias Vorreiter Pedersen
26a8a4b3d2
C++: Add failing test demonstrating broken wrapper barrier guards.
2025-09-24 19:54:05 +01:00
Mathias Vorreiter Pedersen
b2269fb5f5
C++: Add more tests.
2025-09-24 19:06:02 +01:00
Geoffrey White
7e8e855f28
Rust: Fix bug when there are no statements.
2025-09-24 17:16:26 +01:00
Geoffrey White
93a0198326
Rust: Add a test for StmtList.
2025-09-24 17:04:39 +01:00
Geoffrey White
9bdac9d1cf
Rust: Move 'operations' test into elements subdir.
2025-09-24 17:04:38 +01:00
Geoffrey White
b12b36f302
Rust: Codegen.
2025-09-24 17:04:28 +01:00
Geoffrey White
8debce0349
Rust: Add helper predicates for accessing statements and expressions together.
2025-09-24 17:04:08 +01:00
Florin Coada
2db5f0def5
Merge pull request #20510 from github/coadaflorin-patch-1
...
Fix escape character in changelog for Go query
2025-09-24 16:18:05 +01:00
Michael B. Gale
fd6f9cd2d5
Merge pull request #20368 from github/mbg/go/support-git-source
...
Go: Support `git_source`
2025-09-24 16:14:56 +01:00
Florin Coada
86fe68bb61
Fix formatting in changelog for Go path injection query
...
2 people + 2 models managed to tackle this insurmountable task.
2025-09-24 16:12:17 +01:00
Geoffrey White
85945dba29
Rust: Codegen.
2025-09-24 16:08:06 +01:00
Geoffrey White
7459eed435
Rust: Update doc comments for StmtList predicates.
2025-09-24 16:08:04 +01:00
Geoffrey White
ab30c786a5
Rust: Accept test changes.
2025-09-24 16:08:03 +01:00
Florin Coada
6c488e6e71
Fix formatting in codeql-cli-2.23.1.rst
2025-09-24 16:01:38 +01:00
Florin Coada
f3ef6ef3c9
Fix formatting issue in changelog for Go query
2025-09-24 16:00:40 +01:00
Florin Coada
8ad6952dda
Fix escape character in changelog for Go query
2025-09-24 15:58:09 +01:00
Mathias Vorreiter Pedersen
d15e388f5c
C++: Get rid of the case range constant value with and instead implement 'rangeGuard'.
2025-09-24 15:52:10 +01:00
Michael B. Gale
8c8499229d
Configure git to use the certificate, if needed
2025-09-24 15:52:04 +01:00
Michael B. Gale
bc38b79c9a
Convert URLs to expected format
2025-09-24 15:52:04 +01:00
Michael B. Gale
4ef8ff9a0f
Append * to git_source URL if not present
...
Since `GOPRIVATE` / `GONOPROXY` expect a glob pattern
2025-09-24 15:52:03 +01:00
Michael B. Gale
a8fa1a76c4
Use git_source configurations for GOPRIVATE
2025-09-24 15:52:02 +01:00
Michael B. Gale
895399ff05
Rename proxy_configs to goproxy_servers and only store URLs
2025-09-24 15:52:01 +01:00
Michael B. Gale
23a04613c0
Set lower-case variants of HTTP_PROXY and HTTPS_PROXY
2025-09-24 15:52:00 +01:00
Michael B. Gale
711d49770f
Improve logging to include proxy vars
2025-09-24 15:51:59 +01:00
Florin Coada
e78d0571f4
Merge pull request #20508 from github/changedocs/2.23.1
...
Add changelog entry for CodeQL 2.23.1 release
2025-09-24 15:35:18 +01:00
Mathias Vorreiter Pedersen
13cde4d700
C++: Add testcase demonstrating that a ConstantValue IPA branch representing a gcc case range is a bad idea.
2025-09-24 15:34:35 +01:00
Mathias Vorreiter Pedersen
d10d5fd05e
C++: Rename in the name of consistency.
2025-09-24 15:34:03 +01:00
Geoffrey White
ed3a6fd799
Rust: Codegen.
2025-09-24 15:32:10 +01:00
Geoffrey White
ed2a14a3ec
Rust: Update doc comments for StmtList.
2025-09-24 15:28:23 +01:00
Joe Farebrother
9f5bfeb7f4
Update test output
2025-09-24 15:03:40 +01:00
Florin Coada
6e0ce9a885
Add changelog entry for CodeQL 2.23.1 release
2025-09-24 13:30:11 +01:00
Joe Farebrother
654ed9ca12
Update integration tests
2025-09-24 10:58:53 +01:00
Mathias Vorreiter Pedersen
99e1a07b8e
C++: Add a comment to the 'ConditionalBranchInstruction' case in 'additionalImpliesStep.
2025-09-24 10:58:47 +01:00
Mathias Vorreiter Pedersen
2b47ac83e8
C++: Remove superfluous inference logic.
2025-09-24 10:51:45 +01:00
Mathias Vorreiter Pedersen
b3cbdb5c1a
C++: Add QLDoc to TRange.
2025-09-24 10:39:27 +01:00
Tom Hvitved
e6b1e8ec56
Rust: Check call arities in path resolution
2025-09-24 10:19:56 +02:00
Tom Hvitved
92cced201e
Merge pull request #20496 from hvitved/rust/path-resolution-use-visibility
...
Rust: Visibility check for qualified path resolution
2025-09-24 10:19:22 +02:00
Simon Friis Vindum
26aa938acc
Merge pull request #20452 from paldepind/rust/mad-source-parameter
...
Rust, shared: Support `Parameter` in source MaD models
2025-09-24 09:37:25 +02:00
Asger F
2e8091f0fb
Merge pull request #20419 from asgerf/js/express-json-send
...
JS: Model Express json and jsonp methods
2025-09-24 09:25:32 +02:00
Joe Farebrother
85f886932d
Update changenote
2025-09-23 15:51:31 +01:00
Joe Farebrother
55fd7c85c6
Update documentation
2025-09-23 15:50:27 +01:00
Joe Farebrother
1208195d8a
Align alert messages across languages.
2025-09-23 15:46:53 +01:00
Joe Farebrother
2cffb21604
Update and fix tests
2025-09-23 15:41:09 +01:00
Chad Bentz
46d330cb21
Merge branch 'ruby-framework-grape' of github.com:felickz/codeql into ruby-framework-grape
2025-09-23 10:40:46 -04:00
Chad Bentz
37e0c30842
Add expected output for VariablesConsistency test case
2025-09-23 10:40:30 -04:00
Kasper Svendsen
f02da68c55
Overlay: Discard base XML entities in overlay extracted files
2025-09-23 12:27:51 +02:00
Kasper Svendsen
718c0abdb6
Overlay: Discard base config entities in overlay extracted files
2025-09-23 12:27:51 +02:00
Joe Farebrother
d28e8004fd
Add sensitive data heuristic
2025-09-23 10:08:08 +01:00
Chad Bentz
7a9a259c03
Merge branch 'main' into ruby-framework-grape
2025-09-22 19:29:36 -04:00
Chad Bentz
89fd9694ce
codeql query format
2025-09-22 19:25:05 -04:00
Chad Bentz
6e56c549b2
Refactor Grape method call classes to simplify handling of API instance calls for headers, request, route_param, and cookies
2025-09-22 19:21:23 -04:00
Chad Bentz
0665c39a07
Refactor GrapeHelperMethod constructor to reuse getHelperSelf to traverse dataflow instead of AST
...
- add tests to check for nested helpers
2025-09-22 19:08:34 -04:00
Tom Hvitved
1183e50435
Update rust/ql/lib/change-notes/2025-09-19-parameter-mad.md
2025-09-22 19:45:34 +02:00
Geoffrey White
5ad332e37f
Merge pull request #20432 from github/copilot/fix-f50317f8-0a91-4bb4-a01b-353dcf0f6f3f
...
Rust: Implement new query for non-HTTPS URLs (CWE-319)
2025-09-22 18:03:52 +01:00
Chad Bentz
ecd0ce65fe
Refactor GrapeHeadersBlockCall and GrapeCookiesBlockCall to simplify method call checks
2025-09-22 12:52:30 -04:00
Geoffrey White
266624dd0f
Rust: The test needs to have Source tags now.
2025-09-22 17:12:52 +01:00
Geoffrey White
86c8c3c8c0
Rust: Fix warning by making the query a path-problem.
2025-09-22 17:01:12 +01:00
Geoffrey White
6362884d16
Rust: Autoformat.
2025-09-22 16:59:11 +01:00
Geoffrey White
43ac75ed62
Rust: Address another tiny suggestion from review.
2025-09-22 16:58:07 +01:00
Geoffrey White
5b4632b432
Apply suggestions from code review
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-22 16:55:43 +01:00
Geoffrey White
cc9c4149d7
Apply suggestions from code review
2025-09-22 16:54:08 +01:00
Geoffrey White
3de191177c
Rust: Change note.
2025-09-22 16:12:30 +01:00
Geoffrey White
ae9025334e
Rust: Add the new query to suite lists.
2025-09-22 16:12:29 +01:00
Geoffrey White
4662e42584
Rust: Add examples as tests (and fix them).
2025-09-22 16:12:27 +01:00
Geoffrey White
bd07350bc3
Rust: Add qhelp and examples.
2025-09-22 16:12:26 +01:00
Geoffrey White
94afc82304
Rust: Fix an issue with the local flow.
2025-09-22 16:12:25 +01:00
Geoffrey White
a3ed83bfff
Rust: Make state transition / barrier nodes more reliable.
2025-09-22 16:12:23 +01:00
Geoffrey White
2654affeee
Rust: Account for the 'secure' and 'partitioned' attributes.
2025-09-22 16:12:22 +01:00
Geoffrey White
257a1b0179
Rust: Refactor sources, sinks into an extensions source file.
2025-09-22 16:09:30 +01:00
Geoffrey White
eadf922280
Rust: Use models-as-data, add source/sink/flow models.
2025-09-22 16:04:56 +01:00
Geoffrey White
d52b668149
Rust: Add security-severity tag.
2025-09-22 16:04:54 +01:00
Geoffrey White
7e75c1d242
Rust: Add very basic query prototype.
2025-09-22 16:04:53 +01:00
Geoffrey White
513ae2ab54
Rust: Add tests for insecure cookies.
2025-09-22 16:04:52 +01:00
Chad Bentz
b837c56bec
Refactor RootApi and GrapeApiClass constructors for improved readability; add getHelperSelf method to retrieve self parameter in helpers block.
2025-09-22 10:13:33 -04:00
Simon Friis Vindum
45b84ffb31
Rust: Ensure singleton
2025-09-22 14:23:50 +02:00
Simon Friis Vindum
4244a6569c
Rust: Add change note
2025-09-22 14:19:01 +02:00
Simon Friis Vindum
a4c61f6945
Rust: Accept test changes
2025-09-22 14:18:59 +02:00
Simon Friis Vindum
7d6e2060e5
Adapt all languages to changes in shared library
2025-09-22 14:18:58 +02:00
Simon Friis Vindum
265e8b3623
Shared: Pass SummaryComponentStack to isSource and getSourceType
2025-09-22 14:18:54 +02:00
Simon Friis Vindum
014c27ee8a
Rust: Discard sources with spaces in inline flow tests
2025-09-22 14:13:39 +02:00
Simon Friis Vindum
05a58323c1
Rust: Add Warp test to request forgery query tests
2025-09-22 14:13:38 +02:00
Simon Friis Vindum
cd807533f2
Rust: Add tests for parameter in source model
2025-09-22 14:13:37 +02:00
Joe Farebrother
463f79bed2
Merge pull request #20263 from joefarebrother/python-qual-exceptions
...
Python: Modernize the Unreachable Except Block query
2025-09-22 09:42:09 +01:00
Tom Hvitved
be260befd4
Merge pull request #20497 from hvitved/rust/missing-model
...
Rust: Add missing model
2025-09-22 10:30:25 +02:00
Napalys Klicius
a0ea0c9e47
Merge pull request #20492 from Napalys/js/graph-ql-obj-type
...
JS: mark `GraphQLObjectType` resolvers args as remote sources
2025-09-22 09:59:20 +02:00
Tom Hvitved
78641b4dde
Rust: Reduce size of unqualifiedPathLookup
2025-09-22 09:46:28 +02:00
Tom Hvitved
b5b6f06005
Rust: Fix bad join
...
```
Evaluated relational algebra for predicate _PathResolution::CrateItemNode.getName/0#dispred#91b4dd6b_PathResolution::SourceFileItemNode#bd8f490__#antijoin_rhs@e84aee8k with tuple counts:
35406180 ~0% {3} r1 = JOIN PathResolution::SourceFileItemNode#bd8f4905 WITH `PathResolution::CrateItemNode.getName/0#dispred#91b4dd6b` CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.1, Rhs.0
8455 ~2% {4} | JOIN WITH `PathResolution::declaresDirectly/3#7d0350fb_021#join_rhs` ON FIRST 2 OUTPUT Rhs.2, Lhs.0, Lhs.2, Lhs.1
3259 ~0% {3} | JOIN WITH num#PathResolution::TTypeNamespace#4897e416 ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3
return r1
```
2025-09-22 09:38:43 +02:00
Tom Hvitved
b2cc01c490
Rust: Visibility check for qualified path resolution
2025-09-22 09:38:30 +02:00
Kasper Svendsen
97d62950a8
Merge pull request #20484 from kaspersv/kaspersv/future-proof-java-discarding
...
Overlay: Future-proof Java config & XML discard predicates
2025-09-22 08:16:44 +02:00
Chad Bentz
1bf6101967
Remove redundant exclusion of base Grape::API module from GrapeApiClass
...
- should not impact extracted application code
2025-09-21 20:52:28 -04:00
Chad Bentz
50bf9ae756
Refactor RootApi class to use getAnImmediateDescendent for clarity
2025-09-21 20:44:46 -04:00
Tom Hvitved
8d5d219c0f
Rust: Update expected test output
2025-09-21 15:36:22 +02:00
Tom Hvitved
223ab5e60c
Rust: Add missing model
2025-09-21 15:28:50 +02:00
Tom Hvitved
bdeeb3217e
Rust: Add path resolution tests
2025-09-20 09:30:55 +02:00
Tom Hvitved
fdb0c6ebb5
Merge pull request #20454 from paldepind/rust/path-resolution-attribute-expansion
...
Rust: Account for attribute expansions in path resolution
2025-09-20 09:21:00 +02:00
Chad Bentz
f4bbbc346f
Refactor Grape framework to be encapsulated properly in Module
2025-09-19 19:06:50 -04:00
Chad Bentz
89e9ee43c0
Convert from GrapeHelperMethodTaintStep extends AdditionalTaintStep to a simplified GrapeHelperMethodTarget extends AdditionalCallTarget
2025-09-19 18:28:45 -04:00
Joe Farebrother
6eac6b7258
Rename qhelp file
2025-09-19 17:03:19 +01:00
Geoffrey White
c26a07bb10
Apply suggestions from code review
...
Co-authored-by: Simon Friis Vindum <simonfv@gmail.com >
2025-09-19 16:49:54 +01:00
Taus
b9f073e596
Python: Update test output
2025-09-19 15:39:12 +00:00
Geoffrey White
523ec9d633
Merge pull request #20439 from geoffw0/assignment
...
Rust: Add a couple of simple data flow test cases
2025-09-19 16:27:14 +01:00
Taus
95a84ad655
Python: Fix false positive for unmatchable dollar/caret
...
Our previous modelling did not account for the fact that a lookahead can
potentially extend all the way to the end of the input (and similarly,
that a lookbehind can extend all the way to the beginning).
To fix this, I extended `firstPart` and `lastPart` to handle lookbehinds
and lookaheads correctly, and added some test cases (all of which yield
no new results).
Fixes #20429 .
2025-09-19 15:06:46 +00:00
Joe Farebrother
a9a258e743
Add changenote
2025-09-19 15:11:02 +01:00
Joe Farebrother
2e95c2b3c2
Split test cases for insecure cookie queries
2025-09-19 14:41:02 +01:00
Alexander Eyers-Taylor
c1c0828082
Merge pull request #20378 from github/alexet/java-regex-local
...
Jave: Use force local to make parsing local after global regex finding.
2025-09-19 13:48:43 +01:00
Alexander Eyers-Taylor
27e2c4d580
Merge pull request #20459 from github/alexet/caller_tc
...
Java: Make a TC overlay caller.
2025-09-19 13:48:34 +01:00
Napalys Klicius
3a6a537986
JS: Add change note
2025-09-19 14:47:58 +02:00
Napalys Klicius
6cfc950159
JS: Model GraphQLObjectType resolve params as sources
2025-09-19 14:39:36 +02:00
Simon Friis Vindum
afb6d30762
Rust: Fix typo in superseded
2025-09-19 14:27:14 +02:00
Simon Friis Vindum
72103adacc
Rust: Fix spurious path resolution
...
The annotated impl block was filtered away, but it's children where not. This caused the associated type `Foo` to appear as if it was an item in the scope outside of the impl block.
2025-09-19 14:25:11 +02:00
Simon Friis Vindum
60ceb89f01
Rust: Add debug predicate for ItemNode
2025-09-19 14:23:44 +02:00
Napalys Klicius
d88bc8e408
JS: Add test case for GraphQLObjectType
2025-09-19 14:23:40 +02:00
Simon Friis Vindum
a9d7662bb7
Rust: Add path resolution test with attribute on impl block
2025-09-19 14:23:39 +02:00
Simon Friis Vindum
2c84b49ced
Rust: Update test expecations
2025-09-19 14:22:10 +02:00
Simon Friis Vindum
32365fd673
Rust: Account for attribute expansions in path resolution
2025-09-19 14:22:00 +02:00
Simon Friis Vindum
c7a9cc5a42
Rust: Use annotations also for items in macro expansions
2025-09-19 14:19:27 +02:00
Joe Farebrother
04316d306f
Update qhelp
2025-09-19 12:42:30 +01:00
Tom Hvitved
5d3b5424ba
Merge pull request #20453 from hvitved/rust/path-resolution-use-reexport
...
Rust: Path resolution improvements
2025-09-19 13:34:56 +02:00
Philip Ginsbach
b85ab3c0ab
Merge pull request #20490 from github/ginsbach/AdditionalAndExtensible
...
documentation: add some missing mentions of `additional` and `extensible`
2025-09-19 11:54:45 +01:00
Philip Ginsbach
b27d374578
mention 'additional' and 'extensible' annotations
2025-09-19 10:57:03 +01:00
Philip Ginsbach
a6c1ffc45d
sort the annotations alphabetically
2025-09-19 10:56:57 +01:00
Tom Hvitved
f6bdfba3b3
Rust: Path resolution improvements
2025-09-19 09:43:22 +02:00
Tom Hvitved
c831a8c2d9
Rust: Add more path resolution tests
2025-09-19 09:36:54 +02:00
Joe Farebrother
7eabed6594
Split insecure cookies queries into 3 queries
2025-09-18 13:34:10 +01:00
Mathias Vorreiter Pedersen
c481be8ea7
C++: Accept test changes for tests that select all types of an expression.
2025-09-18 12:16:28 +01:00
Mathias Vorreiter Pedersen
a4dbee3b13
C++: Add change note.
2025-09-18 12:16:26 +01:00
Mathias Vorreiter Pedersen
e22d6656fe
C++: Fix barrier guards.
2025-09-18 12:16:25 +01:00
Mathias Vorreiter Pedersen
d8f34dba17
C++: Do not use the deprecated predicate in queries.
2025-09-18 12:16:23 +01:00
Mathias Vorreiter Pedersen
5e82eb9b24
C++: Fixup queries which assumes that a guard is always an expression.
2025-09-18 12:16:21 +01:00
Mathias Vorreiter Pedersen
fbd877a118
C++: Delete a test. This is no longer useful when every expression is a guard condition.
2025-09-18 12:16:20 +01:00
Mathias Vorreiter Pedersen
2dc783d91f
C++: Accept test changes.
2025-09-18 12:16:16 +01:00
Mathias Vorreiter Pedersen
0b81fbbb2b
C++: Fixup tests.
2025-09-18 12:16:11 +01:00
Mathias Vorreiter Pedersen
9ed8b75c5d
C++: Add a few helper predicates on 'Definition' which the guards library needs.
2025-09-18 11:05:55 +01:00
Mathias Vorreiter Pedersen
ac5233d19c
C++: Lots of renamings.
2025-09-18 11:05:54 +01:00
Mathias Vorreiter Pedersen
840097f121
C++: Instantiate the shared guards library.
2025-09-18 11:05:52 +01:00
Mathias Vorreiter Pedersen
3a8f77d6f4
C++: Qualified import of cpp.
2025-09-18 11:05:50 +01:00
Mathias Vorreiter Pedersen
2b0b8402ce
C++: Delete a bunch of predicates. Also set up things so that they work after instantiating the shared guards library.
2025-09-18 11:05:49 +01:00
Mathias Vorreiter Pedersen
f0f4311b65
C++: Sync identical files.
2025-09-18 11:05:47 +01:00
Mathias Vorreiter Pedersen
70a8364a38
C++: Add another convenience predicate on 'BinaryInstruction'.
2025-09-18 11:05:45 +01:00
Mathias Vorreiter Pedersen
19b8e0db9c
C++: Add a few subclasses to 'EdgeKind'.
2025-09-18 11:05:43 +01:00
Mathias Vorreiter Pedersen
be8195ab7d
C++: Do not rely on dataflow nodes when implement 'getAUse' and 'getAnIndirectUse'. This will solve a non-monotonic recursion issue later.
2025-09-18 11:05:39 +01:00
Mathias Vorreiter Pedersen
f47dd2bbc6
C++: Add a 'hasInputFromBlock' predicate.
2025-09-18 11:05:38 +01:00
Kasper Svendsen
dbb9a26f78
Overlay: Future-proof Java XML discarding
2025-09-18 11:37:38 +02:00
Mathias Vorreiter Pedersen
f55ace8311
C++: Make the return type a bit more precise.
2025-09-18 10:10:07 +01:00
Kasper Svendsen
3cd737e40d
Overlay: Future-proof Java config discarding
2025-09-18 10:57:22 +02:00
Joe Farebrother
2cd1d2fd2f
Merge pull request #20392 from joefarebrother/python-qual-file-not-closed
...
Python: Improve File Not Closed query to reduce false positives and provide clearer alerts
2025-09-18 09:33:08 +01:00
Anders Schack-Mulligen
8f859647c4
Merge pull request #20457 from aschackmull/shared/cfg-fix-joinblock-pred
...
Shared/Cfg: Fix missing JoinBlockPredecessor.
2025-09-18 09:28:24 +02:00
Tom Hvitved
51a33c279d
Merge pull request #20460 from hvitved/rust/source-inline-flow-path-problem
2025-09-18 09:27:06 +02:00
Anders Schack-Mulligen
d93b2edc0d
Ruby: Accept test changes.
2025-09-18 08:13:43 +02:00
Tom Hvitved
aba2cb487e
Rust: Convert data flow test to @kind path-problem
2025-09-17 20:52:17 +02:00
Chad Bentz
141b470002
Merge branch 'main' into ruby-framework-grape
2025-09-17 12:12:13 -04:00
Alex Eyers-Taylor
34b40a14e8
Java: Make a TC overlay caller.
2025-09-17 16:22:22 +01:00
Anders Schack-Mulligen
d5a238768c
Shared/Cfg: Fix missing JoinBlockPredecessor.
2025-09-17 16:37:23 +02:00
Napalys Klicius
4f8166a661
Merge pull request #20450 from Napalys/js/graph-ql-ench
...
JS: Improve graphql flow
2025-09-17 16:32:01 +02:00
Simon Friis Vindum
203788d4f1
Merge pull request #20408 from paldepind/rust/update-rust-analyzer
...
Rust: Upgrade to rust-analyzer 0.0.301
2025-09-17 16:04:35 +02:00
Geoffrey White
1bccf42556
Rust: Update test results following fix on main.
2025-09-17 14:02:06 +01:00
Geoffrey White
3910a348fd
Merge branch 'main' into assignment
2025-09-17 13:56:57 +01:00
Michael Nebel
398f29a995
Merge pull request #20292 from michaelnebel/csharp/code-quality-extended
...
C#: Add most `medium` precision queries to the `code-quality-extended` suite.
2025-09-17 14:34:08 +02:00
Joe Farebrother
f3802ec60f
Merge pull request #20217 from joefarebrother/python-qual-signature-mismatch
...
Python: Modernize the Signature Mismatch query
2025-09-17 13:29:33 +01:00
Ian Lynagh
c653d939d9
Merge pull request #20451 from github/post-release-prep/codeql-cli-2.23.1
...
Post-release preparation for codeql-cli-2.23.1
2025-09-17 13:00:14 +01:00
Michael Nebel
34ebed1a24
Merge pull request #20402 from michaelnebel/python/code-quality-extended
...
Python: Add most `medium` precision queries to the `code-quality-extended` suite.
2025-09-17 13:48:35 +02:00
Michael Nebel
6d330891db
Merge pull request #20395 from michaelnebel/javascript/code-quality-extended
...
JS: Add most `medium` precision queries to the `code-quality-extended` suite.
2025-09-17 13:47:02 +02:00
Michael Nebel
7589d0a18a
Merge pull request #20394 from michaelnebel/java/code-quality-extended
...
Java: Add most `medium` precision queries to the `code-quality-extended` suite.
2025-09-17 13:46:24 +02:00
Taus
f5a06bef4a
Merge pull request #19929 from github/tausbn/python-update-tree-sitter-dependency
...
Python: Update `tree-sitter` dependency
2025-09-17 13:40:13 +02:00
Napalys Klicius
4226fd29f5
Merge pull request #20162 from Napalys/python/global_variable_tracking
...
Python: Add jump steps for global variable nested field access
2025-09-17 13:38:07 +02:00
Anders Schack-Mulligen
ab5f6717b6
Merge pull request #20449 from aschackmull/csharp/nullguard-pattern
...
C#: Bugfix for nullguards for complex patterns.
2025-09-17 13:10:16 +02:00
Anders Schack-Mulligen
afc98cacbe
C#: Add change note.
2025-09-17 12:49:25 +02:00
Napalys Klicius
7affcf40c2
JS: Add variableValues to the previous summaryModel to enchance the flow.
2025-09-17 12:24:14 +02:00
Napalys Klicius
6c18b4de40
JS: Add test case for graph ql variableValues injection
2025-09-17 12:21:21 +02:00
github-actions[bot]
4e8343664f
Post-release preparation for codeql-cli-2.23.1
2025-09-17 10:13:40 +00:00
Anders Schack-Mulligen
5e76d5ff3f
C#: Rename predicate as per review, and fixup qltest.
2025-09-17 11:58:39 +02:00
Napalys Klicius
6d461d6b50
JS: Add change note
2025-09-17 11:48:49 +02:00
Napalys Klicius
4282005e32
JS: Add summary model for graphql's rootValue
2025-09-17 11:48:44 +02:00
Simon Friis Vindum
05d5c1dda7
Merge pull request #20398 from paldepind/rust/warp-model
...
Rust: Add tests and models for Warp
2025-09-17 11:37:56 +02:00
Ian Lynagh
ce9c8e6e9f
Merge pull request #20447 from github/release-prep/2.23.1
...
Release preparation for version 2.23.1
2025-09-17 10:26:24 +01:00
Napalys Klicius
a6d728a66d
JS: Add test case with missing alert using graphql
2025-09-17 11:23:49 +02:00
Napalys Klicius
e1d27f340e
Merge pull request #20135 from Napalys/js/dynamodb
...
JS: Modeling of `aws-sdk` clients*
2025-09-17 10:47:39 +02:00
Simon Friis Vindum
c1ebe920a1
Rust: Update expected file
2025-09-17 10:38:00 +02:00
Napalys Klicius
ca667b5131
JS: fix test expectations from rebasing
2025-09-17 10:24:45 +02:00
Napalys Klicius
4df8db0d7e
Renamed AWS-V3-Common to @aws-sdk/client.Client
2025-09-17 10:21:29 +02:00
Napalys Klicius
10f3a83fcb
Fixed model type names
...
Co-authored-by: asgerf <asgerf@users.noreply.github.com >
2025-09-17 10:21:23 +02:00
Napalys Klicius
9ca4773227
Added modeling for CreatePreparedStatementCommand
2025-09-17 10:21:10 +02:00
Napalys Klicius
872b6d8bee
Added test case for CreatePreparedStatementCommand
2025-09-17 10:21:01 +02:00
Napalys Klicius
b89e70b5a0
Added test cases for aws sources
2025-09-17 10:20:52 +02:00
Napalys Klicius
801a34f6a1
Moved typeModel at the start of the file
2025-09-17 10:20:24 +02:00
Napalys Klicius
9beac51586
Unified aws-db modeling into singular file
2025-09-17 10:20:10 +02:00
Napalys Klicius
5b31350e83
Added tests and modeling of database-access-result
2025-09-17 10:20:01 +02:00
Napalys Klicius
93d9ae73b7
Updated change note
2025-09-17 10:19:52 +02:00
Napalys Klicius
e5f02852e1
Added modeling of rds v2 and v3 for sql injections
2025-09-17 10:19:22 +02:00
Napalys Klicius
5b5c17100c
Added test cases for client-rds-data for sql injections
2025-09-17 10:19:10 +02:00
Napalys Klicius
0e6bac73a7
Added modeling of athena v2 and v3 for sql injections
2025-09-17 10:18:58 +02:00
Napalys Klicius
af97b0edc2
Added test cases for athena v2 and v3 for sql injections
2025-09-17 10:16:38 +02:00
Napalys Klicius
ee1af432fe
Added modeling of client-s3 v2 and v3
2025-09-17 10:16:25 +02:00
Napalys Klicius
5e6118ef3f
Added test cases for client-s v2 and v3 sql injection
2025-09-17 10:15:43 +02:00
Napalys Klicius
1149617f7b
Added change note
2025-09-17 10:15:32 +02:00
Napalys Klicius
06ab918985
Added modeling for V2 of dynamoDB
2025-09-17 10:15:19 +02:00
Napalys Klicius
ae2e8b1292
Added modeling of dynamodb v3 for sql injections
2025-09-17 10:13:24 +02:00
Napalys Klicius
0a3343a07d
Added test cases for v2 and v3 sql injection of dynamodb
2025-09-17 10:11:31 +02:00
Simon Friis Vindum
e80c192cf2
Rust: Use async closure instead of async block
2025-09-17 10:01:51 +02:00
Anders Schack-Mulligen
62c8f28e74
C#: Bugfix for nullguards for complex patterns.
2025-09-17 09:28:54 +02:00
Tom Hvitved
a7173e0c05
Merge pull request #20443 from hvitved/rust/ssa-adjust-write-note
...
Rust: Adjust SSA write node for (compound) assignments
2025-09-17 09:25:50 +02:00
Simon Friis Vindum
46cd62bd51
Rust: Use .. notation in model
2025-09-17 09:18:41 +02:00
Simon Friis Vindum
f432498574
Rust: Use comma notation in Warp model
2025-09-17 09:18:40 +02:00
Simon Friis Vindum
1af6b37fc4
Rust: Add models for Warp
2025-09-17 09:18:39 +02:00
Simon Friis Vindum
bfe934118d
Rust: Add web framework tests for Warp
2025-09-17 09:18:37 +02:00
Chad Bentz
c5e3be2c4c
Grape - detect params calls inside helper methods
...
- added unit tests for flow using inline format
- removed grape from Arel tests (temporary)
2025-09-16 17:09:18 -04:00
Geoffrey White
6f1fcbf41b
Rust: Add IPv6 private address range (and explanatory comments).
2025-09-16 17:21:08 +01:00
Taus
8fd62252fd
Python: Fix bad join in globalVariableNestedFieldJumpStep
2025-09-16 18:12:29 +02:00
Napalys Klicius
431fc8880e
Python: Add change note
2025-09-16 18:08:53 +02:00
Napalys Klicius
e82fe9d919
Python: Updated doc string and removed redundant predicate.
2025-09-16 18:08:53 +02:00
Taus
e228aac61f
Python: Use AttrWrite.writes
...
Also applies @napalys' fix to the base case.
2025-09-16 18:08:53 +02:00
Taus
6f9e06c59e
Python: Add AttrWrite.writes and AttrRead.reads
...
The latter of these is identical to `AttrRef.accesses`, but makes the
API a bit more intuitive.
2025-09-16 18:08:53 +02:00
Napalys Klicius
8393ccf39d
Python: Update globalVariableAttrPathAtDepth base case
2025-09-16 18:08:53 +02:00
Taus
6133f01c81
Python: Rewrite access path computation
2025-09-16 18:08:53 +02:00
Taus
69b5853477
Python: Keep track of access path
2025-09-16 18:08:53 +02:00
Napalys Klicius
e60d0c88f1
Python: Add global variable nested field jump steps
2025-09-16 18:08:53 +02:00
Napalys Klicius
9d4b168977
Python: Added extra test for global variable nested attribute reads/writes.
2025-09-16 18:08:53 +02:00
Napalys Klicius
6c779c7fa5
Python: Added extra test cases for path injection with FastAPI
2025-09-16 18:08:53 +02:00
Napalys Klicius
f209e3a0fe
Python: Updated PathInjection tests to use inline test expectations
2025-09-16 18:08:53 +02:00
Alex Eyers-Taylor
2201974844
Jave: Use force local to make parsing local after global regex finding.
2025-09-16 15:55:04 +01:00
github-actions[bot]
02a1b1efcb
Release preparation for version 2.23.1
2025-09-16 14:14:42 +00:00
Geoffrey White
7c22fe269f
Merge branch 'main' into https
2025-09-16 14:28:23 +01:00
Chad Bentz
ffd32efba2
codeql query format
2025-09-16 09:08:07 -04:00
Geoffrey White
31bf86fd1b
Rust: Improve the flow around the qhelp example.
2025-09-16 14:04:55 +01:00
Geoffrey White
0eb602aad2
Rust: Update a redirected URL.
2025-09-16 14:00:43 +01:00
Asger F
7670a2bd77
Merge pull request #20375 from asgerf/js/promise-try
...
JS: Support Promise.try and Array.prototype.with
2025-09-16 14:44:07 +02:00
Geoffrey White
5d40075944
Merge branch 'main' into assignment
2025-09-16 13:30:20 +01:00
Jonas Jensen
eac8a79d49
Merge pull request #20420 from jbj/no-qll-deprecation
...
Docs: remove 1-year deprecation period for QL libraries
2025-09-16 14:18:36 +02:00
Napalys Klicius
97a11de1e3
Merge pull request #20435 from Napalys/js/promisification_modeling
...
JS: Promisification library modeling and enhance flow
2025-09-16 14:07:53 +02:00
Geoffrey White
4b281fdf12
Rust: Use case insensitive regexps.
2025-09-16 13:02:54 +01:00
Michael Nebel
d903448695
C#: Add change note.
2025-09-16 13:58:28 +02:00
Michael Nebel
f9cecfb666
C#: Update integration test expected output.
2025-09-16 13:56:14 +02:00
Michael Nebel
98a7cd24c0
C#: Remove all cs/xmldoc/* queries from the code-quality-extended suite.
2025-09-16 13:56:13 +02:00
Michael Nebel
0ce0e834ed
C#: Update integration tests expected output.
2025-09-16 13:56:11 +02:00
Michael Nebel
cdd379113e
C#: Remove cs/captured-foreach-variable from the code-quality-extended suite.
2025-09-16 13:56:09 +02:00
Michael Nebel
47873c20de
C#: Fix incorrect tagging.
2025-09-16 13:56:07 +02:00
Michael Nebel
c9a761f202
C#: Remove the cs/xmldoc/missing-xmldoc from the code-quality-extended.
2025-09-16 13:56:05 +02:00
Michael Nebel
906e9de5ee
C#: Update query-suite integration tests expected output.
2025-09-16 13:56:04 +02:00
Michael Nebel
17735a9a43
C#: Add queries medium precision queries to the code-quality-extended suite (and update tags).
2025-09-16 13:56:02 +02:00
Geoffrey White
80ce55ab10
Rust: Make the private address spaces URL more accurate.
2025-09-16 12:53:44 +01:00
Asger F
edf79a3730
JS: Change note
2025-09-16 13:53:31 +02:00
Asger F
0b900711bf
Update javascript/ql/lib/semmle/javascript/frameworks/Express.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-16 13:48:26 +02:00
Geoffrey White
0f5aa857b8
Rust: Remove unnecessary import.
2025-09-16 12:41:28 +01:00
Geoffrey White
9c7fc58337
Rust: Add tests for a few more edge cases.
2025-09-16 12:41:00 +01:00
Michael Nebel
6d9e489e7c
Merge pull request #20445 from michaelnebel/csharp/fixintegrationtest
...
C#: Fix failing integration test after new version of `NewtonSoft.JSon` has been released.
2025-09-16 13:38:55 +02:00
Geoffrey White
0924dec545
Rust: Make the tests of the example code closer to the actual example code.
2025-09-16 12:28:52 +01:00
Tom Hvitved
a2d83274bc
Merge pull request #20441 from geoffw0/fixrfquery
...
Rust: Fix a minor issue with the test for rust/request-forgery
2025-09-16 13:22:58 +02:00
Geoffrey White
7b04cf1a73
Rust: Fix up the test annotations.
2025-09-16 12:20:29 +01:00
Michael Nebel
8fbd720fe5
C#: Fix failing integration test after new version of NewtonSoft.JSon has been released.
2025-09-16 13:14:23 +02:00
Napalys Klicius
49ccb8ce2b
JS: Simplify exist clause to use Promisify::PromisifyAllCall instead of DataFlow::SourceNode
2025-09-16 13:13:15 +02:00
Asger F
429c4eac96
JS: Add support for Array.prototype.with
...
Note: This was authored by Copilot
2025-09-16 13:06:59 +02:00
Asger F
ee78b7dc96
JS: Add support for Promise.try
2025-09-16 13:06:57 +02:00
Tom Hvitved
7cac226ad9
Rust: Adjust SSA write node for (compound) assignments
2025-09-16 13:05:50 +02:00
Tom Hvitved
4e77b1b9b8
Rust: Add self-assignment variable test
2025-09-16 13:05:48 +02:00
Asger F
45eff3dac8
Merge pull request #20399 from asgerf/js/default-interop2
...
JS: Refactor handling of ambiguous default imports
2025-09-16 13:02:22 +02:00
Asger F
78bfdfd931
Merge pull request #20390 from asgerf/post-update-consistency
...
DataFlow: Permit local flow between post-update nodes
2025-09-16 13:00:29 +02:00
Geoffrey White
49de716f10
Rust: Accept consistency check changes.
2025-09-16 10:50:28 +01:00
Mathias Vorreiter Pedersen
fa36d9f84e
Merge pull request #20438 from MathiasVP/remove-antijoin-in-shared-guards
...
Shared: Remove antijoin from `Guards.qll`
2025-09-16 10:40:45 +01:00
Anders Schack-Mulligen
0ceb2f3f72
Merge pull request #20442 from aschackmull/csharp/default-tostring-enum
...
C#: Exclude enum types as they don't inherit the default toString.
2025-09-16 11:12:21 +02:00
Anders Schack-Mulligen
57e15b9a91
Merge pull request #20367 from aschackmull/shared/controlflow
...
Shared/Java: Introduce a shared control flow reachability library and replace the Java Nullness implementation.
2025-09-16 10:44:44 +02:00
Anders Schack-Mulligen
107d142b24
C#: Exclude enum types as they don't inherit the default toString.
2025-09-16 10:33:25 +02:00
Jeroen Ketema
6264f46970
Merge pull request #20440 from MathiasVP/converted-barrier-in-unbounded-write
...
C++: Fix barrier in `cpp/unbounded-write`
2025-09-16 10:19:21 +02:00
Geoffrey White
61faeef1d3
Rust: Pretty print models, so that the MaD IDs aren't reported raw / in continual flux.
2025-09-16 09:00:40 +01:00
Geoffrey White
5c33af32e3
Rust: Update .expected file.
2025-09-16 08:55:49 +01:00
Asger F
65102a073a
Merge pull request #19770 from trailofbits/VF/async-package-improvements
...
Improve data flow in the `async` package
2025-09-16 08:55:52 +02:00
Asger F
f587273828
Merge pull request #19768 from trailofbits/VF/lodash-group-by
...
Add lodash GroupBy as taint step
2025-09-16 08:55:13 +02:00
Chad Bentz
0d0ce32ef2
Merge branch 'ruby-framework-grape' of github.com:felickz/codeql into ruby-framework-grape
2025-09-15 22:11:38 -04:00
Chad Bentz
fc98cd8d08
Fix naming standards
2025-09-15 22:11:33 -04:00
Chad Bentz
19cb187436
Update ruby/ql/lib/codeql/ruby/frameworks/Grape.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-15 22:03:27 -04:00
Chad Bentz
6cea93919e
Merge branch 'main' into ruby-framework-grape
2025-09-15 22:02:24 -04:00
Chad Bentz
a8d4d6b563
Apply naming standards + changenote
2025-09-15 22:02:03 -04:00
Chris Smowton
c375f24598
Merge pull request #20423 from smowton/smowton/fix/length-comparison-off-by-one-fp
...
JS: Recognise that a less-than test is as good as a non-equal test for mitigating off-by-one array access
2025-09-15 18:24:45 +01:00
Geoffrey White
3ca287454a
Merge branch 'main' into assignment
2025-09-15 18:01:19 +01:00
Geoffrey White
8442146a0f
Rust: Add a couple of simple data flow test cases.
2025-09-15 17:37:30 +01:00
Napalys Klicius
278a1efb4b
JS: Add change note
2025-09-15 18:21:45 +02:00
Mathias Vorreiter Pedersen
18c96fd7d4
Shared: Remove antijoin.
2025-09-15 17:12:23 +01:00
Ian Lynagh
9231119b07
Merge pull request #20437 from github/igfoo/tweak-release-note
...
C++: Tweak a release note
2025-09-15 16:39:51 +01:00
Mathias Vorreiter Pedersen
a4c845c418
C++: Fix barrier in 'cpp/unbounded-write'.
2025-09-15 16:34:05 +01:00
Ian Lynagh
cc72314219
C++: Tweak a release note
2025-09-15 16:26:32 +01:00
Ian Lynagh
7860857b55
Merge pull request #20434 from github/igfoo/fix-typo
...
javascript: Fix spelling error in documentation
2025-09-15 16:21:57 +01:00
Ian Lynagh
b797df6ad5
Merge pull request #20436 from github/igfoo/fix-typo-substract
...
Csharp: Fix typo in LeapYear qhelp
2025-09-15 16:21:26 +01:00
Napalys Klicius
3a75500f54
JS: Add modeling for call-me-maybe
2025-09-15 17:15:31 +02:00
Napalys Klicius
0d23ab07db
JS: Add data flow modeling for promisified user-defined functions
2025-09-15 17:13:13 +02:00
Napalys Klicius
2c6db00cbc
JS: Add modeling for util promisify*
2025-09-15 17:09:28 +02:00
Napalys Klicius
e002f2088f
JS: Add modeling for es6-promisify
2025-09-15 17:04:34 +02:00
Napalys Klicius
35c75c00ba
JS: Add modeling for @gar/promisify
2025-09-15 16:58:11 +02:00
Napalys Klicius
312471e9db
JS: Add modeling for @google-cloud/promisify
2025-09-15 16:55:27 +02:00
Napalys Klicius
d37425ae3e
JS: Treat promisify(obj).member as obj.member
2025-09-15 16:51:19 +02:00
Ian Lynagh
5cf052dec1
Csharp: Fix typo in LeapYear qhelp
...
Corrects "add/substract" to "add/subtract" in the UnsafeYearConstruction.qhelp
file to improve clarity.
2025-09-15 15:44:11 +01:00
Napalys Klicius
22b61852a1
JS: Add modeling for thenify-all
2025-09-15 16:31:14 +02:00
Napalys Klicius
d6a14e63ba
JS: Add test cases for promisification libraries.
2025-09-15 16:21:12 +02:00
Ian Lynagh
d0091e1b3c
javascript: Fix spelling error in documentation
...
Corrects the spelling of "occurrences" in the Incomplete Multi-Character
Sanitization documentation to improve clarity.
2025-09-15 14:53:22 +01:00
copilot-swe-agent[bot]
e630bf86bd
Implement Rust non-HTTPS URL query (CWE-319)
...
Co-authored-by: geoffw0 <40627776+geoffw0@users.noreply.github.com >
2025-09-15 11:44:05 +00:00
copilot-swe-agent[bot]
459f00ab41
Initial plan
2025-09-15 11:25:11 +00:00
Simon Friis Vindum
78389c8897
Merge pull request #20133 from paldepind/rust/type-inference-blanket-impl
...
Rust: Support blanket implementations
2025-09-15 12:46:41 +02:00
Simon Friis Vindum
af49301332
Merge pull request #20381 from paldepind/rust/request-forgery-query
...
Rust: Add basic request forgery query
2025-09-15 12:46:23 +02:00
Geoffrey White
00f644888c
Merge pull request #20426 from geoffw0/cookie2
...
Rust: cookie and biscotti crypto query sinks
2025-09-15 11:07:46 +01:00
Anders Schack-Mulligen
acb4d9f681
Shared: Copy some qldoc from Guards.qll
2025-09-15 11:41:23 +02:00
Simon Friis Vindum
35438294d1
Rust: Remove condition that always holds
2025-09-15 10:58:27 +02:00
Anders Schack-Mulligen
be39c4c0cd
Shared: Minor precision improvement.
2025-09-15 10:38:49 +02:00
Simon Friis Vindum
875c7da87c
Rust: Improve comments in type inference
2025-09-15 10:37:38 +02:00
Anders Schack-Mulligen
b308c5438f
Java: Add a change note, and a minor ql comment.
2025-09-15 10:14:26 +02:00
Simon Friis Vindum
50bdc658ba
Rust: Apply documentation tweaks
2025-09-15 09:32:33 +02:00
Chad Bentz
5cfa6e83b3
Add support for route parameters(+ blocks), headers, and cookies in Grape API
2025-09-12 22:51:47 -04:00
Chad Bentz
3252bd39d2
Enhance Grape framework with additional data flow modeling and helper method support
2025-09-12 22:13:21 -04:00
Chad Bentz
738ab6fba7
Refactor Grape framework code for improved readability and consistency
2025-09-12 19:23:15 -04:00
Chad Bentz
d295acc3c3
Add initial support for Ruby Grape
2025-09-12 19:22:05 -04:00
Geoffrey White
989081ba4a
Rust: Change note.
2025-09-12 18:12:59 +01:00
Geoffrey White
118ac07b71
Rust: Convert 'from' models into one generic one.
2025-09-12 18:05:30 +01:00
Geoffrey White
9f83b67a7c
Rust: Model vec::from_elem.
2025-09-12 17:30:44 +01:00
Geoffrey White
e2d94127d6
Rust: Model vec::from.
2025-09-12 16:44:47 +01:00
Geoffrey White
5d3ea2f4d3
Rust: Add models for the cookie and biscotti crates.
2025-09-12 16:13:14 +01:00
Geoffrey White
2bb9e2f7be
Rust: Add test cases for hardcoded cryptographic constants in cookies.
2025-09-12 15:42:56 +01:00
Simon Friis Vindum
e2e6fd0683
Rust: Address feedback from PR review
2025-09-12 16:10:58 +02:00
Simon Friis Vindum
19c529e87b
Bazel: regenerate vendored cargo dependencies
2025-09-12 15:48:23 +02:00
Simon Friis Vindum
3cf1a16a13
Cargo: upgrade dependencies
2025-09-12 15:45:37 +02:00
Anders Schack-Mulligen
e302616135
Java: Accept qltest change.
2025-09-12 15:41:18 +02:00
Anders Schack-Mulligen
f9ffee010f
Java: Minor nullness cleanup.
2025-09-12 15:41:17 +02:00
Anders Schack-Mulligen
2743fc0be1
Guards: Include ConditionalExpr in exprHasValue.
2025-09-12 15:41:17 +02:00
Anders Schack-Mulligen
e8f1ec68db
Java: Accept guards test results.
2025-09-12 15:41:17 +02:00
Anders Schack-Mulligen
60d07cf30d
Java: Clean up IntegerGuards.qll
2025-09-12 15:41:16 +02:00
Anders Schack-Mulligen
03321ff910
Java: Replace nullness implementation.
2025-09-12 15:41:16 +02:00
Anders Schack-Mulligen
4a8ffea0f6
Shared: Add control flow reachability lib.
2025-09-12 15:41:15 +02:00
Simon Friis Vindum
f48b643375
Bazel: regenerate vendored cargo dependencies
2025-09-12 15:38:18 +02:00
Simon Friis Vindum
12dcd751d3
Rust: Accept test changes
2025-09-12 15:34:09 +02:00
Simon Friis Vindum
29ba013580
Rust: Add support for resolving methods from blanket implementations
2025-09-12 15:34:04 +02:00
Chris Smowton
db5c58180e
Change note
2025-09-12 14:32:12 +01:00
Chris Smowton
f5780ae369
Amend docstring
2025-09-12 14:32:10 +01:00
Chris Smowton
4fb133a43d
Recognise that a less-than test is as good as a non-equal test for mitigating off-by-one array access
2025-09-12 14:32:07 +01:00
Simon Friis Vindum
d10cdfb7f1
Rust: Move existing blanket implementation test
2025-09-12 15:31:42 +02:00
Simon Friis Vindum
69a1c7e1e8
Rust: Add tests with blanket implementation
2025-09-12 15:26:19 +02:00
Anders Schack-Mulligen
452bbf7289
Java: Add some more nullness tests.
2025-09-12 13:38:21 +02:00
Anders Schack-Mulligen
924a8eac5c
Java: Improve precision of SuccessorType labels in CFG.
2025-09-12 13:38:21 +02:00
Anders Schack-Mulligen
1ebdcdfa8c
Guards: Support integer ranges.
2025-09-12 13:38:20 +02:00
Anders Schack-Mulligen
db1f399067
Java: Preparatory Nullness refactor.
2025-09-12 13:38:20 +02:00
Anders Schack-Mulligen
e8ddac08b7
Merge pull request #20377 from aschackmull/java/preconditions
...
Java: Consolidate Assertions.qll and Preconditions.qll.
2025-09-12 13:37:41 +02:00
Alexander Eyers-Taylor
e9fcd985f9
Merge pull request #20357 from github/alexet/java-global-virtual-dispatch
...
Java: Make Virtual Dispatch Global, but keep SSA local.
2025-09-12 12:20:46 +01:00
Geoffrey White
d638ee9741
Merge pull request #20404 from geoffw0/rustanalyzerdoc
...
Rust: add `rust-analyzer` update instructions
2025-09-12 11:17:10 +01:00
Jeroen Ketema
7c35835e25
Merge pull request #20422 from jketema/go-log
...
Go: Retrofit the change log to mention Go 1.25
2025-09-12 11:20:03 +02:00
Jeroen Ketema
a773042c5d
Merge pull request #20407 from jketema/dyn-too-many
...
C++: Add `cpp/uninitialized-local` test
2025-09-12 11:12:28 +02:00
Jeroen Ketema
0f5bd3799e
Merge branch 'main' into go-log
2025-09-12 11:12:01 +02:00
Jeroen Ketema
3de9356141
Go: Retrofit the change log to mention Go 1.25
...
This can only be a minor change (or something similar) to stay within the
semantic versioning contraints. This is because only the patch version of
the Go ql library pack was bumped during the release. Since there were no new
language features in Go 1.25, this might also be the most accurate choice here.
2025-09-12 11:08:42 +02:00
Jeroen Ketema
352610d651
C++: Add GOOD annotation
2025-09-12 10:29:27 +02:00
Simon Friis Vindum
fd5b5baa8f
Merge pull request #20403 from paldepind/rust/certain-struct-expr
...
Rust: Infer certain type information for struct expressions
2025-09-12 10:28:07 +02:00
Geoffrey White
92124a9033
Update rust/README.md
2025-09-12 09:01:13 +01:00
Jonas Jensen
5ac80353d2
Docs: remove outdated link to change notes.
...
The change notes are now maintained under each query pack, so there's no
single place where we can link to it.
2025-09-12 09:26:23 +02:00
Jonas Jensen
cb766de37e
Docs: remove 1-year deprecation period for QL libs
...
Internal reference: codeql-team ADR 0011.
2025-09-12 09:24:13 +02:00
Simon Friis Vindum
b456a8c4e5
Apply suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2025-09-12 09:09:00 +02:00
Asger F
132a8b8b53
JS: Model json and jsonp methods
2025-09-12 08:51:23 +02:00
Asger F
d729ab501b
JS: Add test that calls .json or .jsonp
2025-09-12 08:51:21 +02:00
Alex Eyers-Taylor
d5ee91b1e8
Java: Adress comments form code review.
2025-09-11 17:14:08 +01:00
Geoffrey White
aaa67a2da9
Update rust/README.md
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-09-11 17:12:22 +01:00
Ian Lynagh
ffeece1179
Merge pull request #20410 from igfoo/igfoo/bmn-med
...
C++: Remove the BMN filter from some queries, but reduce precision to medium
2025-09-11 17:01:35 +01:00
Ian Lynagh
050a9e155f
C++: Add changenote for changes to some queries
...
Queries affected:
cpp/wrong-type-format-argument
cpp/comparison-with-wider-type
cpp/integer-multiplication-cast-to-long
cpp/implicit-function-declaration
cpp/suspicious-add-sizeof
2025-09-11 15:56:41 +01:00
Idriss Riouak
8ce2d3954e
Merge pull request #20413 from github/idrissrio/java25-change-note
...
Java: Add change note and update supported versions
2025-09-11 16:39:28 +02:00
Ian Lynagh
cc131a09a1
C++: Accept changes to cpp/ql/integration-tests/query-suite
2025-09-11 15:01:04 +01:00
Michael Nebel
0b43203349
Merge pull request #20401 from michaelnebel/csharp/deprecatecapturedforeachvariable
...
C#: Deprecate `cs/captured-foreach-variable`.
2025-09-11 15:01:29 +02:00
Asger F
ae4cf302f2
Remove failures from dataflow-consistency expectations
2025-09-11 14:49:58 +02:00
Asger F
511308746c
DataFlow: Permit local flow between post-update nodes
2025-09-11 14:49:56 +02:00
idrissrio
a0e963f769
Java: Add change note and update supported versions
2025-09-11 14:37:36 +02:00
Ian Lynagh
b3f4c68a1d
C++: Remove the BMN filter from some queries, but reduce precision to medium
...
Remove the `not any(Compilation c).buildModeNone() and` clause from:
cpp/wrong-type-format-argument
cpp/comparison-with-wider-type
cpp/integer-multiplication-cast-to-long
cpp/implicit-function-declaration
cpp/suspicious-add-sizeof
but reduce their precision to `medium`.
2025-09-11 13:32:11 +01:00
Idriss Riouak
0b5745c24b
Merge pull request #20405 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2025-09-11 14:17:08 +02:00
Michael B. Gale
f4575d9d03
Merge pull request #20406 from github/dependabot/go_modules/go/extractor/extractor-dependencies-93606d20ee
...
Bump golang.org/x/tools from 0.36.0 to 0.37.0 in /go/extractor in the extractor-dependencies group
2025-09-11 13:11:28 +01:00
Simon Friis Vindum
4d0635dc8a
Update qhelp for request forgery query
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2025-09-11 13:55:51 +02:00
Jeroen Ketema
d87e9ec095
Merge pull request #20409 from jketema/jketema/swift-changenote
...
Swift: Mention in update playbook that we want a change note
2025-09-11 13:03:56 +02:00
Owen Mansel-Chan
f74913aa4d
Merge pull request #20411 from owen-mc/go/improve-pun-tests
...
Go: improve post-update node tests
2025-09-11 12:03:21 +01:00
Simon Friis Vindum
671bea58af
Rust: Add certain type information for struct patterns
2025-09-11 12:43:26 +02:00
Owen Mansel-Chan
d9e7c89af0
Add indirect method calls
2025-09-11 11:31:28 +01:00
Owen Mansel-Chan
84e70e166e
Add direct method calls
2025-09-11 11:27:56 +01:00
Owen Mansel-Chan
fa18fd2782
Add method defs
2025-09-11 11:24:53 +01:00
Owen Mansel-Chan
cbbf7c2578
Include pre-update node in output
2025-09-11 11:22:17 +01:00
Paolo Tranquilli
051da9d407
Merge branch 'main' into rustanalyzerdoc
2025-09-11 11:48:17 +02:00
Geoffrey White
32131cf9ae
Update rust/README.md
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-11 10:36:04 +01:00
Simon Friis Vindum
50b3571124
Cargo: Revert changes to the Ruby extractors Cargo file
2025-09-11 11:35:33 +02:00
Simon Friis Vindum
61eea66c51
Bazel: regenerate vendored cargo dependencies
2025-09-11 11:35:15 +02:00
Jeroen Ketema
2f9961888a
Swift: Mention in update playbook that we want a change note
2025-09-11 11:31:36 +02:00
Asger F
7a2391f848
JS: Deprecate Portals and delete tests
...
This is a super old attempt at model generation, from before MaD even existed. It's obsolete and just have to be removed.
2025-09-11 11:05:36 +02:00
Simon Friis Vindum
55d022f6eb
Cargo: upgrade dependencies
2025-09-11 10:47:26 +02:00
Geoffrey White
8af8c6d95a
Rust: Move upgrade script to the very end, add a few details.
2025-09-11 09:47:15 +01:00
Geoffrey White
9a96372f53
Rust: Add some more details.
2025-09-11 09:40:36 +01:00
Jeroen Ketema
2bc035cfcf
C++: Update test results after extractor changes
2025-09-11 10:31:01 +02:00
Jeroen Ketema
d224f85b24
C++: Add uninitialized variable FP test
2025-09-11 10:31:00 +02:00
Idriss Riouak
59fc7aa8e1
Merge pull request #20385 from github/idrissrio/java-regression-statsfile
...
Java: Revert wrongly generated stats file
2025-09-11 10:28:59 +02:00
Anders Schack-Mulligen
e7df1b220c
Java: Add change note.
2025-09-11 10:00:53 +02:00
Simon Friis Vindum
eea70069e7
Rust: Infer certain type information for struct expressions
2025-09-11 09:53:56 +02:00
Michael Nebel
c2628fe1df
Python: Update integration tests expected output.
2025-09-11 08:44:18 +02:00
Michael Nebel
a774c65162
Python: Remove py/missing-docstring from code-quality-extended.
2025-09-11 08:41:33 +02:00
dependabot[bot]
b996dc3b62
Bump golang.org/x/tools
...
Bumps the extractor-dependencies group in /go/extractor with 1 update: [golang.org/x/tools](https://github.com/golang/tools ).
Updates `golang.org/x/tools` from 0.36.0 to 0.37.0
- [Release notes](https://github.com/golang/tools/releases )
- [Commits](https://github.com/golang/tools/compare/v0.36.0...v0.37.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/tools
dependency-version: 0.37.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-09-11 03:08:27 +00:00
github-actions[bot]
a6714809c4
Add changed framework coverage reports
2025-09-11 00:22:32 +00:00
Paolo Tranquilli
a9a0cb928e
Rust: add rust-analyzer update instructions
2025-09-10 18:30:37 +01:00
Alex Eyers-Taylor
dcc5572767
Java: Hnalde global files as exceptions rather than annotating them
...
This allows us to merge them without redundent annoations for now.
2025-09-10 17:26:54 +01:00
Alex Eyers-Taylor
5c19aad012
Java: Make Virtual Dispatch Global, but keep SSA local.
...
Use forceLocal to achive this.
2025-09-10 17:26:54 +01:00
Mathias Vorreiter Pedersen
4227dd7d73
Merge pull request #20400 from MathiasVP/cleanup-incorrect-scanf-query
...
C++: Cleanup `ScanfChecks.qll`
2025-09-10 16:31:49 +01:00
Michael Nebel
07932590b5
Java: Update integration test expected output.
2025-09-10 16:15:48 +02:00
Michael Nebel
8e392cf8de
Java: Remove java/undocumented-* queries from the code-quality-extended suite.
2025-09-10 16:13:24 +02:00
Michael Nebel
6ff6d0f6bd
Java: Update integration test expected output.
2025-09-10 16:11:22 +02:00
Michael Nebel
56802035df
Java: Add some medium precision queries to the code-quality-extended suite.
2025-09-10 16:11:20 +02:00
Michael Nebel
7c58098f12
Python: Update integration tests expected output.
2025-09-10 16:08:14 +02:00
Michael Nebel
7c0aa78e39
Python: Add many medium precision queries to the code-quality-extended suite.
2025-09-10 16:06:38 +02:00
Anders Schack-Mulligen
b5c7bc1b33
Java: Accept test output.
2025-09-10 15:42:18 +02:00
Anders Schack-Mulligen
3815503314
Java: Consolidate Assertions.qll and Preconditions.qll.
2025-09-10 15:42:18 +02:00
Simon Friis Vindum
065388df91
Rust: Fix formatting
2025-09-10 14:50:35 +02:00
Simon Friis Vindum
d1a3294f06
Merge branch 'main' into rust/request-forgery-query
2025-09-10 14:48:22 +02:00
idrissrio
762d2ef793
Java: Manually add new relation to stats file
2025-09-10 14:44:52 +02:00
idrissrio
a20737308a
Java: Revert wrongly generated stats file
...
The stats file generated in commit
a6b68ec7de (diff-a4cfdde566085b7f1c1315487c13ef64e4869729ae7886b6c8f4267e3cd4eab6)
was created using the wrong process.
This commit reverts that change and manually adds the new relation
for isImplicitClass.
2025-09-10 14:44:50 +02:00
Simon Friis Vindum
c73d081a32
Rust: Fix based on review
2025-09-10 14:41:20 +02:00
Simon Friis Vindum
50cd200ec5
Apply suggestions from code review
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2025-09-10 14:34:54 +02:00
Mathias Vorreiter Pedersen
edec76ae10
Merge pull request #20370 from MathiasVP/source-bounded-fast-tc-in-typetracking
...
Shared: Use `sourceBoundedFastTC` in TypeTracking
2025-09-10 13:04:49 +01:00
Michael Nebel
186e42b1fe
C#: Add change note.
2025-09-10 14:04:02 +02:00
Michael Nebel
e5da0b90ce
C#: Deprecate cs/captured-foreach-variable.
2025-09-10 14:04:01 +02:00
Asger F
d39263dcac
Merge pull request #20317 from asgerf/js/xunit
...
JS: Avoid overriding Expr predicates in xUnit.qll
2025-09-10 13:41:21 +02:00
Mathias Vorreiter Pedersen
72d7223fd0
C++: Small drive by cleanup. Delete unnecessary nested 'exists'.
2025-09-10 12:35:59 +01:00
Mathias Vorreiter Pedersen
d097946e1f
C++: No need for this additional case.
2025-09-10 12:35:24 +01:00
Mathias Vorreiter Pedersen
5a9b562f19
Merge branch 'main' into source-bounded-fast-tc-in-typetracking
2025-09-10 12:14:01 +01:00
Asger F
dacc9e26e9
JS: Refactor 'default' import interop
2025-09-10 13:03:36 +02:00
Mathias Vorreiter Pedersen
f8bdf924db
Shared: Make 'standardFlowsTo' private.
2025-09-10 11:26:36 +01:00
Mathias Vorreiter Pedersen
b7bc94b987
Update shared/typetracking/codeql/typetracking/internal/TypeTrackingImpl.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2025-09-10 11:21:25 +01:00
Michael Nebel
046d0d4938
Merge pull request #20396 from michaelnebel/csharp/improveintegrationteststability
...
C#: Increase attempts to reach nuget.org in integration tests to reduce flakiness.
2025-09-10 12:19:49 +02:00
Michael Nebel
e5ba1c7a84
Merge pull request #20352 from michaelnebel/csharp/dotnet908
...
C#: Update to .NET SDK 9.0.300 and .NET Runtime 9.0.5.
2025-09-10 12:09:35 +02:00
Idriss Riouak
b89b68dfdb
Merge pull request #20339 from github/idrissrio/scoped-values
...
Java: Add MaDs for `java.lang.ScopedValue`
2025-09-10 11:21:34 +02:00
Idriss Riouak
166c77d776
Merge pull request #20345 from github/idrissrio/java-kdf
...
Java: Add MaDs for `java.crypto.KDF`
2025-09-10 11:21:19 +02:00
Asger F
2a4d6830ec
JS: An array of constants should be considered "filtered"
2025-09-10 11:07:32 +02:00
Asger F
602dae0592
JS: Add test showing FP
2025-09-10 10:58:34 +02:00
Asger F
36e18c2a89
JS: Enable inline expectations in BuildArtifactLeak
...
The tests already have the annotations, it just seems to have been disable by accident
2025-09-10 10:56:34 +02:00
Asger F
09edc29979
Merge pull request #20322 from asgerf/js/react-no-override
...
JS: Do not override AST methods in React model
2025-09-10 10:42:59 +02:00
Michael Nebel
fbc4f0b84f
C#: Increase attempts to reach nuget.org in integration tests to reduce flakiness.
2025-09-10 09:03:11 +02:00
Asger F
d575d3c9e4
Merge pull request #20374 from asgerf/js/typescript-5.9
...
JS: Support TypeScript 5.9 and support 'import defer' syntax
2025-09-09 20:50:04 +02:00
Joe Farebrother
f9e094de61
Simplify choosaASignatureMismatchWitness for improved performance
2025-09-09 17:25:48 +01:00
Jeroen Ketema
174f89fbcb
Merge pull request #20384 from jketema/swift-6.1.3
...
Swift: Update to Swift 6.1.3
2025-09-09 17:06:12 +02:00
Joe Farebrother
ea562de3e6
Fix tests
2025-09-09 15:17:16 +01:00
Tom Hvitved
125cc91ba6
Merge pull request #20358 from hvitved/shared/type-inference-generalize
...
Shared: Make some generalizations in type inference library
2025-09-09 16:08:30 +02:00
Michael Nebel
1c801bd856
JavaScript: Update integration test expected output.
2025-09-09 15:48:31 +02:00
Michael Nebel
58862f4ace
JavaScript: Add some medium precision queries to the code-quality-extended suite.
2025-09-09 15:47:03 +02:00
Tom Hvitved
e3e1bcd63f
Rename Environment -> AccessEnvironment
2025-09-09 15:06:56 +02:00
Tom Hvitved
2e90499df4
Rename State -> Environment
2025-09-09 15:05:58 +02:00
Tom Hvitved
a1980ee23c
Shared: Make some generalizations in type inference library
2025-09-09 15:05:56 +02:00
Joe Farebrother
ec40ea800d
Update qldoc
2025-09-09 13:46:52 +01:00
Joe Farebrother
b01b40b51b
Update test output
2025-09-09 13:44:03 +01:00
Simon Friis Vindum
b34fa7abc0
Merge pull request #20393 from paldepind/rust/impl-to-string
...
Rust: Improve `toString` for `impl`
2025-09-09 14:16:01 +02:00
Simon Friis Vindum
f7c74664fa
Rust: Improve a few toString implementations
2025-09-09 13:46:51 +02:00
Mathias Vorreiter Pedersen
417e79c3c0
Merge pull request #20382 from MathiasVP/simplify-ssl-result-not-checked
...
C++: Simplify `cpp/certificate-not-checked`
2025-09-09 12:23:39 +01:00
Mathias Vorreiter Pedersen
3aee4a88aa
Shared: Cache the sourceBoundedFastTC structure instead of the resulting materialized relation.
2025-09-09 12:22:37 +01:00
Mathias Vorreiter Pedersen
fd7d216fe3
Shared: Replace explicit recursion with a HOP.
2025-09-09 12:22:36 +01:00
Joe Farebrother
e382f7cd43
Improve check for containment in with statement
2025-09-09 11:26:17 +01:00
Michael B. Gale
4b9d102f46
Merge pull request #20389 from github/dependabot/go_modules/go/extractor/extractor-dependencies-ee4a90dc36
...
Bump golang.org/x/mod from 0.27.0 to 0.28.0 in /go/extractor in the extractor-dependencies group
2025-09-09 11:12:31 +01:00
Michael Nebel
a0f8b5829a
C#: Update integration tests expected output.
2025-09-09 12:04:21 +02:00
Michael Nebel
30b93d18b7
C#: Update global.json files for most integration tests to se .NET SDK 9.0.304.
2025-09-09 12:04:19 +02:00
Paolo Tranquilli
51052c74bb
Bazel: patch rules_dotnet to avoid unit test failure
2025-09-09 12:04:18 +02:00
Paolo Tranquilli
6ea6f30cc5
Bazel: fix codeql_csharp_binary
...
A `publish` directory for a C# binary contains copies of some DLLs
inside localized subdirectories (e.g. `ru`). We want to ignore those, as
otherwise our packaging machinery now goes haywire, with the newer
version of `rules_csharp`. In any case we never shipped those.
2025-09-09 12:04:16 +02:00
Michael Nebel
91f9247c2b
C#: Update extractor to use .NET Runtime 9.0.5 and .NET SDK 9.0.300.
2025-09-09 12:04:15 +02:00
Simon Friis Vindum
4f9d8271a2
Rust: Add change node for request forgery query
2025-09-09 10:38:01 +02:00
Simon Friis Vindum
387d08a1b3
Rust: Update query suite expected files
2025-09-09 10:37:59 +02:00
Simon Friis Vindum
1c922f0f45
Rust: Add request forgery query qhelp
2025-09-09 10:37:58 +02:00
Simon Friis Vindum
e1047dc40b
Rust: Add request forgery query
2025-09-09 10:37:57 +02:00
Simon Friis Vindum
63a2c9da76
Rust: Add request forgery tests
2025-09-09 10:37:56 +02:00
Jeroen Ketema
c4633c7e23
Swift: Update LFS
2025-09-09 10:12:43 +02:00
Simon Friis Vindum
aa9d299230
Merge pull request #20348 from paldepind/rust/certain-shorthand-self
...
Rust: Infer certain type for shorthand `self`
2025-09-09 09:40:18 +02:00
Asger F
d8e943ea05
Update javascript/ql/lib/semmle/javascript/frameworks/React.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-09 08:36:25 +02:00
dependabot[bot]
f104205538
Bump golang.org/x/mod
...
Bumps the extractor-dependencies group in /go/extractor with 1 update: [golang.org/x/mod](https://github.com/golang/mod ).
Updates `golang.org/x/mod` from 0.27.0 to 0.28.0
- [Commits](https://github.com/golang/mod/compare/v0.27.0...v0.28.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/mod
dependency-version: 0.28.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-09-09 03:08:18 +00:00
Asger F
0752dbea9b
Merge pull request #20360 from asgerf/js/remove-angularjs-string-special-case
...
JS: Remove special treatment of strings in AngularJS code
2025-09-08 22:48:23 +02:00
Asger F
b5045b3407
Merge pull request #20363 from asgerf/js/remove-fallback-type
...
JS: Remove unused getFallbackTypeAnnotation()
2025-09-08 22:48:07 +02:00
Jon Janego
d51361cd35
Merge pull request #20387 from github/changedocs-2.23.0
...
Changedocs 2.23.0
2025-09-08 13:24:26 -05:00
Jon Janego
2505272af7
Changedocs for 2.23.0 - updating 2.22.4 golang note
2025-09-08 13:07:20 -05:00
Jon Janego
2d84f8a739
Changedocs for 2.23.0
2025-09-08 13:01:03 -05:00
Mathias Vorreiter Pedersen
702d6d80c4
Update cpp/ql/lib/semmle/code/cpp/controlflow/IRGuards.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-08 16:19:33 +01:00
Idriss Riouak
dc247e03e0
Merge pull request #20383 from aschackmull/java/fix-more-broken-perf
...
Java: Fix more broken performance.
2025-09-08 14:49:43 +02:00
Michael Nebel
84df8f91a9
Merge pull request #20366 from michaelnebel/csharp/improvedatabasequalitydiagnostics
...
C#/Java/Rust: Improve database quality diagnostics query.
2025-09-08 14:43:57 +02:00
Jeroen Ketema
40c8c3a526
Swift: Update to Swift 6.1.3
2025-09-08 14:42:53 +02:00
Anders Schack-Mulligen
4c1fa58367
Java: Fix more broken performance.
2025-09-08 14:12:00 +02:00
Mathias Vorreiter Pedersen
a81989d2d8
C++: Simplify the 'SSLResultNotChecked' query.
2025-09-08 12:28:28 +01:00
Mathias Vorreiter Pedersen
9f47996448
C++: Lift a few more predicates to expression guards.
2025-09-08 12:28:18 +01:00
idrissrio
728a4aff22
Java: Add model for thenExpand and accept new results
2025-09-08 13:17:53 +02:00
idrissrio
3aba4d3e1e
Java: Add test showing missing model for thenExpand
2025-09-08 13:17:52 +02:00
idrissrio
55ff71b760
Java: Address review comment. Fix dataflow model
2025-09-08 13:17:51 +02:00
idrissrio
89e080cd99
Java: Add new change note
2025-09-08 13:17:50 +02:00
idrissrio
311690cffe
Java: accept new test results
2025-09-08 13:17:49 +02:00
idrissrio
f52a427295
Java: Add MaDs for java.crypto.KDF
2025-09-08 13:17:48 +02:00
idrissrio
16fbe8d96f
Java: add dataflow test for newly added KDF API
2025-09-08 13:17:46 +02:00
Simon Friis Vindum
eea11dbf5f
Rust: Relabel reqwest sinks as request-url
2025-09-08 13:05:58 +02:00
idrissrio
666678a582
Java: Address review comment. Inline dataflow annotation
2025-09-08 12:55:20 +02:00
idrissrio
117c41bd55
Java: Address review comment. Fix dataflow model
2025-09-08 12:55:19 +02:00
idrissrio
2f4c728bb9
Java: Add new change note
2025-09-08 12:55:17 +02:00
idrissrio
a8541b9f76
Java: accept new test results
2025-09-08 12:55:15 +02:00
idrissrio
9f1e60ca6d
Java: Add MaDs for java.lang.scoped
2025-09-08 12:55:14 +02:00
idrissrio
0159f5b422
Java: Add failing test for Scoped Values
2025-09-08 12:55:13 +02:00
Michael Nebel
29c22e6fcf
Rust: Add change note.
2025-09-08 12:05:57 +02:00
Michael Nebel
d9787efc10
Rust: Include metrics in the database quality diagnostics.
2025-09-08 12:05:44 +02:00
Michael Nebel
572da264d3
Java: Update integration test expected output.
2025-09-08 12:05:40 +02:00
Michael Nebel
3f4b2b7cc8
Java: Add change note.
2025-09-08 12:05:38 +02:00
Michael Nebel
b0ef0f06eb
Java: Include metrics in the database quality diagnostics and lower threshold.
2025-09-08 12:05:37 +02:00
Michael Nebel
ed11a32f42
C#: Update integration test expected output.
2025-09-08 12:05:34 +02:00
Michael Nebel
827ea4c769
C#: Address review comments.
2025-09-08 12:05:31 +02:00
Michael Nebel
7bf05297cf
C#: Update integration test expected output.
2025-09-08 12:05:29 +02:00
Michael Nebel
08298f48d0
C#: Add change note.
2025-09-08 12:05:27 +02:00
Michael Nebel
6c9a75eab3
C#: Include metrics in the database quality diagnostics.
2025-09-08 12:05:22 +02:00
Henry Mercer
b4e6d3009e
Merge pull request #20371 from github/henrymercer/actions-status
...
Actions: Add file coverage information for status page
2025-09-08 10:37:03 +01:00
Jeroen Ketema
ba5318f63f
Merge pull request #20369 from MathiasVP/value-numbering-unique-irfunc
...
C++: Protect the value numbering library from instructions with multiple enclosing functions
2025-09-08 10:47:55 +02:00
Joe Farebrother
eb246f6f71
Performance experiment - add getFunctionFIle for better join order
2025-09-08 09:43:22 +01:00
Joe Farebrother
869b7e09d7
Merge pull request #19932 from joefarebrother/python-qual-init-del-calls
...
Python: Modernize 4 queries for missing/multiple calls to init/del methods
2025-09-08 09:29:38 +01:00
Napalys Klicius
8c34b7eaea
Merge pull request #20146 from Napalys/js/move-cors-query-from-experimental
...
JS: Move cors-misconfiguration query from experimental to Security
2025-09-08 09:32:38 +02:00
Anders Schack-Mulligen
66379deadd
Merge pull request #20380 from aschackmull/java/fix-broken-perf
...
Java: Fix broken performance.
2025-09-08 08:59:31 +02:00
Anders Schack-Mulligen
c6adc51220
Java: Fix broken performance.
2025-09-08 08:30:07 +02:00
Idriss Riouak
c5cb86ac24
Merge pull request #20097 from github/idrissrio/module-import-declarations
...
Java: Add support to `ModuleImportDeclaration`
2025-09-06 13:11:48 +02:00
idrissrio
ed9ed43923
Java: Address review comment. Improve getAnImportedType definition
2025-09-06 12:38:44 +02:00
idrissrio
1caf18ede1
Java: Address review comment. Improve module-import documentation
2025-09-06 12:38:43 +02:00
idrissrio
7d479704e8
Java: Add change note
2025-09-06 12:38:42 +02:00
idrissrio
039b5af2e0
Java: Add module import declaration test
2025-09-06 12:38:40 +02:00
idrissrio
c5ee0f3c22
Java: Add ModuleImportDeclaration QL class
2025-09-06 12:38:39 +02:00
Joe Farebrother
ff4c11f503
Update test output. Accepting some FNs due to dataflow issue.
2025-09-06 00:45:15 +01:00
Joe Farebrother
0b293eaba5
Update test output
2025-09-05 22:43:21 +01:00
Alexander Eyers-Taylor
61485908b9
Merge pull request #20355 from github/alexet/update-java-tests-no-annotation=-proc
...
Java: Update tests results with disabled annotation processing when lombok is not used.
2025-09-05 18:18:56 +01:00
Alex Eyers-Taylor
fe7426740b
Javba: Update tests results with disabled annotation processing.
2025-09-05 17:30:54 +01:00
Joe Farebrother
bd3fa7fb21
Switch to dataflow check for guards exceptions
...
This reduces some confusing FPs, though appears to introduce another
2025-09-05 16:03:55 +01:00
Michael B. Gale
e18b049d10
Merge pull request #20376 from github/mbg/go/use-codeql-verbosity
2025-09-05 15:53:08 +01:00
Henry Mercer
1e77891271
Merge branch 'main' into henrymercer/actions-status
2025-09-05 14:55:58 +01:00
Henry Mercer
fea05331aa
Add date to changelog note filename
2025-09-05 14:51:28 +01:00
Henry Mercer
526990e015
Add comment about GitHub API languages
2025-09-05 14:49:48 +01:00
Henry Mercer
e7fbd28505
Add changelog note
2025-09-05 14:48:12 +01:00
Michael B. Gale
8c13faf3d8
Go: Set log level based on CODEQL_VERBOSITY
2025-09-05 14:18:31 +01:00
Henry Mercer
a6fb45b9cb
Update expected files
2025-09-05 13:13:43 +01:00
Arthur Baars
82476b9efd
Merge pull request #20373 from github/aibaars/drop-nbsp
...
Remove non-breaking spaces from code
2025-09-05 13:02:34 +02:00
Napalys Klicius
b2feaaceea
Merge branch 'main' into js/move-cors-query-from-experimental
2025-09-05 12:11:09 +02:00
Asger F
ef114c4a07
JS: Add change note
2025-09-05 12:04:53 +02:00
Asger F
a08878f419
JS: Add upgrade and downgrade scripts
2025-09-05 12:03:56 +02:00
Idriss Riouak
e719dd912d
Merge pull request #20116 from github/idrissrio/compact-soruce-file
...
Java: Add support to Compact Source Files
2025-09-05 12:01:48 +02:00
Asger F
bab2a79055
JS: Add parsing support in JS parser
2025-09-05 11:57:34 +02:00
Asger F
215602c963
JS: Preserve information about 'defer' keyword
2025-09-05 11:57:33 +02:00
Asger F
76ca1a576f
JS: Add basic test for 'import defer' syntax in TypeScript
2025-09-05 11:57:31 +02:00
Asger F
0d03c813d0
JS: Also update @types/node version
2025-09-05 11:57:30 +02:00
Asger F
b2b5199055
JS: Bump TypeScript dependency to 5.9
2025-09-05 11:57:29 +02:00
Napalys Klicius
d8c4d6deb4
Rename cors-misconfiguration to cors-origin.
2025-09-05 11:30:07 +02:00
Napalys Klicius
e6eacca50b
Update change note to reflect changes
2025-09-05 11:27:29 +02:00
idrissrio
f1186432c1
Java: Accept new test result after extractor changes
2025-09-05 10:43:35 +02:00
idrissrio
fc1b9277b3
Java: extend definition of isCompilerGenerated for classes
2025-09-05 10:19:04 +02:00
idrissrio
b2ef60c165
Java: add tests for compact source files
2025-09-05 10:19:03 +02:00
idrissrio
a6b68ec7de
Java: Update stats file
2025-09-05 10:19:02 +02:00
idrissrio
c26a56a332
Java: Add change note
2025-09-05 10:19:01 +02:00
idrissrio
3a9a559d25
Java: Add upgrade and downgrade script
2025-09-05 10:19:00 +02:00
idrissrio
9363bc318a
Java: Add compact source file tests
2025-09-05 10:18:58 +02:00
idrissrio
81b1e73e18
Java: Add isImplict predicate to CompilationUnit and Class
2025-09-05 10:18:57 +02:00
idrissrio
f51ee4c04f
Java: Add isImplicitClass table to keep track of compact source files
2025-09-05 10:18:56 +02:00
Arthur Baars
5d3ec35e29
Remove non-breaking spaces from code
2025-09-05 09:41:15 +02:00
Idriss Riouak
2100dc1288
Merge pull request #20136 from github/idrissrio/flexible-constructors
...
Java: Add test for flexible constructor support
2025-09-04 21:35:02 +02:00
Mathias Vorreiter Pedersen
4645bd766a
C++: Sync identical files.
2025-09-04 19:27:31 +01:00
Mathias Vorreiter Pedersen
a551a55ca0
C++: Get rid of a parenthesis pair.
2025-09-04 19:27:23 +01:00
Mathias Vorreiter Pedersen
3c35e1e6ee
C++: Require a unique IRFunction for each value number case and assign instructions with a non-unique IRFUnction a unique value number.
2025-09-04 19:26:42 +01:00
Mathias Vorreiter Pedersen
76f2c6a9f1
C++: Remove the IRFunction column from the TUniqueValueNumber branch. The next commits will protect the recursion from instructions which has multiple IRFunctions and assign such instructions a unique value number so it won't make sense for them to have an IRFunction column.
2025-09-04 19:10:22 +01:00
idrissrio
1605438333
Java: Accept new test result after extractor changes
2025-09-04 17:01:45 +02:00
idrissrio
6c773a7473
Java: Add test to verify that the AST does not capture instance initializers
2025-09-04 17:01:44 +02:00
idrissrio
fffb4c03b0
Java: add flexible constructor test including CFG predecessor query
2025-09-04 17:01:43 +02:00
idrissrio
6b022edf06
Java: Address review comment. Add prologue field initialization tests
2025-09-04 17:01:42 +02:00
idrissrio
de6d9f4d50
Java: Add test for flexible constructor support
2025-09-04 17:01:41 +02:00
Idriss Riouak
c5e5b8a585
Merge pull request #20247 from github/idrissrio/java-upgrade-fix
...
Java: accept new test results after extractor update
2025-09-04 16:46:01 +02:00
Jeroen Ketema
af82da5db3
Merge pull request #20350 from michaelnebel/cpp/ql4qlexperimental
...
C++: Fix some Ql4Ql violations (crypto).
2025-09-04 16:21:44 +02:00
Napalys Klicius
c4c8dbcf7d
Merge remote-tracking branch 'origin/main' into js/move-cors-query-from-experimental
2025-09-04 15:24:44 +02:00
Napalys Klicius
d3d608fa33
Updated query description and added a sanitizer
2025-09-04 13:16:37 +00:00
Napalys Klicius
6c751ce934
Merged config classes
2025-09-04 12:31:24 +00:00
Napalys Klicius
4dac80a998
Replace complex wrapper classes with MaD
2025-09-04 12:19:22 +00:00
Michael Nebel
64d68feab3
Merge pull request #20325 from michaelnebel/cpp/ql4ql
...
C++: Fix some Ql4Ql violations.
2025-09-04 14:17:11 +02:00
Asger F
4926d278a2
JS: Update test output
2025-09-04 13:59:19 +02:00
Asger F
d8346ef106
JS: Remove unused getFallbackTypeAnnotation()
...
This private predicate was unused, but due to its recursive self-reference it was not reported as an unused predicate.
2025-09-04 13:40:49 +02:00
Michael Nebel
8009ddebce
Merge pull request #20329 from michaelnebel/javascript/ql4ql
...
JS: Fix some Ql4Ql violations.
2025-09-04 13:01:37 +02:00
Michael Nebel
61e8ad264f
C++: Address review comments.
2025-09-04 12:52:46 +02:00
Simon Friis Vindum
26919a6c6e
Rust: Rename variable as suggested in review
2025-09-04 12:50:14 +02:00
Asger F
5b0ef40a3e
JS: Remove special treatment of strings in AngularJS code
...
String literals are already SourceNodes. But we need to add template literals as well
2025-09-04 11:06:22 +02:00
Kasper Svendsen
dd99a2d3bd
Merge pull request #20294 from github/kaspersv/discard-fields-and-classes
...
Overlay: Add discarding for Java classes, interfaces & fields
2025-09-04 10:05:15 +02:00
Owen Mansel-Chan
2a45b28e5f
Merge pull request #20064 from Kwstubbs/go-path-separator
...
Update Go Path Injection Sanitizer and Sink
2025-09-03 16:45:15 +01:00
Napalys Klicius
7cbaa114a3
Merge pull request #20296 from Napalys/js/remote-property-injection-update
...
JS: Detect property injection via object enumeration patterns
2025-09-03 14:38:24 +02:00
Napalys Klicius
8fc81f4263
Merge branch 'main' into js/remote-property-injection-update
2025-09-03 14:02:19 +02:00
Taus
f6732a927b
Python: Bump extractor version
2025-09-03 11:56:54 +00:00
Taus
13a93c7e32
Python: Add suggestions from Copilot
2025-09-03 11:55:49 +00:00
Simon Friis Vindum
e610465ee8
Rust: Suppress type inference inconsistency that can be explained by path resolution
2025-09-03 12:53:30 +02:00
Michael Nebel
a9baf34629
Merge pull request #20324 from michaelnebel/actions/ql4ql
...
Actions: Fix some Ql4Ql violations.
2025-09-03 12:29:06 +02:00
Tom Hvitved
f2b8ac127f
Merge pull request #20351 from hvitved/rust/summarized-callable-location
...
Rust: Assign locations to all `DataFlowCallable`s
2025-09-03 12:24:37 +02:00
Joe Farebrother
71dec0b23e
Fix typos
2025-09-03 11:22:46 +01:00
Joe Farebrother
9fa630faf5
Add comments documenting helper predicates, and add call resolve condition to callMatchesSignature to avoid cartesian product
2025-09-03 11:00:59 +01:00
Tom Hvitved
dff5ed7d29
Rust: Assign locations to all DataFlowCallables
2025-09-03 11:21:57 +02:00
Joe Farebrother
cd6a151d9b
Add missing predicate + update test output
2025-09-03 09:48:07 +01:00
Michael Nebel
fb1387340f
Merge pull request #20349 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2025-09-03 08:24:00 +02:00
Michael Nebel
83d53baf82
C++: Fix some Ql4Ql violations.
2025-09-03 08:19:18 +02:00
Michael Nebel
462d639627
C++: Fix some Ql4Ql violations.
2025-09-03 08:13:20 +02:00
github-actions[bot]
9f31f02c12
Add changed framework coverage reports
2025-09-03 00:21:42 +00:00
Joe Farebrother
2dcf3c7c45
Remove erronous private
2025-09-02 22:16:41 +01:00
Asger F
1ea843f23c
Merge pull request #20323 from asgerf/js/remove-totalorder
...
JS: Remove totalorder()
2025-09-02 22:08:33 +02:00
idrissrio
5d2268fa80
Java: accept new test results after extractor update
2025-09-02 20:19:38 +02:00
Jeroen Ketema
ab3ad20a1e
Merge pull request #20319 from jketema/ir-vla-sizeof
...
C++: Support `sizeof` VLAs in the IR
2025-09-02 17:29:18 +02:00
Jeroen Ketema
8de1ed0d85
C++: Address review comments
2025-09-02 17:03:48 +02:00
Simon Friis Vindum
de8e535c3a
Rust: Move predicates up to right before first usage
2025-09-02 16:34:03 +02:00
Simon Friis Vindum
1b683f6359
Rust: Infer certain type for self shorthand
2025-09-02 16:30:21 +02:00
Simon Friis Vindum
f7201023de
Rust: Add annotations to type inference tests
2025-09-02 16:24:40 +02:00
Simon Friis Vindum
17d23a9b78
Merge pull request #20343 from paldepind/rust/certain-type-inline-expectation
...
Rust: Change inline expectation annotation for inferred certain types
2025-09-02 15:07:41 +02:00
Taus
bda522052b
Python: Update bazel dependencies
2025-09-02 12:51:36 +00:00
Taus
9802ad77dc
Python: Update types_new.py and test output
2025-09-02 12:41:57 +00:00
Taus
235822d782
Python: Improve handling of syntax errors
...
Rather than relying on matching arbitrary nodes inside tree-sitter-graph
and then checking whether they are of type ERROR or MISSING (which seems
to have stopped working in later versions of tree-sitter), we now
explicitly go through the tree-sitter tree, locating all of the error
and missing nodes along the way. We then add these on to the graph
output in the same format as was previously produced by
tree-sitter-graph.
Note that it's very likely that some of the syntax errors will move
around a bit as a consequence of this change. In general, we don't
expect syntax errors to have stable locations, as small changes in the
grammar can cause an error to appear in a different position, even if
the underlying (erroneous) code has not changed.
2025-09-02 12:41:57 +00:00
Taus
b108d47b26
Python: Update parser test output
...
It seems that with a newer version of tree-sitter, we no longer parse
the (not actually valid!) syntax `Spam[**P2]` as if the `**` is an
exponentiation operation (with a missing left operand).
2025-09-02 12:41:55 +00:00
Taus
5fb28b9f6d
Python: Update bazel dependencies
2025-09-02 12:41:48 +00:00
Taus
76f15a890c
Python: Update tree-sitter dependency
...
Updates the Python extractor to depend on version 0.24.7 of tree-sitter
(and 0.12.0 of tree-sitter-graph).
A few changes were needed in order to make the code build and run after
updating the dependencies:
- In `main.rs`, the `Language` parameter is now passed as a reference.
- In `python.tsg`, many queries had captures that were not actually used
in the body of the stanza. This is no longer allowed (unless the
captures start with an underscore), as it may indicate an error. To fix
this, I added underscores in the appropriate places (and verified that
none of these unused captures were in fact bugs).
2025-09-02 12:40:20 +00:00
Michael Nebel
31852985e5
Merge pull request #20335 from michaelnebel/shared/ql4ql
...
Shared and Sync: Fix some Ql4Ql violations.
2025-09-02 14:37:34 +02:00
Arthur Baars
0bb7fdccf6
Merge pull request #20347 from github/post-release-prep/codeql-cli-2.23.0
...
Post-release preparation for codeql-cli-2.23.0
2025-09-02 14:14:03 +02:00
Anders Schack-Mulligen
f833fe0e6e
Merge pull request #20300 from aschackmull/cfg/successortype
...
Shared: Add a shared SuccessorType implementation
2025-09-02 14:09:35 +02:00
Michael Nebel
d3d737b383
Merge pull request #20330 from michaelnebel/python/ql4ql
...
Python: Fix some Ql4Ql violations.
2025-09-02 14:01:54 +02:00
Michael Nebel
9d521e9cb6
Merge pull request #20333 from michaelnebel/rust/ql4ql
...
Rust: Fix some Ql4Ql violations.
2025-09-02 14:00:47 +02:00
Michael Nebel
7490d8ddd2
Shared and Sync: Fix some Ql4Ql violations.
2025-09-02 13:54:22 +02:00
github-actions[bot]
e8a2600a0c
Post-release preparation for codeql-cli-2.23.0
2025-09-02 11:46:23 +00:00
Simon Friis Vindum
8a92b2d611
Rust: Change inline expectation annotation for certain inferred types
2025-09-02 13:44:06 +02:00
Michael Nebel
6f5da528a4
Update rust/ql/lib/codeql/rust/dataflow/internal/ModelsAsData.qll
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-09-02 13:34:23 +02:00
Michael Nebel
464d8b13a8
Rust: Address review comments.
2025-09-02 13:33:51 +02:00
Jeroen Ketema
9431b0c754
C++: Add change note for new VlaDeclStmt predicates
2025-09-02 13:17:26 +02:00
Arthur Baars
28f02c07d7
Merge pull request #20346 from github/release-prep/2.23.0
...
Release preparation for version 2.23.0
2025-09-02 13:13:45 +02:00
github-actions[bot]
0bfa93828b
Release preparation for version 2.23.0
2025-09-02 11:09:32 +00:00
Michael Nebel
90caded4fe
Apply suggestion from @aschackmull
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2025-09-02 13:08:31 +02:00
Joe Farebrother
318d1cd392
Increase precision in detecting call matches signature
2025-09-02 12:02:08 +01:00
Jeroen Ketema
f4df3881f8
C++: Handle *& sequences in sizeof VLA expressions
2025-09-02 12:29:24 +02:00
Jeroen Ketema
438cc961da
C++: Document TranslatedSizeofExpr
2025-09-02 12:29:21 +02:00
Jeroen Ketema
8a7553232f
C++: Add more sizeof VLA tests
2025-09-02 12:29:19 +02:00
Jeroen Ketema
f68d3477d4
C++: Output necessary conversions in the sizeof VLA IR
2025-09-02 12:29:17 +02:00
Jeroen Ketema
f0f66c6d58
C++: Minor refactor
...
* Introduce new instruction tag for the base size
* Introduce some convenience predicates on `VlaDeclStmt`
2025-09-02 12:29:15 +02:00
Jeroen Ketema
6a9324fab0
C++: Fix obtaining the base type of a VLA
2025-09-02 12:29:13 +02:00
Jeroen Ketema
ffbc83deeb
C++: Update expected test results
2025-09-02 12:29:10 +02:00
Jeroen Ketema
6e8f44da42
C++: Handle sizeof VLAs with typedefs
2025-09-02 12:29:09 +02:00
Jeroen Ketema
74f5687660
C++: Update expected test results
2025-09-02 12:29:07 +02:00
Jeroen Ketema
fdab63fd5f
C++: Handle ArrayExprs in sizeof VLAs
2025-09-02 12:29:04 +02:00
Jeroen Ketema
5bd08e8174
C++: Add more sizeof VLA tests
2025-09-02 12:29:02 +02:00
Jeroen Ketema
dc78330529
C++: Update expected test results
2025-09-02 12:29:00 +02:00
Jeroen Ketema
d9320b3c16
C++: Support sizeof VLAs in the IR
2025-09-02 12:28:59 +02:00
Jeroen Ketema
60845001dd
C++: Add sizeof VLA IR test cases
2025-09-02 12:28:56 +02:00
Michael Nebel
7ae5d405fc
Merge pull request #20332 from michaelnebel/ruby/ql4ql
...
Ruby: Fix some Ql4Ql violations.
2025-09-02 12:04:03 +02:00
Michael Nebel
88ee20f189
Merge pull request #20331 from michaelnebel/ql/ql4ql
...
Ql: Fix some Ql4Ql violations.
2025-09-02 12:02:40 +02:00
Michael Nebel
2a932f0748
Merge pull request #20328 from michaelnebel/java/ql4ql
...
Java: Fix some Ql4Ql violations.
2025-09-02 12:01:16 +02:00
Joe Farebrother
ab641b3144
Merge pull request #20344 from joefarebrother/fix-changenote
...
Shared: Fix changenote
2025-09-02 10:58:16 +01:00
Michael Nebel
9a88e38d6f
Merge pull request #20327 from michaelnebel/go/ql4ql
...
Go: Fix some Ql4Ql violations.
2025-09-02 11:45:26 +02:00
Michael Nebel
39d3741a91
Merge pull request #20326 from michaelnebel/csharp/ql4ql
...
C#: Fix some Ql4Ql violations.
2025-09-02 11:44:22 +02:00
Michael Nebel
f73f9a0447
Merge pull request #20334 from michaelnebel/swift/ql4ql
...
Swift: Fix a Ql4Ql violation.
2025-09-02 11:40:33 +02:00
Joe Farebrother
11309e99ce
Fix changenote
2025-09-02 10:35:58 +01:00
Asger F
19fa29d527
Merge pull request #20307 from asgerf/js/overlay-extract-and-discard-only
...
JS: Add overlay support to extractor
2025-09-02 11:24:11 +02:00
Tom Hvitved
9bae0bfb35
Merge pull request #20295 from geoffw0/oldpaths1
...
Rust: Remove extractor path resolution.
2025-09-02 11:17:51 +02:00
Anders Schack-Mulligen
3d4d347150
SuccessorType: Address review comments.
2025-09-02 11:10:00 +02:00
Simon Friis Vindum
0ed6428a94
Merge pull request #20321 from paldepind/rust/trait-method-scope-2
...
Rust: Take trait visibility into account when resolving paths and methods
2025-09-02 10:58:00 +02:00
Michael Nebel
55e5281429
Go: Fix a couple more spelling errors.
2025-09-02 10:47:36 +02:00
Michael Nebel
a732b36fa8
Update java/ql/src/experimental/quantum/Analysis/ArtifactReuse.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2025-09-02 10:39:37 +02:00
Michael Nebel
367027e777
Ql: Fix some Ql4Ql violations.
2025-09-02 10:01:14 +02:00
Tom Hvitved
1130595c67
Merge pull request #20340 from hvitved/rust/taint-tracking-implicit-deref-at-sinks
...
Rust: Deref as taint step
2025-09-02 09:44:33 +02:00
Michael Nebel
d0323a6425
Fix one more violation.
2025-09-02 09:42:05 +02:00
Michael Nebel
ef4b41ab6d
C#: Replace exists with any.
2025-09-02 09:26:37 +02:00
Michael Nebel
0c5c798ca5
Merge pull request #20290 from michaelnebel/csharp/xmldictionaryreader
...
C#: Add manual models for more some XML related classes.
2025-09-02 09:12:54 +02:00
Simon Friis Vindum
322ef4d985
Rust: Account for trait visibility when resolving paths and methods
2025-09-02 09:01:17 +02:00
Tom Hvitved
5b51bb2ef0
Rust: Deref as taint step
2025-09-02 08:55:10 +02:00
Joe Farebrother
125c6534b7
Use new option name
2025-09-01 23:41:28 +01:00
Joe Farebrother
6587ad435e
Update python/ql/src/Functions/SignatureOverriddenMethod.ql
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-01 16:31:24 +01:00
Joe Farebrother
0a83c11f42
Add changenote.+ fix typo
2025-09-01 16:31:18 +01:00
Joe Farebrother
900a5cd9d7
Update documentation
2025-09-01 16:31:11 +01:00
Joe Farebrother
502ea82c91
Updae other test output
2025-09-01 16:31:04 +01:00
Joe Farebrother
2bbf24b3ea
Add additional test cases
2025-09-01 16:30:53 +01:00
Joe Farebrother
f429b9038c
Update tests, update alert messages
2025-09-01 16:30:44 +01:00
Joe Farebrother
067c98d3ee
Include conditional alert messages for various cases
2025-09-01 16:30:35 +01:00
Joe Farebrother
4212d1b5b6
Update alert messages and choose one witness
2025-09-01 16:30:26 +01:00
Joe Farebrother
5ba5007076
Modernize signature mismatch
2025-09-01 16:30:17 +01:00
Joe Farebrother
f7097136f1
Rank multiple calls so only the first 2 calls are alerted
2025-09-01 16:23:42 +01:00
Henry Mercer
d71991fdc0
Merge pull request #20320 from github/henrymercer/default-queries
...
Specify default queries in `codeql-extractor.yml`
2025-09-01 15:52:47 +01:00
Joe Farebrother
8545c7d36f
Fix doc typo
2025-09-01 15:12:52 +01:00
Joe Farebrother
8c9c66c002
Fix typo in example
2025-09-01 15:12:52 +01:00
Joe Farebrother
ba68fe9a0f
Adress review suggestions - cleanups
2025-09-01 15:12:52 +01:00
Joe Farebrother
fb0380bfbc
Inline locationBefore
2025-09-01 15:12:52 +01:00
Joe Farebrother
cc486ddb08
Remove tostring
2025-09-01 15:12:51 +01:00
Joe Farebrother
72df584e9b
Update integration test outout and fix qhelp
2025-09-01 15:12:51 +01:00
Joe Farebrother
c9dc54abf8
Fix typos
2025-09-01 15:11:59 +01:00
Joe Farebrother
58f2bd4000
Fix changenote formatting
2025-09-01 15:11:59 +01:00
Joe Farebrother
5992dc3b0a
Add qldoc
2025-09-01 15:11:59 +01:00
Joe Farebrother
e01519f547
Add change note
2025-09-01 15:11:59 +01:00
Joe Farebrother
74a312735c
Update integration test output
2025-09-01 15:11:58 +01:00
Michael Nebel
55dd098307
C#: Address review comments.
2025-09-01 15:43:49 +02:00
Michael Nebel
aa8a72d639
C#: Add change-note.
2025-09-01 15:43:48 +02:00
Michael Nebel
525c095287
C#: Update expected test output.
2025-09-01 15:43:46 +02:00
Michael Nebel
5cd30f023c
C#: Add some XmlTextReader models.
2025-09-01 15:43:44 +02:00
Michael Nebel
8a480b6be1
C#: Update test expected output.
2025-09-01 15:43:42 +02:00
Michael Nebel
8b2ebaa047
C#: Promote some generated- and refine models for XmlReader.
2025-09-01 15:43:40 +02:00
Michael Nebel
1d35bd1a59
C#: Update expected test output.
2025-09-01 15:43:38 +02:00
Michael Nebel
beeb91dd2a
C#: Add some XmlDictionaryReader models.
2025-09-01 15:43:36 +02:00
Michael Nebel
011f8dd3b3
Swift: Fix a Ql4Ql violation.
2025-09-01 15:22:56 +02:00
Michael Nebel
37997c0561
Rust: Fix some Ql4Ql violations.
2025-09-01 15:21:41 +02:00
Michael Nebel
c5cf46bc2c
Ruby: Fix some Ql4Ql violations.
2025-09-01 15:19:25 +02:00
Michael Nebel
8b10ad49d7
JS: Fix some Ql4Ql violations.
2025-09-01 15:17:53 +02:00
Michael Nebel
dbd31259b3
Python: Fix some Ql4Ql violations.
2025-09-01 15:16:25 +02:00
Joe Farebrother
ba8658491a
Update qhelp + alert messages
2025-09-01 14:11:01 +01:00
Joe Farebrother
86bb0e8af2
qhelp: move examples to subfolder
2025-09-01 14:10:58 +01:00
Joe Farebrother
daa5525a10
Update tests and add an additional test
2025-09-01 14:10:55 +01:00
Joe Farebrother
b4b20d7d3f
Update multiple calls queries to include call targets in alert message
2025-09-01 14:10:53 +01:00
Joe Farebrother
18b949c0a9
Remove case excluding classes with a __new__ method; as it doesn't make much sense (__init__ is still called anyway)
2025-09-01 14:10:50 +01:00
Joe Farebrother
9619ae8a2d
Add additional test case + update missing del tests
2025-09-01 14:10:47 +01:00
Joe Farebrother
c9932e187a
Update tests for calls to init + fixes
2025-09-01 14:10:44 +01:00
Joe Farebrother
9ac95266c7
Fixes
2025-09-01 14:10:41 +01:00
Joe Farebrother
3c74e12b9c
Change implenetation of missing calls to use getASuperCallTarget, and change alerts to alert on the class and provide clearer information, using optional location links.
2025-09-01 14:10:39 +01:00
Joe Farebrother
99a05ed5a4
Update test outputs + fix semantics
2025-09-01 14:10:36 +01:00
Joe Farebrother
732c818916
Move tests and add inline expectation postprocessing
2025-09-01 14:10:33 +01:00
Joe Farebrother
45b5efad25
Fix FPs and typo
2025-09-01 14:10:30 +01:00
Joe Farebrother
4f63528844
Update alert messages
2025-09-01 14:10:25 +01:00
Joe Farebrother
d0daacd17e
Modernize multple calls to init/del
2025-09-01 14:10:22 +01:00
Joe Farebrother
a02016a95f
Add missing call to del
2025-09-01 14:10:17 +01:00
Joe Farebrother
38af3ac925
Update missing call to init
2025-09-01 14:10:14 +01:00
Joe Farebrother
bea8502cc5
Move missing/multiple calls to init/del queries to folder
2025-09-01 14:10:11 +01:00
Michael Nebel
77113b2e42
Java: Fix some Ql4Ql violations.
2025-09-01 15:04:08 +02:00
Michael Nebel
ea664e08d1
Go: Fix some Ql4Ql violations.
2025-09-01 15:00:34 +02:00
Michael Nebel
7491352278
C#: Fix some Ql4Ql violations.
2025-09-01 14:57:30 +02:00
Michael Nebel
64f9758c29
Actions: Fix some Ql4Ql violations.
2025-09-01 14:45:00 +02:00
Anders Schack-Mulligen
4e70627629
Guards: Use shared SuccessorType.
2025-09-01 13:55:29 +02:00
Anders Schack-Mulligen
0d9b8d0592
Cfg: Allow for multiple exception successors.
2025-09-01 13:48:27 +02:00
Anders Schack-Mulligen
bbf7995100
C#: Fix caching dependencies.
2025-09-01 13:48:25 +02:00
Anders Schack-Mulligen
144e34c669
Shared: Use shared SuccessorType in shared Cfg and BasicBlock libs.
2025-09-01 13:43:32 +02:00
Asger F
45b8158fe5
JS: Remove totalorder()
...
This was once as input to the shared data flow library, but has since been removed from the input signature.
2025-09-01 13:39:54 +02:00
Anders Schack-Mulligen
4685b4f8a9
Java: Use shared SuccessorType.
2025-09-01 13:00:20 +02:00
Asger F
ca393a9afe
JS: Do not override AST methods in React model
2025-09-01 12:57:06 +02:00
Anders Schack-Mulligen
92fcda3cc7
Actions: Use shared SuccessorType.
2025-09-01 12:56:08 +02:00
Anders Schack-Mulligen
1e25b4de4b
Swift: Use shared SuccessorType.
2025-09-01 12:56:07 +02:00
Anders Schack-Mulligen
c1662cf05c
C#/Ruby: Accept qltest changes.
...
Mostly toString changes, and a slight change to
splitting in C#.
2025-09-01 12:56:07 +02:00
Anders Schack-Mulligen
cf9196fb55
Rust: Use shared SuccessorType.
2025-09-01 12:56:07 +02:00
Anders Schack-Mulligen
d8c193df18
Ruby: Use shared SuccessorType.
2025-09-01 12:56:04 +02:00
Anders Schack-Mulligen
8b50ac291f
C#: Use shared SuccessorType.
2025-09-01 12:53:24 +02:00
Anders Schack-Mulligen
8434dc3890
Controlflow: Add a shared SuccessorType implementation.
2025-09-01 12:47:24 +02:00
Anders Schack-Mulligen
70a871c1e5
Merge pull request #20253 from aschackmull/shared/basicblock-signature2
...
Shared: Add and use a signature for basic blocks
2025-09-01 12:39:33 +02:00
Michael B. Gale
cbdc54adf7
Merge pull request #20313 from github/dependabot/github_actions/actions/checkout-5
...
Bump actions/checkout from 4 to 5
2025-09-01 11:34:41 +01:00
Jeroen Ketema
93f4721418
Merge pull request #20316 from jketema/stats
...
C++: Update dbscheme stats file
2025-09-01 11:54:43 +02:00
Joe Farebrother
42e8b32841
Merge pull request #20280 from joefarebrother/shared-loc-option
...
Shared: Add Option types with location
2025-09-01 10:54:04 +01:00
Anders Schack-Mulligen
09b2c5abf0
BasicBlock: Replace entryBlock predicate with subclass.
2025-09-01 11:48:44 +02:00
Anders Schack-Mulligen
e2eb6dbbf2
Ruby: Fix query compilation.
2025-09-01 11:26:37 +02:00
Anders Schack-Mulligen
6ffb9b129f
C++: Extend final IRBlock
2025-09-01 11:26:36 +02:00
Anders Schack-Mulligen
3821f172df
Guards/Java: Use BasicBlock signature in Guards library.
2025-09-01 11:26:36 +02:00
Anders Schack-Mulligen
a7b2a2fa9f
C++: Sync files.
2025-09-01 11:26:35 +02:00
Anders Schack-Mulligen
f459ddc40a
Languages: Adapt to api changes.
2025-09-01 11:26:33 +02:00
Anders Schack-Mulligen
e53b22dfa7
SSA/VariableCapture: Use shared BasicBlock signature.
2025-09-01 11:19:49 +02:00
Anders Schack-Mulligen
bb3abc815f
SSA: Update input to use member predicates.
2025-09-01 11:19:48 +02:00
Anders Schack-Mulligen
119837bb1d
BasicBlock: Add CFG signature.
2025-09-01 11:19:48 +02:00
Joe Farebrother
1b808fed34
Fix incorrect switch of None and Some cases
2025-09-01 09:51:00 +01:00
Joe Farebrother
80ab35c3a0
Apply review suggestions - rename things and clean up style.
2025-09-01 09:50:54 +01:00
Joe Farebrother
8e5efb5fba
Add change note
2025-09-01 09:50:47 +01:00
Joe Farebrother
fc5501b9c8
Add LocOption2 for types with getLocation.
2025-09-01 09:50:39 +01:00
Joe Farebrother
51f96deb2e
Add shared LocOption module for optional types with locations
2025-09-01 09:50:30 +01:00
Asger F
67a1c2ffef
Update javascript/extractor/src/com/semmle/js/extractor/AutoBuild.java
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-01 10:20:17 +02:00
Asger F
0d0eaa21a1
Merge pull request #20302 from asgerf/js/simpler-locations
...
JS: Remove synthetic locations
2025-09-01 09:46:13 +02:00
Tom Hvitved
aa604425a5
Merge pull request #20305 from hvitved/csharp/dataflow-base-non-exact-type
...
C#: Fix context-sensitive dispatch when using `base` qualifier
2025-09-01 09:20:15 +02:00
Simon Friis Vindum
c1c7127894
Rust: Add examples where trait visibility affects path and method resolution
2025-08-30 13:26:13 +02:00
Henry Mercer
71bac5eda8
Actions: Add file coverage baseline
2025-08-29 20:10:45 +01:00
Henry Mercer
67dc01b636
Actions: Add successfully extracted files query
2025-08-29 20:10:43 +01:00
Henry Mercer
55869f28c3
Specify default queries in codeql-extractor.yml
2025-08-29 17:34:45 +01:00
Jeroen Ketema
b361b0f3c3
Merge pull request #20310 from MathiasVP/add-comptr-model-now-with-more-models
...
C++: Add `ComPtr` conversion operators
2025-08-29 16:45:39 +02:00
Geoffrey White
45d6fc04ce
Merge pull request #20312 from geoffw0/dbquality
...
Rust: Tune rust/diagnostic/database-quality
2025-08-29 13:04:46 +01:00
Taus
f89fae39c5
Merge pull request #20276 from github/tausbn/python-model-psycopg2-connection-pools
...
Python: Add support for Psycopg2 database connection pools
2025-08-29 13:52:59 +02:00
Geoffrey White
d650d56485
Rust: Implement upgrade and downgrade scripts.
2025-08-29 12:37:52 +01:00
Asger F
57b4534d30
JS: Avoid overriding Expr predicates in xUnit.qll
2025-08-29 13:06:05 +02:00
Jeroen Ketema
7c5b04a0da
Merge pull request #20315 from jketema/uninit-test
...
C++: Add uninitialized local test
2025-08-29 12:52:28 +02:00
Asger F
cc8fe10801
JS: Update locations in expected files
2025-08-29 12:03:11 +02:00
Jeroen Ketema
277f5efa9c
C++: Update dbscheme stats file
2025-08-29 11:13:59 +02:00
Jeroen Ketema
6b580ac12d
C++: Update expected test results
2025-08-29 10:57:03 +02:00
Jeroen Ketema
a145e52faf
C++: Add uninitialized local test
2025-08-29 10:55:10 +02:00
Tom Hvitved
611eca41b9
Add change note
2025-08-29 10:22:11 +02:00
Geoffrey White
bdc1f1715d
Rust: Add upgrade and downgrade scripts (template).
2025-08-29 08:49:33 +01:00
Geoffrey White
a6bdab15f6
Merge branch 'main' into oldpaths1
2025-08-29 08:30:43 +01:00
Napalys Klicius
b4d6cb6e5f
Merge pull request #20178 from Napalys/java/visible-for-testing-abuse
...
Java: Added new query `java/visible-for-testing-abuse`
2025-08-29 08:38:04 +02:00
Napalys Klicius
bafe22c50c
Merge pull request #20048 from Napalys/js/xml_bomb_sinks
...
JS: Exclude patched libraries from `xml-bomb` sink
2025-08-29 08:10:55 +02:00
Napalys Klicius
6132900e12
Java: add full stops for ql docs
2025-08-29 08:09:03 +02:00
dependabot[bot]
6e1d9752d2
Bump actions/checkout from 4 to 5
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-29 03:04:30 +00:00
REDMOND\brodes
74ce7cd188
Crypto: Moving all data flow analyses to taint tracking.
2025-08-28 20:40:05 -04:00
Tom Hvitved
0cc9ff8320
Merge pull request #20225 from hvitved/rust/path-resolution-crate-fallback
...
Rust: Fallback crate resolution
2025-08-28 20:48:51 +02:00
Geoffrey White
5d14ef5fd3
Rust: Change note.
2025-08-28 17:14:53 +01:00
Geoffrey White
9e0a31cafc
Rust: Change note.
2025-08-28 17:08:03 +01:00
Geoffrey White
5c90b908cd
Rust: Lower the thresholds in rust/diagnostic/database-quality to more pragmatic numbers.
2025-08-28 17:08:02 +01:00
Jeroen Ketema
b8917c8c19
Merge branch 'main' into add-comptr-model-now-with-more-models
2025-08-28 17:15:06 +02:00
Mathias Vorreiter Pedersen
b9cd7a80f9
C++: Fix conflation in models.
2025-08-28 17:10:06 +02:00
Mathias Vorreiter Pedersen
759e339444
C++: Add change note.
2025-08-28 17:02:26 +02:00
Mathias Vorreiter Pedersen
ddf0f37dac
C++: Accept test changes.
2025-08-28 16:58:49 +02:00
Mathias Vorreiter Pedersen
e59de9a3d6
C++: Add models for the remaining member functions (and conversions) in ComPtr.
2025-08-28 16:56:39 +02:00
Mathias Vorreiter Pedersen
3e78572a3a
C++: Drive-by fix: Add missing '@'.
2025-08-28 16:54:49 +02:00
Mathias Vorreiter Pedersen
f135ed957d
C++: Add testcases with missing model.
2025-08-28 16:54:46 +02:00
Mathias Vorreiter Pedersen
2c2b1e4116
Merge pull request #20306 from MathiasVP/fix-new-initializer-bug
...
C++: Fix IR construction for implicit conversions in `new` initializers
2025-08-28 16:40:37 +02:00
Jeroen Ketema
1847a450cc
Merge pull request #20298 from jketema/pch-expose
...
C++: Add class representing PCH files
2025-08-28 15:33:20 +02:00
Geoffrey White
e8b7ce43a5
Merge pull request #20270 from geoffw0/pathi
...
Rust: Improve FS models
2025-08-28 14:30:18 +01:00
Napalys Klicius
c836104717
Update java/ql/src/Violations of Best Practice/Implementation Hiding/VisibleForTestingAbuse.md
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2025-08-28 15:01:53 +02:00
Napalys Klicius
d3be456c5c
Update java/ql/src/Violations of Best Practice/Implementation Hiding/VisibleForTestingAbuse.ql
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2025-08-28 15:01:43 +02:00
Napalys Klicius
73c8f3ded9
Merge pull request #20205 from Napalys/java/mocking-all-non-private-methods-means-unit-test-is-too-big
...
Java: port quality query `java/mocking-all-non-private-methods-means-unit-test-is-too-big`
2025-08-28 14:59:37 +02:00
Joe Farebrother
7ef2b01119
Merge pull request #20142 from joefarebrother/python-qual-subclass-shadow
...
Python: Modernise Superclass attribute shadows subclass method query
2025-08-28 13:40:26 +01:00
Napalys Klicius
1949d9f8f3
Merge branch 'main' into java/mocking-all-non-private-methods-means-unit-test-is-too-big
2025-08-28 14:22:06 +02:00
Napalys Klicius
970167bc62
Java: moved java/mocking-all-non-private-methods-means-unit-test-is-too-big to a more appropriate location, namely Violation of Best Practice/Testing
2025-08-28 14:20:19 +02:00
Geoffrey White
e860600712
Rust: Remove the canonical_path_disabled test entirely.
2025-08-28 12:55:01 +01:00
Michael Nebel
919ed3cff0
Merge pull request #20304 from michaelnebel/csharp/prettyprintmad
...
C#: Convert Blazor test to use pretty print models processing.
2025-08-28 13:54:23 +02:00
Tom Hvitved
aa3f4e1eca
C#: Fix context-sensitive dispatch when using base qualifier
2025-08-28 13:24:47 +02:00
Jeroen Ketema
31126649a9
Update cpp/ql/lib/semmle/code/cpp/PchFile.qll
...
Co-authored-by: Idriss Riouak <idrissrio@github.com >
2025-08-28 13:10:39 +02:00
Mathias Vorreiter Pedersen
4116292888
C++: Accept test changes.
2025-08-28 12:13:19 +02:00
Mathias Vorreiter Pedersen
2033552bb2
C++: Handle conversions in new initializers.
2025-08-28 12:13:02 +02:00
Mathias Vorreiter Pedersen
d0e766da3e
C++: Add a testcase with invalid IR.
2025-08-28 12:06:21 +02:00
Napalys Klicius
ad6ca51ef2
Update java/ql/src/Likely Bugs/Frameworks/JUnit/ExcessivePublicMethodMocking.ql
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2025-08-28 12:03:56 +02:00
Tom Hvitved
fa7295f0a1
Merge pull request #20303 from hvitved/python/jump-to-def-unpack-tests
...
Python: Add jump-to-def tests for unpacking assignments
2025-08-28 12:03:55 +02:00
Geoffrey White
1e46dd8412
Rust: Remove redundant code.
2025-08-28 10:59:37 +01:00
Tom Hvitved
c2bb3797b0
C#: Add data flow test
2025-08-28 11:57:03 +02:00
Michael Nebel
73ce2a2f57
C#: Convert Blazor test to use pretty print models processing.
2025-08-28 11:46:08 +02:00
Asger F
d117c52d2f
JS: Use the LHS as the location for SsaExplicitDefinition
2025-08-28 11:35:15 +02:00
Asger F
4437f47a7b
Merge pull request #20297 from asgerf/js/simpler-summary-pruning
...
JS: Change pruning to not rely on Import
2025-08-28 11:20:14 +02:00
Michael Nebel
bd31e7f230
Merge pull request #20278 from michaelnebel/csharp/streamlinebulkmodels2
...
C#: Update MaD models to taint entire byte- and char collection.
2025-08-28 10:49:44 +02:00
Tom Hvitved
bf47f66691
Python: Add jump-to-def tests for unpacking assignments
2025-08-28 10:38:21 +02:00
Joe Farebrother
bde143e4c1
Merge pull request #20038 from joefarebrother/python-qual-comparison
...
Python: Modernize 3 quality queries for comparison methods
2025-08-28 09:37:20 +01:00
Joe Farebrother
45910b9505
Merge remote-tracking branch 'origin/python-qual-subclass-shadow' into python-qual-subclass-shadow
2025-08-28 09:23:42 +01:00
Tom Hvitved
f87f52d8d2
Address review comments
2025-08-28 10:08:48 +02:00
Joe Farebrother
c6ababd262
Fix test output
2025-08-28 08:49:34 +01:00
Tom Hvitved
dcaf4a735b
Rust: Fallback crate resolution
2025-08-28 09:34:05 +02:00
Geoffrey White
194363c107
Rust: Codegen.
2025-08-27 20:01:16 +01:00
Geoffrey White
f838494bf0
Rust: Remove empty impls.
2025-08-27 19:58:03 +01:00
Geoffrey White
9efb6ea995
Rust: Cargo fmt.
2025-08-27 19:16:43 +01:00
Geoffrey White
83df1137b6
Rust: Codegen.
2025-08-27 17:47:34 +01:00
Geoffrey White
2e747bb05c
Merge branch 'main' into oldpaths1 (some generated files are left unmerged).
2025-08-27 16:56:06 +01:00
Simon Friis Vindum
028f1cb7b4
Merge pull request #20299 from paldepind/rust/certain-extensions
...
Rust: Minor tweaks to certain type inference
2025-08-27 17:49:20 +02:00
Geoffrey White
a075ed595c
Rust: Remove telemetry about extractor generated paths.
2025-08-27 15:56:59 +01:00
Mathias Vorreiter Pedersen
bb08611f55
Merge pull request #20301 from MathiasVP/add-comptr-model
...
C++: Add `ComPtr` MaD models
2025-08-27 16:52:02 +02:00
Joe Farebrother
ada0b372c6
Merge pull request #20120 from joefarebrother/python-qual-unexpected-raise-special
...
Python: Modernize Unexpected Raise In Special Method query
2025-08-27 15:01:46 +01:00
Mathias Vorreiter Pedersen
bebfe03166
C++: Add missing model and accept test changes.
2025-08-27 15:15:26 +02:00
Mathias Vorreiter Pedersen
8c07a3e552
C++: Add testcase with missing model.
2025-08-27 15:12:52 +02:00
Mathias Vorreiter Pedersen
7c05622a91
C++: Add missing type and accept test changes.
2025-08-27 14:41:00 +02:00
Mathias Vorreiter Pedersen
96b6986660
C++: Fix duplicated entries.
2025-08-27 14:35:45 +02:00
Joe Farebrother
2c6b2df7cc
Update python/ql/src/Classes/SubclassShadowing/SubclassShadowing.qhelp
...
Co-authored-by: Taus <tausbn@github.com >
2025-08-27 13:20:54 +01:00
Joe Farebrother
5b0beb91d1
Update python/ql/src/Functions/IncorrectRaiseInSpecialMethod.qhelp
...
Co-authored-by: Taus <tausbn@github.com >
2025-08-27 13:19:55 +01:00
Mathias Vorreiter Pedersen
9e9f6dd11a
C++: Accept test changes.
2025-08-27 14:18:21 +02:00
Mathias Vorreiter Pedersen
246ed9d30b
C++: Add a model for ComPtr.
2025-08-27 14:18:12 +02:00
Mathias Vorreiter Pedersen
6f64129b04
C++: Add ComPtr tests.
2025-08-27 14:05:13 +02:00
Simon Friis Vindum
08f025f164
Rust: Infer range expressions certainly and support full ranges
2025-08-27 13:59:20 +02:00
Simon Friis Vindum
4c10f07d5f
Rust: Add type inference test with range full expression
2025-08-27 13:59:19 +02:00
Simon Friis Vindum
2f4e2d6d79
Rust: Infer certain types for logical operators
2025-08-27 13:59:18 +02:00
Simon Friis Vindum
0ff4dbcea0
Rust: Fix type inference inconsistency
2025-08-27 13:59:16 +02:00
Simon Friis Vindum
1981668f3c
Rust: Add pattern match type inference test
2025-08-27 13:59:15 +02:00
Jeroen Ketema
fd752d36cb
C++: Add missing QLDoc
2025-08-27 13:48:10 +02:00
Jeroen Ketema
97d3982061
C++: Add change note
2025-08-27 13:42:46 +02:00
Napalys Klicius
a3aacfb688
Merge pull request #20190 from Napalys/java/jvm-exit-query-promotion
...
Java: Enhance `java/jvm-exit` query and add to quality
2025-08-27 13:23:02 +02:00
Jeroen Ketema
9b19ccf884
C++: Update dbscheme stats file
2025-08-27 12:52:26 +02:00
Napalys Klicius
e0916c8750
JS: add change note
2025-08-27 10:32:45 +00:00
Napalys Klicius
32606584ea
JS: add enumeration taint flow to Remote Property Injection query
2025-08-27 10:23:03 +00:00
Napalys Klicius
c39c04cb86
JS: added new test case for remote prop injection via Object.keys
2025-08-27 10:20:57 +00:00
Napalys Klicius
10c10c7d30
JS: fixed typo in folder name
2025-08-27 10:17:39 +00:00
Kasper Svendsen
9cc6e9c8a9
Overlay: Add discarding for Java classes, interfaces & fields
2025-08-27 12:07:59 +02:00
Geoffrey White
1d815b16d6
Rust: Update test expectations.
2025-08-27 10:42:45 +01:00
Geoffrey White
5d060d621b
Rust: Remove leftover QL use of Resolvable.
2025-08-27 10:42:44 +01:00
Geoffrey White
152ae1d29b
Rust: Codegen.
2025-08-27 10:42:42 +01:00
Geoffrey White
c7947a0afa
Rust: Remove built-in methods from Addressable in the schema.
2025-08-27 10:42:11 +01:00
Tom Hvitved
f232335618
Merge pull request #20291 from hvitved/rust/type-inference-more-certain-types
...
Rust: Add more cases to `inferCertainType`
2025-08-27 11:25:24 +02:00
Asger F
4a687a1222
JS: Add deprecated alias
...
The old DbLocation class was public, hence the alias
2025-08-27 11:21:18 +02:00
Asger F
dcf63fc434
JS: Remove synthetic locations
2025-08-27 11:20:24 +02:00
Asger F
be32579cab
JS: Change pruning to not rely on Import
2025-08-27 10:44:23 +02:00
Jami
b7c1e1e8ce
Merge pull request #20006 from jcogs33/jcogs33/java/insecure-spring-actuator-config-promotion
...
Java: Promote Insecure Spring Boot Actuator Configuration query from experimental
2025-08-26 19:29:03 -04:00
REDMOND\brodes
7c8177de97
Crypto: Added missing ArtifactPassthrough.qll (forgot to add to merged in branch). Acronym casing fix.
2025-08-26 17:12:21 -04:00
Jeroen Ketema
896a802194
C++: Add upgrade and downgrade scripts
2025-08-26 23:12:15 +02:00
Ben Rodes
73b3398b46
Merge pull request #2 from bdrodes/signature_model_refactor_experimental
...
Signature model refactor experimental
2025-08-26 17:05:01 -04:00
Jeroen Ketema
e20ce57023
C++: Expose PCH file creation as usage in QL
2025-08-26 22:12:27 +02:00
Jeroen Ketema
e9b00f1e0d
C++: Add tables that represent the creation and use of PCH files
...
This allows a use to be linked to a creation.
2025-08-26 22:12:12 +02:00
REDMOND\brodes
938b47c2ad
Crypto: Debug missing hashes associated with HMAC. EVP_PKEY_get1_RSA is now just a passthrough, it is not a known implicit operation call. Some final operations generating null outputs are now removed from possible final operartions (typically used to determine buffer lenghth and not actually performing the operation). Misc. false positive/error fixes and code clean up, and added missing models.
2025-08-26 16:07:04 -04:00
Florin Coada
499e432065
Merge pull request #20268 from github/changedocs/2.22.4
...
Add changelog entry for CodeQL CLI version 2.22.4
2025-08-26 20:29:35 +01:00
Geoffrey White
3cd057fe39
Rust: Remove Resolvable from the schema.
2025-08-26 17:32:02 +01:00
REDMOND\brodes
422352c632
Crypto: Continued refactoring of operation steps and bug fixes.
2025-08-26 11:49:26 -04:00
Florin Coada
feca56582a
Update codeql-cli-2.22.4.rst
2025-08-26 16:48:23 +01:00
Paolo Tranquilli
dd68d68064
Merge pull request #20288 from github/redsun82/rust-less-warnings
...
Rust: downgrade uncompiled source files from warning to info
2025-08-26 17:45:17 +02:00
Paolo Tranquilli
531955e922
Merge branch 'main' into redsun82/rust-less-warnings
2025-08-26 17:29:20 +02:00
Napalys Klicius
b3f90bbdfc
Update java/ql/src/Violations of Best Practice/Undesirable Calls/CallsToSystemExit.ql
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2025-08-26 13:23:24 +00:00
Napalys Klicius
6c51ba80c7
Update java/ql/src/Violations of Best Practice/Undesirable Calls/CallsToSystemExit.ql
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2025-08-26 15:19:02 +02:00
Geoffrey White
a8f7f74812
Rust: Remove unused use decls.
2025-08-26 13:57:33 +01:00
Geoffrey White
70600fe6d9
Rust: Remove unused traits and things.
2025-08-26 13:55:29 +01:00
Geoffrey White
bd5f863efc
Rust: Remove uncalled methods.
2025-08-26 13:55:28 +01:00
REDMOND\brodes
48dc280e6c
Crypto: Fix issue with OAEP padding edges regressing.
2025-08-26 08:51:52 -04:00
Tom Hvitved
6453b71017
Rust: Add more cases to inferCertainType
2025-08-26 14:44:55 +02:00
Tom Hvitved
3527fca617
Merge pull request #20274 from hvitved/rust/type-synth-type-param
...
Rust: Include synthetic type parameters in `Type.getATypeParameter`
2025-08-26 14:42:29 +02:00
Simon Friis Vindum
87d1a14ff2
Merge pull request #20286 from github/rust/fix-examples
...
Rust: Fix examples in qldoc
2025-08-26 14:13:08 +02:00
Simon Friis Vindum
4ed0fb71f3
Merge pull request #20289 from github/rust/typo-in-bound
...
Rust: Fix minor typo in bound in comment
2025-08-26 14:12:33 +02:00
Jami
3675e4bb4f
Merge branch 'main' into jcogs33/java/insecure-spring-actuator-config-promotion
2025-08-26 08:02:17 -04:00
Paolo Tranquilli
42a40c14ac
Rust: reword macro expansion error
2025-08-26 13:58:47 +02:00
Geoffrey White
dd00df74dd
Rust: Remove unused wiring.
2025-08-26 12:54:31 +01:00
Simon Friis Vindum
600417a767
Rust: Fix minor typo in bound in comment
2025-08-26 13:43:30 +02:00
Jeroen Ketema
d5f4a3961e
Merge pull request #20287 from jketema/not-included
...
Java: Update integration test after query removal
2025-08-26 12:54:52 +02:00
Paolo Tranquilli
999920c968
Rust: accept test changes
2025-08-26 12:30:27 +02:00
Paolo Tranquilli
02b4c1fa85
Rust: downgrade uncompiled source files from warning to info
2025-08-26 11:56:53 +02:00
Jeroen Ketema
680aeea1ba
Merge pull request #14331 from asgerf/cpp/use-flow-state-inout-barriers
...
C++: use in/out barriers with flow state
2025-08-26 11:47:35 +02:00
Napalys Klicius
8017fae297
Java: Simplify mock call location check using getEnclosingCallable
2025-08-26 09:44:00 +00:00
Jeroen Ketema
54f264851a
Merge branch 'main' into cpp/use-flow-state-inout-barriers
2025-08-26 11:24:32 +02:00
Jeroen Ketema
704ae1a3b1
Java: Update integration test after query removal
2025-08-26 11:19:42 +02:00
Asger F
629a96c167
Merge pull request #5 from jketema/cpp/use-flow-state-inout-barriers
...
C++: Revert changes to `cpp/constant-array-overflow`
2025-08-26 11:08:56 +02:00
Tom Hvitved
80031e5c00
Merge pull request #20273 from hvitved/rust/attribute-in-macro-expansion
...
Rust: Include `getAttributeMacroExpansion` in `isInMacroExpansion`
2025-08-26 11:08:02 +02:00
Simon Friis Vindum
17f7b7f710
Rust: Fix examples in qldoc
2025-08-26 10:56:52 +02:00
Geoffrey White
078fbc6427
Rust: Remove resolve_paths from the translator.
2025-08-26 09:51:00 +01:00
Geoffrey White
456f56096f
Rust: Remove ResolvePaths enum and resolve_paths arguments up to Translator::new (hardcode to false).
2025-08-26 09:46:20 +01:00
Jeroen Ketema
75786e9a71
C++: Revert changes to cpp/constant-array-overflow
...
It is not clear that this does what we want here, and the query is severly
broken in any case.
2025-08-26 10:43:54 +02:00
Napalys Klicius
1abb8ad54a
Java: Use strictcount instead of count for method counting
...
Co-authored-by: michaelnebel <michaelnebel@github.com >
2025-08-26 08:41:33 +00:00
Napalys Klicius
b271f1fcd0
Java: Renamed query java/mocking-all-non-private-methods-means-unit-test-is-too-big to java/excessive-public-method-mocking and changed wording from non-private to public
2025-08-26 08:37:57 +00:00
Geoffrey White
d6d0645d7b
Rust: Remove skip_path_resolution config variable (hardhoded to true).
2025-08-26 09:33:52 +01:00
Tom Hvitved
fb7c3f32d3
Merge pull request #20283 from hvitved/rust/update-test-output
...
Rust: Update expected test output
2025-08-26 10:06:54 +02:00
Jeroen Ketema
7a3973b941
Merge pull request #20279 from jketema/loc-cleanup
...
C++: Update expected test results after extractor changes
2025-08-26 09:55:02 +02:00
REDMOND\brodes
5d29240f27
Crypto: OperationStep overhaul to account for errors and missing interproc flow.
2025-08-25 16:59:09 -04:00
Tom Hvitved
83ca08cad6
Rust: Update expected test output
2025-08-25 21:54:15 +02:00
Tom Hvitved
9b4d37df24
Add change note
2025-08-25 20:49:10 +02:00
Jeroen Ketema
a104600d4d
Merge branch 'main' into cpp/use-flow-state-inout-barriers
2025-08-25 17:04:30 +02:00
Paolo Tranquilli
7de34e4be0
Merge pull request #20055 from github/redsun82/cargo-upgrade-2
...
Rust: upgrade to rust-analyzer 0.0.300
2025-08-25 16:26:13 +02:00
Taus
1008ca9744
Python: Add psycopg2.pool tests
2025-08-25 14:14:16 +00:00
Jeroen Ketema
0752c07bc1
C++: Update expected test results after extractor changes
2025-08-25 15:56:00 +02:00
Michael Nebel
7394a80bf3
C#: Add change-note.
2025-08-25 14:53:23 +02:00
Michael Nebel
be123cf2bc
C#: Update test expected output.
2025-08-25 14:52:41 +02:00
Michael Nebel
311e3ac8b5
C#: Taint entire return for Byte- and Char array summaries.
2025-08-25 14:39:29 +02:00
Taus
d5e0298999
Python: Add support for Psycopg2 database connection pools
...
Our current modelling only treated `psycopg2` insofar as it implemented
PEP 249 (which does not define any notion of connection pool), which
meant we were missing database connections that arose from such pools.
With these changes, we add support for the three classes relating to
database pools that are defined in `psycopg2`. (Note that
`getAnInstance` automatically looks at subclasses, which means this
should also handle cases where the user has defined a new subclass that
inherits from one of these three classes.)
2025-08-25 12:35:57 +00:00
Joe Farebrother
eb4841230a
Add tests (WIP)
2025-08-25 13:30:45 +01:00
Tom Hvitved
88059d97c8
Merge pull request #20275 from hvitved/python/fix-print-ast-yaml
...
Python: Only include relevant YAML in `printAst.ql`
2025-08-25 14:22:14 +02:00
Tom Hvitved
bf7e3dabd6
Python: Only include relevant YAML in printAst.ql
2025-08-25 13:54:19 +02:00
Tom Hvitved
9ef839dc8a
Rust: Include synthetic type parameters in Type.getATypeParameter
2025-08-25 13:13:05 +02:00
Tom Hvitved
1d8f29136b
Rust: Include getAttributeMacroExpansion in isInMacroExpansion
2025-08-25 11:00:49 +02:00
Anders Schack-Mulligen
4be995dc19
Merge pull request #20267 from aschackmull/java/nullness-fix
...
Java: Add more nullness tests and fix a bug causing false negatives.
2025-08-25 09:13:25 +02:00
Anders Schack-Mulligen
891ce62948
Merge pull request #17660 from knewbury01/knewbury01/improve-quality-java-set
...
Remove unnecessary query
2025-08-25 08:37:02 +02:00
Paolo Tranquilli
e20c8e139c
Merge pull request #20250 from github/redsun82/redsun82/no-lld
...
Bazel: do not force `lld` and fix `platforms` warning
2025-08-25 08:32:25 +02:00
Napalys Klicius
38f517ecfa
Java: Add lambda-aware test detection to VisibleForTesting query
2025-08-24 10:02:43 +00:00
Napalys Klicius
4149968f33
Java: Remove the hardcoded path filter that excluded CodeQL's own unit tests from the java/visible-for-testing-abuse query.
2025-08-24 09:58:35 +00:00
Jami Cogswell
f0542dd828
Java: add summary to change note
2025-08-22 17:17:51 -04:00
REDMOND\brodes
b7ceeb399f
Crypto: nodes.expected update and removed dead code from Language.qll
2025-08-22 14:50:31 -04:00
Geoffrey White
4a4f782d86
Rust: Accept another consistency test change.
2025-08-22 16:57:51 +01:00
Geoffrey White
0e2bc7c95d
Merge remote-tracking branch 'upstream/main' into pathi
2025-08-22 16:57:41 +01:00
Geoffrey White
08cb038086
Rust: Accept changes to other tests.
2025-08-22 16:17:50 +01:00
Napalys Klicius
4a693d9b60
Update java/ql/src/Violations of Best Practice/Undesirable Calls/CallsToSystemExit.ql
...
Co-authored-by: Michael Nebel <michaelnebel@github.com >
2025-08-22 16:09:46 +02:00
Henning Makholm
3134c0aa38
Merge pull request #20269 from github/hmakholm/pr/test-run-output
...
rust integration test: use all output from codeql test run
2025-08-22 15:47:33 +02:00
Geoffrey White
701aec1c8e
Rust: Fix the canonicalize models.
2025-08-22 14:35:51 +01:00
Henning Makholm
2e69417d67
rust integration test: use all output from codeql test run
...
The integration test expectes to find a certain phrase from the
extractor repeated in the _stderr_ of `codeql test run`. However, that
subcommand is about to start reproducing the extractor output as-is,
which means the phrase will instead appear in _stdout_.
Change the integration test to capture all of the output, so it
will keep passing across the change.
2025-08-22 15:27:37 +02:00
Geoffrey White
49c4c34882
Merge pull request #20221 from github/copilot/fix-20220
...
Rust: Implement a new query for Log Injection
2025-08-22 14:01:49 +01:00
Anders Schack-Mulligen
e343fd32d3
Java: Add change note.
2025-08-22 14:29:27 +02:00
Paolo Tranquilli
e05eca6680
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-22 13:52:28 +02:00
Geoffrey White
7279b0318b
Rust: Model a few more Path and PathBuf methods.
2025-08-22 11:31:43 +01:00
Jeroen Ketema
374c547fa2
Merge pull request #18722 from superboy-zjc/main
...
Fix the broken reference
2025-08-22 12:26:59 +02:00
Jeroen Ketema
6ce3aac7b7
Merge pull request #12660 from moshekaplan/patch-1
...
Correct menu title name of "Open Workspace"
2025-08-22 12:08:06 +02:00
Jeroen Ketema
6d7f6ff77d
Merge branch 'main' into patch-1
2025-08-22 11:51:33 +02:00
Florin Coada
ea0e31fc30
Add changelog entry for CodeQL CLI version 2.22.4
2025-08-22 10:19:12 +01:00
Geoffrey White
40b9754071
Rust: Change note.
2025-08-22 09:58:11 +01:00
Geoffrey White
2f2a975350
Rust: Model path::new.
2025-08-22 09:58:09 +01:00
Geoffrey White
d1a5c9b297
Rust: Add a test case resembling code seen in the wild.
2025-08-22 09:58:08 +01:00
Geoffrey White
8b04bc0ceb
Rust: Model std::fs::OpenOptions and similar.
2025-08-22 09:58:07 +01:00
Geoffrey White
9fbbe02da0
Rust: Compact these models a little.
2025-08-22 09:58:05 +01:00
Geoffrey White
fcce862cea
Rust: Add an explicit test case for sinks with two relevant args.
2025-08-22 09:58:04 +01:00
Geoffrey White
16e0de0cfb
Rust: Fill gaps in the tokio models.
2025-08-22 09:58:03 +01:00
Geoffrey White
29e7b6ad2c
Rust: Fill a gap in the std::fs model.
2025-08-22 09:58:01 +01:00
Geoffrey White
1d2ac33bb6
Rust: Model async-std::fs.
2025-08-22 09:58:00 +01:00
Geoffrey White
49b4adcc99
Rust: Add more tests for DirEntry, PathBuf, OsString.
2025-08-22 09:57:59 +01:00
Anders Schack-Mulligen
f2352f76c0
Java: Teach guards that exceptions in catch-clauses are non-null.
2025-08-22 10:16:42 +02:00
Anders Schack-Mulligen
02452704b2
Java: Fix bug in nullness
2025-08-22 10:15:22 +02:00
Anders Schack-Mulligen
9fc0793d6a
Java: More nullness qltests, including highlight of FN bug.
2025-08-22 10:12:48 +02:00
Anders Schack-Mulligen
1c724372f2
Java: More nullness qltests.
2025-08-22 10:08:17 +02:00
Anders Schack-Mulligen
ba252cb5cf
Java: Add a couple of difficult condition correlation tests.
2025-08-22 10:08:00 +02:00
Napalys Klicius
4705ad2e32
Java: Added extra test cases for fields
2025-08-22 09:23:49 +02:00
Napalys Klicius
38b3df07ee
Java: Address comments
2025-08-22 09:23:49 +02:00
Napalys Klicius
66f2911497
Update java/ql/src/Violations of Best Practice/Implementation Hiding/VisibleForTestingAbuse.ql
...
Co-authored-by: Michael Nebel <michaelnebel@github.com >
2025-08-22 09:23:49 +02:00
Napalys Klicius
0b172080aa
Update java/ql/src/Violations of Best Practice/Implementation Hiding/VisibleForTestingAbuse.ql
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-08-22 09:23:49 +02:00
Napalys Klicius
d20fd5beba
Java: updated visible-for-testing-abuse meta data and docs.
2025-08-22 09:23:49 +02:00
Napalys Klicius
ea831a8352
Java: Fix VisibleForTestingAbuse false positives in annotations
2025-08-22 09:23:49 +02:00
Napalys Klicius
eb46e54c43
Java: Refactor VisibleForTestingAbuse query to reduce complexity
2025-08-22 09:23:49 +02:00
Napalys Klicius
225723bfeb
Java: Exclude @VisibleForTesting-to-@VisibleForTesting access from VisibleForTestingAbuse alerts
2025-08-22 09:23:49 +02:00
Napalys Klicius
e4042402bc
Java: Resolve spurious VisibleForTestingAbuse alerts for inner class access patterns
2025-08-22 09:23:49 +02:00
Napalys Klicius
1e2e6eccd7
Java: Test @VisibleForTesting method accessing @VisibleForTesting members
2025-08-22 09:23:49 +02:00
Napalys Klicius
7e2a1944f6
Java: Fix Predicate QLDoc style.
2025-08-22 09:23:49 +02:00
Napalys Klicius
9dfb4d4301
Java: Enchanced isWithinType to also include lambdas, inner classes etc.
2025-08-22 09:23:49 +02:00
Napalys Klicius
fbf18af076
Java: enchanced check if it is within same package
2025-08-22 09:23:49 +02:00
Napalys Klicius
2a16f4829e
Java: Expanded test suite of java/visible-for-testing-abuse
2025-08-22 09:23:49 +02:00
Napalys Klicius
ff6ddd2893
Java: Promoted java/visible-for-testing-abuse to quality
2025-08-22 09:23:49 +02:00
Napalys Klicius
652e9cba3d
Java: Added inline test expectations for java/visible-for-testing-abuse
2025-08-22 09:23:49 +02:00
Napalys Klicius
0c14d93bc6
Java: Added new query java/visible-for-testing-abuse
2025-08-22 09:23:49 +02:00
REDMOND\brodes
ec7e41cb30
Crypto: Fixed issues in CBOM representations (gaps in the underlying model) and simplified unit tests in terms of the graph complexity to aid visual assessments of model correctness.
2025-08-21 15:05:45 -04:00
Chris Smowton
2d9470ded8
Merge pull request #20264 from github/smowton/admin/merge-rc319-into-main
...
Merge rc/3.19 into main
2025-08-21 17:06:17 +01:00
Geoffrey White
8da44828a6
Rust: Add tests for std::fs::canonicalize and similar.
2025-08-21 16:47:12 +01:00
Geoffrey White
801be8fbbd
Rust: Add more tests for std::fs::DirBuilder and similar.
2025-08-21 16:47:11 +01:00
Geoffrey White
bc226e2117
Rust: Add more general test cases for async_std::fs and tokio::fs.
2025-08-21 16:47:10 +01:00
Geoffrey White
5da296d77f
Rust: Add tests for std::fs::OpenOptions and similar.
2025-08-21 16:47:08 +01:00
Chris Smowton
1829060fab
Merge remote-tracking branch 'origin/main' into smowton/admin/merge-rc319-into-main
2025-08-21 16:33:37 +01:00
Napalys Klicius
eb6e9b8fe6
Java: Fix java/jvm-exit false positives for local nested classes in test methods
2025-08-21 14:20:49 +00:00
Napalys Klicius
41a78a0c3d
Java: Added nested local class test case
2025-08-21 14:10:12 +00:00
Tom Hvitved
7a4bc80582
Merge pull request #20248 from hvitved/rust/jump-to-def-generic-args
...
Rust: Adjust jump-to-def for paths with generic arguments
2025-08-21 16:00:51 +02:00
Tom Hvitved
0144c77dd1
Merge pull request #20234 from hvitved/type-inference/rename-vars
...
Type inference: Rename some variables
2025-08-21 16:00:31 +02:00
Michael Nebel
c89f2e309d
Merge pull request #20089 from michaelnebel/csharp/allowsinkimplicitread
...
C#: Allow implicit collection reads in sink nodes.
2025-08-21 15:29:52 +02:00
Joe Farebrother
9edfd7a6fb
Use generator script directly
2025-08-21 14:12:26 +01:00
Joe Farebrother
f24f7d5146
Add builtin subclass models, incorporate into query
2025-08-21 13:50:26 +01:00
Jami
771d7cb171
Merge pull request #20095 from jcogs33/jcogs33/java/finalizers-on-exit-and-garbage-collection
...
Java: Add `previous-id` and adjust tags for `java/garbage-collection` and `java/run-finalizers-on-exit`
2025-08-21 08:10:36 -04:00
Owen Mansel-Chan
f1c6064f4e
Merge pull request #20188 from github/dependabot/go_modules/go/extractor/extractor-dependencies-c0b353d580
...
Bump the extractor-dependencies group in /go/extractor with 2 updates
2025-08-21 12:44:15 +01:00
Napalys Klicius
46a2de69cd
Update java/ql/src/Violations of Best Practice/Undesirable Calls/CallsToSystemExit.ql
...
Co-authored-by: Michael Nebel <michaelnebel@github.com >
2025-08-21 13:21:17 +02:00
Mathias Vorreiter Pedersen
dfda5a0793
Merge pull request #20249 from MathiasVP/type-tracking-for-cpp-3
...
C++: Use the shared type-tracking library for virtual dispatch resolution
2025-08-21 11:14:12 +02:00
Napalys Klicius
3369e16b1b
Merge pull request #20254 from Napalys/cs/ldap-injection-qhelp
...
CS: Update `cs/ldap-injection` qhelp
2025-08-21 08:57:03 +02:00
Michael Nebel
ebfbc71104
C#: Address more review comments.
2025-08-21 08:07:17 +02:00
dependabot[bot]
e99b423e28
Bump the extractor-dependencies group in /go/extractor with 2 updates
...
Bumps the extractor-dependencies group in /go/extractor with 2 updates: [golang.org/x/mod](https://github.com/golang/mod ) and [golang.org/x/tools](https://github.com/golang/tools ).
Updates `golang.org/x/mod` from 0.26.0 to 0.27.0
- [Commits](https://github.com/golang/mod/compare/v0.26.0...v0.27.0 )
Updates `golang.org/x/tools` from 0.35.0 to 0.36.0
- [Release notes](https://github.com/golang/tools/releases )
- [Commits](https://github.com/golang/tools/compare/v0.35.0...v0.36.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/mod
dependency-version: 0.27.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
- dependency-name: golang.org/x/tools
dependency-version: 0.36.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-21 03:46:43 +00:00
Jeroen Ketema
b79f0a2cf2
Merge pull request #20252 from knewbury01/knewbury01/add-uniform-Customizations
...
Add extra Customizations files
2025-08-20 20:14:02 +02:00
REDMOND\brodes
30a07763e8
Crypto: Copilot suggested code changes.
2025-08-20 13:28:28 -04:00
REDMOND\brodes
33aa6c94df
Crypto: Adding tests for reuse nonce query for JAVA/JCA.
2025-08-20 13:21:18 -04:00
Kristen Newbury
cf0342410d
Merge branch 'knewbury01/add-uniform-Customizations' of https://github.com/knewbury01/codeql into knewbury01/add-uniform-Customizations
2025-08-20 13:19:16 -04:00
Kristen Newbury
854a5b5871
Add changenotes customizations addition
2025-08-20 13:18:17 -04:00
Ben Rodes
65ff72719e
Merge branch 'main' into signature_model_refactor
2025-08-20 12:34:06 -04:00
Napalys Klicius
71a8e10f3d
CS: added extra guidance in recommendation section for LDAPInjection
2025-08-20 13:37:02 +02:00
Napalys Klicius
c475bedf73
CS: removed dead links from LDAPInjection qhelp
2025-08-20 12:58:54 +02:00
Mathias Vorreiter Pedersen
70d3e69ce5
C++: Rename 'lambda' to 'virtual'.
2025-08-20 10:38:22 +02:00
Paolo Tranquilli
fd7668d94a
Merge pull request #20251 from github/redsun82/rust-remove-warning
...
Rust: update README to remove experimental warning
2025-08-20 10:12:19 +02:00
Michael Nebel
3e03728ffe
Merge pull request #20244 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2025-08-20 08:55:48 +02:00
Michael Nebel
b42c366250
C#: Address review comments.
2025-08-20 08:50:23 +02:00
Jeroen Ketema
c9f0e3a377
Apply suggestions from code review
2025-08-20 08:07:10 +02:00
github-actions[bot]
e74116b347
Add changed framework coverage reports
2025-08-20 00:23:14 +00:00
Kristen Newbury
d630e32ce9
Format Customizations.qll
2025-08-19 15:27:29 -04:00
Kristen Newbury
49ef6939d4
Add extra Customizations files
2025-08-19 14:49:31 -04:00
Joe Farebrother
e42002e1d7
Promote IncorrectExceptOrder.
...
However, we lose some results due to not considering builtin/stdlib types.
2025-08-19 15:30:47 +01:00
Paolo Tranquilli
65e5ded80d
Rust: update README to remove experimental warning
2025-08-19 16:02:45 +02:00
Paolo Tranquilli
d6f845ee17
Bazel: do not force lld and fix platforms warning
...
This was meant to avoid using `gold`, but `lld` might not be installed.
Having `gold` installed results in the following warning:
```
warning: the gold linker is deprecated and has known bugs with Rust
|
= help: consider using LLD or ld from GNU binutils instead
```
* if a user sees this warning, they can provide the `lld` or whatever
linker they prefer themselves, or make sure to uninstall `gold`
* in any case, this is not what we use for releasing (where we are sure
we don't use `gold`).
2025-08-19 15:56:16 +02:00
Paolo Tranquilli
fbeebd7d3c
Rust: fix old.dbscheme in downgrade script
2025-08-19 14:38:39 +02:00
Paolo Tranquilli
5e0f0c0408
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-19 14:37:52 +02:00
Paolo Tranquilli
680b4abae2
Rust: accept test changes
2025-08-19 14:37:45 +02:00
Geoffrey White
963e028645
Merge pull request #20238 from geoffw0/scinit
...
Rust: Update StreamCipherInit to use getCanonicalPath.
2025-08-19 13:18:10 +01:00
Paolo Tranquilli
8ed277d6ee
Rust: adapt upgrade/downgrade scripts to new hash
2025-08-19 14:03:18 +02:00
Paolo Tranquilli
49bf48eda1
Rust: fix duplicate asm! expressions
2025-08-19 14:01:25 +02:00
Mathias Vorreiter Pedersen
02bf923f7e
C++: Add change note.
2025-08-19 13:57:15 +02:00
Mathias Vorreiter Pedersen
0631bd7466
C++: Add object/flow conflation for unions when resolving function pointers.
2025-08-19 13:57:13 +02:00
Mathias Vorreiter Pedersen
16508b1800
C++: Fix off-by-one error in getType on 'FinalGlobalValue' nodes and accept test changes.
2025-08-19 13:57:11 +02:00
Mathias Vorreiter Pedersen
302d35bedc
C++: Accept test changes.
2025-08-19 13:57:10 +02:00
Mathias Vorreiter Pedersen
cca5bd9ada
C++: Update 'mayBenefitFromCallContext' to not use the old virtual dispatch local flow predicate.
2025-08-19 13:57:07 +02:00
Mathias Vorreiter Pedersen
383799ce67
C++: Perform 6 rounds of virtual dispatch resolution like Java.
2025-08-19 13:57:05 +02:00
Mathias Vorreiter Pedersen
d4188d59a8
C++: Instantiate the type tracking module inside a reusable module like it's done in Java.
2025-08-19 13:57:03 +02:00
Mathias Vorreiter Pedersen
ea8d766ae8
Merge pull request #20242 from MathiasVP/fprintf-partial-flow
...
C++: Mark the write to `fprintf`'s 0'th argument as partial
2025-08-19 13:43:22 +02:00
Paolo Tranquilli
d38459a50a
Fix ForTypeRepr docs and test with proper instance
2025-08-19 12:46:16 +02:00
Mathias Vorreiter Pedersen
caf7464f3b
C++: Prefix with 'DataflowPrivate'.
2025-08-19 12:46:12 +02:00
Mathias Vorreiter Pedersen
fdb9f7ba2a
C++: Move these predicates to make the diff smaller.
2025-08-19 12:42:15 +02:00
Mathias Vorreiter Pedersen
42fcfca849
C++: Remove the old virtual dispatch case from 'defaultViableCallable' and slightly reorganize the code in preparation for the next commit.
2025-08-19 12:39:26 +02:00
Mathias Vorreiter Pedersen
c1b91db37a
C++: Add more virtual dispatch tests.
2025-08-19 12:32:09 +02:00
Paolo Tranquilli
ce48202b6a
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-19 12:25:49 +02:00
Geoffrey White
401315c4f5
Update rust/ql/lib/codeql/rust/frameworks/rustcrypto/RustCrypto.qll
...
Co-authored-by: Tom Hvitved <hvitved@github.com >
2025-08-19 09:22:53 +01:00
Tom Hvitved
714423d6b9
Rust: Adjust jump-to-def for paths with generic arguments
2025-08-19 10:22:32 +02:00
Tom Hvitved
0cd8c9009f
Rust: Add more jump-to-def tests
2025-08-19 10:20:59 +02:00
Tom Hvitved
4684ac1ed9
Merge pull request #20191 from hvitved/rust/path-resolution-successor-kind
...
Rust: Distinguish internal/external items in path resolution
2025-08-19 10:20:05 +02:00
Anders Schack-Mulligen
a8f394fedb
Merge pull request #20237 from aschackmull/guards/nullguard-caching
...
Guards: Cache nullGuard predicate.
2025-08-19 09:51:31 +02:00
Geoffrey White
9f04de859f
Rust: Update test results following merge.
2025-08-19 08:50:23 +01:00
Geoffrey White
ab49c33915
Merge branch 'main' into scinit
2025-08-19 08:50:12 +01:00
Tom Hvitved
e6150e2079
Merge pull request #20243 from hvitved/rust/canonical-path-transitive-deps
...
Rust: Take transitive dependencies into account when computing canonical paths
2025-08-19 09:46:53 +02:00
Asger F
6783456213
JS: Add discard predicates
2025-08-19 09:20:00 +02:00
Asger F
ba585b8af5
JS: Add upgrade/downgrade scripts
2025-08-19 09:19:58 +02:00
Asger F
30baf0acec
JS: Add overlayChangedFiles
2025-08-19 09:19:57 +02:00
Asger F
c1df8a95cb
JS: Overlay extraction support
2025-08-19 09:19:55 +02:00
Asger F
6872f51725
JS: Add metadata to dbscheme and stats
2025-08-19 09:19:54 +02:00
Tom Hvitved
60b2cf6638
Rust: Take transitive dependencies into account when computing canonical paths
2025-08-18 22:02:44 +02:00
Tom Hvitved
5a69845485
Rust: Elaborate QL doc
2025-08-18 21:31:37 +02:00
Geoffrey White
bf33d1b870
Rust: Make a couple of new imports private.
2025-08-18 18:51:33 +01:00
Geoffrey White
fdec780921
Rust: Accept consistency .expected changes.
2025-08-18 18:42:06 +01:00
Geoffrey White
402e901811
Merge branch 'main' into scinit
2025-08-18 18:35:03 +01:00
Chris Smowton
238cb9ca68
Merge pull request #20241 from github/post-release-prep/codeql-cli-2.22.4
...
Post-release preparation for codeql-cli-2.22.4
2025-08-18 17:34:58 +01:00
Mathias Vorreiter Pedersen
af00e46fc8
C++: Mark fprintf and friends as a partial write of the stream argument.
2025-08-18 18:15:14 +02:00
Mathias Vorreiter Pedersen
6a57da79de
C++: Add a test with missing flow.
2025-08-18 18:12:52 +02:00
Mathias Vorreiter Pedersen
4551875e2e
C++: Drive-by improvement: Use 'partialFlowFunc' since it is in scope anyway.
2025-08-18 18:10:35 +02:00
Paolo Tranquilli
a658fa168d
Rust: refine upgrade script
2025-08-18 17:19:47 +02:00
Paolo Tranquilli
6266d6e7b0
Rust: add downgrade script
2025-08-18 17:12:05 +02:00
github-actions[bot]
42e3d31c49
Post-release preparation for codeql-cli-2.22.4
2025-08-18 14:42:42 +00:00
Chris Smowton
57378ec4e4
Merge pull request #20240 from github/release-prep/2.22.4
...
Release preparation for version 2.22.4
2025-08-18 15:09:03 +01:00
github-actions[bot]
90d29994c8
Release preparation for version 2.22.4
2025-08-18 14:06:09 +00:00
Paolo Tranquilli
3d2bd8fedb
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-18 15:55:15 +02:00
Paolo Tranquilli
4df479471f
Rust: accept test changes
2025-08-18 15:55:06 +02:00
Tom Hvitved
f1ca0ecc3c
Merge pull request #20233 from hvitved/rust/remove-tc
...
Rust: Remove TC from `ImplTraitTypeRepr.isInReturnPos`
2025-08-18 14:46:26 +02:00
Paolo Tranquilli
a8671452fc
Rust: add upgrade script
2025-08-18 13:06:30 +02:00
Michael Nebel
4b0c725367
C#: Add change note.
2025-08-18 12:56:15 +02:00
Michael Nebel
7431ee8df9
C#: Update the barrier in HashWithoutSalt to avoid an FP. It worked by accident before as we didn't allow implicit element reads at sinks.
2025-08-18 12:56:13 +02:00
Michael Nebel
1d25a20c9c
C#: Update the external flow test and expected test output.
2025-08-18 12:56:12 +02:00
Michael Nebel
abd0b2e2f9
C#: Update test expected output.
2025-08-18 12:56:10 +02:00
Michael Nebel
81751ea591
C#: Allow implicit reads from collections in argument nodes (sinks and additional flow steps) for default taint tracking configurations.
2025-08-18 12:56:09 +02:00
Michael Nebel
d8215a35c0
C#: Add example of failing taint flow for collections in sinks.
2025-08-18 12:56:07 +02:00
Ian Lynagh
fd020b52e4
Merge pull request #20232 from igfoo/igfoo/SloppyGlobal
...
C++: SloppyGlobal: Don't alert on template instantiations, only the template
2025-08-18 11:39:30 +01:00
Tom Hvitved
299ccb68f5
Merge pull request #20230 from hvitved/cfg/standard-tree-skip-non-tree-children
...
Shared: Skip non-CFG children in `StandardTree`
2025-08-18 12:13:31 +02:00
Geoffrey White
4eea4431b5
Merge pull request #20222 from geoffw0/pathbuf
...
Rust: Add a type inference test case resembling PathBuf.canonicalize.
2025-08-18 11:06:41 +01:00
Geoffrey White
e84135a6de
Update rust/ql/src/queries/security/CWE-117/LogInjection.qhelp
...
Co-authored-by: Sophie <29382425+sophietheking@users.noreply.github.com >
2025-08-18 10:34:43 +01:00
Geoffrey White
265c2e3603
Rust: Change note.
2025-08-18 10:29:14 +01:00
Anders Schack-Mulligen
877d397eb9
Merge pull request #20228 from 5idg5/java/data-extensions-change
...
Add data extensions for remote tainted sources
2025-08-18 11:26:38 +02:00
Geoffrey White
a9650e02ca
Rust: Add a slightly simpler / more explicit test case.
2025-08-18 10:20:30 +01:00
Anders Schack-Mulligen
e17382d179
Guards: Cache nullGuard predicate.
2025-08-18 11:09:11 +02:00
Nora Dimitrijević
f1b55641e1
Merge pull request #20073 from d10c/d10c/diff-informed-phase-3-cpp
...
C++: Diff-informed queries: phase 3 (non-trivial locations)
2025-08-18 09:41:38 +02:00
Nora Dimitrijević
4199859eaa
Merge pull request #20079 from d10c/d10c/diff-informed-phase-3-python
...
Python: Diff-informed queries: phase 3 (non-trivial locations)
2025-08-18 09:33:57 +02:00
Napalys Klicius
b19d1e0f57
Merge pull request #20151 from Napalys/js/command-line-libs
...
JS: Enhance command injection detection for CLI argument parsing libraries
2025-08-18 09:32:29 +02:00
Napalys Klicius
b2346183d6
Merge pull request #20148 from Napalys/js/reg-exp-env-variable-threat-model
...
JS: Exclude environment variables from `js/regex-injection` query by default
2025-08-18 09:32:15 +02:00
Paolo Tranquilli
7a95d5aaa6
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-18 09:21:37 +02:00
Sid Gawri
d84e5319c3
changenote
2025-08-15 15:59:05 -04:00
Sid Gawri
e697e89171
Merge branch 'main' of https://github.com/5idg5/codeql into java/data-extensions-change
2025-08-15 15:50:12 -04:00
Nora Dimitrijević
bb9daa00c3
Merge pull request #20072 from d10c/d10c/diff-informed-phase-3-actions
...
Actions: Diff-informed queries: phase 3 (non-trivial locations)
2025-08-15 14:05:44 +02:00
Jeroen Ketema
84119baa50
Merge pull request #20223 from jketema/go-1.25-doc
...
Go: Mention Go 1.25 as supported
2025-08-15 13:47:40 +02:00
Tom Hvitved
b104535b32
Type inference: Rename some variables
2025-08-15 13:46:30 +02:00
Ian Lynagh
0870cc370b
C++: Add a changenote for the change to cpp/short-global-name
2025-08-15 12:09:37 +01:00
Ian Lynagh
3157fcdf79
C++: Add some BAD annotations to SloppyGlobal test
2025-08-15 12:07:09 +01:00
Tom Hvitved
1af6ddd8e3
Rust: Remove TC from ImplTraitTypeRepr.isInReturnPos
2025-08-15 12:45:13 +02:00
Ian Lynagh
bfd4c41ed9
C++: SloppyGlobal: Accept test changes
...
We no longer alert on template instantiations, just the template.
2025-08-15 11:24:19 +01:00
Nora Dimitrijević
0512940c0c
Merge pull request #20075 from d10c/d10c/diff-informed-phase-3-go
...
Go: Diff-informed queries: phase 3 (non-trivial locations)
2025-08-15 12:23:53 +02:00
Ian Lynagh
4b786061d6
C++: SloppyGlobal: Don't alert on template instantiations, only the template
2025-08-15 11:23:48 +01:00
Ian Lynagh
0b68c1c974
C++: Add some more tests for SloppyGlobal
2025-08-15 11:20:31 +01:00
Nora Dimitrijević
8000e7c442
Merge pull request #20074 from d10c/d10c/diff-informed-phase-3-csharp
...
C#: Diff-informed queries: phase 3 (non-trivial locations)
2025-08-15 12:07:47 +02:00
Nora Dimitrijević
89788206d1
[DIFF-INFORMED] C++: TypeConfusion
2025-08-15 12:01:30 +02:00
Nora Dimitrijević
5b9e37cd8f
[DIFF-INFORMED] C++: TaintedCondition
2025-08-15 12:01:28 +02:00
Nora Dimitrijević
0c636dd400
[DIFF-INFORMED] C++: UnsafeDaclSecurityDescriptor
2025-08-15 12:01:25 +02:00
Nora Dimitrijević
194d9a9f44
[DIFF-INFORMED] C++: UnsafeCreateProcessCall
2025-08-15 12:01:23 +02:00
Nora Dimitrijević
39b430aa7e
[DIFF-INFORMED] C++: IteratorToExpiredContainer
2025-08-15 12:01:21 +02:00
Nora Dimitrijević
ec85e55069
[DIFF-INFORMED] C++: InsufficientKeySize
2025-08-15 12:01:19 +02:00
Nora Dimitrijević
c0c96eaf5b
[DIFF-INFORMED] C++: UseOfHttp
2025-08-15 12:01:17 +02:00
Nora Dimitrijević
8560868e95
[DIFF-INFORMED] C++: CleartextSqliteDatabase
2025-08-15 12:01:15 +02:00
Nora Dimitrijević
05df2f2216
[DIFF-INFORMED] C++: CWE-311/Cleartext…
2025-08-15 12:01:13 +02:00
Nora Dimitrijević
21914030e8
[DIFF-INFORMED] C++: SSLResultConflation (has secondary config but passes test)
2025-08-15 12:01:11 +02:00
Nora Dimitrijević
87016f399c
[DIFF-INFORMED] C++: AuthenticationBypass
2025-08-15 12:01:09 +02:00
Nora Dimitrijević
861a768b2c
[DIFF-INFORMED] C++: CWE-190/ArithmeticTainted,etc.
2025-08-15 12:01:07 +02:00
Nora Dimitrijević
62fa7301c3
[DIFF-INFORMED] C++: ImproperNullTerminationTainted
2025-08-15 12:01:05 +02:00
Nora Dimitrijević
f3098e7695
[DIFF-INFORMED] C++: UnboundedWrite
2025-08-15 12:01:03 +02:00
Nora Dimitrijević
7df09f369f
[DIFF-INFORMED] C++: SqlTainted
2025-08-15 12:01:01 +02:00
Nora Dimitrijević
36d43a4830
[DIFF-INFORMED] C++: CgiXss
2025-08-15 12:00:59 +02:00
Nora Dimitrijević
80da00b599
[DIFF-INFORMED] C++: ExecTainted
2025-08-15 12:00:57 +02:00
Nora Dimitrijević
a77cab6981
[DIFF-INFORMED] C++: TaintedPath
2025-08-15 12:00:54 +02:00
Nora Dimitrijević
91b9c3e647
[DIFF-INFORMED] C++: LeapYear
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/cpp/ql/src/Likely%20Bugs/Leap%20Year/UncheckedLeapYearAfterYearModification.ql#L57
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/cpp/ql/src/Likely%20Bugs/Leap%20Year/Adding365DaysPerYear.ql#L21
2025-08-15 12:00:52 +02:00
Nora Dimitrijević
2f56baace2
[DIFF-INFORMED] C++: NonConstantFormat
2025-08-15 12:00:50 +02:00
Nora Dimitrijević
e382cb5696
[DIFF-INFORMED] C++: DecompressionBombs
2025-08-15 12:00:48 +02:00
Nora Dimitrijević
fabdf9923c
[DIFF-INFORMED] C++: ConstantSizeArrayOffByOne
2025-08-15 12:00:46 +02:00
Nora Dimitrijević
448a1ea87a
[DIFF-INFORMED] C++: OverflowDestination
2025-08-15 12:00:39 +02:00
Nora Dimitrijević
43e99d0872
[TEST] C++: CleartextSqliteDatabase: add new test
2025-08-15 12:00:26 +02:00
Nora Dimitrijević
126d24a522
[DIFF-INFORMED] Actions: EnvVarInjection
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/Security/CWE-077/EnvVarInjectionMedium.ql#L35
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/Security/CWE-077/EnvVarInjectionCritical.ql#L46
2025-08-15 11:11:12 +02:00
Nora Dimitrijević
f1445eb52f
[DIFF-INFORMED] Actions: EnvPathInjection
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/Security/CWE-077/EnvPathInjectionMedium.ql#L30
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/Security/CWE-077/EnvPathInjectionCritical.ql#L37
2025-08-15 11:11:07 +02:00
Nora Dimitrijević
f1b995a736
[DIFF-INFORMED] Actions: CommandInjection
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/experimental/Security/CWE-078/CommandInjectionMedium.ql#L24
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/experimental/Security/CWE-078/CommandInjectionCritical.ql#L28
2025-08-15 11:11:03 +02:00
Nora Dimitrijević
418e4b4a3a
[DIFF-INFORMED] Actions: CodeInjection
...
Query: https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/Security/CWE-349/CachePoisoningViaCodeInjection.ql#L46
2025-08-15 11:10:58 +02:00
Nora Dimitrijević
bbda2902be
[DIFF-INFORMED] Actions: ArtifactPoisoning
...
Queries:
- https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql#L23
- https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql#L26
2025-08-15 11:10:42 +02:00
Nora Dimitrijević
896819fdf3
[DIFF-INFORMED] Actions: ArgumentInjection
...
Query:
- https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/experimental/Security/CWE-088/ArgumentInjectionMedium.ql#L23
- https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/actions/ql/src/experimental/Security/CWE-088/ArgumentInjectionCritical.ql#L27
2025-08-15 11:10:14 +02:00
Tom Hvitved
7501e621d1
Shared: Skip non-CFG children in StandardTree
2025-08-15 10:30:47 +02:00
Michael B. Gale
ec605b2c95
Merge pull request #20229 from github/mbg/ci/fix/csharp-create-extractor-pack
...
C#: Replace input interpolation with environment variable
2025-08-15 09:19:41 +01:00
Paolo Tranquilli
71edc48c0e
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-15 10:15:26 +02:00
Paolo Tranquilli
0924d795b4
Rust: accept test changes
2025-08-15 10:12:12 +02:00
Michael B. Gale
e1ffb323a0
C#: Replace input interpolation with environment variable
2025-08-15 09:00:28 +01:00
Sid Gawri
a8889ff056
add extensions for remote sources
2025-08-14 16:10:49 -04:00
Tom Hvitved
a07e357e67
Rust: Distinguish internal/external items in path resolution
2025-08-14 20:42:47 +02:00
Tom Hvitved
f1bff93bc5
Merge pull request #20203 from hvitved/rust/if-let-chain-test
...
Rust: Handle chained `let` expressions
2025-08-14 19:51:43 +02:00
Geoffrey White
f05d815af9
Rust: Update the security-severity tag.
2025-08-14 17:59:54 +01:00
Geoffrey White
bc0d327278
Rust: Add log injection sinks to stats.
2025-08-14 17:42:04 +01:00
Geoffrey White
9e4f59ce30
Rust: Accept consistency check failures.
2025-08-14 17:39:06 +01:00
Geoffrey White
4328ed8fcb
Rust: Update suite lists.
2025-08-14 17:39:04 +01:00
Geoffrey White
9836592278
Rust: Fix compilation errors in example code.
2025-08-14 17:39:02 +01:00
Paolo Tranquilli
6ca1c587f6
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-14 17:55:17 +02:00
Anders Schack-Mulligen
b67394a450
Merge pull request #20183 from aschackmull/java/barrierguard-wrappers
...
Java: Enable BarrierGuard wrappers
2025-08-14 16:06:21 +02:00
copilot-swe-agent[bot]
7b1aa2307f
Address PR feedback: trim examples, remove duplicate CWE ref, autoformat
...
Co-authored-by: geoffw0 <40627776+geoffw0@users.noreply.github.com >
2025-08-14 13:15:03 +00:00
Geoffrey White
49265b6e7e
Rust: Update inline test annotations accordingly.
2025-08-14 13:49:41 +01:00
Tom Hvitved
5c0300cbdf
Merge pull request #20224 from hvitved/rust/remove-extractor-resolution-references
...
Rust: Remove references to `getResolvedPath` and `getExtendedCanonicalPath`
2025-08-14 14:45:33 +02:00
Tom Hvitved
d09645bc96
Add change note
2025-08-14 14:38:44 +02:00
Geoffrey White
2a19a1789d
Rust: Run test, accept .expected and Cargo.lock.
2025-08-14 13:17:50 +01:00
Geoffrey White
6951f585c8
Merge pull request #20226 from geoffw0/stdlib
...
Rust: Update StartswithCall to use getCanonicalPath
2025-08-14 13:04:30 +01:00
Geoffrey White
02b9229be7
Rust: Update StartswithCall.
2025-08-14 12:09:49 +01:00
Geoffrey White
6941e7fef1
Rust: Add tags to intermediate steps in the test.
2025-08-14 11:37:22 +01:00
Geoffrey White
ecf0e08f55
Rust: Add some more path injection test case variants.
2025-08-14 11:05:48 +01:00
Tom Hvitved
51fb2157ef
Rust: Remove references to getResolvedPath and getExtendedCanonicalPath
2025-08-14 11:31:42 +02:00
Jeroen Ketema
28f2157a8c
Go: Mention Go 1.25 as supported
2025-08-14 10:49:19 +02:00
Geoffrey White
1c186e2a59
Merge remote-tracking branch 'upstream/main' into pathbuf
2025-08-14 09:38:38 +01:00
Tom Hvitved
f63e55c1fd
Rust: Handle chained let expressions
2025-08-14 10:36:43 +02:00
Tom Hvitved
fd1d9401c0
Rust: Add tests for chained let expressions
2025-08-14 10:36:41 +02:00
Jeroen Ketema
72c89ec076
Merge pull request #20218 from MathiasVP/fix-guard-conditions-for-likely
...
C++: Improvements to `IRGuard`s
2025-08-14 10:24:48 +02:00
copilot-swe-agent[bot]
d72efc52f7
Final validation and cleanup of Rust log injection query
...
Co-authored-by: geoffw0 <40627776+geoffw0@users.noreply.github.com >
2025-08-13 18:12:36 +00:00
copilot-swe-agent[bot]
39ea50746f
Implement Rust log injection query and test infrastructure
...
Co-authored-by: geoffw0 <40627776+geoffw0@users.noreply.github.com >
2025-08-13 18:09:03 +00:00
copilot-swe-agent[bot]
d954b504b4
Initial plan
2025-08-13 17:56:12 +00:00
Jon Janego
603f0f2d55
Merge pull request #20219 from github/changedocs-2.22.3
...
Sitedocs for 2.22.3
2025-08-13 11:54:05 -05:00
Jon Janego
cc302c0d1d
Sitedocs for 2.22.3
2025-08-13 11:32:31 -05:00
Mathias Vorreiter Pedersen
39f5e33dea
C++: Accept more test changes.
2025-08-13 17:46:06 +02:00
Mathias Vorreiter Pedersen
9c3bb87b89
C++: Add change note.
2025-08-13 16:42:39 +02:00
Mathias Vorreiter Pedersen
9ee313ff0a
C++: Remove code that is now subsumed.
2025-08-13 16:29:49 +02:00
Mathias Vorreiter Pedersen
bf4a84ba8f
C++: Drive-by: Add forgotten disjuncts involving '__builtin_expect'.
2025-08-13 16:29:42 +02:00
Mathias Vorreiter Pedersen
e6cd27a992
C++: Skip non-Boolean instructions in the new inference step.
2025-08-13 16:20:21 +02:00
Mathias Vorreiter Pedersen
e67b6d6c9a
C++: Add another inference step.
2025-08-13 16:20:19 +02:00
Jeroen Ketema
ff288d799e
Merge pull request #20210 from github/jketema/go-1.25
...
Go: Update Go version to 1.25.0
2025-08-13 16:07:36 +02:00
Chuan-kai Lin
4c263c0535
Merge pull request #20047 from github/cklin/alert-filtering-qldoc
...
Shared: Overhaul the AlertFiltering QLDoc
2025-08-13 06:58:38 -07:00
Jeroen Ketema
4b215d50e2
Go: Update maxGoVersion in the autobuilder
2025-08-13 14:09:53 +02:00
Jeroen Ketema
5e2a5600a7
Update go_rules to the latest version
...
This version includes https://github.com/bazel-contrib/rules_go/pull/4397 which
addresses the build fialure we were seeing.
2025-08-13 13:40:14 +02:00
Jeroen Ketema
976ef99d60
Go: Request go1.25.0 toolchain
2025-08-13 13:39:35 +02:00
Jeroen Ketema
4baf115c3a
Go: Use Go 1.25.0 to build the Go extractor
2025-08-13 13:39:34 +02:00
Jeroen Ketema
d5f8289bcd
Go: Update Go version in tests to 1.25.0
2025-08-13 13:39:32 +02:00
Jeroen Ketema
653a99779e
Merge pull request #20216 from github/redsun82/rust-fix-bazel
...
Bazel: regenerate cargo vendored files
2025-08-13 13:36:20 +02:00
Tom Hvitved
dc6e76a0d7
Merge pull request #20182 from hvitved/rust/type-inference-tuple-types-follow-up
...
Rust: Unify type inference for tuple indexing expressions
2025-08-13 13:32:53 +02:00
Paolo Tranquilli
ea320c2a7b
Bazel: regenerate cargo vendored files
2025-08-13 13:30:01 +02:00
Geoffrey White
91eb4dad4e
Rust: Add a type inference test case resembling PathBuf.canonicalize.
2025-08-13 12:25:12 +01:00
Mathias Vorreiter Pedersen
a27135495c
C++: Add tests.
2025-08-13 12:54:23 +02:00
Jeroen Ketema
fcbd333144
Merge pull request #20215 from github/redsun82/rust-fix-bazel
...
Rust: regenerate bazel files
2025-08-13 12:40:03 +02:00
Paolo Tranquilli
c997b29c1e
Rust: regenerate bazel files
2025-08-13 11:51:11 +02:00
Geoffrey White
17b468239b
Merge pull request #20208 from geoffw0/sqlmodels
...
Rust: Fill some gaps in our database models.
2025-08-13 08:54:23 +01:00
Mathias Vorreiter Pedersen
caa935d011
C++: Update the tests for guard conditions so that the tests print more detailed location information.
2025-08-13 09:41:28 +02:00
Chuan-kai Lin
34d546ce82
Merge branch 'main' into cklin/alert-filtering-qldoc
2025-08-12 11:11:27 -07:00
Paolo Tranquilli
92e94695e7
Rust: add ForBinder case in ClosureExpr and accept test changes
2025-08-12 17:29:11 +02:00
Paolo Tranquilli
fbc81cbb18
Rust: fix compilation errors
2025-08-12 17:10:02 +02:00
Paolo Tranquilli
338572f256
Rust: run codegen again
2025-08-12 17:04:26 +02:00
Paolo Tranquilli
0a42b7aba3
Bazel: regenerate vendored cargo dependencies
2025-08-12 16:51:13 +02:00
Paolo Tranquilli
6ad8af0ea9
Cargo: upgrade dependencies
2025-08-12 16:46:29 +02:00
Chuan-kai Lin
b20521b648
Shared: Overhaul the AlertFiltering QLDoc
...
This commit strengthens the contract for the restrictAlertsTo and the
restrictAlertsToExactLocation extensible predicates.
- restrictAlertsTo is now documented to match any alert location that
intersects with a specified line range. (Previously an alert location
matches only when its first line is in a specified line range.)
- restrictAlertsToExactLocation is now documented to match any alert
location that wholly contains a specific character range. (Previously
an alert location matchis only when it is exactly the same as a
specified character range.)
It also contains misc wording changes for clarity.
2025-08-12 07:43:46 -07:00
Paolo Tranquilli
a007230f21
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-12 16:42:23 +02:00
Tom Hvitved
0a67902f5d
Merge pull request #20101 from mschwager/main
...
Fix #19294 , Ruby NetHttpRequest improvements
2025-08-12 14:42:32 +02:00
Paolo Tranquilli
2b92b83868
Merge pull request #20207 from github/redsun82/rust-toolchain
...
Cargo: align rust toolchain version with internal repository
2025-08-12 11:52:37 +02:00
Tom Hvitved
454ab4db8c
Rust: Unify type inference for tuple indexing expressions
2025-08-12 10:32:23 +02:00
Tom Hvitved
b2343f94c1
Rust: Add another type inference test
2025-08-12 10:32:21 +02:00
Tom Hvitved
8436f00b23
Merge pull request #20179 from hvitved/rust/type-inference-certain-follow-up
...
Rust: Generalize certain type inference logic
2025-08-12 10:30:02 +02:00
Paolo Tranquilli
0dfacf4be8
Rust: add test rust-toolchain.toml after fixing .gitignore
2025-08-12 10:06:32 +02:00
Paolo Tranquilli
565d607580
Merge branch 'main' into redsun82/rust-toolchain
2025-08-12 09:28:46 +02:00
Andrew Eisenberg
f5fbef9b83
Merge pull request #20196 from github/aeisenberg/indentation-fix
...
Fix indentation in the "Supported languages and frameworks" page
2025-08-11 13:58:46 -07:00
Andrew Eisenberg
cb541b52ed
Fix indentation in the "Supported languages and frameworks" page
...
I'm not sure why this works, but I see it is correct in my
dev tools page.
2025-08-11 13:44:30 -07:00
Geoffrey White
af20d335c8
Rust: Accept consistency test changes.
2025-08-11 20:25:41 +01:00
Geoffrey White
993f00b658
Rust: Change note.
2025-08-11 19:32:13 +01:00
Geoffrey White
398d2ac930
Rust: Fix a couple more gaps.
2025-08-11 19:24:54 +01:00
Geoffrey White
0544ea8728
Rust: Add postgres sources.
2025-08-11 18:43:11 +01:00
Geoffrey White
4bbffc56a8
Rust: Expand tokio-postgres sources.
2025-08-11 18:42:44 +01:00
Geoffrey White
35681d0617
Rust: Add SQLx sources.
2025-08-11 18:05:58 +01:00
Geoffrey White
5056ebf186
Rust: Fix typo in one of the models.
2025-08-11 18:05:42 +01:00
Geoffrey White
17741af88e
Rust: Fill out a few gaps in the models.
2025-08-11 17:45:51 +01:00
Geoffrey White
b31186451f
Rust: Test more variants of rusqlite usage.
2025-08-11 17:41:28 +01:00
Geoffrey White
31353e7efc
Rust: Test more variants of postgres usage.
2025-08-11 17:41:24 +01:00
Paolo Tranquilli
911d6f07b6
Shared tree-sitter extractor: run clippy
2025-08-11 17:04:22 +02:00
Paolo Tranquilli
45c0c46c9d
Cargo: align rust toolchain version with internal repository
...
Also:
* remove new warnings raised by the rust toolchain
* run new formatting and linting
* update the rust toolchain used by `cargo`
While we keep `bazel` builds using the same toolchain as internally
(now a nightly one), I opted for using a stable toolchain for `cargo`.
The nightly toolchain is only required internally for build reasons, we
should keep not using any unstable rust features in our sources.
2025-08-11 16:45:47 +02:00
Napalys Klicius
6e38087d20
Merge pull request #20204 from p-/p--actions-untrusted-checkout-doc
...
Actions: clarify doc for untrusted checkout
2025-08-11 14:42:12 +02:00
Matt Schwager
357964e789
Remove duplicate lines and format query
2025-08-11 08:11:36 -04:00
Napalys Klicius
ff648fcb27
Java: Removed redundant cast to Stmt
2025-08-11 13:43:36 +02:00
Napalys Klicius
f41cb67a69
Java: Promote java/mocking-all-non-private-methods-means-unit-test-is-too-big to quality status
2025-08-11 13:43:36 +02:00
Napalys Klicius
b56f8cca2d
Java: Fix QLDoc style compliance and qhelp for mocking query
2025-08-11 13:43:36 +02:00
Napalys Klicius
53ccc56959
Java: exclude single-method classes from mocking
2025-08-11 13:43:36 +02:00
Napalys Klicius
a9e9a62439
Java: add single-method class test case for mocking rule
...
Classes with only one public method should be compliant when mocked.
2025-08-11 13:43:36 +02:00
Napalys Klicius
22caa584ad
Java: Add inline test expectations for MockingAllNonPrivateMethodsMeansUnitTestIsTooBig.qlref
2025-08-11 13:43:36 +02:00
Napalys Klicius
50c7160819
Java: port java/mocking-all-non-private-methods-means-unit-test-is-too-big query
2025-08-11 13:43:36 +02:00
Tom Hvitved
9905cd6436
Merge pull request #20192 from hvitved/rust/path-resolution-remove-source-lib-dedup
...
Rust: Remove source/library deduplication in path resolution
2025-08-11 13:40:34 +02:00
Geoffrey White
5fc8db8244
Merge pull request #20137 from geoffw0/cleartextstorage
...
Rust: New Query rust/cleartext-storage-database
2025-08-11 12:33:24 +01:00
Geoffrey White
3382d06ede
Rust: Remove newline.
2025-08-11 11:51:21 +01:00
Peter Stöckli
98d312fda1
Actions: clarify doc for untrusted checkout
2025-08-11 09:56:53 +00:00
Jeroen Ketema
f9f99a043c
Merge pull request #20126 from MathiasVP/fix-missing-global-flow
...
C++: Fix missing global variable flow
2025-08-11 11:54:35 +02:00
Mathias Vorreiter Pedersen
c8eb1cf826
C++: Add change note.
2025-08-11 11:28:53 +02:00
Mathias Vorreiter Pedersen
851cb04d36
Merge pull request #20193 from MathiasVP/fix-fp-in-overflow-buffer
...
C++: Fix FP in `cpp/overflow-buffer`
2025-08-11 10:45:06 +02:00
Geoffrey White
a1bc865691
Merge pull request #20185 from geoffw0/typeconsistencycounts
...
Rust: Add rust/diagnostics/type-inference-consistency-counts.
2025-08-11 09:42:19 +01:00
Geoffrey White
04014d9bf0
Merge pull request #20150 from geoffw0/ctorinit
...
Rust: Update BadCtorInitialization.ql to use getCanonicalPath.
2025-08-11 09:41:16 +01:00
Mathias Vorreiter Pedersen
ccfcd90f08
Merge pull request #20156 from MathiasVP/value-numbering-for-noop-casts
...
C++: Value numbering for casts that only modify specifiers
2025-08-11 10:33:58 +02:00
Mathias Vorreiter Pedersen
56aacb1e55
Merge pull request #20145 from MathiasVP/fix-type-error-in-ir
...
C++: Fix missing `bool` -> `int` conversions in C code
2025-08-11 10:26:54 +02:00
Tom Hvitved
874f951727
Merge pull request #20172 from hvitved/shared/concepts-final-aliases
...
Shared: Use `final` aliases in `ConcentsShared.qll`
2025-08-11 10:14:55 +02:00
Napalys Klicius
f6aad96504
Java: Update docs and promote to quality java/jvm-exit
2025-08-11 09:24:01 +02:00
Napalys Klicius
4df613ce37
Java: Improved java/jvm-exit query to remove FP's.
2025-08-11 09:24:01 +02:00
Napalys Klicius
d41a5e3a25
Java: Added basic test cases for java/jvm-exit
2025-08-11 09:24:01 +02:00
Paolo Tranquilli
e02a2d8eae
Merge pull request #20189 from github/redsun82/java-17-in-gradle-no-wrapper-tests
...
Java: use java 17 in `no-wrapper` tests
2025-08-08 17:47:31 +02:00
Mathias Vorreiter Pedersen
b00107f927
C++: Add change note.
2025-08-08 15:23:40 +01:00
Mathias Vorreiter Pedersen
0c9d14f417
C++: Accept test changes.
2025-08-08 15:14:09 +01:00
Mathias Vorreiter Pedersen
d76ce4fb69
C++: Also handle reference types when computing 'trueSize'.
2025-08-08 15:12:45 +01:00
Mathias Vorreiter Pedersen
26be9839df
C++: Add FP.
2025-08-08 15:10:40 +01:00
Tom Hvitved
c043e30d46
Rust: Remove source/library deduplication in path resolution
2025-08-08 13:28:18 +02:00
Anders Schack-Mulligen
492a5ca087
Java: Add some more exception edges to the CFG to facilitate guard wrappers.
2025-08-08 10:40:07 +02:00
Anders Schack-Mulligen
e94f018e14
Kotlin: Support kotlin Throws annotations.
2025-08-08 10:28:58 +02:00
Paolo Tranquilli
72843b56e8
Java: use java 17 in no-wrapper tests
...
Gradle 9 requires Java 17.
2025-08-08 08:58:56 +02:00
Geoffrey White
1965fdb158
Rust: Update consistency .expected.
2025-08-07 18:41:47 +01:00
Chuan-kai Lin
72563ec5a4
Merge pull request #20080 from d10c/d10c/diff-informed-phase-3-ruby
...
Ruby: Diff-informed queries: phase 3 (non-trivial locations)
2025-08-07 07:37:40 -07:00
Geoffrey White
38f4f8d1d2
Rust: Update suite lists.
2025-08-07 15:28:01 +01:00
Marcono1234
adf01e76cd
Doc: Fix link to warnOnImplicitThis GitHub docs
2025-08-07 16:02:36 +02:00
Geoffrey White
c5f83c4423
Rust: Add rust/diagnostics/type-inference-consistency-counts.
2025-08-07 14:43:48 +01:00
Anders Schack-Mulligen
3b3f4bc782
Java/Guards: Remove unused.
2025-08-07 15:43:00 +02:00
Anders Schack-Mulligen
b19f15b3aa
Java: Simplify ArithmeticCommon using BarrierGuards.
2025-08-07 15:43:00 +02:00
Anders Schack-Mulligen
9957cbe656
Java/Guards: Improve BarrierGuards to include validate(x = ...) checks.
2025-08-07 15:42:59 +02:00
Anders Schack-Mulligen
a04ff18ba4
Java: Enable validation wrappers in BarrierGuards.
2025-08-07 15:42:59 +02:00
Anders Schack-Mulligen
3674966946
Merge pull request #20121 from aschackmull/guards/wrapperguard
...
Guards: Improve support for wrapped guards
2025-08-07 15:41:04 +02:00
Anders Schack-Mulligen
2909def9b6
Guards: Rename predicate.
2025-08-07 14:51:50 +02:00
Anders Schack-Mulligen
b51c0e7cb6
Java: Add change note.
2025-08-07 14:51:50 +02:00
Anders Schack-Mulligen
d9cfe14729
Java: Accept qltest change.
2025-08-07 14:51:49 +02:00
Anders Schack-Mulligen
a40ae3a11a
Guards: Slight join-order improvement.
2025-08-07 14:51:49 +02:00
Anders Schack-Mulligen
ec513ead0d
Guards: Add support for extending BarrierGuards with wrapped invocations.
2025-08-07 14:51:48 +02:00
Anders Schack-Mulligen
f90b6ab005
Guards: Add support for wrappers that may throw exceptions.
2025-08-07 14:51:48 +02:00
Anders Schack-Mulligen
b156bd5ce2
Guards: Rename predicate.
2025-08-07 14:51:48 +02:00
Anders Schack-Mulligen
0c31a80f3c
Guards: Generalise wrapper guards.
2025-08-07 14:51:47 +02:00
Anders Schack-Mulligen
6e52df1639
Guards: Rename module.
2025-08-07 14:51:47 +02:00
Anders Schack-Mulligen
1bdaa2420d
Java: Simplify Guards instantiation a bit.
2025-08-07 14:51:46 +02:00
Anders Schack-Mulligen
3aaf48de11
Guards: Remove CustomGuard nesting in Guards instantiation.
2025-08-07 14:51:46 +02:00
Tom Hvitved
e172e74357
Rust: Remove comment from type inference test
2025-08-07 10:37:19 +02:00
Tom Hvitved
1be542ec56
Rust: Generalize certain type inference logic
2025-08-07 10:37:17 +02:00
Geoffrey White
aafdf1a279
Rust: Update StreamCipherInit to use getCanonicalPath.
2025-08-07 09:27:51 +01:00
Tom Hvitved
dfe4401f13
Merge pull request #20169 from hvitved/javascript/legacy-summary-steps
...
JS: Generate legacy flow steps for all flow summaries
2025-08-06 18:52:39 +02:00
Geoffrey White
e991aa3253
Merge branch 'main' into cleartextstorage
2025-08-06 15:49:44 +01:00
Tom Hvitved
ed3a33fdc6
Merge pull request #20177 from hvitved/rust/type-inference-where
...
Rust: Improve handling of where clauses in type inference and path resolution
2025-08-06 15:52:56 +02:00
Geoffrey White
d215ea16da
Merge pull request #19802 from geoffw0/sqlx
...
Rust: Update SqlxQuery, SqlxExecute to use getCanonicalPath
2025-08-06 14:52:03 +01:00
Simon Friis Vindum
b50a76693a
Rust: Handle multiple type bounds for the same type parameter in getTypeBound
2025-08-06 11:15:28 +02:00
Simon Friis Vindum
0cfb22ff3f
Rust: Add example with multiple where clause items for the same type parameter
2025-08-06 11:15:24 +02:00
Simon Friis Vindum
b302f3f98f
Rust: Improve handling of where clauses in type inference and path resolution
2025-08-06 11:08:18 +02:00
Simon Friis Vindum
766083290c
Rust: Add tests with where clause
2025-08-06 11:08:13 +02:00
Tom Hvitved
d201ce1705
Merge pull request #20155 from paldepind/rust/type-inference-certain
...
Rust: Add predicate for certain type information
2025-08-06 10:55:34 +02:00
Tom Hvitved
1f15fc8a35
Merge pull request #20173 from hvitved/rust/type-mention-remove-restriction
...
Rust: Remove restriction in `PathTypeMention`
2025-08-06 10:13:23 +02:00
Tom Hvitved
eb3c054b0f
JS: Generate legacy flow steps for all flow summaries
2025-08-06 09:38:49 +02:00
Geoffrey White
83ec1d0254
Rust: Add the new query sinks to the Stats.qll import, so that they're reported correctly.
2025-08-05 20:20:40 +01:00
Geoffrey White
0d4f8765a6
Merge pull request #20167 from geoffw0/mdlcleanup
...
Rust: Clean up some odds and ends
2025-08-05 19:25:46 +01:00
Tom Hvitved
a396f9345e
Rust: Remove restriction in PathTypeMention
2025-08-05 15:05:43 +02:00
Tom Hvitved
11dcd90435
Shared: Use final aliases in ConcentsShared.qll
2025-08-05 14:53:52 +02:00
Anders Schack-Mulligen
1823355fae
Merge pull request #20171 from aschackmull/java/nullness-fn
...
Java: document nullness false negative as qltest
2025-08-05 14:17:09 +02:00
Anders Schack-Mulligen
94274288d3
Merge pull request #20127 from aschackmull/java/joinorder3
...
Java: Improve a couple of join-orders
2025-08-05 14:15:42 +02:00
Anders Schack-Mulligen
c59d20a668
Merge pull request #20163 from aschackmull/java/postdom-normal
...
Java: Assume normal termination in post-dominance.
2025-08-05 14:01:04 +02:00
Anders Schack-Mulligen
23aac0ac51
Java: document nullness false negative as qltest
2025-08-05 13:49:51 +02:00
Geoffrey White
c8e9ed3eda
Merge branch 'main' into cleartextstorage
2025-08-05 12:44:55 +01:00
Tom Hvitved
6e90823bd9
Merge pull request #20158 from hvitved/csharp/has-callable-constructor
...
C#: Include constructors in `ValueOrRefType.hasCallable`
2025-08-05 12:59:29 +02:00
Paolo Tranquilli
27650267a1
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-08-05 11:18:56 +02:00
Anders Schack-Mulligen
273429d14a
Java: Accept qltest output
2025-08-05 10:32:53 +02:00
Tom Hvitved
b426d84e1c
Merge pull request #20164 from hvitved/rust/fix-bad-join
...
Rust: Fix bad join
2025-08-05 09:55:51 +02:00
Geoffrey White
dcda6db88b
Rust: Lets not try to maintain this list.
2025-08-04 19:51:34 +01:00
Geoffrey White
0a49b65887
Rust: Make the rust/cleartext-transmission alert message more consistent with similar queries.
2025-08-04 19:47:33 +01:00
Chuan-kai Lin
e2b8d7b1ea
Merge pull request #20166 from github/post-release-prep/codeql-cli-2.22.3
...
Post-release preparation for codeql-cli-2.22.3
2025-08-04 11:38:38 -07:00
Geoffrey White
6c024a5f9e
Rust: Remove unnecessary pattern matching in cleartext logging query sinks (probably inherited from another query or language where it is used).
2025-08-04 19:28:40 +01:00
Geoffrey White
eab7481b97
Rust: Accept CWE-312 consistency check failures.
2025-08-04 18:26:09 +01:00
github-actions[bot]
fb4b0aac53
Post-release preparation for codeql-cli-2.22.3
2025-08-04 17:18:08 +00:00
Geoffrey White
def655f994
Rust: Accept changes to the CWE-089 test (there are some duplicate results that an existing unmerged PR will address).
2025-08-04 17:15:48 +01:00
Geoffrey White
b60faadf70
Rust: Change note.
2025-08-04 17:07:58 +01:00
Geoffrey White
836f797def
Rust: Accept suite changes.
2025-08-04 16:43:21 +01:00
Tom Hvitved
651e1624a6
Rust: Fix bad join
...
```
Evaluated relational algebra for predicate _Crate::Crate.getSourceFile/0#dispred#e7adf9d7_Crate::Generated::Crate.getName/0#dispred#f4d3b3bf_Pa__#join_rhs@5a04a7t0 with tuple counts:
34471980 ~0% {3} r1 = JOIN `PathResolution::isSourceFile/1#803de032` WITH `Crate::Crate.getSourceFile/0#dispred#e7adf9d7` CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0, Rhs.1
34471980 ~37% {4} | JOIN WITH `Crate::Generated::Crate.getName/0#dispred#f4d3b3bf` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Rhs.1, _
{3} | REWRITE WITH NOT [Tmp.3 := "std", TEST InOut.2 != Tmp.3, Tmp.3 := "core", TEST InOut.2 != Tmp.3] KEEPING 3
93420 ~91% {3} | SCAN OUTPUT In.1, _, In.0
93420 ~87% {3} | REWRITE WITH Out.1 := "prelude"
return r1
```
2025-08-04 17:33:26 +02:00
Geoffrey White
a86479eba9
Rust: Accept consistency check failures.
2025-08-04 16:26:41 +01:00
Geoffrey White
e368ee4b1b
Rust: Accept that sql-injection sinks are sinks for this query, and that the existing sinks created for this query are also new sql-injection sinks.
2025-08-04 15:23:04 +01:00
Geoffrey White
989b48d576
Rust: Add tests for rusqlite.
2025-08-04 15:00:06 +01:00
Anders Schack-Mulligen
0a27a8c255
Java: Assume normal termination in post-dominance.
2025-08-04 15:08:26 +02:00
Geoffrey White
f1cb1a3f5a
Rust: Add computed security-severity tag.
2025-08-04 13:41:16 +01:00
Simon Friis Vindum
3ba285c298
Rust: Implement certain type information for annotation and simple calls
2025-08-04 14:06:38 +02:00
Simon Friis Vindum
c3349bbb04
Rust: Add type inference example with cycle blowup
2025-08-04 14:06:37 +02:00
Tom Hvitved
361ef0f50d
C#: Include constructors in ValueOrRefType.hasCallable
2025-08-04 13:51:17 +02:00
Mathias Vorreiter Pedersen
65b1b7f63e
C++: Add change note.
2025-08-03 12:17:37 +01:00
Mathias Vorreiter Pedersen
851c498b37
C++: Accept test changes. This is a FP that's been present since we put the IR into production in #2851 .
2025-08-03 12:17:36 +01:00
Mathias Vorreiter Pedersen
b807ee4718
C++: Accept test changes.
2025-08-03 12:17:34 +01:00
Mathias Vorreiter Pedersen
c726285cac
C++: Sync identical files.
2025-08-03 12:17:31 +01:00
Mathias Vorreiter Pedersen
0d9e298250
C++: Specifier-only converting instructions preserve GVNs.
2025-08-03 12:17:19 +01:00
Mathias Vorreiter Pedersen
fca49dde92
C++: Accept test changes.
2025-08-02 16:43:19 +01:00
Mathias Vorreiter Pedersen
73e4bfdd3e
C++: Fix missing flow by also generating final global uses for functions that have a post-update node for the global variable.
2025-08-02 16:41:23 +01:00
Mathias Vorreiter Pedersen
34c1ec73c2
C++: Add tests with missing flow through globals.
2025-08-02 16:38:32 +01:00
Mathias Vorreiter Pedersen
1aa8adb472
C++: Add test.
2025-08-02 13:00:26 +01:00
Mathias Vorreiter Pedersen
14345a8288
C++: Accept test changes.
2025-08-01 16:09:44 +01:00
Mathias Vorreiter Pedersen
7561190bd1
C++: Fix type errors in C code.
2025-08-01 16:09:42 +01:00
Napalys Klicius
881ea7631e
Added change note
2025-08-01 14:34:25 +02:00
Joe Farebrother
5e09c1d3d3
Merge remote-tracking branch 'origin/python-qual-subclass-shadow' into python-qual-subclass-shadow
2025-08-01 12:39:30 +01:00
Joe Farebrother
bc60914ed7
Update test output
2025-08-01 12:37:51 +01:00
Joe Farebrother
d8083add3e
Doc updates
2025-08-01 12:35:01 +01:00
Napalys Klicius
ae4077db72
add taint flow for arg/command-line-args with custom argv option
2025-08-01 13:34:08 +02:00
Napalys Klicius
d6508f34b6
Add taint flow for Commander.js direct property access and action callbacks
2025-08-01 13:24:19 +02:00
Napalys Klicius
39170f327c
Added couple more test cases for commander js
2025-08-01 13:14:39 +02:00
Napalys Klicius
6b4e34dd39
Added a step from parse to opts for commander js
2025-08-01 13:12:43 +02:00
Napalys Klicius
e980798ede
Added step through yargs/yargs constructor and chained methods.
2025-08-01 12:01:30 +02:00
Napalys Klicius
e8eb9be3f6
Add command injection tests for CLI argument parsing libraries
2025-08-01 11:02:59 +02:00
Geoffrey White
01d24c4f83
Merge branch 'main' into sqlx
2025-07-31 16:02:36 +01:00
Mathias Vorreiter Pedersen
18289702ca
C++: Add an example of double negation to the IR tests.
2025-07-31 15:49:05 +01:00
Geoffrey White
58680c94bc
Rust: Repair BadCtorInitialization.ql's StdCall using getCanonicalPath.
2025-07-31 13:28:56 +01:00
Napalys Klicius
3f9061abdb
Added change note
2025-07-31 13:20:38 +02:00
Napalys Klicius
d28a6e6352
Added new test cases for regexp injection with enviromental variable threat model enabled
2025-07-31 13:20:37 +02:00
Napalys Klicius
8583257574
Created new folder for test with threat models disabled
2025-07-31 13:20:30 +02:00
Napalys Klicius
021aa13ee2
Added change note
2025-07-31 12:45:34 +02:00
Napalys Klicius
5f538209c9
Exlucde environmental variables from default detection in regexp injection
2025-07-31 12:09:30 +02:00
Napalys Klicius
791a7e242e
Updated qhelp for cors permissive configuration
2025-07-31 11:31:10 +02:00
Napalys Klicius
2baca58b27
Removed deprecations from cors as it was moved out experimental
2025-07-31 11:08:22 +02:00
Napalys Klicius
fd4233e30e
Moved apollo modeling to MaD
2025-07-31 10:58:38 +02:00
Joe Farebrother
79d1deb28d
Update python/ql/src/Classes/SubclassShadowing/SubclassShadowing.ql
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-31 06:05:48 +01:00
Joe Farebrother
71a6b22815
Update python/ql/src/Classes/SubclassShadowing/examples/SubclassShadowingBad.py
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-31 06:05:25 +01:00
Geoffrey White
42ced8aa3d
Rust: Add examples to tests.
2025-07-30 17:51:32 +01:00
Geoffrey White
b6e60e4087
Rust: Address small bugs in the test.
2025-07-30 17:51:31 +01:00
Geoffrey White
215fe7d0b3
Rust: Clean up the alert message.
2025-07-30 17:51:30 +01:00
Geoffrey White
e585e677c8
Rust: Add qhelp and examples.
2025-07-30 17:51:28 +01:00
Joe Farebrother
1efc09bbba
Update integration tests
2025-07-30 15:54:39 +01:00
Joe Farebrother
63577f0cca
Add extra example
2025-07-30 15:52:26 +01:00
Joe Farebrother
2516f9452e
Move to subfolder
2025-07-30 15:17:19 +01:00
Joe Farebrother
34317d2d4a
Update documentation
2025-07-30 13:56:28 +01:00
Joe Farebrother
796a6060b2
Exclude setters and update tests
2025-07-30 13:56:05 +01:00
Joe Farebrother
af94ebe1fc
Modernize attribute shadows subclass, Add cases for properties
2025-07-30 13:55:11 +01:00
Napalys Klicius
84ffbbec33
Added missing doc strings
2025-07-30 10:51:38 +00:00
Napalys Klicius
95743d7109
Added inline test expectations for cors permissive config
2025-07-30 10:42:55 +00:00
Napalys Klicius
92daa7d42c
Updated suite expectations
2025-07-30 10:32:11 +00:00
Napalys Klicius
358617f533
Move CORS misconfiguration query from experimental to Security
2025-07-30 10:22:59 +00:00
Geoffrey White
a3110a9091
Rust: Implement query.
2025-07-29 18:19:52 +01:00
Geoffrey White
5c64d4e9b7
Rust: Query framework.
2025-07-28 16:59:01 +01:00
Geoffrey White
897822dff5
Rust: The Cargo.lock file has changed as well.
2025-07-28 16:55:43 +01:00
Geoffrey White
9972aaf6a1
Rust: Add tests cases for cleartext storage.
2025-07-28 16:12:34 +01:00
Anders Schack-Mulligen
6c8275298b
Java: Improve ObjFlow performance.
2025-07-25 14:41:06 +02:00
Joe Farebrother
c0da9c407e
Fix typo in test dir name + update examples
2025-07-25 13:15:46 +01:00
Anders Schack-Mulligen
5ca35afb8c
Java: Improve joinorder in getErasedRepr.
2025-07-25 13:34:11 +02:00
Anders Schack-Mulligen
e3021f4a65
Java: Untangle code a bit to improve join order.
2025-07-25 13:33:14 +02:00
Joe Farebrother
958fddb638
cleanup order and remove duplicates for arithmetic methods
2025-07-25 10:57:19 +01:00
Joe Farebrother
d7b855c4e3
qhelp fix
2025-07-25 10:24:58 +01:00
Joe Farebrother
9af2ab83dc
Cleanups
2025-07-25 10:22:51 +01:00
Joe Farebrother
8bdf6801b3
Add qldoc
2025-07-25 10:05:09 +01:00
Joe Farebrother
3525e83ad2
Add changenote + some doc updates
2025-07-25 09:52:54 +01:00
Joe Farebrother
871688f026
Update docs
2025-07-24 16:01:57 +01:00
Geoffrey White
67c170ffc1
Merge branch 'main' into sqlx
2025-07-24 15:25:35 +01:00
Joe Farebrother
362bfba049
Update unit tests
2025-07-24 14:50:36 +01:00
Joe Farebrother
b9f6657ade
Remove use of toString. This does also reduce reaults from cases where the exception is not a simple identifier.
2025-07-24 13:50:27 +01:00
Joe Farebrother
b9738066de
try excluding set methods, add methods, update alert messages
2025-07-24 11:18:28 +01:00
Joe Farebrother
73d257e538
Port unexpected raise away from pointsto
2025-07-23 14:13:58 +01:00
Matt Schwager
d8b9d4d17a
Add change-note
2025-07-23 07:03:26 -04:00
Owen Mansel-Chan
e2f3c9d1b6
Reword change note
2025-07-22 00:09:37 +01:00
Kevin Stubbings
b4b848a25c
Fix tests and simplify sanitizer
2025-07-21 21:53:35 +00:00
Matt Schwager
5192f3128a
Update expected test output
2025-07-21 15:26:39 -04:00
Matt Schwager
9da94fb880
Fix #19294 , Ruby NetHttpRequest improvements
2025-07-21 15:17:54 -04:00
Nora Dimitrijević
218fcbbec5
[DIFF-INFORMED] C#: HardcodedConnectionString
2025-07-21 11:28:55 +02:00
Nora Dimitrijević
b2fd58eea4
[DIFF-INFORMED] C#: ThreadUnsafeCryptoTransformLambda
2025-07-21 11:28:53 +02:00
Nora Dimitrijević
7f085e6bd9
[DIFF-INFORMED] C#: UnsafeDeserializationQuery
...
57c8b6e229/csharp/ql/src/Security%20Features/CWE-502/UnsafeDeserializationUntrustedInput.ql (L59)
2025-07-21 11:28:50 +02:00
Nora Dimitrijević
793f921291
[DIFF-INFORMED] C#: ConditionalBypass
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/csharp/ql/src/Security%20Features/CWE-807/ConditionalBypass.ql#L22
2025-07-21 11:28:48 +02:00
Jami Cogswell
bca2c2da54
Java: Add 'previous-id' and adjust tags for 'java/garbage-collection' and 'java/do-not-use-finalizers'
2025-07-19 19:29:00 -04:00
Jami Cogswell
c9692a6d10
Java: fix test failures cause by alert msg change
2025-07-19 13:27:09 -04:00
Jami Cogswell
0dd33b2734
Java: remove version debugging from alert message
2025-07-19 13:01:00 -04:00
Jami Cogswell
7250265c1f
Java: consider all endpoints except for health and info as sensitive to align with Spring docs
2025-07-18 17:50:18 -04:00
Jami Cogswell
685f68d9d3
Java: support 'management.endpoints.web.expose' property
2025-07-18 17:50:17 -04:00
Jami Cogswell
8decc136c4
Java: add change note
2025-07-18 17:50:14 -04:00
Jami Cogswell
70d51504a7
Java: rename to align with 'java/spring-boot-exposed-actuators' query
2025-07-18 17:50:12 -04:00
Jami Cogswell
ea529b047b
Java: adjust metadata and alert msg
2025-07-18 17:50:10 -04:00
Jami Cogswell
7d5e939a86
Java: minor refactoring
2025-07-18 17:50:09 -04:00
Jami Cogswell
ea35fbbe3b
Java: support version 3.x
2025-07-18 17:50:07 -04:00
Jami Cogswell
afa6610cb9
Java: update qhelp
2025-07-18 17:49:54 -04:00
Jami Cogswell
0d2a4222fd
Java: add related location to alert message
2025-07-17 19:22:18 -04:00
Jami Cogswell
ae163a9f36
Java: add overlay annotations
2025-07-17 19:22:17 -04:00
Jami Cogswell
2bfc4b4ee2
Java: fix test case for version 1.4
...
Need the existence of an ApplicationProperties File, not an ApplicationProperties ConfigPair
2025-07-17 19:22:15 -04:00
Jami Cogswell
3823186dc6
Java: split tests by versions
...
splitting is required to properly test each scenario
2025-07-17 19:22:13 -04:00
Jami Cogswell
1b90a30d45
Java: move code to .qll file
2025-07-17 19:22:11 -04:00
Jami Cogswell
b479f5c8dc
Java: fix integration tests
2025-07-17 19:22:10 -04:00
Jami Cogswell
ed8da5e151
Java: convert tests to inline expectations
2025-07-17 19:22:08 -04:00
Jami Cogswell
fc930d9184
Java: update tests for non-experimental directory
2025-07-17 19:22:06 -04:00
Jami Cogswell
38260e76bf
Java: remove deprecation
2025-07-17 19:22:05 -04:00
Jami Cogswell
0dbddbdf0f
Java: remove experimental files
2025-07-17 19:22:03 -04:00
Jami Cogswell
a39cb40177
Java: copy out of experimental
2025-07-17 19:22:01 -04:00
Nora Dimitrijević
4b6135c0f7
[DIFF-INFORMED] Ruby: MissingFullAnchor
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/ruby/ql/src/queries/security/cwe-020/MissingFullAnchor.ql#L18
2025-07-17 14:44:02 +02:00
Nora Dimitrijević
20030d56a5
[DIFF-INFORMED] Python: (Possible)TimingAttackAgainstHash
2025-07-17 14:40:31 +02:00
Nora Dimitrijević
9408a96ba5
[TEST] Python: TimingAttackAgainstHash: add qlref test to existing source (TODO: add source with true positive)
2025-07-17 14:40:29 +02:00
Geoffrey White
27bea33508
Rust: Accept consistency check change.
2025-07-17 12:44:31 +01:00
Geoffrey White
69064b7f7f
Rust: Update the model.
2025-07-17 12:20:34 +01:00
Nora Dimitrijević
8824677e87
[DIFF-INFORMED] Go: BadRedirectCheck
2025-07-17 11:46:54 +02:00
Nora Dimitrijević
b4010ac2b4
[DIFF-INFORMED] Go: InsecureHostKeyCallback
2025-07-17 11:46:53 +02:00
Nora Dimitrijević
188fc0d933
[DIFF-INFORMED] Go: UnhandledCloseWritableHandle
2025-07-17 11:46:51 +02:00
Nora Dimitrijević
7b759f44f8
[DIFF-INFORMED] Go: AuthCookie
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/experimental/CWE-1004/CookieWithoutHttpOnly.ql#L97
2025-07-17 11:46:49 +02:00
Nora Dimitrijević
a1fe72c423
[DIFF-INFORMED] Go: SSRF
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/experimental/CWE-918/SSRF.ql#L23
2025-07-17 11:46:47 +02:00
Nora Dimitrijević
7bd6703f19
[DIFF-INFORMED] Go: ConditionalBypass
2025-07-17 11:46:46 +02:00
Nora Dimitrijević
19b373aa90
[DIFF-INFORMED] Go: SensitiveConditionBypass
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/experimental/CWE-807/SensitiveConditionBypass.ql#L33
2025-07-17 11:46:44 +02:00
Nora Dimitrijević
d6ef585110
[DIFF-INFORMED] Go: RequestForgery, SafeUrlFlow
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-918/RequestForgery.ql#L21
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-601/OpenUrlRedirect.ql#L24
2025-07-17 11:46:42 +02:00
Nora Dimitrijević
8c8625d912
[DIFF-INFORMED] Go: ReflectedXss
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-079/ReflectedXss.ql#L23
2025-07-17 11:46:40 +02:00
Nora Dimitrijević
4b473622bc
[DIFF-INFORMED] Go: InsecureRandomness
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-338/InsecureRandomness.ql#L19
2025-07-17 11:46:39 +02:00
Nora Dimitrijević
ce7eb9b16a
[DIFF-INFORMED] Go: IncorrectIntegerConversion
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-681/IncorrectIntegerConversionQuery.ql#L23
2025-07-17 11:46:37 +02:00
Nora Dimitrijević
f228818b1f
[DIFF-INFORMED] Go: HardcodedCredentials
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-798/HardcodedCredentials.ql#L62
2025-07-17 11:46:35 +02:00
Nora Dimitrijević
109f6ddc2d
[DIFF-INFORMED] Go: ExternalAPIs
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-020/UntrustedDataToExternalAPI.ql#L18
2025-07-17 11:46:33 +02:00
Nora Dimitrijević
89f760460b
[DIFF-INFORMED] Go: CommandInjection
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-078/CommandInjection.ql#L28
2025-07-17 11:46:30 +02:00
Nora Dimitrijević
e0d16a863b
[DIFF-INFORMED] Go: AllocationSizeOverflow
...
https://github.com/d10c/codeql/blob/d10c/diff-informed-phase-3/go/ql/src/Security/CWE-190/AllocationSizeOverflow.ql#L24
2025-07-17 11:46:29 +02:00
Geoffrey White
944fd2aa11
Rust: Add explicit types in some (not all) of the test cases.
2025-07-17 10:45:40 +01:00
Kevin Stubbings
f86152d3bd
Add sanitizer changes and fix test
2025-07-16 21:27:33 +00:00
Geoffrey White
62b7d84638
Rust: Add Sqlx as MaD sinks instead.
2025-07-16 16:36:42 +01:00
Geoffrey White
87deab861f
Rust: Remove Sqlx.qll.
2025-07-16 16:23:50 +01:00
Geoffrey White
6f5e4ef5b9
Merge branch 'main' into sqlx
2025-07-16 15:59:42 +01:00
Kevin Stubbings
504ae0f35a
Update go path sanitizers and sinks
2025-07-16 06:12:45 +00:00
Paolo Tranquilli
fd8ab05724
Merge branch 'main' into redsun82/cargo-upgrade-2
2025-07-15 17:25:40 +02:00
Paolo Tranquilli
e79938b597
Bazel: bump rust toolchain version to 1.88
2025-07-15 14:54:52 +02:00
Joe Farebrother
3a27758d85
Remove old py2-specific tests
2025-07-15 13:38:48 +01:00
Paolo Tranquilli
c5afc65491
Rust: run codegen again
2025-07-15 14:32:13 +02:00
Paolo Tranquilli
7b48cb2ce8
Bazel: regenerate cargo vendored files
2025-07-15 14:22:43 +02:00
Paolo Tranquilli
f0466ae9ca
Cargo: upgrade dependencies
2025-07-15 14:14:39 +02:00
Napalys Klicius
ea93b392f7
Added change note for python
2025-07-15 13:43:08 +02:00
Napalys Klicius
638f6498f0
Removed lxml.etree.XMLParser from xml bomb sinks
2025-07-15 13:43:00 +02:00
Joe Farebrother
15115f50c1
Remove old tests
2025-07-15 09:50:21 +01:00
Napalys Klicius
887d80f49f
Added change note
2025-07-15 09:37:34 +02:00
Napalys Klicius
1851deb929
Removed libxmljs from being marked as sink for xml-bomb.
2025-07-15 09:33:11 +02:00
Joe Farebrother
0f04a8b2c0
Update integration test output
2025-07-14 14:35:12 +01:00
Joe Farebrother
f784bb0a35
Fix qldoc errors + typos
2025-07-14 14:26:49 +01:00
Joe Farebrother
61af4e4514
Add changenote and update integraion test output
2025-07-14 11:00:05 +01:00
Joe Farebrother
ea48fcca8f
Update doc for equalsNotEquals
2025-07-14 10:49:28 +01:00
Joe Farebrother
58f503de38
Update docs for incomplete ordering + inconsistent hashing
2025-07-11 23:08:50 +01:00
Joe Farebrother
843a6c8012
Remove total order check from equals not equals (doesn't make sense there; total order doesn't define eq or ne methods at all)
2025-07-11 15:12:59 +01:00
Joe Farebrother
083d258585
Add/update unit tests
2025-07-11 15:10:45 +01:00
Joe Farebrother
8fb9bdd0af
move equals attr test to equals attr folder
2025-07-09 15:25:21 +01:00
Joe Farebrother
a687b60af9
Modernise equals-hash-mismatch
2025-07-09 14:14:38 +01:00
Joe Farebrother
eb1b5a35d7
Modernize inconsistent equality
2025-07-09 14:14:30 +01:00
Joe Farebrother
4c5c4e06c3
Move inconsistentEquality and equals-hash-mismatch to subfolder
2025-07-09 14:14:26 +01:00
Joe Farebrother
e71af8fd6d
Move to subfolder
2025-07-09 14:14:22 +01:00
Joe Farebrother
fccdc30ac5
Modernize incomplete ordering query
2025-07-09 14:14:17 +01:00
Geoffrey White
f3b5cc79ff
Merge branch 'main' into sqlx
2025-07-08 13:58:19 +01:00
REDMOND\brodes
a98f4c29d3
Crypto: Code scanning warning fix.
2025-07-01 12:26:50 -04:00
REDMOND\brodes
ff93045938
Crypto: remove JCA bad import.
2025-07-01 12:21:51 -04:00
REDMOND\brodes
88d36aa574
Crypto: Intermediate JCA updates to support new MAC model. Work in progress.
2025-07-01 12:19:15 -04:00
REDMOND\brodes
0270fac4e7
Crypto: Update model to have a mac operation instance that extends the signature or mac operation instance.
2025-07-01 11:51:40 -04:00
REDMOND\brodes
d32e09ac37
Crypto: Misc. cleanup and completed model refactor for Mac. Passing tests for openssl, refactor still required for JCA.
2025-07-01 10:37:09 -04:00
REDMOND\brodes
8b64a72fe1
Crypto: Initial sketch for refactoring MAC and signatures to account for APIs having one function to do both. Incomplete. Work in progress.
2025-06-30 15:36:55 -04:00
REDMOND\brodes
e6b363b81b
Crypto: fix Ql-for-QL alerts.
2025-06-30 11:08:30 -04:00
REDMOND\brodes
eba120444e
Merge branch 'main' into openssl_padding_refactor
2025-06-27 13:54:27 -04:00
REDMOND\brodes
97cd083f65
Merge branch 'operation_step_refactor' into openssl_padding_refactor
...
# Conflicts:
# cpp/ql/lib/experimental/quantum/OpenSSL/AlgorithmInstances/AlgToAVCFlow.qll
# cpp/ql/lib/experimental/quantum/OpenSSL/AlgorithmInstances/PaddingAlgorithmInstance.qll
2025-06-27 09:42:06 -04:00
REDMOND\brodes
6e5734adca
Crypto: Fix openssl padding to propery link async padding to hashing configs.
2025-06-26 09:18:30 -04:00
Vasco-jofra
575da5c31c
Merge SummarizedCallable into single class
2025-06-26 10:10:52 +02:00
Geoffrey White
dc08274aa2
Rust: Update SqlxQuery, SqlxExecute from getResolvedPath -> getCanonicalPath.
2025-06-17 15:56:18 +01:00
Vasco-jofra
8c4dbca23c
Improve data flow in the async library
2025-06-15 17:59:49 +02:00
Vasco-jofra
26f3b40d35
Add lodash GroupBy as taint step
2025-06-14 00:13:03 +02:00
2h0ng
150debdd8d
Fix the broken reference
2025-02-09 15:29:37 -05:00
Kristen Newbury
df18891a2f
Fix changenote for query removal change
2024-10-03 17:36:42 -04:00
Kristen Newbury
e98db7fd20
Add changenote for query removal change
2024-10-03 17:28:59 -04:00
Kristen Newbury
d10a6b4ca0
Remove unnecessary query
2024-10-03 13:33:30 -04:00
Asger F
53dbfcb3aa
C++: use in/out barriers with flow state
2023-09-28 11:08:30 +02:00
Moshe Kaplan
f0ca76102c
Correct menu title name of "Open Workspace"
...
Correct menu title name of "Open Workspace" to "Open Workspace from File", as that is the current menu title on VS Code (at least as of 1.76.2)
2023-03-24 15:26:46 -04:00