Felicity Chapman
e96377572e
Merge pull request #10553 from github/8032-python-2-deprecation
...
Minor updates to reflect recommendations for Python support
2022-09-23 19:09:01 +01:00
Felicity Chapman
8920d73f38
Fix typo in footnote reference
2022-09-23 18:40:01 +01:00
Felicity Chapman
a7f23b9cc7
Minor updates to reflect recommendations for Python support
2022-09-23 18:40:01 +01:00
Dave Bartolomeo
87cc0481a0
Merge pull request #10543 from github/release-prep/2.11.0
...
Release preparation for version 2.11.0
2022-09-23 09:38:18 -04:00
Dave Bartolomeo
55b1d89fd3
More relevant change note
2022-09-23 09:29:09 -04:00
Dave Bartolomeo
e695630822
More relevant change note
2022-09-23 09:28:50 -04:00
Dave Bartolomeo
85bfc1d79e
More relevant change note
2022-09-23 09:27:47 -04:00
Dave Bartolomeo
a792a7005b
More relevant change note
2022-09-23 09:27:19 -04:00
github-actions[bot]
f5cf8cffa3
Release preparation for version 2.11.0
2022-09-22 20:14:12 +00:00
Dave Bartolomeo
cee0e8e137
Merge pull request #10532 from github/henrymercer/3.7-mergeback
...
Final mergeback from `rc/3.7`
2022-09-22 13:42:59 -04:00
Andrew Eisenberg
b58653eadc
Merge pull request #10458 from github/aeisenberg/qlpack-properties
...
Update qlpack properties descriptions
2022-09-22 07:54:17 -07:00
Mathias Vorreiter Pedersen
7272ca79fd
Merge pull request #10529 from erik-krogh/even-more-alerts
...
QL: A few more improvements to `ql/alert-message-style-violation`
2022-09-22 15:16:30 +01:00
Asger F
718649d505
Merge pull request #10490 from asgerf/js/remove-old-docs
...
JS: Remove old Portal-based flow summary implementation
2022-09-22 16:01:30 +02:00
Erik Krogh Kristensen
2fe6d1f562
Merge pull request #10470 from erik-krogh/flowParse
...
JS: Try to parse files without using our parser extensions before enabling the extensions
2022-09-22 14:58:43 +02:00
Alex Ford
140458b7cc
Merge pull request #9932 from alexrford/ruby/rbi-typegraph-fixes
...
Ruby: RBI library changes to support models-as-data model generation
2022-09-22 13:55:33 +01:00
erik-krogh
609ed709e2
use GVN to find detect when the alert-location is used as a link
2022-09-22 14:42:08 +02:00
erik-krogh
afdd7b0994
don't compute GVN for string constants of length more than 50, as this results in a infinite loop 😕
2022-09-22 14:41:21 +02:00
Erik Krogh Kristensen
6e6880bbe4
Merge pull request #10486 from erik-krogh/java-unqueryable
...
Java: Delete some unused code
2022-09-22 14:21:39 +02:00
erik-krogh
a8929b6400
deprecate RegExpFlags::getFlags instead of deleting it
2022-09-22 13:43:42 +02:00
erik-krogh
b61bd56d70
un-deprecate guardControls_v2
2022-09-22 13:42:50 +02:00
Tom Hvitved
f0f4fe7286
Merge pull request #10444 from hvitved/ruby/stmt-sequence-post-update
...
Ruby: Add post-update nodes for compound arguments
2022-09-22 13:18:51 +02:00
Henry Mercer
f8f99af8b7
Bump the minor version of packs we regularly release
2022-09-22 12:14:19 +01:00
erik-krogh
f404f1ddce
add change-note
2022-09-22 13:11:49 +02:00
Nick Rolfe
7d0bfe8f98
Merge pull request #10531 from github/nickrolfe/title-case
...
Ruby: use consistent capitalization with `import ... as`
2022-09-22 12:05:44 +01:00
Tom Hvitved
ad489155c4
Merge pull request #10469 from hvitved/csharp/dotnet-run-tracer-fix
...
C#: Prepend `-p:UseSharedCompilation=false` instead of append for `dotnet run`
2022-09-22 12:59:33 +02:00
Chris Smowton
adf5f18c03
Merge pull request #10530 from github/smowton/admin/kotlin-tolerate-beta-versions
...
Kotlin: Tolerate kotlinc versions like 1.7.20-Beta
2022-09-22 11:55:02 +01:00
Nick Rolfe
df8a182ac2
Ruby: use consistent capitalization with import ... as
2022-09-22 11:13:41 +01:00
Nick Rolfe
ee34ac5394
Merge pull request #10512 from github/nickrolfe/hash_from_trusted_xml
...
Ruby: add Hash.from_trusted_xml as an unsafe deserialization sink
2022-09-22 10:59:49 +01:00
Tom Hvitved
ac594842c8
Merge pull request #10504 from hvitved/ruby/private-methods
...
Ruby: Two fixes for `private` methods
2022-09-22 11:54:28 +02:00
AlexDenisov
26cf2b3bb1
Merge pull request #10522 from github/alexdenisov/switch-to-swift-5.7
...
Swift: update Swift frontend to 5.7
2022-09-22 11:53:04 +02:00
Tom Hvitved
10a584ffb9
Merge pull request #10517 from hvitved/ruby/regexp-debug
...
Ruby: Add query for debugging regexp flow
2022-09-22 11:50:50 +02:00
Henry Mercer
da272efe2d
Merge pull request #10527 from github/dependabot/github_actions/actions/stale-6
...
Bump actions/stale from 5 to 6
2022-09-22 10:31:17 +01:00
Asger F
df44076435
JS: Remove Portal-based flow summary implementation
2022-09-22 11:28:31 +02:00
Chris Smowton
c2656dd55f
Kotlin: Tolerate kotlinc versions like 1.7.20-Beta
2022-09-22 10:23:29 +01:00
Alex Denisov
b3ea537553
Swift: switch to python db schema
2022-09-22 11:17:14 +02:00
Alex Denisov
e4731fd41f
Swift: redirect more artfacts
2022-09-22 11:17:07 +02:00
Alex Denisov
d9cfd06a88
Swift: do not skip newly supported CLI args
2022-09-22 11:17:07 +02:00
Alex Denisov
44f4ff18dd
Swift: accept regression
2022-09-22 11:17:07 +02:00
Alex Denisov
ecb5708b66
Swift: fix static assert?
2022-09-22 11:17:07 +02:00
Alex Denisov
6a08b8dcfb
Swift: getSequence was renamed
2022-09-22 11:17:07 +02:00
Alex Denisov
b364647d76
Swift: add stubs for new exprs
2022-09-22 11:17:07 +02:00
Alex Denisov
d937234f83
Swift: add stubs for new types
2022-09-22 11:17:07 +02:00
Alex Denisov
13fe02edfa
Swift: NestedArchetypeType was removed
2022-09-22 11:17:04 +02:00
Alex Denisov
61d5cdc421
Swift: update Swift package to 5.7
2022-09-22 11:16:56 +02:00
Paolo Tranquilli
f3cc6ae5df
Merge pull request #10516 from github/redsun82/swift-python-schema
...
Swift: express the schema in Python
2022-09-22 11:12:27 +02:00
erik-krogh
1fbfcc1e91
add TODOs in the ql/alert-message-style-violation query
2022-09-22 07:02:38 +02:00
erik-krogh
76fef28c32
don't repeat the alert-location as a link
2022-09-22 07:02:36 +02:00
erik-krogh
88439fc61c
only report alert-message style-violations on problem/path-problem queries
2022-09-22 07:02:33 +02:00
dependabot[bot]
f63381b98a
Bump actions/stale from 5 to 6
...
Bumps [actions/stale](https://github.com/actions/stale ) from 5 to 6.
- [Release notes](https://github.com/actions/stale/releases )
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/stale/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/stale
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2022-09-22 03:58:17 +00:00
Andrew Eisenberg
48f938ef26
Merge pull request #10500 from github/aeisenberg/query-spec-path
...
Update section on query specifiers
2022-09-21 13:02:30 -07:00
Andrew Eisenberg
6fb3574c5c
Update docs/codeql/codeql-cli/analyzing-databases-with-the-codeql-cli.rst
2022-09-21 12:48:17 -07:00
Tom Hvitved
659f1cc6c7
C#: Add integration tests for dotnet run
2022-09-21 19:43:04 +02:00
Tom Hvitved
cc09a79cfa
C#: Prepend -p:UseSharedCompilation=false instead of append for dotnet run
2022-09-21 19:42:58 +02:00
Tom Hvitved
47411e3548
Ruby: Add query for debugging regexp flow
2022-09-21 19:22:10 +02:00
Erik Krogh Kristensen
0cae6deb27
Merge pull request #10513 from erik-krogh/more-alert-style
...
QL: improve the `ql/alert-message-style-violation` query.
2022-09-21 19:08:19 +02:00
Erik Krogh Kristensen
1bdb6b45f8
fix typo
...
Co-authored-by: Taus <tausbn@github.com >
2022-09-21 18:14:00 +02:00
Paolo Tranquilli
3983c36cb2
Swift: avoid inheriting annotations
2022-09-21 18:02:09 +02:00
Paolo Tranquilli
a67341c53b
Revert "Swift: make unknown entity type check more solid"
...
This reverts commit b52a4e19c1 .
2022-09-21 18:01:59 +02:00
erik-krogh
41c1e1a4c6
get the message, and not just the second select expression
2022-09-21 17:23:59 +02:00
erik-krogh
b61e094a86
recognize @kinds with a dash
2022-09-21 17:23:25 +02:00
Andrew Eisenberg
99e8cb78b0
Merge pull request #10496 from aeisenberg/aeisenberg/merge-rc3.7-into-main
...
Aeisenberg/merge rc3.7 into main
2022-09-21 08:09:47 -07:00
Paolo Tranquilli
b52a4e19c1
Swift: make unknown entity type check more solid
2022-09-21 16:44:34 +02:00
Paolo Tranquilli
fd63bab054
Swift: autopep8 test_schema.py
2022-09-21 16:15:52 +02:00
Paolo Tranquilli
163d1717d7
Swift: autopep8
2022-09-21 16:11:40 +02:00
Paolo Tranquilli
28a2aade21
Swift: undo double newlines in schema.py
2022-09-21 16:03:37 +02:00
Paolo Tranquilli
96897a0cdc
Swift: implement python schema
...
The information that was contained in `schema.yml` is now in
`swift/schema.py`, which allows a more integrated IDE experience
for writing and navigating it.
Another minor change is that `schema.Class` now has a `str` `group`
field instead of a `pathlib.Path` `dir` one.
2022-09-21 15:53:09 +02:00
Paolo Tranquilli
caaf9e7ff3
Swift: reorganize schema lib files
2022-09-21 15:50:26 +02:00
Paolo Tranquilli
b0e7dfcbdf
Swift: python schema mock-up
2022-09-21 15:39:18 +02:00
Alex Ford
260db1aea2
Ruby: drop getAQualifiedName predicate from ConstantAccess
2022-09-21 14:28:43 +01:00
Alex Ford
3bbb166642
Ruby: handle block param types more neatly
2022-09-21 13:52:19 +01:00
Tamás Vajk
82c3e53694
Merge pull request #10473 from tamasvajk/kotlin-suspend
...
Kotlin: Extract `suspend` functions
2022-09-21 14:22:44 +02:00
Mathias Vorreiter Pedersen
25d1098b4d
Merge pull request #10511 from github/redsun82/swift-ifconfigdecl-ql
...
Swift: fix `IfConfigDecl` in QL libraries
2022-09-21 13:15:27 +01:00
Ian Lynagh
46a23e107b
Merge pull request #10495 from igfoo/igfoo/traplocker
...
Kotlin: Tidy up TrapLocker
2022-09-21 13:05:58 +01:00
Ian Lynagh
aaa3fc0b5c
Merge pull request #10353 from tamasvajk/kotlin-fix-not-implemented
...
Kotlin: Catch exception thrown by kotlinc
2022-09-21 13:05:41 +01:00
erik-krogh
362ee71f6a
recognize alert messages defined in the where clause
2022-09-21 14:03:16 +02:00
erik-krogh
84aee871fe
find more cases of alert messages starting with a lower-case letter, or not ending with a full stop
2022-09-21 14:03:14 +02:00
erik-krogh
b87befcc36
add check for double-whitespace in alert-messages
2022-09-21 14:03:10 +02:00
Nick Rolfe
2edbc16829
Ruby: add Hash.from_trusted_xml as an unsafe deserialization sink
2022-09-21 13:01:21 +01:00
Tom Hvitved
61e9c6f658
Ruby: Fix call graph for overridden private methods
2022-09-21 14:00:17 +02:00
Tom Hvitved
e7649fc61a
Ruby: Fix ModuleBase::get(A)Method for private methods
2022-09-21 14:00:17 +02:00
Tom Hvitved
37a2b7d0b3
Ruby: Add more call graph tests for private methods
2022-09-21 14:00:17 +02:00
Paolo Tranquilli
935d5d9619
Merge branch 'main' into redsun82/swift-ifconfigdecl-ql
2022-09-21 13:21:08 +02:00
Paolo Tranquilli
86895393e0
Merge pull request #10488 from github/alexdenisov/skip-another-cli-arg
...
Swift: skip one more unsupported CLI arg
2022-09-21 13:20:03 +02:00
Tom Hvitved
a9f2e5272f
Merge pull request #10376 from hvitved/ruby/no-ast-by-default
...
Ruby: Do not expose AST layer through `ruby.qll`
2022-09-21 13:15:30 +02:00
Michael Nebel
e53382cffa
Merge pull request #10465 from michaelnebel/csharp/integration-tests
...
C#: Integration test(s)
2022-09-21 12:24:54 +02:00
Paolo Tranquilli
76dfcad26e
Merge pull request #10508 from github/redsun82/swift-early-toposort
...
Swift: move toposort in `schema.py`
2022-09-21 12:17:53 +02:00
Paolo Tranquilli
239ec74c3a
Revert accidental file change
2022-09-21 12:16:57 +02:00
Paolo Tranquilli
69dfdf5a34
Swift: fix IfConfigDecl in QL libraries
...
This fixes `IfConfigDecl` for both the AST printer and control flow
libraries.
It turns out that the active lements of an `IfConfigDecl` are already
listed in the enclosing scope (like a `BraceStmt`), so they should not
be listed as children, and `IfConfigDecl` can be jsut a leaf in the
control flow.
2022-09-21 12:12:55 +02:00
Geoffrey White
ce979d82d9
Merge pull request #10300 from geoffw0/cleartext-perf
...
C++: Multiple minor improvements to the cpp/cleartext-* queries
2022-09-21 11:07:51 +01:00
Tom Hvitved
0064451ff0
Merge pull request #10491 from hvitved/ruby/fix-bad-join
...
Ruby: Fix bad join-order
2022-09-21 11:13:09 +02:00
Michael Nebel
d29bc683dc
C#: Integration test for 'dotnet test'.
2022-09-21 11:03:45 +02:00
Michael Nebel
a5034c5109
C#: Integration test for 'dotnet pack'.
2022-09-21 11:03:45 +02:00
Michael Nebel
5572a039b1
C#: Integration test for 'dotnet publish'.
2022-09-21 11:03:45 +02:00
Tom Hvitved
07f8b35af0
Data flow: Update documentation
2022-09-21 11:02:24 +02:00
Tom Hvitved
db8b6ac69a
Data flow: Sync files
2022-09-21 11:02:24 +02:00
Tom Hvitved
59caa977d0
Ruby: Add post-update nodes for compound arguments
2022-09-21 11:02:24 +02:00
Paolo Tranquilli
a50f3f752b
Swift: move toposort in schema.py
...
This makes the result of code generation independent of the order
in which classes are defined in the schema, and makes additional
topological sorting not required.
Being independent from schema order will be important for reviewing the
move to a pure python schema, as generated code will be left untouched.
2022-09-21 10:49:12 +02:00
Erik Krogh Kristensen
5af739d920
Merge pull request #10413 from erik-krogh/go-followMsg
...
GO: make the alert messages of taint-tracking queries more consistent
2022-09-21 10:39:27 +02:00
Tom Hvitved
1f4573cf25
Ruby: Add more field flow tests
2022-09-21 10:32:38 +02:00
Tony Torralba
9979fa3f36
Merge pull request #10501 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-09-21 09:10:09 +02:00
github-actions[bot]
84159317ee
Add changed framework coverage reports
2022-09-21 00:22:14 +00:00
Andrew Eisenberg
4faf71a966
Update section on query specifiers
2022-09-20 15:55:06 -07:00
Erik Krogh Kristensen
7e17a919ae
Merge pull request #10304 from erik-krogh/rb-followMsg
...
RB: make the alert messages of taint-tracking queries more consistent
2022-09-20 22:58:31 +02:00
erik-krogh
175d3acf4d
reword alert-message go/user-controlled-bypass to avoid using "here"
2022-09-20 22:51:35 +02:00
erik-krogh
83bedc0320
be more specific about what the source is in go/suspicious-character-in-regex, which also avoids using "here" in the alert-message
2022-09-20 22:51:35 +02:00
erik-krogh
1be14962a0
use "depends to" for a taint-tracking query
2022-09-20 22:51:35 +02:00
erik-krogh
c241185c21
avoid more instances of "this location" and "here" in alert-messages
2022-09-20 22:51:35 +02:00
erik-krogh
2602a38d94
update expected test output
2022-09-20 22:51:35 +02:00
erik-krogh
3cf5516df6
make the alert messages of taint-tracking queries more consistent
2022-09-20 22:51:35 +02:00
erik-krogh
e2a41cf49f
fix most ql/alert-message-style-violation
2022-09-20 22:51:35 +02:00
Andrew Eisenberg
58e4861b45
Merge branch 'main' into rc/3.7
2022-09-20 12:43:20 -07:00
yoff
18a8a3332d
Merge pull request #10494 from RasmusWL/tarslip-test-imports
...
Python: Fix imports for tarslip tests
2022-09-20 20:04:14 +02:00
yoff
6b589c5d5d
Merge pull request #10387 from RasmusWL/getStarArg-always-first
...
Python: `getStarArg` gives first `*args` argument
2022-09-20 20:01:07 +02:00
Geoffrey White
9ddb485405
Merge branch 'main' into cleartext-perf
2022-09-20 17:56:18 +01:00
Rasmus Wriedt Larsen
253d9cf39f
Python: Fix imports for tarslip tests
...
This doesn't change results, but makes the test-code more valid
2022-09-20 17:25:46 +02:00
Mathias Vorreiter Pedersen
b49487cf42
Merge pull request #10386 from github/redsun82/swift-do-not-extract-inactive-ifconfig-clauses
...
Swift: do not extract unresolved things from `IfConfigDecl`
2022-09-20 15:57:47 +01:00
Paolo Tranquilli
0f74674319
Merge pull request #10492 from github/redsun82/bazel-codeowners
...
Bazel: add some bazel files to `CODEOWNERS`
2022-09-20 16:50:37 +02:00
Mathias Vorreiter Pedersen
9d50fc6aa3
Merge pull request #10487 from MathiasVP/fix-identical-files-for-cpp
...
C++: Add shared files in `experimental` to `identical-files.json`.
2022-09-20 15:43:43 +01:00
Paolo Tranquilli
5df4ca808f
Bazel: add some bazel files to CODEOWNERS
2022-09-20 16:31:05 +02:00
Tom Hvitved
2677ab6b19
Ruby: Fix bad join-order
...
Before
```
Evaluated relational algebra for predicate Module#fe82a56b::lookupMethodOrConst0#2#fff#antijoin_rhs@e23c32nf with tuple counts:
118006 ~0% {3} r1 = SCAN Module#fe82a56b::getMethodOrConst#2#fff OUTPUT In.1, In.0, In.2
35267848 ~3% {4} r2 = JOIN r1 WITH project#Module#fe82a56b::getMethodOrConst#2#fff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2, Rhs.1
21883 ~0% {5} r3 = JOIN r2 WITH Module#fe82a56b::Cached::getAPrependedModule#1#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.3, Lhs.0, Lhs.1, Lhs.2
7 ~16% {3} r4 = JOIN r3 WITH Module#fe82a56b::getAncestors#1#ff ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4
return r4
```
After
```
Evaluated relational algebra for predicate Module#fe82a56b::lookupMethodOrConst0#2#fff#antijoin_rhs@839f6a1k with tuple counts:
118006 ~1% {3} r1 = SCAN Module#fe82a56b::getMethodOrConst#2#fff OUTPUT In.0, In.2, In.1
151 ~0% {4} r2 = JOIN r1 WITH Module#fe82a56b::Cached::getAPrependedModule#1#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1, Lhs.2
155 ~1% {4} r3 = JOIN r2 WITH Module#fe82a56b::getAncestors#1#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.3, Lhs.1, Lhs.2
7 ~0% {3} r4 = JOIN r3 WITH project#Module#fe82a56b::getMethodOrConst#2#fff ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.1
return r4
```
2022-09-20 16:24:39 +02:00
Ian Lynagh
6e249dad7f
Kotlin: TrapLocker: Pass the TRAP file to be opened
...
We already know what it is, as we've just locked it.
2022-09-20 15:12:58 +01:00
Erik Krogh Kristensen
0720fa75df
Merge pull request #10286 from erik-krogh/js-followMsg
...
JS: change alert messages of path queries to use the same template
2022-09-20 16:12:45 +02:00
Tony Torralba
cbb64cc8c1
Merge pull request #10352 from atorralba/atorralba/promote-template-injection
...
Java: Promote Server-side template injection from experimental
2022-09-20 16:11:58 +02:00
Ian Lynagh
2731740c67
Kotlin: TrapLocker: Remove unused isNonSourceTrapFile
2022-09-20 15:07:35 +01:00
Paolo Tranquilli
b4df557c5a
Merge branch 'main' into redsun82/swift-do-not-extract-inactive-ifconfig-clauses
2022-09-20 15:41:34 +02:00
Paolo Tranquilli
3fd8136dc7
Swift: accept test results
2022-09-20 15:37:09 +02:00
AlexDenisov
4614074d01
Merge pull request #10452 from github/alexdenisov/remove-swift-vfs
...
Swift: remove (dead) VFS related code
2022-09-20 15:36:58 +02:00
Paolo Tranquilli
d0e3edf7ad
Merge pull request #10482 from github/redsun82/swift-action-triggers
...
Swift: trigger workflows on bazel changes
2022-09-20 15:33:33 +02:00
Tom Hvitved
647397759e
Merge pull request #10336 from hvitved/ruby/call-graph-rework
...
Ruby: Rework call graph implementation
2022-09-20 15:29:40 +02:00
Paolo Tranquilli
250965b140
Swift: update extractor for TypeRepr changes
2022-09-20 15:24:51 +02:00
Mathias Vorreiter Pedersen
90f24d3e82
Merge pull request #10430 from geoffw0/cleartextmissing
...
Swift: Fix missing results in swift/cleartext-storage-database
2022-09-20 14:23:29 +01:00
Paolo Tranquilli
dfc91bb0f0
Swift: make type non optional in TypeRepr
2022-09-20 15:23:27 +02:00
Paolo Tranquilli
72a4bd3f1e
Swift: group unresolved elements and remove their tests
2022-09-20 15:22:20 +02:00
Nick Rolfe
30b54b2abe
Merge pull request #10450 from github/nickrolfe/filesystemresolver
...
Ruby: model ActionView::FileSystemResolver as a FileSystemAccess
2022-09-20 14:21:28 +01:00
Paolo Tranquilli
0e62d6f123
Swift: update extractor to new IfConfigDecl
2022-09-20 15:12:37 +02:00
Paolo Tranquilli
7ae68fcc03
Swift: rework IfConfigDecl schema
2022-09-20 15:11:58 +02:00
Alex Denisov
c020bee529
Swift: remove VFS related code
2022-09-20 15:06:25 +02:00
Alex Denisov
dafa9d24f1
Swift: skip one more unsupported CLI arg
2022-09-20 15:04:54 +02:00
Mathias Vorreiter Pedersen
74ccec75c8
C++: Sync identical files.
2022-09-20 13:37:54 +01:00
Mathias Vorreiter Pedersen
351e517786
Update config/identical-files.json
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-09-20 13:34:31 +01:00
Paolo Tranquilli
9fb4ff70b4
Merge branch 'main' into redsun82/swift-action-triggers
2022-09-20 14:23:22 +02:00
Asger F
0294444054
JS: Remove docs for the old portal-based flow summaries
2022-09-20 14:20:46 +02:00
yoff
ea743173d5
Merge pull request #8781 from yoff/python-dataflow/flow-summaries-from-scratch
...
Python dataflow: flow summaries restart
2022-09-20 14:08:31 +02:00
Mathias Vorreiter Pedersen
79654d978d
C++: Sync identical files.
2022-09-20 12:57:21 +01:00
Mathias Vorreiter Pedersen
e661c981e4
C++: Add shared files in experimental to 'identical-files.json'.
2022-09-20 12:53:43 +01:00
AlexDenisov
805aa94799
Merge pull request #10485 from github/redsun82/swift-fix-version-in-integration-tests
...
Swift: fix version in integration tests
2022-09-20 13:44:50 +02:00
Rasmus Lerchedahl Petersen
318e3290f2
Python: use "extracted" instead of "source"
...
The precedence for the use of "source" to denote elements of source code
is found in `EssaVariable::getSourceVariable` as well as in the Ruby
code base. But it clashes with the many uses of source to mean
"source of flow" found in the data flow library.
2022-09-20 13:26:04 +02:00
Erik Krogh Kristensen
38b23f1bc1
Merge pull request #10471 from erik-krogh/tooRacy
...
JS: filter out "file read after existence check" from js/file-system-race
2022-09-20 13:22:06 +02:00
Erik Krogh Kristensen
72d326126a
Merge pull request #10476 from erik-krogh/ruby-unqueryable
...
ruby: remove unused predicate from NfaUtilsSpecific
2022-09-20 13:21:44 +02:00
Geoffrey White
3573dd6728
Swift: Address review comments.
2022-09-20 12:17:21 +01:00
Paolo Tranquilli
45fc1d5cdf
Swift: fix version in integration tests
2022-09-20 12:51:48 +02:00
Chris Smowton
f826342112
Merge pull request #6246 from Marcono1234/marcono1234/annotation-improvements
...
Java: Improve and add predicates and classes for annotations
2022-09-20 11:48:29 +01:00
Rasmus Lerchedahl Petersen
9a7afa9d8d
Python: more idiomatic cartesian product
2022-09-20 12:47:56 +02:00
erik-krogh
70eced62b6
delete unused predicate that couldn't be imported from outside the folder
2022-09-20 12:40:39 +02:00
erik-krogh
8eefa4c1b0
deprecate internal predicate that was never used
2022-09-20 12:39:41 +02:00
erik-krogh
bec381a1dc
remove unused predicate from NfaUtilsSpecific.qll
2022-09-20 12:38:34 +02:00
Erik Krogh Kristensen
91f9e89e95
Merge pull request #10405 from erik-krogh/styleGuide
...
update the style guide on alert-messages
2022-09-20 12:13:32 +02:00
Erik Krogh Kristensen
cd71546915
Merge pull request #10475 from erik-krogh/go-unqueryable
...
Go: Fix source/sanitizer class that were never used
2022-09-20 12:12:33 +02:00
Erik Krogh Kristensen
d1e662dff4
Merge pull request #10472 from erik-krogh/rename
...
JS: don't mention classes that don't exist in TaintTracking.qll
2022-09-20 12:08:15 +02:00
Tony Torralba
4af29e6abf
Update java/ql/src/Security/CWE/CWE-094/TemplateInjection.qhelp
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-09-20 11:48:40 +02:00
Tony Torralba
4997f36f05
Apply suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-09-20 11:48:18 +02:00
Chris Smowton
6b9d546eaf
Merge pull request #10457 from github/smowton/fix/java-really-unique-fixedHasLocation
...
Java: really return a unique location for non-source entities
2022-09-20 10:46:45 +01:00
Mathias Vorreiter Pedersen
7c41219376
Merge pull request #10438 from MathiasVP/invalid-pointer-deref-query
...
C++: Add a `cpp/invalid-pointer-deref` query to experimental
2022-09-20 10:41:31 +01:00
Chris Smowton
14fa6d4487
Avoid deprecated Annotation.getAValue
2022-09-20 10:15:23 +01:00
AlexDenisov
addab0964f
Merge pull request #10447 from github/alexdenisov/open-interception
...
Swift: open(2) interception
2022-09-20 10:47:58 +02:00
Paolo Tranquilli
9d3039f2b1
Swift: trigger workflows on bazel changes
...
The `*.bazel*` trigger currently matches
* `.bazelrc`
* `.bazelversion`
* `WORKSPACE.bazel`
* `BUILD.bazel`
It will match `MODULE.bazel` as well when we add that.
2022-09-20 10:44:16 +02:00
Michael Nebel
eefe457c4b
Merge pull request #10238 from michaelnebel/csharp/theoremsforfree
...
C#: Theorems for Free - Model generation
2022-09-20 09:30:10 +02:00
Alex Denisov
9401eda8da
Swift: use http_archive instead of new_git_repository since it's faster
2022-09-20 08:38:27 +02:00
Alex Ford
52305da5a3
Ruby: move string getAQualifiedName() up to ConstantAccess
2022-09-19 21:03:05 +01:00
Alex Ford
d00c9ea2c8
Ruby: RBI library improvements, mostly for parameter types
2022-09-19 21:03:05 +01:00
Alex Ford
8d264e7e65
Ruby: add ConstanReadAcess#getAQualifiedName() predicate
2022-09-19 21:03:05 +01:00
Andrew Eisenberg
714e95ea57
Merge pull request #10468 from github/aeisenberg/docs-redirect
2022-09-19 12:27:04 -07:00
Tom Hvitved
01a043ddbd
Merge pull request #10464 from michaelnebel/csharp/remove-dotnet-run-support
...
C#: Remove `dotnet run` support in LUA tracer.
2022-09-19 20:25:54 +02:00
Michael Nebel
6e3bc38acf
C#: Fix minor issues in QL doc.
2022-09-19 16:03:50 +02:00
erik-krogh
0645b11cb1
ruby: remove unused predicate from NfaUtilsSpecific
2022-09-19 15:25:00 +02:00
erik-krogh
49d1e584a8
deprecate a source class that wasn't used anywhere
2022-09-19 15:07:18 +02:00
erik-krogh
f6ada6e022
use sanitizer class in the insecure-randomness query
2022-09-19 15:07:00 +02:00
Rasmus Wriedt Larsen
556e93ae68
Merge pull request #10384 from RasmusWL/callnode-getargbyname
...
Python: Allow `CallNode.getArgByName` for keyword args after `**kwargs`
2022-09-19 15:05:59 +02:00
yoff
f7cbcb2fef
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-09-19 14:52:18 +02:00
Rasmus Lerchedahl Petersen
6377e6c575
Python: move summary to Stdlib.qll
2022-09-19 14:36:36 +02:00
Rasmus Lerchedahl Petersen
f560719a88
Python: expand comment on flow summaries
2022-09-19 14:30:53 +02:00
Tom Hvitved
bb08e6f0fd
Ruby: Three call graph fixes for singleton methods
2022-09-19 14:20:12 +02:00
Tom Hvitved
d13332cff1
Ruby: Add more call graph tests
2022-09-19 14:19:25 +02:00
Rasmus Lerchedahl Petersen
da39c14e46
Python: comment out SummarizedCallableFromModel
2022-09-19 14:06:21 +02:00
Rasmus Lerchedahl Petersen
37fb27fa1c
Python: change type of LibraryCallable::getACall
...
The other callables return control flow nodes,
so it is slightly inconsistent for this to return a
data flow node, but it does make models based
on API graphs nicer.
2022-09-19 14:02:52 +02:00
Tamas Vajk
9a6b17df0e
Kotlin: Add async-await dataflow test case
2022-09-19 13:38:48 +02:00
Tamas Vajk
85d883c647
Kotlin: add test to show suspend function inconsistency between source and bytecode extraction
2022-09-19 13:38:43 +02:00
erik-krogh
58851aefd6
don't mention classes that don't exist in TaintTracking.qll
2022-09-19 13:37:06 +02:00
Tamas Vajk
a6e44ed1cf
Kotlin: extract suspend modifier and handle suspend SAM conversions
2022-09-19 13:36:28 +02:00
Tamas Vajk
3e58605e8e
Kotlin: Add tests with suspend functions
2022-09-19 13:28:20 +02:00
erik-krogh
fb5a04a71d
filter out "file read after existence check" from js/file-system-race
2022-09-19 13:26:10 +02:00
Tamas Vajk
aae8f393fe
Kotlin: Adjust test to reduce overhead of listing modifiers of lambdas
2022-09-19 13:22:00 +02:00
erik-krogh
ccae0933c7
try to parse JS files without using the supported extensions
2022-09-19 12:20:20 +02:00
erik-krogh
a16233aa7d
add failing parse test
2022-09-19 12:16:45 +02:00
Michael Nebel
d0c6837a79
C#: Do not recognize 'run' as supported dotnet command for tracing.
2022-09-19 11:37:46 +02:00
Erik Krogh Kristensen
a4cd913aea
Merge pull request #10312 from erik-krogh/fix-caseDiff
...
ensure consistent casing of names
2022-09-19 10:43:12 +02:00
Alex Denisov
3c12644ab1
Swift: add a guard around hashing to aboid use-after-destructor
2022-09-19 10:37:26 +02:00
CodeQL CI
b48808778f
Merge pull request #10264 from yoff/python/port-RaisesTuple
...
Approved by tausbn
2022-09-19 00:51:29 -07:00
CodeQL CI
ed4b64b1c4
Merge pull request #10265 from yoff/python/port-UnguardedNextInGenerator
...
Approved by tausbn
2022-09-19 00:50:52 -07:00
CodeQL CI
36f8b0554d
Merge pull request #10266 from yoff/python/port-CatchingBaseException
...
Approved by tausbn
2022-09-19 00:50:05 -07:00
Asger F
ab296d4d62
Merge pull request #10396 from asgerf/js/regexp-always-matches-fp
...
JS: Fix FP in js/regexp/always-matches
2022-09-19 09:32:00 +02:00
Andrew Eisenberg
e6eaf37e22
Add redirect for removed 'About QL packs' article
...
Note that sphinx gives an error if you have a document to build that
is not part of a toctree. In order to avoid this error and not show
the document in any toctree that users will see, I added a hidden
toctree to the redirect article.
2022-09-18 10:45:59 -07:00
Tom Hvitved
a8cc669251
Ruby: Address review comments
2022-09-18 19:34:54 +02:00
Tom Hvitved
9004e82820
Ruby: Add another call graph test
2022-09-18 19:34:00 +02:00
Mathias Vorreiter Pedersen
02076074ff
C++: Add more comments.
2022-09-18 12:48:13 +01:00
Mathias Vorreiter Pedersen
3e6576bfaf
C++: Add example of missing result.
2022-09-18 12:18:04 +01:00
Mathias Vorreiter Pedersen
d1cf688abf
C++: Fix test function naming.
2022-09-18 12:17:46 +01:00
Mathias Vorreiter Pedersen
78535dc70b
C++: Autoformat.
2022-09-18 12:02:32 +01:00
Michael Nebel
a464e5be72
C#: Address review comments.
2022-09-17 13:51:03 +02:00
Andrew Eisenberg
13d4c4a5b9
Merge pull request #10460 from github/aeisenberg/lang-spec-packs
...
Updates the library path section of the CodeQL spec
2022-09-16 15:01:43 -07:00
Andrew Eisenberg
867e31693d
Updates the library path section of the CodeQL spec
...
- Remove references to `queries.xml`. It is still supported, but we
don't want people using it.
- Add reference to `codeql-pack.yml`. It is just an alias for
`qlpack.yml` and not being used.
- Remove reference to `libraryPathDependencies` and use `dependencies`
instead.
Note that this section does not give a complete description of library
paths. That will be a part of the "Developing a codeql pack" article
that is forthcoming.
2022-09-16 14:31:17 -07:00
Andrew Eisenberg
bbf09c8f8a
Update qlpack properties descriptions
...
Makes table easier to read.
2022-09-16 12:53:27 -07:00
Tom Hvitved
29bfb4d185
Ruby: Revert changes to isLocalSourceNode and localFlowStepTypeTracker
...
Instead, use small-step type tracking, as suggested by @rasmuswl offline.
2022-09-16 19:38:26 +02:00
Chris Smowton
3fa1f17b83
Java: really return a unique location for non-source entities
...
This was always supposed to pick one of several candidate non-source locations (usually for a generic type instantiation), but since `getFile().toString()` just produces the basename of the class file actually the results would almost always tie and all of the candidate locations would be returned. Use the full class file path as a tiebreaker instead.
2022-09-16 18:23:31 +01:00
Ian Lynagh
4a4cd8a770
Merge pull request #10456 from github/post-release-prep/codeql-cli-2.10.5
...
Post-release preparation for codeql-cli-2.10.5
2022-09-16 17:18:05 +01:00
Mathias Vorreiter Pedersen
dc00643ad1
C++: More QLDoc.
2022-09-16 17:14:29 +01:00
Mathias Vorreiter Pedersen
031f20a0eb
C++: Respond to review comments.
2022-09-16 16:19:06 +01:00
Chris Smowton
0ab5d466f6
Update test expectations now that the Java extractor's nested annotation handling has been fixed
2022-09-16 15:50:54 +01:00
Anders Schack-Mulligen
1945f185ed
Apply suggestions from code review
...
Autoformat
2022-09-16 15:49:16 +01:00
Marcono1234
c8b922937b
Java: Extend AnnotationType.isATargetType documentation
2022-09-16 15:49:16 +01:00
Marcono1234
37b18914ac
Java: Add annotation tests
2022-09-16 15:49:16 +01:00
Marcono1234
8c9bdeb3be
Java: Address Annotation review comments and add change note
2022-09-16 15:49:16 +01:00
Marcono1234
659a3a7925
Java: Deprecate RetentionAnnotation.getRetentionPolicyExpression()
2022-09-16 15:49:16 +01:00
Marcono1234
90a9364b00
Java: Rename Annotation.getAnArrayValue with index
...
As mentioned by smowton during review, the predicate only has a single result
due to being restricted by the index and therefore its name should not start
with "getA...".
Also remove deprecated `getAValue(string, int)` because it never existed on
the `main` branch.
2022-09-16 15:49:16 +01:00
Marcono1234
4ef2d156c4
Java: Deprecate error-prone and rarely used annotation predicates
2022-09-16 15:49:16 +01:00
Marcono1234
e3c1b96830
Java: Fix incorrect annotation handling for SpringControllerRequestMappingGetMethod
2022-09-16 15:49:16 +01:00
Marcono1234
998aa95eae
Java: Add convenience array value Annotation predicates
2022-09-16 15:49:16 +01:00
Marcono1234
47e38952d1
Java: Improve Annotation.getAnAssociatedAnnotation
...
As suggested by smowton during review.
2022-09-16 15:49:16 +01:00
Marcono1234
fd5fdd89d9
Java: Rename Annotation.getAValue predicates for array values
...
Predicate name could lead to confusion with non-array predicate getAValue()
2022-09-16 15:49:16 +01:00
Marcono1234
b96061aa7e
Java: Rename Annotation value predicates
2022-09-16 15:49:16 +01:00
Marcono1234
c226758889
Java: Add classes and predicates for @Repeatable
2022-09-16 15:49:16 +01:00
Marcono1234
02c8fe9346
Java: Add convenience predicates for AnnotationType
2022-09-16 15:49:16 +01:00
Marcono1234
f69b6eef7a
Java: Clarify that Annotatable predicates consider inherited annotations
...
Additionally changes `hasAnnotation()` to consider inherited annotations
for consistency.
2022-09-16 15:49:16 +01:00
Marcono1234
afb7462052
Java: Clarify that Annotation value predicates have default value as result
2022-09-16 15:49:15 +01:00
Marcono1234
536f5c7f89
Java: Add Annotation value convenience predicates
2022-09-16 15:49:15 +01:00
Chris Smowton
3165babc88
Merge pull request #10445 from smowton/smowton/fix/annotaton-array-trap-label
...
Java: Add test for annotations with annotation-array-typed fields
2022-09-16 15:45:36 +01:00
github-actions[bot]
67ce442674
Post-release preparation for codeql-cli-2.10.5
2022-09-16 14:23:44 +00:00
Mathias Vorreiter Pedersen
f14df6426e
Merge pull request #10455 from geoffw0/cleartexttest
...
Swift: Update test for swift/cleartext-transmission
2022-09-16 14:59:30 +01:00
yoff
0703b88f92
Merge pull request #10404 from RasmusWL/update-range-pattern
...
Docs: Use `instanceof` in `::Range` pattern description
2022-09-16 15:18:35 +02:00
Tony Torralba
e140f04881
Merge pull request #10393 from zbazztian/uri-constructor-flow
...
Java: Model taint flow for java.net.URI constructors in tainted path queries
2022-09-16 15:10:40 +02:00
Tony Torralba
3141fdae72
Address review comments re: flow states
2022-09-16 14:48:30 +02:00
Geoffrey White
213cd94047
Swift: Update the test.
2022-09-16 13:24:37 +01:00
Anders Schack-Mulligen
e6d4e87458
Merge pull request #10416 from aschackmull/java/dispatch-confidence
...
Java: Remove low confidence dispatch for which we have a manual summary.
2022-09-16 13:36:04 +02:00
Alex Denisov
d6d8480b2a
Swift: fix internal builds
2022-09-16 12:59:43 +02:00
Chris Smowton
80968eef47
Add test for annotations with annotation-array-typed fields
2022-09-16 11:30:16 +01:00
James Fletcher
bc93a22e7d
Merge pull request #10449 from github/jf205-patch-1
...
Correct link to API docs for 'Get a CodeQL database for a repository'
2022-09-16 11:13:20 +01:00
Alex Denisov
c638789f3e
Swift: open(2) interception
2022-09-16 12:02:16 +02:00
erik-krogh
abb5c38bcd
move the guides on link-texts into a new subsection
2022-09-16 11:56:52 +02:00
erik-krogh
e3990e824d
add a line about link texts
2022-09-16 11:52:27 +02:00
Erik Krogh Kristensen
9e56128498
apply suggestions from doc review
...
Co-authored-by: hubwriter <hubwriter@github.com >
2022-09-16 11:46:06 +02:00
Anders Schack-Mulligen
9714497268
Java: Add change note.
2022-09-16 11:14:44 +02:00
Sebastian Bauersfeld
8c35803749
Add more details to change note.
2022-09-16 16:11:34 +07:00
Anders Schack-Mulligen
726772220c
Merge pull request #10191 from smowton/smowton/admin/java-implicit-this-type-tests
...
Java: Add test regarding the type of an implicit `this` expression
2022-09-16 10:58:48 +02:00
Tony Torralba
fdc8453a59
Introduce TaintedPathAdditionalTaintStep
...
Use separate configurations for tainted path and tainted path local again.
2022-09-16 10:42:15 +02:00
Nick Rolfe
b5d648a6b0
Ruby: model ActionView::FileSystemResolver as a FileSystemAccess
2022-09-16 09:24:14 +01:00
James Fletcher
8e30754356
Update download-github-database.rst
2022-09-16 09:22:32 +01:00
Tom Hvitved
ac4d4ff613
Ruby: Rework call graph implementation
2022-09-16 10:22:26 +02:00
Tom Hvitved
41c45c26bc
Ruby: Add more call graph tests, and make calls.rb interpretable by irb
2022-09-16 10:22:20 +02:00
AlexDenisov
d8b000fae3
Merge pull request #10448 from github/alexdenisov/swift-xcode-14
...
Swift: skip more unsupported CLI args (new in Xcode 14)
2022-09-16 10:08:21 +02:00
Sebastian Bauersfeld
95478f1af6
Address review comments.
2022-09-16 14:35:30 +07:00
Alex Denisov
2b12aece63
Swift: skip more unsupported CLI args (new in Xcode 14)
2022-09-16 09:24:20 +02:00
Anders Schack-Mulligen
142d9eb6ef
Merge pull request #10446 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-09-16 09:00:33 +02:00
github-actions[bot]
0e1aca547b
Add changed framework coverage reports
2022-09-16 00:23:05 +00:00
Erik Krogh Kristensen
f648dd4a2e
Merge pull request #10443 from erik-krogh/moreNames
...
QL: recognize the names from all VarDefs
2022-09-15 22:34:17 +02:00
erik-krogh
af045a025d
Merge branch 'main' into moreNames
2022-09-15 21:04:49 +02:00
Philip Ginsbach
87e782560c
Merge pull request #10439 from github/ginsbach/JavascriptUpperCaseVariables
...
JavaScript: remove upper-case variable names
2022-09-15 20:03:20 +01:00
erik-krogh
ac91b30ed0
recognize the names from all VarDefs
2022-09-15 20:48:12 +02:00
Tamás Vajk
d958c04a79
Merge pull request #9693 from raulgarciamsft/Token_validation
...
Token validation
2022-09-15 20:18:33 +02:00
Tony Torralba
c0762dfdb0
Merge pull request #10437 from github/atorralba/fix-0.3.4-changenote
...
Java: Fix wrong packages in minor analysis change note
2022-09-15 19:12:57 +02:00
Philip Ginsbach
d1df2aa457
remove upper-case variable names
2022-09-15 18:08:50 +01:00
Philip Ginsbach
0a2d0f7f68
Merge pull request #10440 from github/ginsbach/JavaUpperCaseVariables
...
Java: remove upper-case variable name
2022-09-15 18:07:51 +01:00
Mathias Vorreiter Pedersen
4482669d7e
C++: Add a new 'InvalidPointerDeref' query to experimental.
2022-09-15 17:47:15 +01:00
Mathias Vorreiter Pedersen
b8a5aa5d85
C++: Fix a couple of range analysis issues:
...
1. The new query is expecting pointer arithmetic operations to generate
range-analysis bounds, but this wasn't true on main.
2. The bounds generated by `boundFlowCond` was incorrectly inferred as
non-strict when comparing a pointers (unlike when comparing values of
integral types). This gave FPs in the new query.
This also fixes a couple of missing results in existing queries that
use the new range-analysis library.
2022-09-15 17:46:52 +01:00
Philip Ginsbach
c2bdb69476
remove upper-case variable name
2022-09-15 16:32:16 +01:00
Mathias Vorreiter Pedersen
d981f898e4
C++: Add flow states to the product dataflow library.
2022-09-15 15:54:09 +01:00
Jeroen Ketema
8b292351b7
Merge pull request #10435 from github/ginsbach/RemoveEvenMoreUpperCaseVariables
...
C++: remove more upper-case variable names
2022-09-15 16:43:50 +02:00
Chris Smowton
88644b6e76
Add change note
2022-09-15 15:35:52 +01:00
Tony Torralba
62b1091c17
Fix wrong packages in minor analysis change
2022-09-15 16:30:12 +02:00
Philip Ginsbach
26099d6ab7
remove more upper-case variable names
2022-09-15 14:36:02 +01:00
Rasmus Wriedt Larsen
0e3821d3e3
Apply suggestions from code review
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2022-09-15 15:13:08 +02:00
Tony Torralba
df5178d7ee
Merge pull request #10330 from atorralba/atorralba/implicit-pendingintents-compat-sinks
...
Java: Add Implicit PendingIntents sinks for Compat classes
2022-09-15 14:39:19 +02:00
Tony Torralba
714b37e77b
Merge pull request #10318 from atorralba/atorralba/notificationcompat-steps
...
Java: Add summaries for NotificationCompat and its inner classes
2022-09-15 14:38:39 +02:00
Geoffrey White
6b21563018
C++: Update change note.
2022-09-15 13:37:20 +01:00
Anders Schack-Mulligen
a4ae9a09f9
Java: Use MaD summaries for java.util.Hashtable.
2022-09-15 13:55:44 +02:00
Chris Smowton
5a56bb97fc
deprecated-call query: notice calls to methods of specialised generic classes
2022-09-15 12:49:12 +01:00
AlexDenisov
b8bc7fb926
Merge pull request #10434 from github/redsun82/fix-c-compilation
...
Bazel: only pass `-std=c++17` for C++ compilation
2022-09-15 13:00:07 +02:00
Paolo Tranquilli
ce6109547b
Bazel: only pass -std=c++17 for C++ compilation
2022-09-15 12:30:30 +02:00
Tom Hvitved
40241acbfc
Merge pull request #10425 from hvitved/ruby/bad-join-fix
...
Ruby: Fix bad join-order in DB upgrade script
2022-09-15 12:09:14 +02:00
Ian Lynagh
a939156ade
Merge pull request #10419 from igfoo/igfoo/unused
...
Kotlin: Remove an unused method
2022-09-15 10:57:58 +01:00
Ian Lynagh
618a5b9b8c
Merge pull request #10427 from igfoo/igfoo/werror
...
Kotlin: Compile with -Werror, and fix warnings
2022-09-15 10:57:45 +01:00
Jeroen Ketema
a20b41685e
Merge pull request #10420 from github/ginsbach/RemoveMoreUpperCaseVariables
...
remove several upper-case `NamedExpression` variable names
2022-09-15 11:50:02 +02:00
Sebastian Bauersfeld
20d78972f5
Address review comments.
2022-09-15 16:44:36 +07:00
Chris Smowton
b926bc9efa
Fix and add test for java/subtle-inherited-call involving inheritence from generic types
2022-09-14 22:17:19 +01:00
Chris Smowton
da04673cb0
Fix query java/internal-representation-exposure regarding generic callees, and add a test
2022-09-14 22:17:19 +01:00
Chris Smowton
c149754c6b
Fix java/iterator-remove-failure to handle calls to specialised generic functions
2022-09-14 22:17:19 +01:00
Chris Smowton
3bdccb38b6
Adapt inner-class-could-be-static query now that specialised methods are callable via an implicit this qualifier.
...
Previously such a call always targeted the unbound method, so we checked for an inherited method that could be a specialisation thereof; now we expect it should be directly inherited.
2022-09-14 22:17:19 +01:00
Chris Smowton
25b4d485b4
Java: Add test regarding the type of an implicit this expression
2022-09-14 22:17:19 +01:00
Geoffrey White
c3c86a79ee
Swift: Update comment.
2022-09-14 21:08:52 +01:00
James Fletcher
2503a13ddd
Merge pull request #10428 from jf205/download-db-vs-code-release
...
Cherry-pick changes from #10270 onto rc/3.7
2022-09-14 21:06:57 +01:00
James Fletcher
cdbc839f40
Update docs/codeql/codeql-cli/getting-started-with-the-codeql-cli.rst
...
Co-authored-by: Andrew Eisenberg <aeisenberg@github.com >
2022-09-14 20:52:01 +01:00
james
c383701677
add link and remove todo
2022-09-14 20:52:01 +01:00
James Fletcher
625e18aa05
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-14 20:52:01 +01:00
james
8f29c5b8b6
fix broken anchor
2022-09-14 20:52:01 +01:00
james
d18bc13f02
fix indentation
2022-09-14 20:52:01 +01:00
james
c7ec6fc2c3
mention compatibility with CLI used by GHES
2022-09-14 20:52:01 +01:00
james
72bc7ae20d
address review comments
2022-09-14 20:52:01 +01:00
James Fletcher
efd4853532
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-14 20:52:00 +01:00
james
ff98805832
delete unused reusable note
2022-09-14 20:52:00 +01:00
james
60dbfd2b2d
delete old note that refers to lgtm
2022-09-14 20:52:00 +01:00
james
9b74b8f8b9
remove link to deleted file
2022-09-14 20:52:00 +01:00
james
3321c52b6c
Add section about using the API to download dbs
2022-09-14 20:52:00 +01:00
james
c3b2d2bb5e
new screenshot
2022-09-14 20:51:53 +01:00
james
8ce4ed587e
update info about downloading dbs in vs code
2022-09-14 20:51:15 +01:00
james
64ea959c59
new screenshot
2022-09-14 20:51:03 +01:00
james
c17af8c354
update info about downloading dbs in vs code
2022-09-14 20:51:03 +01:00
Geoffrey White
dc47771937
Swift: Fix locationless results.
2022-09-14 20:43:24 +01:00
Geoffrey White
25840996f6
Swift: Use a slightly different approach to fix false positive.
2022-09-14 20:43:23 +01:00
Geoffrey White
7b96cb071a
Swift: Remove the original sink cases as they are no longer required.
2022-09-14 20:43:22 +01:00
Geoffrey White
e0100d7b98
Swift: Expand sinks and fix issue with post-update notes to catch the missing test results.
2022-09-14 20:43:22 +01:00
Geoffrey White
eb2a0af4cc
Swift: Additional test case.
2022-09-14 20:43:21 +01:00
James Fletcher
8e0a006665
Merge pull request #10270 from jf205/download-db-vs-code
...
Update documentation about downloading CodeQL databases using the VS Code extension
2022-09-14 20:35:18 +01:00
James Fletcher
b427e8aba6
Merge branch 'main' into download-db-vs-code
2022-09-14 20:22:03 +01:00
Raul Garcia
0125ecf2a8
Merge branch 'main' into Token_validation
2022-09-14 11:04:52 -07:00
Tom Hvitved
c6cd2d66f8
Update ruby/ql/lib/change-notes/2022-09-14-ruby-qll.md
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2022-09-14 20:00:34 +02:00
Tom Hvitved
5cfed75e4c
Ruby: Fix bad join-order in DB upgrade script
...
Before
```
Evaluated relational algebra for predicate #select#query#ffffff@3e1dedi5 with tuple counts:
30411461 ~0% {6} r1 = locations_default AND NOT #select#query#ffffff#antijoin_rhs(Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5)
30840645 ~4% {2} r2 = SCAN #select#query#ffff OUTPUT In.0, In.3
515559 ~1% {3} r3 = JOIN r2 WITH #select#query#ffffff#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1
515559 ~0% {5} r4 = JOIN r3 WITH locations_default ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Rhs.4, Rhs.5
2397708060 ~0% {9} r5 = JOIN r4 WITH locations_default_1023#join_rhs ON FIRST 1 OUTPUT Lhs.1, 0, Rhs.1, Lhs.2, Lhs.0, Lhs.3, Lhs.4, Rhs.2, Rhs.3
515559 ~4% {6} r6 = JOIN r5 WITH query#f0820431::body_statement#3#bff ON FIRST 3 OUTPUT Lhs.3, Lhs.4, Lhs.7, Lhs.8, Lhs.5, Lhs.6
30927020 ~0% {6} r7 = r1 UNION r6
return
```
After
```
Evaluated relational algebra for predicate #select#query#ffffff@8810e071 with tuple counts:
30411461 ~0% {6} r1 = #select#query#ffffff#shared AND NOT #select#query#ffffff#antijoin_rhs(Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5)
30840645 ~4% {2} r2 = SCAN #select#query#ffff OUTPUT In.0, In.3
515559 ~1% {3} r3 = JOIN r2 WITH #select#query#ffffff#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1
515559 ~0% {6} r4 = JOIN r3 WITH locations_default ON FIRST 1 OUTPUT Lhs.1, 0, Lhs.2, Rhs.1, Rhs.4, Rhs.5
515559 ~0% {5} r5 = JOIN r4 WITH query#f0820431::body_statement#3#bff ON FIRST 2 OUTPUT Rhs.2, Lhs.3, Lhs.2, Lhs.4, Lhs.5
515559 ~0% {6} r6 = JOIN r5 WITH locations_default ON FIRST 2 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4, Rhs.2, Rhs.3
515559 ~4% {6} r7 = JOIN r6 WITH files ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.4, Lhs.5, Lhs.2, Lhs.3
30927020 ~0% {6} r8 = r1 UNION r7
return r8
```
2022-09-14 19:27:49 +02:00
Ian Lynagh
8a5bc3b635
Kotlin: Don't use hasQuestionMark
...
1.7.0 warns:
'hasQuestionMark: Boolean' is deprecated. hasQuestionMark has
ambiguous meaning. Use isNullable() or isMarkedNullable() instead
2022-09-14 17:56:27 +01:00
Dave Bartolomeo
6a0e4805dc
Merge pull request #10418 from dbartol/dbartol/swift-fail/work
...
Add lock files for Swift packs
2022-09-14 12:01:05 -04:00
Ian Lynagh
fce111bebe
Kotlin: Compile with -Werror, and fix warnings
2022-09-14 16:42:57 +01:00
Philip Ginsbach
c5703898b0
remove upper-case NamedExpression variable names
2022-09-14 16:35:24 +01:00
Ian Lynagh
8f2a718787
Kotlin: Remove an unused method
2022-09-14 16:31:11 +01:00
James Fletcher
f3a4ba39a8
Update docs/codeql/codeql-cli/getting-started-with-the-codeql-cli.rst
...
Co-authored-by: Andrew Eisenberg <aeisenberg@github.com >
2022-09-14 16:20:07 +01:00
Andrew Eisenberg
3102a444bb
Merge pull request #10389 from github/aeisenberg/suites-docs
...
Tweak the query suites documentation
2022-09-14 08:15:28 -07:00
Jeroen Ketema
6e74c32dc6
Merge pull request #10417 from github/ginsbach/RemoveUpperCaseVariable
...
remove upper-case variable name from `HubClasses`
2022-09-14 16:50:43 +02:00
Dave Bartolomeo
c5622135a6
Add lock files for Swift packs
2022-09-14 10:21:40 -04:00
Andrew Eisenberg
3c1f67d7de
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-14 07:15:23 -07:00
Chris Smowton
1478f61897
Merge pull request #10407 from RasmusWL/go-instanceof
...
Go: Rewrite `::Range` patterns to use `instanceof`
2022-09-14 15:06:30 +01:00
Philip Ginsbach
8f7f631211
upper-case variable names are deprecated
2022-09-14 14:50:26 +01:00
Rasmus Wriedt Larsen
3d0f786247
docs: grammar fix
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2022-09-14 15:39:48 +02:00
Tom Hvitved
7ecfe8daba
Address review comments
2022-09-14 15:30:51 +02:00
Tamás Vajk
e4a712c9d6
Merge pull request #10402 from tamasvajk/kotlin-comp-args
...
Kotlin: Add integration test for compiler argument extraction
2022-09-14 15:27:18 +02:00
Tamas Vajk
16836de02b
Code quality improvment to simplify test QL
2022-09-14 15:15:06 +02:00
Tom Hvitved
40e77a0c67
Merge pull request #10415 from hvitved/code-block-fix
...
Change two ```codeql to ```ql
2022-09-14 15:07:55 +02:00
Ian Lynagh
b3b1efb1a1
Merge pull request #10414 from igfoo/igfoo/getQualifiedName
...
Java: Tweak Member.getQualifiedName()
2022-09-14 13:30:22 +01:00
Tom Hvitved
4ea1c0050b
Change two ``codeql to ``ql
2022-09-14 13:53:34 +02:00
Anders Schack-Mulligen
ba3ebeec2c
Java: Remove low confidence dispatch for which we have a manual summary.
2022-09-14 13:39:31 +02:00
Anders Schack-Mulligen
d713910714
Merge pull request #10334 from aschackmull/java/uniontypeflow
...
Java: Implement union type flow and replace ad-hoc variable tracking in dispatch
2022-09-14 13:34:28 +02:00
Tamas Vajk
a68b61f50a
Kotlin: adjust expected test results after fixing compiler argument interception
2022-09-14 13:15:29 +02:00
Tamas Vajk
6eccb5e99c
Kotlin: Add integration test to show missing compiler arguments
2022-09-14 13:15:29 +02:00
Ian Lynagh
4ac0ecbc61
Java: Mark the getQualifiedName change as breaking
2022-09-14 12:10:50 +01:00
Ian Lynagh
d735b9e6f2
Java: Format QL
2022-09-14 11:56:13 +01:00
Rasmus Lerchedahl Petersen
33b508d6e6
Python: undo change to --max-import-depth
...
This is not necessary as long as `LibraryCall` only
includes unresolved calls.
2022-09-14 12:52:27 +02:00
Ian Lynagh
fec6c35f21
Java: Accept test output for getQualifiedName change
2022-09-14 10:52:43 +01:00
Erik Krogh Kristensen
2ece9773be
Merge pull request #10410 from erik-krogh/nonAsciiRange
...
JS: don't report every non-ascii range in js/overly-large-range
2022-09-14 11:51:22 +02:00
erik-krogh
8b3ba38887
changes based on review
2022-09-14 11:49:26 +02:00
Rasmus Lerchedahl Petersen
245baa51a3
Python: rename summary map -> list_map,
...
since map resolves to a class call
also fix test expectation
2022-09-14 11:21:16 +02:00
Michael Nebel
b05a1f4f39
C#: Support for type based model generation via python script.
2022-09-14 11:16:22 +02:00
Paolo Tranquilli
d7cdeb8ac0
Merge pull request #10412 from github/revert-10399-redsun82/swift-macos-arm
...
Revert "Swift: print a helpful message on macOS ARM"
2022-09-14 11:08:24 +02:00
Michael Nebel
4e57b40c2a
C#: Update test expected output.
2022-09-14 11:06:24 +02:00
Michael Nebel
0f22828cb6
C#: Add test cases corresponding to the System.Linq.Enumerable extensions methods.
2022-09-14 11:06:23 +02:00
Michael Nebel
cdb892da43
C#: Update test expected output.
2022-09-14 11:06:23 +02:00
Michael Nebel
20cb5daeb1
C#: Add testcase for implicit set.
2022-09-14 11:06:23 +02:00
Michael Nebel
262c28b77a
C#: Update expected test output.
2022-09-14 11:06:23 +02:00
Michael Nebel
001d3571ec
C#: Restructure test cases.
2022-09-14 11:06:23 +02:00
Michael Nebel
c5949fad75
C#/Java: Rename to Typed based summary model generation.
2022-09-14 11:06:23 +02:00
Michael Nebel
5f161dfaad
C#: Update expected test output with further models.
2022-09-14 11:06:23 +02:00
Michael Nebel
055072b1c0
C#: Add more test examples.
2022-09-14 11:06:23 +02:00
Michael Nebel
1b7339aa1e
C#: Rewrite the typed based model generator.
2022-09-14 11:06:23 +02:00
Michael Nebel
2d57b7d56a
Java: Sync files.
2022-09-14 11:06:23 +02:00
Michael Nebel
d580a8a078
C#: Update expected test output.
2022-09-14 11:06:23 +02:00
Michael Nebel
372a6107d6
C#: Use typeparameter index to generate synthetic field names in summaries.
2022-09-14 11:06:23 +02:00
Michael Nebel
f6e9013435
C#: Update expected output of tests.
2022-09-14 11:06:23 +02:00
Michael Nebel
e66dce1524
C#: Update test relevant test cases.
2022-09-14 11:06:23 +02:00
Michael Nebel
bb65485497
C#: Address some review comments.
2022-09-14 11:06:23 +02:00
Michael Nebel
13a802e260
Java: Sync files and make adjusting changes.
2022-09-14 11:06:23 +02:00
Michael Nebel
dd44d71757
C#: Add Type based summary test cases and move dataflow model generation test cases.
2022-09-14 11:06:22 +02:00
Michael Nebel
c2da2a8b16
C#: Initial implementation of Type based summarymodel generation.
2022-09-14 11:06:22 +02:00
Anders Schack-Mulligen
64e2f4164d
Java: Add test for disjunctive type in call context.
2022-09-14 10:38:10 +02:00
Paolo Tranquilli
dad0e4decc
Revert "Swift: print a helpful message on macOS ARM"
2022-09-14 10:34:46 +02:00
Rasmus Lerchedahl Petersen
f83158ff8b
Python: do not stake out too much territory
2022-09-14 10:28:11 +02:00
Anders Schack-Mulligen
9f200633ca
Java: convert test to inline expectation
2022-09-14 10:17:31 +02:00
Anders Schack-Mulligen
83e7bf71d7
Java: Adjust qldoc.
2022-09-14 10:16:09 +02:00
James Fletcher
572ecf0944
Merge branch 'main' into download-db-vs-code
2022-09-14 08:58:35 +01:00
james
22eb23e95a
add link and remove todo
2022-09-14 08:48:20 +01:00
Mathias Vorreiter Pedersen
6074f22d3f
Merge pull request #10335 from github/redsun82/swift-weak-hashing-phase-1
...
Swift: first version of query targeting weak hashing
2022-09-14 08:29:47 +01:00
Tom Hvitved
5472210a92
Ruby: Add change note
2022-09-14 09:14:41 +02:00
Paolo Tranquilli
c3320a3afe
Apply suggestions from code review
...
Co-authored-by: hubwriter <hubwriter@github.com >
2022-09-14 08:21:58 +02:00
erik-krogh
88f1d2ae38
add qldocs to the ql/alert-message-style-violation query
2022-09-13 22:28:50 +02:00
Erik Krogh Kristensen
59c1ac2e8d
Apply suggestions from code review
...
Co-authored-by: Esben Sparre Andreasen <esbena@github.com >
2022-09-13 22:17:33 +02:00
erik-krogh
252394666c
sync files
2022-09-13 20:44:05 +02:00
erik-krogh
e7aef17d30
don't report every non-ascii range in js/overly-large-range
2022-09-13 20:43:52 +02:00
James Fletcher
6debbc0d3e
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-13 19:22:15 +01:00
Tom Hvitved
74eb6b2b98
Merge pull request #10400 from hvitved/ruby/singleton-class-object-scope
...
Ruby: Adjust the scope of singleton class targets
2022-09-13 20:01:21 +02:00
Tom Hvitved
fe7d01ecbe
Ruby: Update docs to reflect that import ruby is no longer used
2022-09-13 20:00:22 +02:00
Tom Hvitved
b477a4cc81
Ruby: Add missing QL docs
2022-09-13 20:00:22 +02:00
Tom Hvitved
007ab2b7ce
Ruby: Do not expose AST layer through ruby.qll
2022-09-13 19:59:56 +02:00
Raul Garcia
7572414623
Merge branch 'main' into Token_validation
2022-09-13 10:47:26 -07:00
Ian Lynagh
f807b801ce
Merge pull request #10401 from igfoo/igfoo/throw
...
Kotlin: Remove a throw statement
2022-09-13 17:41:31 +01:00
Raul Garcia
a27c427a4e
Merge branch 'main' into Token_validation
2022-09-13 09:16:32 -07:00
Andrew Eisenberg
dbd5195fec
Merge pull request #10344 from github/aeisenberg/registries-in-workspace
...
Add information about the `registries` block in `codeql-workspace.yml`
2022-09-13 08:54:30 -07:00
Tony Torralba
4708052741
Merge pull request #10408 from giper45/patch-1
...
Updated vulnerable XSS.java version
2022-09-13 17:50:47 +02:00
Raul Garcia
c63240d62c
D:\Code\tokenv2\csharp\ql\src\experimental\Security Features\JsonWebTokenHandler\JsonWebTokenHandlerLib.qll
2022-09-13 08:48:53 -07:00
Raul Garcia
1c10456e65
Merge branch 'main' into Token_validation
2022-09-13 08:44:19 -07:00
Henry Mercer
af25cf8be2
Merge pull request #10409 from github/codeql-ci/js/ml-powered-pack-release-0.3.3
...
JS: Bump version numbers of ML-powered packs after 0.3.3 release
2022-09-13 16:23:37 +01:00
Tamás Vajk
84bd8f179b
Merge pull request #10403 from tamasvajk/kotlin-rework-cast
...
Kotlin: Code quality improvements: refactor a cast
2022-09-13 17:09:13 +02:00
Andrew Eisenberg
996695dc6f
Merge pull request #10367 from github/aeisenberg/packs-docs-changes-3.7
...
Port Pack Docs changes to 3.7
2022-09-13 08:06:34 -07:00
Ian Lynagh
6a63b86f8a
Java: Member.getQualifiedName() tweaked
...
It now includes the qualified name of the declaring type.
2022-09-13 16:05:51 +01:00
Ian Lynagh
fc445736b2
Java: Use hasQualifiedName rather than getQualifiedName in ExternalAPIs
...
It's more efficient, as it doesn't require building intermediate
strings.
2022-09-13 15:58:00 +01:00
Rasmus Wriedt Larsen
2e95e25afb
Merge pull request #10406 from RasmusWL/ruby-instanceof
...
Ruby: Rewrite a few `::Range` uses to `instanceof`
2022-09-13 16:57:13 +02:00
Tony Torralba
ac46a38b9d
Update java/ql/src/Security/CWE/CWE-079/XSS.java
2022-09-13 16:49:20 +02:00
Tony Torralba
2b027709e4
Update XSS qhelp
2022-09-13 16:39:48 +02:00
AlexDenisov
aacc368228
Merge pull request #10399 from github/redsun82/swift-macos-arm
...
Swift: print a helpful message on macOS ARM
2022-09-13 16:24:38 +02:00
Henry Mercer
bc2de7ed4b
Merge branch 'main' into codeql-ci/js/ml-powered-pack-release-0.3.3
2022-09-13 15:15:56 +01:00
github-actions[bot]
b40def71b9
JS: Bump version of ML-powered library and query packs to 0.3.4
2022-09-13 14:11:16 +00:00
github-actions[bot]
e08e22ac32
JS: Bump patch version of ML-powered library and query packs
2022-09-13 14:06:57 +00:00
james
d782e6c37c
fix broken anchor
2022-09-13 15:01:16 +01:00
gx1
1c4488e7c8
Updated vulnerable XSS.java version
2022-09-13 15:58:25 +02:00
Rasmus Wriedt Larsen
ca66a29b18
Go: Rewrite ::Range patterns to use instanceof
2022-09-13 15:48:17 +02:00
Tamas Vajk
2c757c714d
Kotlin: Code quality improvements: refactor a cast
2022-09-13 15:44:54 +02:00
Rasmus Wriedt Larsen
511030df48
Ruby: Rewrite a few ::Range uses to instanceof
2022-09-13 15:44:29 +02:00
Rasmus Wriedt Larsen
6f5701f9c7
Go: Rewrite concepts to use extends ... instanceof ...
2022-09-13 15:36:16 +02:00
james
ff4b1ce913
fix indentation
2022-09-13 14:34:06 +01:00
erik-krogh
93a67101e7
add a QL-for-QL query highlighting some issues with alert-texts
2022-09-13 15:24:15 +02:00
erik-krogh
338aead8cc
add more guidance to the style-guide about alert messages
2022-09-13 15:22:43 +02:00
james
4e582debfc
mention compatibility with CLI used by GHES
2022-09-13 14:21:41 +01:00
Rasmus Wriedt Larsen
24d28e0482
Docs: Use instanceof in ::Range pattern description
...
Had to change the example away from Go, since their libs have not been
updated to use `instanceof` yet (but I'll make a PR from them shortly)
2022-09-13 15:21:15 +02:00
james
1fceeed32c
address review comments
2022-09-13 13:53:05 +01:00
Ian Lynagh
2f8151d8d2
Kotlin: Remove a throw statement
...
We have a way to carry on here, so we may as well do so
2022-09-13 13:51:00 +01:00
Erik Krogh Kristensen
46751e515c
Merge pull request #10388 from erik-krogh/exportNew
...
JS: recognize returning an instance of a class as exporting that class
2022-09-13 13:45:16 +02:00
Anders Schack-Mulligen
b8a1818422
Java: Fix test expectation.
2022-09-13 13:30:40 +02:00
Anders Schack-Mulligen
0e376b32d2
Java: extend typeflow tests to cover union types.
2022-09-13 13:30:40 +02:00
Anders Schack-Mulligen
d0f7052de2
Java: Support instanceof disjunction in union type flow.
2022-09-13 13:30:40 +02:00
Anders Schack-Mulligen
686e03e1cc
Java: Fix perf issue.
2022-09-13 13:30:40 +02:00
Anders Schack-Mulligen
c8b93e0910
Java: Replace uses of deprecated variableTrack.
2022-09-13 13:30:40 +02:00
Anders Schack-Mulligen
a8eedce8ab
Java: Replace ad-hoc variable tracking with union type flow in dispatch.
2022-09-13 13:30:40 +02:00
Anders Schack-Mulligen
6f06267892
Java: Implement union type flow.
2022-09-13 13:30:40 +02:00
Anders Schack-Mulligen
7692a9e2e7
Java: Minor TypeFlow tweaks.
2022-09-13 13:30:40 +02:00
Anders Schack-Mulligen
85d4742a01
Java: Add dispatch test showing lack of union types.
2022-09-13 13:30:40 +02:00
Asger F
d3d47a261c
JS: Accept test output again
2022-09-13 11:56:51 +02:00
Tom Hvitved
4247843a27
Ruby: Adjust the scope of singleton class targets
...
In
```rb
class << x
...
end
```
the scope of `x` is not the singleton class itself, but rather the outer scope.
2022-09-13 11:39:38 +02:00
Tom Hvitved
87db5fc6b1
Ruby: Add tests for getEnclosing{Method,Module}
2022-09-13 11:39:15 +02:00
Erik Krogh Kristensen
2739b9cfd8
Merge pull request #10390 from erik-krogh/unmentionedGuard
...
QL: add unmentioned guard class query
2022-09-13 11:04:13 +02:00
Paolo Tranquilli
9227203336
Swift: print a helpful message on macOS ARM
...
Also remove the tentative way compilation was expected to be fixed on
macOS ARM without really working.
In the future we will create universal binaries (which requires
compiling our prebuilt package for ARM as well), but until then we must
require the developer to pass `--cpu=darwin_x86_64` to the build
command when building on an ARM macOS platform like the M1. This will be
printed out explicitly now if it's not the case.
2022-09-13 11:00:47 +02:00
Erik Krogh Kristensen
86417cec34
Merge pull request #10381 from erik-krogh/protoList
...
JS: recognize a list of bad strings as a sanitizer for `js/prototype-polluting-assignment`
2022-09-13 11:00:29 +02:00
Asger F
87ab16a7af
JS: Update test expectations
2022-09-13 10:59:12 +02:00
erik-krogh
063c76b6d1
apply suggestions from review
2022-09-13 10:52:23 +02:00
Mathias Vorreiter Pedersen
7f6b400b78
Merge pull request #10366 from MathiasVP/use-use-flow-in-experimental
...
C++: Use-use flow in `experimental`
2022-09-13 09:30:48 +01:00
Asger F
eca2632a3e
JS: Add change note
2022-09-13 10:17:34 +02:00
Asger F
f411798101
JS: Fix typo in alert message
2022-09-13 10:13:34 +02:00
Asger F
b4e6fb781a
JS: Consider empty regexp to be obviously empty
2022-09-13 10:13:03 +02:00
Rasmus Lerchedahl Petersen
58cfac27d2
Python: adjust expectations to new spelling
2022-09-13 10:10:17 +02:00
erik-krogh
03a325ca31
autoformat
2022-09-13 10:06:35 +02:00
Erik Krogh Kristensen
dd5da79e46
recognize setters and getters of a class as exported
...
Co-authored-by: Asger F <asgerf@github.com >
2022-09-13 10:04:02 +02:00
Rasmus Lerchedahl Petersen
c1ab66181b
Python: format
2022-09-13 08:08:04 +02:00
erik-krogh
dd5db2e6d7
add to isSanitizerGuard
2022-09-13 07:27:51 +02:00
erik-krogh
3eb7675292
rename to DenyListInclusionGuard
2022-09-13 07:27:31 +02:00
Sebastian Bauersfeld
f95663cdfb
Java: Added change note.
2022-09-13 11:38:15 +07:00
Sebastian Bauersfeld
0468b3a361
Java: Track taint through constructor arguments of java.net.URI.
2022-09-13 11:35:04 +07:00
Raul Garcia
0df2b64355
Merge branch 'main' into Token_validation
2022-09-12 18:31:00 -07:00
Raul Garcia
9e63a3d30b
Fixing a couple of bug from PR comments
2022-09-12 18:22:13 -07:00
Rasmus Lerchedahl Petersen
03c243175b
Python: fix QL alerts
2022-09-12 23:53:42 +02:00
Andrew Eisenberg
68f0505c39
Apply suggestions from code review
2022-09-12 14:49:41 -07:00
Rasmus Lerchedahl Petersen
2e9c60de6c
Python: remove ressurected file
2022-09-12 23:38:44 +02:00
Rasmus Lerchedahl Petersen
56dcfc2161
Python: --max-import-depth=0
...
to avoid nodes in the extracted stdlib
Was there a reason for this depth to be 1?
2022-09-12 23:25:48 +02:00
Rasmus Lerchedahl Petersen
bf16e220a0
Python: adjust expectations
2022-09-12 22:43:03 +02:00
erik-krogh
a567c132c1
fix all ql/unmentioned-guard
2022-09-12 22:42:46 +02:00
erik-krogh
9446cad32e
add ql/unmentioned-guard class
2022-09-12 22:39:20 +02:00
Andrew Eisenberg
a9202b5c37
Tweak the query suites documentation
...
- Add examples to filter on `@id`
- Add examples that include regexes
- Add examples that include both lists and single elements
- Add some `import` examples
- Remove mention of `eval` since it is not a user-facing instruction
2022-09-12 13:07:32 -07:00
Rasmus Lerchedahl Petersen
e3280c8a3e
Python: handle TODO
...
although this is not actually tested,
so we may have to adjust once we use it.
But the _very_ generic implementation is modeled on the Ruby code.
2022-09-12 21:03:56 +02:00
Rasmus Lerchedahl Petersen
78d4dc3123
Python: sync files
2022-09-12 21:01:57 +02:00
Rasmus Lerchedahl Petersen
203481ad3e
Python: rearrange to minimize diff
...
also fix typo
2022-09-12 20:07:32 +02:00
Rasmus Lerchedahl Petersen
efc5cfb852
Merge branch 'main' of github.com:github/codeql into python-dataflow/flow-summaries-from-scratch
2022-09-12 19:56:16 +02:00
Arthur Baars
e07e6c9053
Merge pull request #10382 from RasmusWL/ruby-typo-fix
...
Ruby: Fix typo in QLDoc
2022-09-12 19:04:37 +02:00
Tony Torralba
f412f433bf
Add thymeleaf steps
2022-09-12 17:52:38 +02:00
Erik Krogh Kristensen
bb3753a682
Merge pull request #10317 from erik-krogh/py-unqueryable
...
PY: deprecate a bunch of unused code
2022-09-12 17:44:59 +02:00
erik-krogh
ceda5f69fc
recognize returning an instanceof of a class as exporting that class
2022-09-12 17:31:51 +02:00
Mathias Vorreiter Pedersen
6e4b3c242f
Merge pull request #10377 from geoffw0/deprecate-pointsto
...
C++: Put a warning on the PointsTo library.
2022-09-12 16:25:40 +01:00
Andrew Eisenberg
abdc79b009
Update the example codeql-workspace.yml
...
Add a better example for `registries`.
2022-09-12 08:22:51 -07:00
Andrew Eisenberg
361dba17de
Add information about the registries block in codeql-workspace.yml
2022-09-12 08:22:51 -07:00
Edward Minnix III
eadb8a3988
Merge pull request #10106 from egregius313/egregius313/android-backup-allowed
...
Java: Query to detect Android backup allowed
2022-09-12 11:14:03 -04:00
Rasmus Wriedt Larsen
41ce1c2016
Python: getStarArg gives first *args argument
...
I couldn't see any reason that we should give up altogether if there are
multiple `*args` arguments. Including the first one looks like a win to
me!
2022-09-12 17:02:31 +02:00
Mathias Vorreiter Pedersen
d2b150eaf5
C++: Fix QLDoc on the model predicates used by the new experimental use-use code.
2022-09-12 16:00:49 +01:00
Mathias Vorreiter Pedersen
bb1c088fe0
C++: Undo changes to iterator models.
2022-09-12 15:58:49 +01:00
James Fletcher
47480acba5
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-12 15:53:54 +01:00
Paolo Tranquilli
43e5abac39
Swift: do not extract unresolved things from IfConfigDecl
...
This avoids extracting things that are unresolved within an
`IfConfigDecl` instance:
* all conditions
* all inactive code blocks
This is meant to test out the hypothesis that this should solve some
extractor issues. If going through with it we should definitely change
the schema model for this.
Also, tests have not been updated and are expected to fail.
2022-09-12 16:34:28 +02:00
Cornelius Riemenschneider
a8a7909d33
Merge pull request #10364 from github/criemen/remove-legacy-tracing-specs
...
Go: Remove the legacy tracer configuration files.
2022-09-12 15:55:12 +02:00
Tamás Vajk
4569b9585f
Merge pull request #10313 from tamasvajk/kotlin-fix-vararg
...
Kotlin: Fix `vararg` extraction outside of method call
2022-09-12 15:54:50 +02:00
Tamás Vajk
ed772e54d1
Merge pull request #10328 from tamasvajk/kotlin-kfunction-fix
...
Kotlin: fix `KFunctionX.invoke` extraction
2022-09-12 15:54:33 +02:00
erik-krogh
05ef76cbca
add change-note
2022-09-12 15:41:28 +02:00
erik-krogh
87fb01d55b
apply another suggestion from doc review
2022-09-12 15:36:02 +02:00
Geoffrey White
842af4bf74
C++: Specifically suggest DataFlow as an alternative.
2022-09-12 14:25:45 +01:00
AlexDenisov
be21b26d46
Merge pull request #10045 from github/alexdenisov/swift-cwe-757
...
Swift: CWE-757: insecure TLS configuration
2022-09-12 15:25:15 +02:00
Erik Krogh Kristensen
818601b612
Merge pull request #10285 from erik-krogh/paramClass
...
ReDoS: convert RelevantState to a class in the PrefixConstruction module
2022-09-12 15:23:19 +02:00
Rasmus Lerchedahl Petersen
0f95992b2f
Python: remove NonLibraryDataFlowCallable
...
this required managing parameters and their pre-update nodes a bit
2022-09-12 15:17:29 +02:00
Rasmus Wriedt Larsen
4296ac1ac0
Python: Allow CallNode.getArgByName for keyword args after **kwargs
2022-09-12 15:03:13 +02:00
Rasmus Wriedt Larsen
03cc4a2f7a
Ruby: Fix typo in QLDoc
2022-09-12 14:35:20 +02:00
Tony Torralba
79a32f1a3e
Tainting the freemarker dataModel isn't exploitable
2022-09-12 14:22:06 +02:00
AlexDenisov
568eb3a118
Update swift/ql/src/queries/Security/CWE-757/InsecureTLS.qhelp
...
Co-authored-by: hubwriter <hubwriter@github.com >
2022-09-12 14:00:29 +02:00
erik-krogh
98243118b2
recognize a list of bad strings as a sanitizer for js/prototype-polluting-assignment
2022-09-12 13:41:07 +02:00
erik-krogh
afcb767f8d
Merge branch 'main' into js-followMsg
2022-09-12 13:21:16 +02:00
erik-krogh
6ec03d4738
apply suggestions from doc review
2022-09-12 13:16:39 +02:00
erik-krogh
bae4490620
add change-note
2022-09-12 12:12:18 +02:00
erik-krogh
80158f8035
fix some python uses of renamed features
2022-09-12 12:08:30 +02:00
Erik Krogh Kristensen
c9ea10b1ef
revise some Python names
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-09-12 12:00:57 +02:00
Tony Torralba
dd6257c757
Add security-severity
2022-09-12 11:59:01 +02:00
Tony Torralba
409a123490
Tainting the velocity context isn't exploitable
2022-09-12 11:38:29 +02:00
Erik Krogh Kristensen
3384521fb6
Merge pull request #10357 from erik-krogh/typos
...
make a shared library of the typo database
2022-09-12 11:24:03 +02:00
Erik Krogh Kristensen
cb95e8f263
Merge pull request #10351 from erik-krogh/moreMains
...
JS: find a main module in more cases
2022-09-12 11:01:17 +02:00
Arthur Baars
7ca2e4c51f
Merge pull request #9953 from aibaars/update-grammar
...
Update tree-sitter-ruby
2022-09-12 10:51:37 +02:00
Paolo Tranquilli
776df33f55
Swift: fix typos and comments in testCrypto.swift
2022-09-12 08:47:43 +02:00
Rasmus Lerchedahl Petersen
fa2da2f3ec
Python: remove NonLibraryNormalCall
...
it is not necessary to distinguish these calls,
so we remove the class from the hierarchy.
2022-09-11 22:25:29 +02:00
Mathias Vorreiter Pedersen
c988547e9c
C++: Accept test changes.
2022-09-11 18:31:53 +01:00
Rasmus Lerchedahl Petersen
895f5480c2
Python: Added recursion guard
...
to ensure that the call graph seen by type tracking
does not include summary calls resolved by type tracking.
(I tried inserting a similar test into the Ruby codebase,
and it still compiled)
To get this to compile, I had to move the resolution of summary calls
out of the data flow nodes and into the `viableCallable` predicate.
This means that we now have a potential summary call for each
cfg call node. (I tried using the base class, `DataFlowCall`, for this
but calls to `map` got identified as class calls and would no longer
be associated with a summary.)
It is possible that the "NonLIbrary"-layers the were inserted into the
hierarchy can be removed again.
2022-09-09 22:47:47 +02:00
Geoffrey White
8ac3e10896
C++: Put a warning on the PointsTo library.
2022-09-09 18:03:23 +01:00
Andrew Eisenberg
ed66388551
Port Pack Docs changes to 3.7
...
This moves the following three PRs to the 3.7 branch:
- https://github.com/github/codeql/pull/10182
- https://github.com/github/codeql/pull/10146
- https://github.com/github/codeql/pull/10105
2022-09-09 09:33:25 -07:00
Mathias Vorreiter Pedersen
6dcfe0348b
C++: Copy over the required changes to non-experimental libraries.
2022-09-09 17:26:58 +01:00
james
0e5df6c08a
delete unused reusable note
2022-09-09 17:14:26 +01:00
james
869833a95a
delete old note that refers to lgtm
2022-09-09 17:11:54 +01:00
Mathias Vorreiter Pedersen
5509562fe6
C++: Repair a few broken models that were incorrectly a pointer
...
as tainted (instead of the pointee), or vice versa. Because of
existing dataflow pointer/pointee conflation we never noticed that,
but since this PR removes those imprecisions we now need to update
these models.
2022-09-09 17:04:36 +01:00
Ed Minnix
817f12cae6
Updated expectations file with new message
...
The warning message for the `android:allowBackup` query was updated.
This updates the message in the expectations file.
2022-09-09 11:35:48 -04:00
james
f717dd6c0f
remove link to deleted file
2022-09-09 16:10:35 +01:00
james
b3a97f742d
Merge branch 'main' into download-db-vs-code
2022-09-09 16:08:08 +01:00
Ian Lynagh
c7e3051edd
Merge pull request #10239 from tamasvajk/kotlin-fix-declaration-stack
...
Kotlin: Fix declaration stack
2022-09-09 16:03:31 +01:00
james
356ca78032
Merge branch 'download-db-vs-code' of github.com:jf205/ql into download-db-vs-code
2022-09-09 15:48:22 +01:00
james
fc86347b0f
Add section about using the API to download dbs
2022-09-09 15:46:35 +01:00
james
faf1d0a5d9
new screenshot
2022-09-09 15:46:06 +01:00
james
49220a4f19
update info about downloading dbs in vs code
2022-09-09 15:46:06 +01:00
James Fletcher
f17f48d2b3
Merge branch 'main' into download-db-vs-code
2022-09-09 15:44:59 +01:00
Tamás Vajk
05fcbdd9e3
Merge pull request #10365 from tamasvajk/kotlin-fix-isUnspecialised-2
...
Kotlin: Fix `isUnspecialised` to handle generic classes inside generic methods
2022-09-09 16:27:19 +02:00
Edward Minnix III
08a17b355e
allowBackup documentation updates
...
Make error messages and descriptions clearer about application backups not being disabled, rather than focusing on `android:allowBackup` specifically.
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-09-09 09:30:49 -04:00
Mathias Vorreiter Pedersen
6d313ace2d
C++: Copy the new use-use flow code to experimental.
2022-09-09 14:20:10 +01:00
Rasmus Wriedt Larsen
89a331f186
Merge pull request #10359 from tausbn/python-clean-up-import-resolution
...
Python: Clean up module resolution
2022-09-09 15:09:43 +02:00
Tamas Vajk
b8b0fd8a74
Kotlin: Fix isUnspecialised to handle generic classes inside generic methods
2022-09-09 14:32:38 +02:00
Tony Torralba
569fad667a
Merge pull request #10360 from atorralba/atorralba/fix-taint-implicit-reads
...
Dataflow: Fix implicit reads in taint tracking when FlowStates are used
2022-09-09 14:28:39 +02:00
erik-krogh
5010f89683
move resolveMainPath into a separate helper predicate
2022-09-09 14:26:07 +02:00
Geoffrey White
6011ae9ecc
Merge branch 'main' into cleartext-perf
2022-09-09 11:40:47 +01:00
erik-krogh
6a2fa2e37d
add -dev to the codeql/typos version
2022-09-09 12:33:43 +02:00
Geoffrey White
edefda9213
C++: Make QL-for-QL happy.
2022-09-09 11:26:42 +01:00
Geoffrey White
813d166ad7
C++: Restore results in cpp/cleartext-storage-database using .
2022-09-09 11:03:29 +01:00
Cornelius Riemenschneider
bc7fcaa06f
Go: Remove the legacy tracer configuration files.
2022-09-09 11:13:01 +02:00
Tamas Vajk
3267d7c96e
Kotlin: Add test case with various nested generics
2022-09-09 11:09:50 +02:00
Paolo Tranquilli
a8a34addde
Merge branch 'main' into redsun82/swift-weak-hashing-phase-1
2022-09-09 11:07:41 +02:00
Michael Nebel
15db520a58
Merge pull request #10362 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-09-09 11:06:09 +02:00
Paolo Tranquilli
6223103bbd
Swift: add more testing to WeakSensitiveDataHashing
2022-09-09 11:02:08 +02:00
Paolo Tranquilli
fccf07c5bc
Swift: tweak qhelp file for WeakSensitiveDataHashing
2022-09-09 11:01:24 +02:00
Paolo Tranquilli
c739bbb051
Swift: bake in isProbablySafe in SensitiveExpr
...
Also restructured the code a bit in the weak hashing query.
2022-09-09 11:00:02 +02:00
erik-krogh
26d8553f6e
ensure consistent casing of names
2022-09-09 10:34:14 +02:00
Tony Torralba
1078cf091e
Add change notes for all languages
2022-09-09 10:28:36 +02:00
Tony Torralba
d748fb5648
Fix bad models, add tests for those
2022-09-09 10:08:52 +02:00
Erik Krogh Kristensen
9893650f7c
Merge pull request #8604 from erik-krogh/httpNode
...
JS: refactor most library models away from AST nodes
2022-09-09 10:04:17 +02:00
Erik Krogh Kristensen
25b988d179
Merge pull request #10356 from erik-krogh/selRandom
...
JS: add taint-step in js/insecure-randomness for selecting a random element
2022-09-09 09:59:25 +02:00
erik-krogh
1ec77136ec
depend on an explicit version of the typo database
2022-09-09 08:37:38 +02:00
github-actions[bot]
ea1cdf90a1
Add changed framework coverage reports
2022-09-09 00:21:07 +00:00
Taus
5ce60d028d
Python: Remove ImportStar import.
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-09-08 22:01:58 +02:00
Edward Minnix III
83c8e22225
Apply suggestions from documentation review
...
Co-authored-by: Ben Ahmady <32935794+subatoi@users.noreply.github.com >
2022-09-08 15:55:00 -04:00
erik-krogh
aee72357b8
find a main module in more cases
2022-09-08 20:21:31 +02:00
Tony Torralba
6413de6c20
Add change note
2022-09-08 17:38:26 +02:00
Tony Torralba
fb13e7f307
Docs changes
2022-09-08 17:38:25 +02:00
Tony Torralba
e311155acd
Use InlineExpectationsTest
2022-09-08 17:38:25 +02:00
Tony Torralba
b68e6669b8
Refactor TemplateInjection libraries
2022-09-08 17:38:25 +02:00
Tony Torralba
c9728098ef
Generate stubs, adapt tests
2022-09-08 17:38:21 +02:00
Tony Torralba
7db1eb98f5
Sync files
2022-09-08 17:32:03 +02:00
Tony Torralba
1b87167d96
Add implicit reads for FlowState sinks and steps
2022-09-08 17:26:59 +02:00
Tony Torralba
d5f101d7e6
Add implicit read FlowState test
2022-09-08 17:19:39 +02:00
Robert Marsh
0feeafd0ac
Merge pull request #10339 from MathiasVP/dont-use-get-unique-id-in-range-analysis
...
C++: Don't use `getUniqueId` in range analysis
2022-09-08 11:13:43 -04:00
Taus
366c574308
Python: Move import logic into its own module
2022-09-08 14:52:08 +00:00
Ed Minnix
59909751ae
Change allowBackup tests to use qlref test format
...
Due to some limitations of comments in XML, it is simpler to implement
the `android:allowBackup` tests using the qlref/expectations test format.
2022-09-08 10:34:17 -04:00
Ed Minnix
e69a8269ad
Move CleartextStorage test files into separate dir
...
Move the files for the CleartextStorage tests into their own directory
to avoid issues with extraction
2022-09-08 10:33:05 -04:00
Mathias Vorreiter Pedersen
594c40a375
Merge pull request #10355 from MathiasVP/fix-unequalIntegralSsa-standard-order
...
C++: Avoid bad standard order in range analysis
2022-09-08 14:58:44 +01:00
erik-krogh
88f295fbb1
make a shared library of the typo database
2022-09-08 15:49:43 +02:00
Tom Hvitved
b3653cc3d0
Merge pull request #10216 from hvitved/ssa/shared-lib
...
SSA: Create a new `codeql/shared-ssa` library pack and move implementation there
2022-09-08 15:39:29 +02:00
Tom Hvitved
e3948e6683
Merge pull request #10354 from hvitved/ruby/convert-flow-test
...
Ruby: Convert data-flow test to use inline test expectations
2022-09-08 15:20:58 +02:00
erik-krogh
a21a4275f3
add taint-step in js/insecure-randomness for selecting a random element
2022-09-08 15:00:00 +02:00
Mathias Vorreiter Pedersen
f119b50c2f
C++: Predicate factoring to prevent a bad standard order.
2022-09-08 13:55:27 +01:00
Ian Lynagh
12ca801ecf
Merge pull request #10350 from github/release-prep/2.10.5
...
Release preparation for version 2.10.5
2022-09-08 13:38:47 +01:00
Tom Hvitved
46127f9f59
Ruby: Convert data-flow test to use inline test expectations
2022-09-08 14:32:21 +02:00
Tamas Vajk
824ba6ed2a
Kotlin: Catch exception thrown by kotlinc
2022-09-08 14:09:18 +02:00
github-actions[bot]
a9d80a5a48
Release preparation for version 2.10.5
2022-09-08 11:35:54 +00:00
erik-krogh
a35fe1ffab
Merge branch 'main' into js-followMsg
2022-09-08 13:09:15 +02:00
Taus
8b8e74cc9a
Merge pull request #10314 from RasmusWL/revert-alert-msgs-change
2022-09-08 13:00:47 +02:00
Asger F
df90b99b67
Merge pull request #10348 from RasmusWL/ruby-fix
...
Ruby: Fix ActiveResource HTTP client request modeling
2022-09-08 12:59:27 +02:00
Erik Krogh Kristensen
57bf92a70c
Merge pull request #10347 from erik-krogh/mermaid
...
JS: add a markdown step through the `mermaid` library
2022-09-08 12:41:58 +02:00
Rasmus Wriedt Larsen
978c165cf4
Ruby: Fix ActiveResource HTTP client request modeling
...
This was a conflict between the merge of
https://github.com/github/codeql/pull/9974 and
https://github.com/github/codeql/pull/10114
2022-09-08 12:14:18 +02:00
Rasmus Wriedt Larsen
1d834799a2
Merge pull request #10114 from RasmusWL/shared-http-client-request
...
Ruby/Python: Shared HTTP client request concept
2022-09-08 11:58:06 +02:00
Jeroen Ketema
9a923d8239
Merge pull request #10311 from jketema/more-builtins
...
C++: Support more builtin operations
2022-09-08 11:55:22 +02:00
Ian Lynagh
b62193d4bf
Merge pull request #10333 from igfoo/igfoo/extractStaticInitializer2
...
Kotlin: Remove a cast from extractStaticInitializer
2022-09-08 10:51:36 +01:00
Tamas Vajk
56ef1739a3
Kotlin: fix KFunctionX.invoke extraction
2022-09-08 10:49:10 +02:00
Tamas Vajk
fdf3488500
Kotlin: Add test with extraction error due to missing base class of KFunctionX
2022-09-08 10:49:01 +02:00
Alex Denisov
a8a2c9e212
Swift: CWE-757: update severity
2022-09-08 10:40:16 +02:00
Alex Denisov
d455a557be
Swift: CWE-757: update docs and user facing text
2022-09-08 10:31:23 +02:00
Tom Hvitved
ac307137ad
Merge pull request #10341 from hvitved/ruby/inline-getavaluereachablefromsource
...
Ruby: Inline `getAValueReachableFromSource`
2022-09-08 10:20:43 +02:00
Jeroen Ketema
6330be3902
C++: Update DB scheme stats file
2022-09-08 10:06:57 +02:00
Jeroen Ketema
04000be050
C++: Add DB scheme upgrade and downgrade scripts
2022-09-08 10:06:57 +02:00
Jeroen Ketema
1140d27bda
C++: Add tests for newly supported builtin operations
2022-09-08 10:06:57 +02:00
Jeroen Ketema
2410321acf
C++: Add change note for newly supported builtin operations
2022-09-08 10:06:57 +02:00
Jeroen Ketema
23b9b07f28
C++: Support more builtin operations
2022-09-08 10:06:57 +02:00
Alex Denisov
d18ad665b6
Swift: CWE-757: Insecure TLS configuration
2022-09-08 09:34:04 +02:00
Michael Nebel
e265b07a93
Merge pull request #10127 from michaelnebel/csharp/clearscontent
...
C#: Replace clears content with CSV summaries.
2022-09-08 09:26:08 +02:00
Erik Krogh Kristensen
9534f31eac
Merge pull request #10343 from erik-krogh/spreadFunction
...
JS: recognize calls to `Function` when spread arguments are used
2022-09-08 09:25:10 +02:00
erik-krogh
0407198dd2
add a markdown step through the mermaid library
2022-09-08 09:23:45 +02:00
Tony Torralba
2681b3d032
Merge pull request #10345 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-09-08 09:15:21 +02:00
Asger F
ada72b865f
Merge pull request #10332 from asgerf/js/type-confusion-bugfix
...
JS: bugfixes in TypeThroughThroughParameterTampering
2022-09-08 09:02:16 +02:00
Harry Maclean
30c9bea8b3
Merge pull request #9974 from hmac/hmac/active-resource
...
Ruby: Model ActiveResource
2022-09-08 07:44:59 +01:00
github-actions[bot]
7e72f53631
Add changed framework coverage reports
2022-09-08 00:21:30 +00:00
Mathias Vorreiter Pedersen
417b2152d8
Merge pull request #10319 from geoffw0/cleartextbarrier
2022-09-08 00:30:57 +01:00
erik-krogh
6447234428
recognize calls to Function where spread arguments are used
2022-09-07 22:55:51 +02:00
erik-krogh
e829387cdb
add failing test for call the Function with a spread argument
2022-09-07 22:54:21 +02:00
Mathias Vorreiter Pedersen
7062263885
C++: Accept test changes.
2022-09-07 21:11:52 +01:00
Tom Hvitved
0070662072
Ruby: Inline getAValueReachableFromSource
2022-09-07 20:28:38 +02:00
Mathias Vorreiter Pedersen
a052614dbf
C++: Two fixes to ensure we don't use getUniqueId in the new range analysis library. (1) don't use it to rank basic blocks, and (2) don't use it in 'toString' on bounds.
2022-09-07 18:45:43 +01:00
Ed Minnix
09b723fc6d
Formatting fixes for allowBackup tests
2022-09-07 13:30:19 -04:00
Andrew Eisenberg
144a0455d8
Merge pull request #10146 from github/aeisenberg/remove-db-upgrades-doc
...
Remove upgrade database docs
2022-09-07 09:49:26 -07:00
Mathias Vorreiter Pedersen
76d433d4ee
Merge pull request #9997 from rdmarsh2/rdmarsh2/cpp/product-flow
...
C++: Experimental product flow library
2022-09-07 17:34:39 +01:00
Ed Minnix
c69a2be976
Moved allowBackup query logic to allowsBackup pred
2022-09-07 12:08:25 -04:00
Ed Minnix
5206c792b0
Additional Unit tests for the allowBackup query
2022-09-07 12:07:48 -04:00
Andrew Eisenberg
fb8a0fc36f
Merge pull request #10182 from github/aeisenberg/codeql-workspace-docs
...
Add docs for codeql workspaces
2022-09-07 08:46:56 -07:00
Mathias Vorreiter Pedersen
e37848ec6d
C++: Remove 'IRConfiguration' since we no longer generate bad IR for range analysis.
2022-09-07 16:39:45 +01:00
Mathias Vorreiter Pedersen
86259ced97
Merge branch 'main' into rdmarsh2/cpp/product-flow
2022-09-07 16:38:42 +01:00
Robert Marsh
55a10d99b4
Merge pull request #10305 from MathiasVP/ql-workaround-for-missing-decl-entries
...
C++: Synthesize `DeclarationEntry`s for IR construction
2022-09-07 11:34:28 -04:00
Tamás Vajk
b129c4098d
Merge pull request #10278 from tamasvajk/kotlin-reified-enum
...
Kotlin: Extract error expression for `enumValues<T>` calls
2022-09-07 17:33:08 +02:00
Andrew Eisenberg
a065974fb8
Merge branch 'aeisenberg/remove-db-upgrades-doc' into aeisenberg/codeql-workspace-docs
2022-09-07 08:10:14 -07:00
Andrew Eisenberg
059d32089e
Merge branch 'main' into aeisenberg/remove-db-upgrades-doc
2022-09-07 08:07:39 -07:00
Andrew Eisenberg
bc17d061e7
Merge pull request #10105 from github/aeisenberg/about-codeql-packs
...
Merge and update `about-ql-packs` with `about-codeql-packs`
2022-09-07 08:05:09 -07:00
Mathias Vorreiter Pedersen
7833de19b5
Merge branch 'main' into rdmarsh2/cpp/product-flow
2022-09-07 16:00:43 +01:00
Robert Marsh
e174123c43
Merge pull request #10337 from MathiasVP/fix-cartesian-product-in-range-analysis
...
C++: Remove CP in `getAPhiInput`
2022-09-07 10:59:27 -04:00
Paolo Tranquilli
a5233c0d01
Swift: fix @id
2022-09-07 16:17:45 +02:00
Mathias Vorreiter Pedersen
ddeae090a3
C++: Remove CP.
2022-09-07 15:11:16 +01:00
Paolo Tranquilli
19b13ee4e3
Swift: first draft of query targeting weak hashing
2022-09-07 15:58:35 +02:00
Mathias Vorreiter Pedersen
011d15aca3
C++: Accept test changes.
2022-09-07 14:56:08 +01:00
Edward Minnix III
f6c8144eed
Update java/ql/src/Security/CWE/CWE-312/AllowBackupAttributeEnabled.ql
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-09-07 09:46:36 -04:00
Edward Minnix III
9ddfcf935b
Update java/ql/src/change-notes/2022-08-18-android-allowbackup-query.md
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-09-07 09:46:16 -04:00
Dave Bartolomeo
950445500a
Merge pull request #10321 from MathiasVP/speedup-using-expired-stack-address-2
...
C++: Speedup 'cpp/using-expired-stack-address' by avoiding a large ne…
2022-09-07 09:33:20 -04:00
Tamas Vajk
2728517c7f
Improve error handling
2022-09-07 15:31:23 +02:00
Tamas Vajk
0f967060e5
Fix merge conflict
2022-09-07 15:24:25 +02:00
Tamas Vajk
acac5fe4fd
Improve code quality
2022-09-07 15:21:12 +02:00
Tamas Vajk
7f7cb2c579
Kotlin: refactor declaration stack to handle file as declaration parent
2022-09-07 15:21:11 +02:00
Tamas Vajk
25977778a2
Kotlin: Fix duplicate field entry in declaration stack
2022-09-07 15:21:11 +02:00
Tamas Vajk
0c257a1b78
Kotlin: add test for incorrect declaration stack
2022-09-07 15:21:10 +02:00
Ian Lynagh
bf6e988fcd
Merge pull request #10331 from igfoo/igfoo/extractConstructorCall3
...
Kotlin: Remove a cast from extractConstructorCall
2022-09-07 14:01:40 +01:00
Asger F
6806bc1da4
JS: Expand test case
2022-09-07 14:18:01 +02:00
Asger F
6b2ebcce3a
Merge pull request #10276 from asgerf/mad-typedef-entry-points
...
Add TypeModel hook for adding MaD type-defs from CodeQL
2022-09-07 14:14:48 +02:00
Tamas Vajk
f84e62e16b
Add todo comment based on PR review
2022-09-07 13:47:28 +02:00
Ian Lynagh
b2c83ae69b
Kotlin: Remove a cast from extractStaticInitializer
2022-09-07 12:46:26 +01:00
Asger F
5c12780b1c
JS: Change note
2022-09-07 13:45:38 +02:00
Asger F
d31b59e61d
JS: Call super in isBarrier() override
2022-09-07 13:40:30 +02:00
Asger F
e3c84eefc1
JS: Correctly recognize Array.isArray calls
2022-09-07 13:39:52 +02:00
Asger F
3184ddb38a
JS: Fix test case
2022-09-07 13:39:51 +02:00
Ian Lynagh
159ee99b6d
Kotlin: Remove a cast from extractConstructorCall
2022-09-07 12:29:24 +01:00
Tony Torralba
cd61bd0606
Move files from experimental
2022-09-07 13:13:40 +02:00
Tamás Vajk
3410dd589d
Merge pull request #9783 from tamasvajk/feature/kotlin-stdlib-mad
...
Kotlin: Add MaD for stdlib
2022-09-07 12:57:23 +02:00
Tamás Vajk
5c37430031
Merge pull request #10329 from tamasvajk/kotlin-type-access-todo
...
Kotlin: Add todo comment describing type access extraction inconsistency
2022-09-07 12:56:54 +02:00
erik-krogh
79a048968e
make the alert messages of taint-tracking queries more consistent
2022-09-07 12:22:50 +02:00
Rasmus Lerchedahl Petersen
1649ec7cd7
Python: Describe current naming scheme
...
In the hope that this will enable a better one.
It looks like
- type tracking should currently be mutually recursive with data flow
(this needs investigation)
- type tracking already supports special methods
(we should probably have a test for this)
2022-09-07 12:18:42 +02:00
Mathias Vorreiter Pedersen
e0a5d18d7d
C++: Respond to Schack feedback.
2022-09-07 11:16:35 +01:00
Mathias Vorreiter Pedersen
5ce47d97b2
Merge branch 'main' into rdmarsh2/cpp/product-flow
2022-09-07 11:14:42 +01:00
Ian Lynagh
89fc84d29a
Merge pull request #10322 from igfoo/igfoo/arrays2
...
Kotlin: Rewrite array type extraction
2022-09-07 10:45:33 +01:00
Ian Lynagh
6bee9d8dee
Merge pull request #10323 from igfoo/igfoo/extractPropertyReference
...
Kotlin: Remove a cast from extractPropertyReference
2022-09-07 10:44:17 +01:00
Ian Lynagh
67f8c8215c
Merge pull request #10325 from igfoo/igfoo/getDeclaringTypeArguments2
...
Kotlin: Remove a cast from getDeclaringTypeArguments
2022-09-07 10:44:02 +01:00
Ian Lynagh
b4b52b9074
Merge pull request #10324 from igfoo/igfoo/extractConstructorCall2
...
Kotlin: Remove a cast from extractConstructorCall
2022-09-07 10:43:54 +01:00
Ian Lynagh
4a8d08e21f
Merge pull request #10326 from igfoo/igfoo/useClassSource
...
Kotlin: Remove some redundant code
2022-09-07 10:43:42 +01:00
Tony Torralba
8e0b4892ee
Add Implicit PendingIntents sinks for Compat classes
2022-09-07 11:04:22 +02:00
Tamas Vajk
07038d0b3a
Fix QL formatting
2022-09-07 10:48:22 +02:00
Tamas Vajk
2a529cf385
Kotlin: Add todo comment describing type access extraction inconsistency
2022-09-07 10:31:41 +02:00
Rasmus Lerchedahl Petersen
565378031d
Python: remember to import the new framework
...
I think it should perhaps not be mentioned in `frameworks.rst`
2022-09-07 10:24:58 +02:00
Rasmus Lerchedahl Petersen
0cfb49102b
Python: fix non-US spelling
2022-09-07 09:30:42 +02:00
Anders Schack-Mulligen
95a9faf1f9
Merge pull request #10327 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-09-07 09:27:32 +02:00
Tamás Vajk
b1e0d73de8
Merge pull request #10297 from tamasvajk/kotlin-fix-kotlin-to-java-fn-names
...
Kotlin: Lookup getter methods based on special JVM method mapping
2022-09-07 08:56:19 +02:00
Tom Hvitved
987870bb62
Merge pull request #10315 from hvitved/ruby/parameter-match-join
...
Ruby: Fix bad join in `parameterMatch`
2022-09-07 08:43:15 +02:00
erik-krogh
283c711de9
deprecate unused predicate inside the essa module
2022-09-07 07:40:04 +02:00
erik-krogh
1cbf28358c
deprecate unused code inside the points-to library
2022-09-07 07:39:16 +02:00
erik-krogh
46b7aa92ae
deprecate predicates in protocols.qll that were only retained for backwards compatibility
2022-09-07 07:37:51 +02:00
github-actions[bot]
6f4806361b
Add changed framework coverage reports
2022-09-07 00:18:47 +00:00
Rasmus Lerchedahl Petersen
b2fbbc6ac5
Python: add a flow summary
...
we could consider adding non-value-preserving flow from input to output
2022-09-06 21:29:58 +02:00
Andrew Eisenberg
65c2477409
Add reference to Source Dependencies section
2022-09-06 11:53:17 -07:00
Andrew Eisenberg
3f7a34de94
Merge branch 'aeisenberg/about-codeql-packs' into aeisenberg/codeql-workspace-docs
2022-09-06 11:48:11 -07:00
Andrew Eisenberg
137b068e4c
Move Source Dependencies description to its own section
2022-09-06 11:46:47 -07:00
Ed Minnix
dca4cd221a
Documentation cleanup for allowBackup query
2022-09-06 14:35:11 -04:00
Andrew Eisenberg
9e6e37a223
Add reference to codeql-pack.lock.yml in test packs
2022-09-06 11:33:19 -07:00
Ed Minnix
0a83cedeb7
Unit tests for android:allowBackup query
2022-09-06 13:52:43 -04:00
Asger F
0cc3b8a9ec
JS: Update test output
2022-09-06 18:48:14 +02:00
Rasmus Lerchedahl Petersen
f6d807aec0
Python: Add summary test append_to_list
2022-09-06 18:42:32 +02:00
Ian Lynagh
8a5cb11014
Kotlin: Remove some redundant code
...
useClassSource already checks to see if it is given an anonymous object,
and behaves accordingly.
2022-09-06 17:30:04 +01:00
Ian Lynagh
4a8960607d
Kotlin: Remove a cast from getDeclaringTypeArguments
2022-09-06 17:26:15 +01:00
Ian Lynagh
bd5eb1f0ac
Kotlin: Remove a cast from extractConstructorCall
2022-09-06 17:23:33 +01:00
Ian Lynagh
d18d5b5cf4
Kotlin: Remove a cast from extractPropertyReference
2022-09-06 17:19:28 +01:00
Taus
3bb7e28712
Merge pull request #10176 from RasmusWL/import-problem
...
Python: Add testcase for import problem
2022-09-06 18:12:37 +02:00
Ian Lynagh
5c3d6cedfa
Kotlin: Rewrite array type extraction
...
It's now simpler, and doesn't require we ask the Kotlin compiler to
build as many types for us.
2022-09-06 17:02:43 +01:00
Rasmus Lerchedahl Petersen
744fbf0c1b
Python: qldoc for inject
2022-09-06 17:46:14 +02:00
Rasmus Lerchedahl Petersen
67710eaed7
Python: Comment to highlight convention
2022-09-06 17:43:34 +02:00
Rasmus Lerchedahl Petersen
a496d10126
Python: qldoc to highlight source code aspect
2022-09-06 17:39:20 +02:00
Rasmus Lerchedahl Petersen
e7400e90e5
Python: add qldoc
2022-09-06 17:29:27 +02:00
Rasmus Lerchedahl Petersen
4cd41c24c7
Python: remove comments and start design document
2022-09-06 17:23:40 +02:00
Rasmus Lerchedahl Petersen
67c3a9b2f4
Python: resolve library calls in the CFG
...
rather than in the AST
2022-09-06 17:00:28 +02:00
Tony Torralba
ff731f1d83
Merge pull request #10138 from atorralba/atorralba/contentresolver-summaries
...
Java: Add summaries for ContentResolver and adjacent classes
2022-09-06 16:28:28 +02:00
Mathias Vorreiter Pedersen
d6b8f25312
C++: Add more tests.
2022-09-06 15:22:10 +01:00
Tony Torralba
c0dd9dd5d5
Merge pull request #10249 from atorralba/atorralba/regex-dot-bypass-docs
...
Java: Documentation fixes in the "Permissive dot regex" experimental query
2022-09-06 16:18:35 +02:00
Anders Schack-Mulligen
b84dca92cf
Merge pull request #10240 from aschackmull/java/scc-typeflow
...
Java: Support SCCs in TypeFlow.
2022-09-06 15:43:20 +02:00
Mathias Vorreiter Pedersen
9745073024
C++: Speedup 'cpp/using-expired-stack-address' by avoiding a large negation.
2022-09-06 14:33:33 +01:00
Geoffrey White
d1867b9716
Merge pull request #10284 from geoffw0/stringlengthcleanup
...
Swift: Improve swift/string-length-conflation
2022-09-06 14:07:02 +01:00
Asger F
e8864d072d
JS: Remove stray module DF export
2022-09-06 15:06:33 +02:00
Asger F
95c60858d4
Export as DataFlow instead of DF
2022-09-06 15:02:48 +02:00
Geoffrey White
d0cda04909
Swift: Clearer, possibly more efficient implementation.
2022-09-06 13:48:04 +01:00
Tony Torralba
b745b5ab71
Add models for androidx.core.app.NotificationCompat
2022-09-06 14:43:13 +02:00
Geoffrey White
0741266cea
Swift: Switch from isSanitizerIn to isSanitizer.
2022-09-06 13:37:49 +01:00
Geoffrey White
8281d92e71
Swift: Add barriers for encryption.
2022-09-06 13:37:49 +01:00
Geoffrey White
9683a95162
Swift: Add a few more test cases.
2022-09-06 13:37:48 +01:00
Tom Hvitved
f448965953
Merge pull request #10294 from hvitved/csharp/integration-tests
...
C#: Add `dotnet build` integration test
2022-09-06 14:35:17 +02:00
Rasmus Lerchedahl Petersen
e5f087518e
Python: stay in control flow layer
2022-09-06 14:16:48 +02:00
Anders Schack-Mulligen
6ffaa6918a
Apply suggestions from code review
2022-09-06 14:11:48 +02:00
Anders Schack-Mulligen
bc57d87303
Java: Address comments.
2022-09-06 13:59:54 +02:00
Tom Hvitved
0353b3ebfc
Merge pull request #10308 from github/rc/3.7
...
Merge `rc/3.7` into `main`
2022-09-06 13:32:00 +02:00
Tamas Vajk
57f50725ba
Revert formatting change
2022-09-06 13:28:38 +02:00
Tamas Vajk
bbf4563cfe
Apply review findings
2022-09-06 13:25:12 +02:00
Tom Hvitved
b2c38b37de
Merge pull request #10296 from hvitved/ruby/call-graph-missing-singletons
...
Ruby: Add missing edges to the call graph for singleton methods
2022-09-06 13:23:24 +02:00
Tom Hvitved
66df44f8c9
Merge pull request #10310 from hvitved/csharp/docs/shared-compilation
...
Docs: No longer mention required `/p:UseSharedCompilation=false`
2022-09-06 13:20:59 +02:00
Tom Hvitved
8b8a662c76
Ruby: Fix bad join in parameterMatch
...
Before
```
Evaluated relational algebra for predicate DataFlowDispatch#36b84300::parameterMatch#2#ff@281bdfu5 with tuple counts:
23338949 ~0% {2} r1 = JOIN DataFlowDispatch#36b84300::Cached::TParameterPosition#f WITH DataFlowDispatch#36b84300::Cached::TArgumentPosition#f CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0
65011 ~0% {2} r2 = JOIN r1 WITH DataFlowDispatch#36b84300::Cached::TAnyParameterPosition#f ON FIRST 1 OUTPUT Lhs.0, Lhs.1
65010 ~0% {2} r3 = r2 AND NOT DataFlowDispatch#36b84300::Cached::TSelfArgumentPosition#f(Lhs.1)
23338949 ~0% {2} r4 = JOIN DataFlowDispatch#36b84300::Cached::TParameterPosition#f WITH DataFlowDispatch#36b84300::Cached::TArgumentPosition#f CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0
359 ~3% {2} r5 = JOIN r4 WITH DataFlowDispatch#36b84300::Cached::TAnyArgumentPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
358 ~3% {2} r6 = r5 AND NOT DataFlowDispatch#36b84300::Cached::TSelfParameterPosition#f(Lhs.0)
65368 ~0% {2} r7 = r3 UNION r6
65011 ~0% {2} r8 = JOIN r1 WITH DataFlowDispatch#36b84300::Cached::TSelfParameterPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
1 ~0% {2} r9 = JOIN r8 WITH DataFlowDispatch#36b84300::Cached::TSelfArgumentPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
65011 ~0% {2} r10 = JOIN r1 WITH DataFlowDispatch#36b84300::Cached::TBlockParameterPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
1 ~0% {2} r11 = JOIN r10 WITH DataFlowDispatch#36b84300::Cached::TBlockArgumentPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
65011 ~3% {2} r12 = JOIN r1 WITH DataFlowDispatch#36b84300::Cached::THashSplatParameterPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
1 ~0% {2} r13 = JOIN r12 WITH DataFlowDispatch#36b84300::Cached::THashSplatArgumentPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
2 ~0% {2} r14 = r11 UNION r13
3 ~0% {2} r15 = r9 UNION r14
65371 ~0% {2} r16 = r7 UNION r15
65011 ~0% {2} r17 = JOIN r1 WITH DataFlowDispatch#36b84300::Cached::TAnyKeywordParameterPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
1645 ~1% {2} r18 = JOIN r17 WITH DataFlowDispatch#36b84300::Cached::TKeywordArgumentPosition#ff_1#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0
359 ~0% {2} r19 = JOIN r4 WITH DataFlowDispatch#36b84300::Cached::TAnyKeywordArgumentPosition#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0
320 ~0% {2} r20 = JOIN r19 WITH DataFlowDispatch#36b84300::Cached::TKeywordParameterPosition#ff_1#join_rhs ON FIRST 1 OUTPUT Lhs.0, Lhs.1
1965 ~1% {2} r21 = r18 UNION r20
20803520 ~1% {3} r22 = JOIN r1 WITH DataFlowDispatch#36b84300::Cached::TKeywordParameterPosition#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
320 ~0% {2} r23 = JOIN r22 WITH DataFlowDispatch#36b84300::Cached::TKeywordArgumentPosition#ff ON FIRST 2 OUTPUT Lhs.2, Lhs.1
2145363 ~0% {3} r24 = JOIN r1 WITH DataFlowDispatch#36b84300::Cached::TPositionalParameterPosition#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
33 ~0% {2} r25 = JOIN r24 WITH DataFlowDispatch#36b84300::Cached::TPositionalArgumentPosition#ff ON FIRST 2 OUTPUT Lhs.2, Lhs.1
65011 ~0% {3} r26 = JOIN r1 WITH DataFlowDispatch#36b84300::Cached::TPositionalParameterLowerBoundPosition#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Rhs.1
63361 ~0% {4} r27 = JOIN r26 WITH DataFlowDispatch#36b84300::Cached::TPositionalArgumentPosition#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2, Rhs.1
63360 ~0% {4} r28 = SELECT r27 ON In.3 >= In.2
63360 ~0% {2} r29 = SCAN r28 OUTPUT In.0, In.1
63393 ~0% {2} r30 = r25 UNION r29
63713 ~0% {2} r31 = r23 UNION r30
65678 ~0% {2} r32 = r21 UNION r31
131049 ~0% {2} r33 = r16 UNION r32
return r33
```
After
```
Evaluated relational algebra for predicate DataFlowDispatch#36b84300::parameterMatch#2#ff@698b99ci with tuple counts:
1 ~0% {2} r1 = JOIN DataFlowDispatch#36b84300::Cached::TSelfParameterPosition#f WITH DataFlowDispatch#36b84300::Cached::TSelfArgumentPosition#f CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0
1 ~0% {2} r2 = JOIN DataFlowDispatch#36b84300::Cached::TBlockParameterPosition#f WITH DataFlowDispatch#36b84300::Cached::TBlockArgumentPosition#f CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0
2 ~0% {2} r3 = r1 UNION r2
1 ~0% {2} r4 = JOIN DataFlowDispatch#36b84300::Cached::THashSplatParameterPosition#f WITH DataFlowDispatch#36b84300::Cached::THashSplatArgumentPosition#f CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0
65010 ~0% {2} r5 = JOIN DataFlowDispatch#36b84300::Cached::TAnyParameterPosition#f WITH DataFlowDispatch#36b84300::argumentPositionIsNotSelf#1#f CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0
358 ~3% {2} r6 = JOIN DataFlowDispatch#36b84300::Cached::TAnyArgumentPosition#f WITH DataFlowDispatch#36b84300::parameterPositionIsNotSelf#1#f CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0
65368 ~0% {2} r7 = r5 UNION r6
65369 ~0% {2} r8 = r4 UNION r7
65371 ~0% {2} r9 = r3 UNION r8
1645 ~1% {2} r10 = JOIN DataFlowDispatch#36b84300::Cached::TAnyKeywordParameterPosition#f WITH DataFlowDispatch#36b84300::Cached::TKeywordArgumentPosition#ff CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.1
320 ~0% {2} r11 = JOIN DataFlowDispatch#36b84300::Cached::TAnyKeywordArgumentPosition#f WITH DataFlowDispatch#36b84300::Cached::TKeywordParameterPosition#ff CARTESIAN PRODUCT OUTPUT Rhs.1, Lhs.0
1965 ~1% {2} r12 = r10 UNION r11
33 ~0% {2} r13 = JOIN DataFlowDispatch#36b84300::Cached::TPositionalParameterPosition#ff WITH DataFlowDispatch#36b84300::Cached::TPositionalArgumentPosition#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1
320 ~0% {2} r14 = JOIN DataFlowDispatch#36b84300::Cached::TKeywordParameterPosition#ff WITH DataFlowDispatch#36b84300::Cached::TKeywordArgumentPosition#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1
63361 ~1% {4} r15 = JOIN DataFlowDispatch#36b84300::Cached::TPositionalParameterLowerBoundPosition#ff WITH DataFlowDispatch#36b84300::Cached::TPositionalArgumentPosition#ff CARTESIAN PRODUCT OUTPUT Lhs.0, Lhs.1, Rhs.0, Rhs.1
63360 ~1% {4} r16 = SELECT r15 ON In.2 >= In.0
63360 ~0% {2} r17 = SCAN r16 OUTPUT In.1, In.3
63680 ~0% {2} r18 = r14 UNION r17
63713 ~0% {2} r19 = r13 UNION r18
65678 ~0% {2} r20 = r12 UNION r19
131049 ~0% {2} r21 = r9 UNION r20
return r21
```
2022-09-06 13:02:36 +02:00
Erik Krogh Kristensen
c76b6d1782
Merge pull request #10309 from erik-krogh/leftoverTodo
...
JS: fix leftover todo in js/insecure-temporary-file
2022-09-06 12:31:29 +02:00
erik-krogh
24f2e3cc07
update alert-messages of the sensitive data queries to match #10314
2022-09-06 12:25:36 +02:00
Taus
810568cf02
Merge pull request #10171 from RasmusWL/variable-accesss
...
Python: Fixes for variable access
2022-09-06 12:18:37 +02:00
Rasmus Wriedt Larsen
5f6e3dcc2e
Python: Revert changes to sensitive data query alert messages
...
This partly reverts the changes from https://github.com/github/codeql/pull/10252
Although consistency is nice, the new messages didn't sound as natural.
New alert message would read
> Insecure hashing algorithm (md5) depends on sensitive data (password). (...)
I'm not sure what it means that a hashing algorithm depends on data. So
for me, the original text below is much easier to understand.
> Sensitive data (password) is used in a hashing algorithm (md5) that is insecure (...)
Same goes for the other sensitive data queries.
2022-09-06 12:01:24 +02:00
Mathias Vorreiter Pedersen
02c18e714b
C++: Mention 'range-based for-loops' in the QLDoc for 'IRDeclarationEntry'.
2022-09-06 10:40:13 +01:00
Mathias Vorreiter Pedersen
10f962f341
C++: Rename 'PseudoDeclarationEntry' to 'IRDeclarationEntry'.
2022-09-06 10:36:38 +01:00
Tamas Vajk
826bbdf834
Kotlin: Fix vararg extraction outside of method call
2022-09-06 11:32:32 +02:00
Tamas Vajk
cb3c53dee7
Kotlin: Add test case for unexpected vararg extraction error
2022-09-06 11:32:24 +02:00
Mathias Vorreiter Pedersen
ed3fff0eba
Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedElement.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-09-06 10:32:16 +01:00
Tony Torralba
b94e0d3e69
Merge pull request #10251 from atorralba/atorralba/implicit-pendingintent-sinks
...
Java: Add new AlarmManager sinks to Use of implicit PendingIntents
2022-09-06 11:31:27 +02:00
Rasmus Wriedt Larsen
7895a5859d
Ruby: Autoformat
2022-09-06 11:01:06 +02:00
Rasmus Wriedt Larsen
a9e1e72196
Merge branch 'main' into shared-http-client-request
2022-09-06 10:52:27 +02:00
Rasmus Wriedt Larsen
528ef0eeaa
Ruby: Use separate dataflow copy for HTTP client libs
...
As discussed with @hvitved offline. This helps out to ensrue we don't
needlessly evaluate dataflow for configurations that are not needed
anyway. That is, if other library modeling also used the same dataflow
configuration, which ends up being used in query A, then dataflow for
all the `DataFlowImplForLibraries` configurations would be computeted at
once. When we get to evaluate the query `RequestWithoutValidation.ql`
these results mgith have been forgotten since the predicates are not
cached, and everything will have to be computeted again.
In principle we could be added a dataflow copy for each framework.
However, since we know that the `disablesCertificateValidation`
member-predicates for all the HTTP client libraries will all be used at
the same time, and only for the one query, we only add ONE additional
copy.
Note that the only use of `DataFlowImplForLibraries` before this PR is
using `tainttrackingforlibraries.TaintTrackingImpl` (based on
DataFlowImplForLibraries) for regex computation.
c904ba1d16/ruby/ql/lib/codeql/ruby/Regexp.qll (L153)
Since this is currently transitively imported from Frameworks.qll
(through Core.qll, and core/String.qll), the previous approach didn't
actually violate the assumption about all configurations always being in
scope, but it might have been more by accident, than by purpose.
2022-09-06 10:43:36 +02:00
Rasmus Wriedt Larsen
25d09cd6d6
Ruby: Simplify getKeywordArgumentIncludeHashArgument
...
As suggested by @hvitved in review
2022-09-06 10:24:22 +02:00
Tom Hvitved
eff3747eb9
Docs: No longer mention required /p:UseSharedCompilation=false
2022-09-06 10:13:29 +02:00
Rasmus Wriedt Larsen
07457b2b5f
Python: Apply suggestions from code review
...
Co-authored-by: Taus <tausbn@github.com >
2022-09-06 10:11:37 +02:00
Rasmus Wriedt Larsen
d708abfc80
Python: Accept more .expected changes
2022-09-06 10:11:37 +02:00
Rasmus Wriedt Larsen
c9cd809ef2
Python: Add change-note
2022-09-06 10:11:37 +02:00
Rasmus Wriedt Larsen
e979dffc08
Python: Fix variable access from extractor-change
...
These changes are from internal PR.
2022-09-06 10:11:37 +02:00
Rasmus Wriedt Larsen
985e87ccde
Python: Add variable scope example with subclass
2022-09-06 10:11:37 +02:00
Rasmus Wriedt Larsen
0e3d520712
Python: Add variables regression test
...
As illustrated when running the python file, the non qualified reads in
the `use` method all refer to the global variables, whereas `ex =
func(baz)` are to the things defined on the class.
The important part of the .expected changes is that the _global_
variable `bar` is used inside the function, whereas it's the local
variable for `foo` (on class scope) that is used inside the function
(which is wrong).
2022-09-06 10:11:37 +02:00
Rasmus Wriedt Larsen
98db1af898
Python: Also show variable access
2022-09-06 10:11:37 +02:00
Rasmus Wriedt Larsen
fd4f60dd1b
Python: Adjust variables tests
2022-09-06 10:11:37 +02:00
Rasmus Wriedt Larsen
ebd97f4496
Python: Add type-tracking regession example
2022-09-06 10:11:36 +02:00
erik-krogh
0776687991
fix leftover todo in js/insecure-temporary-file
2022-09-06 10:05:50 +02:00
Philip Ginsbach
6674e07eaa
Merge pull request #10088 from github/parameterisedModules
...
parameterised modules in the QL language reference
2022-09-06 08:59:31 +01:00
Tom Hvitved
12015928c1
Merge pull request #10295 from hvitved/csharp/code-analysis-shared-compilation
...
C#: No longer manually disable shared compilation in `codeql-analysis.yml`
2022-09-06 09:45:31 +02:00
Asger F
5ef69628b3
Ruby: remove exists that ql4ql is unhappy about
2022-09-06 09:36:06 +02:00
Michael Nebel
0e52d2c9d3
C#: Add missing bi-directional imports.
2022-09-06 09:34:13 +02:00
Asger F
f07e0592d0
JS: Drive-by fix for accidental recursion
2022-09-06 09:30:02 +02:00
Asger F
c7c3ad29cd
Python: sync with Python
2022-09-06 09:30:02 +02:00
Asger F
2cbba65617
JS: Sync with JS
...
fixup JS
2022-09-06 09:30:02 +02:00
Tom Hvitved
62986a23f3
C#: Add dotnet build integration test
2022-09-06 09:24:54 +02:00
Asger F
afd00161e8
Ruby: introduce getExtraNodeFromType
...
Using getExtraNodeFromPath with n=0 was a bit of a hack. In principle, the CodeQL libraries might care about the type, even though there are no relevant paths starting at that type.
2022-09-06 09:17:34 +02:00
Asger F
b99e9a58e7
Update ruby/ql/lib/codeql/ruby/frameworks/data/internal/ApiGraphModels.qll
...
Co-authored-by: Tom Hvitved <hvitved@github.com >
2022-09-06 09:10:24 +02:00
Tom Hvitved
9fd9a04c2f
Merge pull request #10277 from hvitved/csharp/dotnet-publish-inject
...
C#: Also inject `/p:UseSharedCompilation=false` into `dotnet publish`
2022-09-06 09:02:00 +02:00
Tamás Vajk
5f841f71db
Merge pull request #10291 from tamasvajk/kotlin-fix-array-set
...
Kotlin: Fix array `set` operator extraction
2022-09-06 09:01:05 +02:00
Arthur Baars
604af4f7b3
Merge pull request #10302 from github/rc/3.7
...
Merge 3.7 into main
2022-09-06 08:42:44 +02:00
Mathias Vorreiter Pedersen
885bf427bd
C++: Accept test changes.
2022-09-05 23:26:03 +01:00
Mathias Vorreiter Pedersen
f6654e3d69
C++: As a bonus we now no longer need the 'TTranslatedRangeBasedForVariableDeclaration' IPA branch. This previously existed only to account for the missing 'DeclarationEntry's happening in range-based for loops. But these are now also handled by 'PseudoDeclarationEntry's.
2022-09-05 22:18:41 +01:00
Mathias Vorreiter Pedersen
fc85ef76ed
C++: Introduce 'PseudoDeclarationEntry's to handle missing 'DeclarationEntry's during IR construction.
2022-09-05 22:17:14 +01:00
Arthur Baars
e8d13d156d
Merge pull request #10298 from aibaars/suppress-require
...
Ruby: exclude 'require' and 'require_relative' definitions from call graph
2022-09-05 20:58:38 +02:00
Rasmus Lerchedahl Petersen
af08c6eb08
Python: remove repeated test file
2022-09-05 20:44:55 +02:00
Philip Ginsbach
cec63e4522
Update docs/codeql/ql-language-reference/modules.rst
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-05 19:17:11 +01:00
Philip Ginsbach
aa539454b5
Update docs/codeql/ql-language-reference/index.rst
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-05 19:17:06 +01:00
Mathias Vorreiter Pedersen
2da46ad691
C++: Add two testcases demonstrating malformed IR from missing declaration entries from decl stmts.
2022-09-05 17:49:20 +01:00
Geoffrey White
b6d5b6731a
C++: Make QLDoc meet style guide.
2022-09-05 17:17:57 +01:00
Geoffrey White
234da636a4
C++: Change note.
2022-09-05 17:01:25 +01:00
Geoffrey White
008d583da8
C++: Modernize cpp/cleartext-storage-database.
2022-09-05 16:47:14 +01:00
Arthur Baars
b2431d0b50
Ruby: exclude 'require' and 'require_relative' definitions from call graph
...
The syntax_suggest library redefines Kernel.require/require_relative.
Somehow this causes performance issues on ruby/ruby. As a workaround
we exclude 'require' and 'require_relative'.
2022-09-05 16:52:52 +02:00
Rasmus Lerchedahl Petersen
d31d763328
Python: adjust test expectations
...
We now locate a `DataFlow::Node` rather than an 'AstNode`.
2022-09-05 16:45:43 +02:00
Tamás Vajk
1178dcb507
Merge pull request #10293 from tamasvajk/fix/ql4ql-pr-trigger
...
Workflow: Add paths filter to QL for QL workflow
2022-09-05 16:22:05 +02:00
Erik Krogh Kristensen
4e14177614
fix typo in change-note
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
54eb0414cb
rename an upper-cased acronym
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
90bc8a5038
run the explicit-this patch on javascript/
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
b398f968e2
expand change-note to mention classes that have a changed basetype
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
e64f96c1ce
rewrite the change-note to emphasise that the change is potentially breaking
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
26f5643f3e
update the deprecation notice of RouteExpr such that it points to public APIs
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
e387ebaedd
add domNode.innerHTML += sink as a DOM sink
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
74a79f8622
simplify int check
...
Co-authored-by: Asger F <asgerf@github.com >
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
73a936104a
fix typo in qldoc
...
Co-authored-by: Asger F <asgerf@github.com >
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
833480d5c5
add change note
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
5b61db9fd3
refactor miscellaneous expression uses to dataflow nodes
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
6697dd1396
rewrite some expression based predicates in TaintTracking.qll
2022-09-05 16:11:55 +02:00
Erik Krogh Kristensen
b4968eb645
refactor the SensitiveExpr to be a dataflow node
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
0c4f08c841
refactor the CredentialsExpr to be a dataflow node
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
c5b1588096
update the SQL/NoSQL models to use dataflow nodes
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
4d0534352e
refactor a use of MethodCallExpr in ClientSideUrlRedirectCustomizations.qll
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
e0e8085b95
update the cryptoLibraries to use dataflow nodes
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
5ebea8c75a
fix express in the POI test
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
aa9261f1b1
convert the AngularJS model to use DataFlow nodes
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
9bea110d24
convert the DOM model to use DataFlow nodes
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
2f429e7d29
convert some leftovers to use dataflow nodes
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
136124fbaa
convert the remaining Koa models to DataFlow nodes
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
fc54ba823b
update the existing expression based Express models
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
8266b083d7
update the predicates on Express::RouteHandler to use dataflow nodes
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
4cfbf15d18
deprecate RouteHandlerExpr and make RouteHandlerNode instead
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
3da34ca7a0
update Express::RouteExpr to a DataFlow::Node
2022-09-05 16:11:54 +02:00
Erik Krogh Kristensen
3eb486610b
update Express::RouterDefinition to a DataFlow::InvokeNode
2022-09-05 16:11:51 +02:00
Erik Krogh Kristensen
b77d77d8eb
Merge pull request #10209 from erik-krogh/caseConsistency
...
QL: add query detecting consistent casing of names
2022-09-05 16:07:59 +02:00
Tamas Vajk
1c21ce0ec4
Kotlin: Lookup getter methods based on special JVM method mapping
2022-09-05 16:02:25 +02:00
Tamas Vajk
6a90db9b30
Kotlin: List diagnostics for special getter method extraction
2022-09-05 16:00:40 +02:00
Erik Krogh Kristensen
92240384a9
update the tests to reflect the extra DataFlow::Nodes
2022-09-05 15:47:38 +02:00
Erik Krogh Kristensen
dfb7782be0
replace getA?RouteHandlerExpr with getA?RouteHandlerNode
2022-09-05 15:46:27 +02:00
Erik Krogh Kristensen
288230d7cf
update tests to reflect the extra DataFlow::Nodes from ResponseNode and RequestNode
2022-09-05 15:46:27 +02:00
Erik Krogh Kristensen
30d929909c
deprecate RequestExpr and ResponseExpr and use ResponseNode and RequestNode instead
2022-09-05 15:46:25 +02:00
Erik Krogh Kristensen
9cb7522bc1
change RouteSetup to a DataFlow::Node
2022-09-05 15:45:31 +02:00
Erik Krogh Kristensen
d98028be1a
change ServerDefinition to a DataFlow::Node
2022-09-05 15:44:56 +02:00
Geoffrey White
946456acc2
C++: Apply the sanitizer improvement from cpp/cleartext-storage-buffer in cpp/cleartext-storage-file and cpp/cleartext-transmission.
2022-09-05 14:44:33 +01:00
Erik Krogh Kristensen
ced4843dd7
change CookieDefinition to a DataFlow::Node
2022-09-05 15:44:13 +02:00
Erik Krogh Kristensen
24b845589d
change ResponseBody to a DataFlow::Node
2022-09-05 15:44:13 +02:00
Erik Krogh Kristensen
19e808186d
refactor definesExplicitly to use DataFlow::Node
2022-09-05 15:44:13 +02:00
Erik Krogh Kristensen
ce0175a046
don't use astNode in StandardHeaderDefinition
2022-09-05 15:44:13 +02:00
Erik Krogh Kristensen
d4ccc75ce1
refactor RedirectInvocation to a DataFlow::Node
2022-09-05 15:44:13 +02:00
Erik Krogh Kristensen
a03e6a800d
deprecate the HTTP flowsTo predicates to avoid confusion with SourceNode::flowsTo
2022-09-05 15:44:12 +02:00
James Fletcher
d787d94fbd
Merge branch 'main' into download-db-vs-code
2022-09-05 13:55:17 +01:00
Ian Lynagh
b38ad13f82
Merge pull request #10268 from tamasvajk/kotlin-local-function-comments
...
Kotlin: fix doc comment extraction for local functions
2022-09-05 13:35:01 +01:00
Taus
c19574b9a4
Merge pull request #10267 from yoff/python/port-EmptyExcept
...
python: Rewrite EmptyExcept from `points-to` to API graph
2022-09-05 14:11:34 +02:00
Tom Hvitved
b197eff23e
Ruby: Add missing edges to the call graph for singleton methods
2022-09-05 14:11:04 +02:00
Tom Hvitved
ab22f932a5
Ruby: Add more tests for singleton methods
2022-09-05 14:09:59 +02:00
erik-krogh
aa56ca37ae
make the alert messages of taint-tracking queries more consistent
2022-09-05 14:04:52 +02:00
Erik Krogh Kristensen
1fe9b3f4bd
Merge pull request #10252 from erik-krogh/py-followMsg
...
PY: change alert messages of path queries to use the same template
2022-09-05 14:03:36 +02:00
Tom Hvitved
e680d1a6ec
C#: No longer manually disable shared compilation in codeql-analysis.yml
...
Instead, rely on the tracer to inject the flag.
2022-09-05 13:55:58 +02:00
Rasmus Lerchedahl Petersen
5fc1bbc8c5
Python: Only alert on Python 2 code
...
since
- Python 3 is ok from 3.7 onwards
- support for Python 3.6 was just dropped
- we do not actually know the minor version of the analysed code
(only of the extractor)
2022-09-05 13:38:14 +02:00
erik-krogh
0de0325c8e
change the alert-message for py/modification-of-default-value
2022-09-05 13:30:56 +02:00
erik-krogh
a86a940df7
add getRepr() and toString() on RelevantState
2022-09-05 13:27:34 +02:00
Ian Lynagh
38ba516687
Merge pull request #10281 from igfoo/igfoo/extractFunctionReference
...
Kotlin: Remove cast in extractFunctionReference
2022-09-05 11:49:09 +01:00
Ian Lynagh
824ac9eb73
Merge pull request #10283 from igfoo/igfoo/IrTypeParameter
...
Kotlin: Remove a redundant cast
2022-09-05 11:49:00 +01:00
Ian Lynagh
e1a153a7f3
Merge pull request #10282 from igfoo/igfoo/extendsAdditionAllowed
...
Kotlin: Remove a cast in extendsAdditionAllowed
2022-09-05 11:48:50 +01:00
Ian Lynagh
43a553dffb
Merge pull request #10279 from igfoo/igfoo/extractGeneratedClass
...
Kotlin: Remove cast in extractGeneratedClass
2022-09-05 11:48:38 +01:00
Tamás Vajk
674305195a
Apply suggestions from code review
...
Co-authored-by: Erik Krogh Kristensen <erik-krogh@github.com >
2022-09-05 12:19:54 +02:00
Tamas Vajk
d50e3c77e5
Workflow: Add paths filter to QL for QL workflow
2022-09-05 11:55:03 +02:00
Edoardo Pirovano
c239871f3a
Merge pull request #10292 from github/edoardo/add-search-path
...
QL4QL: Add `--search-path` to `codeql resolve languages` calls
2022-09-05 10:40:00 +01:00
James Fletcher
45182c2f46
Merge branch 'main' into download-db-vs-code
2022-09-05 10:24:55 +01:00
Edoardo Pirovano
14dafefb79
QL4QL: Add --search-path to codeql resolve languages calls
2022-09-05 10:23:23 +01:00
erik-krogh
3f1cb04f3e
sync files
2022-09-05 11:22:34 +02:00
Erik Krogh Kristensen
0162bc3c77
use RelevantState inside the lastStartState predicate
...
Co-authored-by: Arthur Baars <aibaars@github.com >
2022-09-05 11:22:12 +02:00
Tom Hvitved
9ebabd1e1f
SSA: Strip shared from namespace and qlpack name
2022-09-05 11:17:30 +02:00
Felicity Chapman
2cacba5f66
Apply suggestions to fix typos and formatting glitches
2022-09-05 09:59:20 +01:00
Rasmus Lerchedahl Petersen
afb50212a0
Python: update version check
...
doc said 3.5 experience says 3.7
2022-09-05 10:50:53 +02:00
Tom Hvitved
d8b352c2e6
C#: Use -p: instead of /p: with dotnet
...
Makes a difference for `dotnet run` where the option will otherwise be considered
an argument to the program that is run.
2022-09-05 10:40:00 +02:00
Tamas Vajk
6f7f760682
Kotlin: Fix array set operator extraction
2022-09-05 10:20:07 +02:00
Tamas Vajk
608f99bd0d
Kotlin: Add test case for various array set operator overloads
2022-09-05 10:19:57 +02:00
Felicity Chapman
634e883221
Update docs/codeql/codeql-cli/about-codeql-workspaces.rst
2022-09-05 09:14:33 +01:00
Tamas Vajk
bb5f0d4afb
Improve code quality
2022-09-05 09:17:18 +02:00
Tamas Vajk
81cf4c39f4
Only get existing local function labels
2022-09-05 09:16:23 +02:00
Tamas Vajk
37500d274a
Accept failing consistency test
2022-09-05 08:58:38 +02:00
Tom Hvitved
623ba7926f
C#: Fix /p:UseSharedCompilation=false tracer injection for dotnet run
2022-09-04 09:54:21 +02:00
Rasmus Lerchedahl Petersen
a8a042db57
python: remove illegal option
2022-09-03 20:33:48 +02:00
Asger F
f22de8a3b7
Python: Sync with Python
2022-09-03 13:51:02 +02:00
Asger F
56bbba2241
JS: Sync with JS
2022-09-03 13:51:02 +02:00
Asger F
62383fb3c9
Ruby: add TypeModel hook for adding type-defs from CodeQL
2022-09-03 13:51:02 +02:00
Asger F
296aa52ef0
Python: Add API::EntryPoint
...
Python: add EntryPoint test
2022-09-03 13:24:46 +02:00
Asger F
55fdf84d15
Ruby+JS: change LabelEntryPoint.toString()
...
fixup Ruby entry point tests
2022-09-03 13:24:45 +02:00
Asger F
c9ba6f171b
Ruby: rename EntryPoint.getAUse,getARhs -> getASource,getASink
2022-09-03 13:13:32 +02:00
Andrew Eisenberg
9a7d74f2ba
Reorder table of contents
2022-09-02 14:30:47 -07:00
Andrew Eisenberg
94a6506cbb
Clarify section on source resolution
2022-09-02 14:05:31 -07:00
Andrew Eisenberg
93ade495c2
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-02 13:19:45 -07:00
Andrew Eisenberg
353b50b0d3
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-09-02 13:07:44 -07:00
Andrew Eisenberg
98436ce36a
Fix syntax error in rst
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-09-02 12:43:49 -07:00
erik-krogh
c38062ce93
convert RelevantState to a class in the PrefixConstruction module
2022-09-02 20:26:31 +02:00
Geoffrey White
a14efcfb69
Merge branch 'main' into stringlengthcleanup
2022-09-02 19:26:28 +01:00
Geoffrey White
e96e965bf9
Swift: Rename 'member' -> 'memberRef' for readability.
2022-09-02 19:21:58 +01:00
Geoffrey White
361ddb844e
Swift: Simplify isSource (behaviour preserving).
2022-09-02 19:21:52 +01:00
Geoffrey White
5b528573ce
Swift: Update similar cases.
2022-09-02 19:21:51 +01:00
Geoffrey White
c3a8da4570
Swift: Use getABaseTypeDecl() to improve StringLengthConflation.ql.
2022-09-02 19:21:50 +01:00
Mathias Vorreiter Pedersen
b471b51535
Swift: Add convenience member predicates to 'TypeDecl'.
2022-09-02 18:23:07 +01:00
Ian Lynagh
a4d1b33993
Kotlin: Remove a redundant cast
2022-09-02 17:17:39 +01:00
Raul Garcia
1bfe335d93
Merge branch 'main' into Token_validation
2022-09-02 09:00:55 -07:00
Ian Lynagh
0ee72a580a
Kotlin: Remove a cast in extendsAdditionAllowed
2022-09-02 16:58:05 +01:00
Ian Lynagh
a35c7ab5b3
Kotlin: Remove cast in extractFunctionReference
2022-09-02 15:40:45 +01:00
Tamas Vajk
7daf53fd99
Add regenerated models after rebase
2022-09-02 16:32:42 +02:00
Ian Lynagh
2ecd9c93d1
Kotlin: Remove cast in extractGeneratedClass
...
It turns out that this was really behaving as a nullness check.
2022-09-02 15:26:49 +01:00
Paolo Tranquilli
48761b8667
Merge pull request #10233 from github/redsun82/swift-conversions-in-print-ast
...
Swift: show conversions in `PrintAst`
2022-09-02 16:13:21 +02:00
Tamas Vajk
2138e491a5
Add change note
2022-09-02 16:12:22 +02:00
Tamas Vajk
8c5d220dc0
Add optional friendly name parameter to MaD generator
2022-09-02 16:12:22 +02:00
Tamas Vajk
5004a5fb60
Fix failing external model tests
2022-09-02 16:12:22 +02:00
Tamas Vajk
09e62058ae
Generate negative summaries
2022-09-02 16:12:22 +02:00
Tamas Vajk
9fad42b25d
Kotlin: Add manual model for Array.withIndex
2022-09-02 16:12:21 +02:00
Tamas Vajk
bb82bcabbe
Kotlin: move and rename KotlinStdLib.qll to kotlin/StdLib.qll
2022-09-02 16:12:21 +02:00
Tamas Vajk
8c7fdb969d
Kotlin: Regenerating StdLib models with already existing models
2022-09-02 16:12:21 +02:00
Tamas Vajk
a144fa06dc
Kotlin: Add generated MaD for stdlib
2022-09-02 16:12:21 +02:00
Tamas Vajk
57d861337b
Kotlin: Add dataflow tests for stdlib calls
2022-09-02 16:12:21 +02:00
Tamas Vajk
71cce9cf28
Kotlin: Extract error expression for enumValues<T> calls
2022-09-02 15:42:05 +02:00
Tamas Vajk
fd0d2ad767
Kotlin: Add test for enumValues call with type parameter
2022-09-02 15:40:03 +02:00
Paolo Tranquilli
2234070bfe
Swift: ...and accept the test
2022-09-02 15:36:46 +02:00
Paolo Tranquilli
3d0d3ecfca
Swift: fix stupid typo
2022-09-02 15:35:22 +02:00
Ian Lynagh
6d5d78e975
Merge pull request #10275 from igfoo/igfoo/TypeResults
...
Kotlin: Fix the type of TypeResultGeneric.cast
2022-09-02 14:34:22 +01:00
Paolo Tranquilli
c842ae40f6
Swift: make node properties consistent with other languages
2022-09-02 15:31:37 +02:00
Paolo Tranquilli
e3e9774956
Swift: print conversions similarly to C++
2022-09-02 15:31:37 +02:00
Michael Nebel
9c5a6dd031
C#: Add WithElement summary for Reverse and update expected test output.
2022-09-02 15:17:24 +02:00
Michael Nebel
e7e78dcab3
C#: Add with element example and update existing line numbers in testcase.
2022-09-02 15:17:24 +02:00
Michael Nebel
022cbfa009
C#: Support 'WithElement'.
2022-09-02 15:17:24 +02:00
Michael Nebel
5511bc8e28
Java/Ruby/Swift: Sync files.
2022-09-02 15:17:24 +02:00
Michael Nebel
ecce30ed5a
C#: Remove clearsContent predicate from the framework code.
2022-09-02 15:17:24 +02:00
Michael Nebel
19da00a51a
C#: Delete clears content test case.
2022-09-02 15:17:23 +02:00
Michael Nebel
2ae2008453
C#: Update flow summaries test expected output.
2022-09-02 15:17:23 +02:00
Michael Nebel
f43feac324
C#: Add models as data models for Clear.
2022-09-02 15:17:23 +02:00
Michael Nebel
80f89282b7
C#: Add summary for System.Text.StringBuilder.Clear.
2022-09-02 15:17:23 +02:00
Michael Nebel
e3bfc4bd82
C#: CSV Printing of WithoutElement content.
2022-09-02 15:17:23 +02:00
Michael Nebel
8234a508b3
C#: Parsing of WithoutElement.
2022-09-02 15:17:23 +02:00
erik-krogh
089ce5a8a4
change alert messages of path queries to use the same template
2022-09-02 14:45:40 +02:00
Ian Lynagh
c339a2d4a7
Merge pull request #10273 from igfoo/igfoo/extractRawMethodAccess
...
Kotlin: Remove cast from extractRawMethodAccess
2022-09-02 13:26:33 +01:00
Ian Lynagh
ed04bec34e
Merge pull request #10274 from igfoo/igfoo/extractCall
...
Kotlin: Remove a cast in array iterator call extraction
2022-09-02 13:26:10 +01:00
Tom Hvitved
99d9fe14c8
C#: Also inject dotnet (pack|test|run)
2022-09-02 14:17:23 +02:00
Ian Lynagh
3195404b63
Merge pull request #10272 from igfoo/igfoo/getDeclaringTypeArguments
...
Kotlin: Remove some casts from getDeclaringTypeArguments
2022-09-02 13:13:40 +01:00
Tom Hvitved
7c12139c9e
C#: Also inject /p:UseSharedCompilation=false into dotnet publish
2022-09-02 13:51:22 +02:00
Ian Lynagh
3646d1d294
Kotlin: Fix the type of TypeResultGeneric.cast
2022-09-02 12:39:46 +01:00
Ian Lynagh
a56876533f
Kotlin: Remove a cast in array iterator call extraction
2022-09-02 12:25:14 +01:00
Ian Lynagh
db1661fb13
Kotlin: Remove cast from extractRawMethodAccess
...
I'm not entirely happy with this, but it at least meets the goal of
removing the cast.
2022-09-02 12:14:09 +01:00
Tom Hvitved
ba62b9e822
Address review comments
2022-09-02 13:07:27 +02:00
Ian Lynagh
3eab35d78b
Kotlin: Small simplification
2022-09-02 12:04:21 +01:00
Ian Lynagh
07b3b15528
Merge pull request #10221 from tamasvajk/kotlin-internal
...
Kotlin: Change `Modifiable::isPublic` to not cover Kotlin `internal` members
2022-09-02 11:51:56 +01:00
Ian Lynagh
6a4b748958
Kotlin: Remove some casts from getDeclaringTypeArguments
2022-09-02 11:50:00 +01:00
james
c0b9be0ecb
new screenshot
2022-09-02 10:43:36 +01:00
james
0c971bcc8c
update info about downloading dbs in vs code
2022-09-02 10:36:02 +01:00
Ian Lynagh
4f7eb7be83
Merge pull request #10262 from igfoo/igfoo/useArrayType
...
Kotlin: Avoid unsafe casts in useArrayType
2022-09-02 10:25:34 +01:00
Ian Lynagh
b05d8a61ba
Merge pull request #10263 from igfoo/igfoo/useSimpleType3
...
Kotlin: Remove some casts in useSimpleType
2022-09-02 10:25:23 +01:00
Tamas Vajk
c77f573a8e
Kotlin: fix doc comment extraction for local functions
2022-09-02 10:47:08 +02:00
Tamas Vajk
46c52aeaae
Kotlin: Add test for doc comment on local functions
2022-09-02 10:45:08 +02:00
Tom Hvitved
2c584d8f35
Merge pull request #10235 from hvitved/csharp/remove-legacy-tracer
...
C#: Remove legacy tracer support
2022-09-02 09:25:10 +02:00
Tamas Vajk
bea0ce9ff9
Fix review findings
2022-09-02 09:20:20 +02:00
Erik Krogh Kristensen
6cee635cb5
Merge pull request #10180 from erik-krogh/fixTags
...
Add missing security tags
2022-09-02 08:04:57 +02:00
Harry Maclean
637e92d990
Ruby: Fix typos
2022-09-02 13:16:14 +12:00
Harry Maclean
6fff02817d
Ruby: Fix bug in disablesCertificateValidation
2022-09-02 13:15:02 +12:00
Harry Maclean
570a03a08f
Ruby: Test disablesCertificateValidation
2022-09-02 13:00:29 +12:00
Rasmus Lerchedahl Petersen
0599e8ac35
python: add version check
...
and attempt to set version for tests
2022-09-01 23:47:07 +02:00
Nora Dimitrijević
7584434b80
Merge pull request #10163 from d10c/missing-check-scanf-squashed
...
C++: New Query: missing return-value check for scanf-like functions
2022-09-01 23:43:21 +02:00
Robert Marsh
ca2694ae1d
C++: exclude end pointers in iterator-style loops
2022-09-01 17:42:19 -04:00
Rasmus Lerchedahl Petersen
1d2d28be76
python: replace points-to with API graph
2022-09-01 23:24:10 +02:00
Rasmus Lerchedahl Petersen
d102a84e02
python: replace points-to with API graph
2022-09-01 22:58:46 +02:00
Rasmus Lerchedahl Petersen
163bfc4f71
python: replace points-to with API graph
...
- values are identified via `API::builtin`
- `points-to` is approximated by `getAValueReachableFromSource`
2022-09-01 22:47:32 +02:00
Rasmus Lerchedahl Petersen
93fcaf24c1
python: RaisingTuple.ql to not use poins-to
...
Use local dataflow instead and simply check for tuple literals.
2022-09-01 21:45:57 +02:00
Tom Hvitved
6b728acd9e
Use specific codeql/shared-ssa pack for the SSA library
2022-09-01 21:23:33 +02:00
Raul Garcia
0b0777addf
Fixing the @id fields
2022-09-01 09:45:11 -07:00
Ian Lynagh
9d3bc47a4d
Kotlin: Remove some casts in useSimpleType
2022-09-01 17:36:31 +01:00
Ian Lynagh
ddb7bb11fd
Kotlin: Avoid unsafe casts in useArrayType
2022-09-01 17:15:15 +01:00
Mathias Vorreiter Pedersen
2223bc3d1f
Merge pull request #10261 from MathiasVP/fix-join-in-sign-analysis
...
C++: Fix join in sign analysis
2022-09-01 16:49:05 +01:00
Ian Lynagh
ae9ba80c40
Merge pull request #10242 from igfoo/igfoo/kotlinFunctionToJavaEquivalent
...
Kotlin: Refactor kotlinFunctionToJavaEquivalent
2022-09-01 16:23:08 +01:00
Tom Hvitved
3c3390728a
Merge pull request #10245 from hvitved/ruby/simplify-track-instance
...
Ruby: Exclude top-level `self` accesses from `trackModule`
2022-09-01 16:50:14 +02:00
Robert Marsh
35701373ee
C++: more semantic range analysis perf tweaks
2022-09-01 10:49:54 -04:00
Robert Marsh
b1de54e9aa
C++: rewrite ProductFlow recursion for performance
2022-09-01 10:49:12 -04:00
Ian Lynagh
710ba3cb14
Merge pull request #10257 from igfoo/igfoo/hasModifier
...
Java: Correct hasModifier documentation
2022-09-01 15:49:06 +01:00
Edoardo Pirovano
8f332714f4
Merge pull request #10260 from github/edoardo/3.7-mergeback
...
Merge `rc/3.7` into `main`
2022-09-01 15:44:17 +01:00
Mathias Vorreiter Pedersen
a65e585db1
C++: 'nomagic' on 'binaryExprOperands'.
2022-09-01 15:34:59 +01:00
Henry Mercer
e4d22a2a5a
Merge pull request #10258 from github/codeql-ci/js/ml-powered-pack-release-0.3.2
...
JS: Bump version numbers of ML-powered packs after 0.3.2 release
2022-09-01 13:49:16 +01:00
Tamas Vajk
e66d2dddb6
Fix review findings
2022-09-01 14:07:27 +02:00
Henry Mercer
c65ae88c6d
Merge branch 'main' into codeql-ci/js/ml-powered-pack-release-0.3.2
2022-09-01 12:41:45 +01:00
github-actions[bot]
8d0ca9c772
JS: Bump version of ML-powered library and query packs to 0.3.3
2022-09-01 11:39:32 +00:00
github-actions[bot]
d577392dee
JS: Bump patch version of ML-powered library and query packs
2022-09-01 11:28:25 +00:00
Tamás Vajk
6576f19873
Merge pull request #10255 from tamasvajk/kotlin-array-get-fix
...
Kotlin: Fix array indexer extraction
2022-09-01 13:28:18 +02:00
Mathias Vorreiter Pedersen
00c55092ee
Merge pull request #10256 from geoffw0/cleartextcleanup
2022-09-01 12:15:57 +01:00
Ian Lynagh
4f63317369
Kotlin: Remove a redundant ?
2022-09-01 11:55:43 +01:00
Ian Lynagh
7ed18f1b32
Java: Correct hasModifier documentation
2022-09-01 11:52:07 +01:00
Ian Lynagh
cc1a5d82b8
Merge pull request #10243 from igfoo/igfoo/extractExpression
...
Kotlin: Removed a couple of casts from extractExpression
2022-09-01 11:11:58 +01:00
Ian Lynagh
70cabf188e
Merge pull request #10246 from igfoo/igfoo/extractConstructorCall
...
Kotlin: Refactor extractConstructorCall
2022-09-01 11:11:48 +01:00
Ian Lynagh
c30f39df33
Merge pull request #10247 from igfoo/igfoo/useSimpleType2
...
Kotlin: Remove another cast
2022-09-01 11:11:37 +01:00
Nora Dimitrijević
f956999891
Merge branch 'main' into missing-check-scanf-squashed
2022-09-01 12:08:50 +02:00
Geoffrey White
aad77c2388
Swift: Use TypeDecl.getABaseTypeDecl().
2022-09-01 10:42:09 +01:00
Geoffrey White
8ff0a191be
Merge pull request #10254 from MathiasVP/swift-base-and-derived-on-decls
...
Swift: Add `getBaseTypeDecl` to `TypeDecl`
2022-09-01 10:35:29 +01:00
Tamas Vajk
a5415c9c8a
Kotlin: Fix array indexer extraction
2022-09-01 11:12:14 +02:00
Taus
623ad6bab0
Python: Add getADefiningWrite
2022-09-01 09:10:06 +00:00
Tamas Vajk
afeea64078
Kotlin: Add test case for overloaded array get
2022-09-01 11:09:44 +02:00
Tom Hvitved
4d485163a6
Ruby: Exclude top-level self accesses from trackModule
2022-09-01 11:05:53 +02:00
Mathias Vorreiter Pedersen
96752f0fc4
Merge pull request #10061 from geoffw0/cleartext
...
Swift: Queries for CWE-311 (originally CWE-200)
2022-09-01 09:39:58 +01:00
Mathias Vorreiter Pedersen
e294b8f74a
Swift: Add convenience member predicates to 'TypeDecl'.
2022-09-01 09:28:37 +01:00
Geoffrey White
d3250a7e16
Swift: Fix finding base classes.
2022-09-01 09:01:56 +01:00
Tony Torralba
04c230b128
Docs fixes
2022-09-01 09:57:32 +02:00
Geoffrey White
92a927efa7
Swift: Remove special case (no longer required).
2022-09-01 08:53:51 +01:00
Tony Torralba
5d9f366ac5
Add change note
2022-09-01 09:53:46 +02:00
Tony Torralba
bee4e4b40a
Add new AlarmManager sinks
2022-09-01 09:47:58 +02:00
Tom Hvitved
c6807f5c05
Update two Actions workflows
2022-09-01 09:36:50 +02:00
Tom Hvitved
5f30d4ca21
SSA: Add missing QL doc
2022-09-01 09:36:50 +02:00
Tom Hvitved
8e5d6ba4f9
SSA: Create a new shared library pack and move implementation there
2022-09-01 09:36:49 +02:00
Tom Hvitved
d5200efef3
Merge pull request #10203 from hvitved/ssa/param-module
...
SSA: Make shared library a parameterized module
2022-09-01 09:27:05 +02:00
Anders Schack-Mulligen
efcd47f114
Merge pull request #10248 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-09-01 09:17:46 +02:00
github-actions[bot]
c8441abaac
Add changed framework coverage reports
2022-09-01 00:18:02 +00:00
Raul Garcia
476562ec62
Fixes based on the PR comments
2022-08-31 12:32:47 -07:00
Andrew Eisenberg
9d456e0436
Update docs/codeql/codeql-cli/analyzing-databases-with-the-codeql-cli.rst
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-08-31 11:29:23 -07:00
Andrew Eisenberg
6240b6e699
Update docs/codeql/codeql-cli/about-codeql-workspaces.rst
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-08-31 11:05:26 -07:00
Ian Lynagh
e4ff25099b
Kotlin: Be more permissive
...
I think we'll end up giving a warning/error later, but that's better
than having a cast throw now.
2022-08-31 18:09:36 +01:00
Andrew Eisenberg
d98d1b7455
Apply suggestions from code review
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-08-31 10:07:28 -07:00
Ian Lynagh
86034dc602
Kotlin: Add a type signature
2022-08-31 18:05:30 +01:00
Geoffrey White
129ed426a0
Swift: Use allowImplicitRead as a better solution replacing one of the special flow cases.
2022-08-31 17:58:18 +01:00
Geoffrey White
c0bc0d78cc
Swift: Accept test changes after merging main (again).
2022-08-31 17:58:10 +01:00
Ian Lynagh
7dc5bdafe3
Merge pull request #10186 from github/post-release-prep/codeql-cli-2.10.4
...
Post-release preparation for codeql-cli-2.10.4
2022-08-31 17:29:57 +01:00
Ian Lynagh
c8deb72ede
Kotlin: Refactor extractConstructorCall
...
Avoids some casts.
2022-08-31 16:53:59 +01:00
Paolo Tranquilli
74cd532adc
Merge pull request #10244 from geoffw0/swiftcleanup
...
Swift: Clean up the URL.init model.
2022-08-31 17:37:35 +02:00
Geoffrey White
60fad4d652
Merge remote-tracking branch 'upstream/main' into swiftcleanup
2022-08-31 16:04:39 +01:00
Nora Dimitrijević
f5a30c7bbe
C++: Add correctness tag
...
As that seems to be appropriate for this query.
2022-08-31 16:59:57 +02:00
Nora Dimitrijević
38f185bee4
C++: Correct CWE tags in metadata
2022-08-31 16:58:05 +02:00
Tom Hvitved
18b5ab0862
C#: Remove legacy tracer support
2022-08-31 16:57:59 +02:00
Tom Hvitved
c75c489707
C#: Inject /p:MvcBuildViews=true using tracer instead of auto-builder
2022-08-31 16:57:59 +02:00
Tom Hvitved
914b9680c0
C#: Also inject /p:UseSharedCompilation=false to (x|ms)build.exe (Windows)
2022-08-31 16:57:59 +02:00
Ian Lynagh
eca28af883
Kotlin: Removed a couple of casts from extractExpression
2022-08-31 15:34:18 +01:00
Geoffrey White
be88c4f171
Swift: Clean up the URL.init model.
2022-08-31 15:25:24 +01:00
Ian Lynagh
6d00860cc1
Kotlin: Refactor kotlinFunctionToJavaEquivalent
...
Avoids a cast.
2022-08-31 15:03:30 +01:00
Nora Dimitrijević
0729e42536
C++: Update metadata based on cwe-scores
...
Though the codeql/cwe-scores update-queries.py script did not make any changes on its own,
I looked up the score of the CWEs that @geoffw0 suggested using the explain.py script.
As discussed elsewhere, this should be more of a warning than a recommendation.
2022-08-31 15:50:37 +02:00
Tamás Vajk
bf7437fd2e
Merge pull request #10224 from tamasvajk/kotlin-comment-fixes
...
Kotlin: Fix issues in comment extraction
2022-08-31 14:22:09 +02:00
Paolo Tranquilli
122433096d
Swift: fix wrong class name
2022-08-31 14:19:21 +02:00
Anders Schack-Mulligen
784eef3f2c
Java: Support SCCs in TypeFlow.
2022-08-31 13:20:00 +02:00
Ian Lynagh
b5f9fbe247
Merge pull request #10228 from igfoo/igfoo/useSimpleType
...
Kotlin: Refactor useSimpleType to avoid some casts
2022-08-31 11:32:35 +01:00
Ian Lynagh
da7d2709d9
Merge pull request #10227 from igfoo/igfoo/extractStaticTypeAccessQualifier
...
Kotlin: Refactor extractStaticTypeAccessQualifier
2022-08-31 11:32:26 +01:00
Ian Lynagh
49ba391923
Merge pull request #10229 from igfoo/igfoo/singleOrNullSubType
...
Kotlin: Implement and use singleOrNullSubType
2022-08-31 11:32:11 +01:00
Tom Hvitved
7a2d43432e
C++: Adapt to parameterized SSA implementation
2022-08-31 11:56:24 +02:00
Tom Hvitved
643efb3d6b
Swift: Adapt to parameterized SSA implementation
2022-08-31 11:56:24 +02:00
Asger F
99bd6f1872
Merge pull request #10234 from asgerf/js/def-nodes-for-class-members
...
JS: Make API graph more sparse for escaping class instance members
2022-08-31 11:51:11 +02:00
Tom Hvitved
61b67640f4
Ruby: Adapt to parameterized SSA implementation
2022-08-31 11:45:15 +02:00
Tom Hvitved
760c7beb94
SSA: Sync files
2022-08-31 11:45:15 +02:00
Tom Hvitved
2681b88035
C#: Update Pre SSA library to use parameterized module
2022-08-31 11:45:15 +02:00
Tom Hvitved
8725bf0620
C#: Update Base SSA library to use parameterized module
2022-08-31 11:45:15 +02:00
Tom Hvitved
f553001217
C#: Update CIL SSA library to use parameterized module
2022-08-31 11:45:14 +02:00
Tom Hvitved
0d81a6409d
SSA: Make shared library a parameterized module
2022-08-31 11:45:14 +02:00
Mathias Vorreiter Pedersen
f846c262dc
Merge pull request #10157 from MathiasVP/swift-field-flow-2
...
Swift: Add field flow
2022-08-31 10:42:00 +01:00
Paolo Tranquilli
30049f622d
Swift: move new code down in tests
2022-08-31 11:38:32 +02:00
Paolo Tranquilli
aa54e4bb46
Swift: add some typing information to PrintAst
2022-08-31 11:31:15 +02:00
Paolo Tranquilli
a237f691b5
Swift: show conversions in PrintAst
...
This also showcases the customizability of the `PrintAst` infrastructure
resting on generated code.
2022-08-31 11:28:17 +02:00
Paolo Tranquilli
1f0ca6b02a
Merge pull request #10237 from github/redsun82/swift-generate-printast
...
Swift: add generic type parameters to AST children
2022-08-31 11:23:29 +02:00
Paolo Tranquilli
281cd79b48
Swift: add generics to ast tests
2022-08-31 11:09:35 +02:00
Michael Nebel
1cb6d78d35
Merge pull request #10170 from michaelnebel/java/models-io
...
Java: Update models for commons-io and add negative models.
2022-08-31 11:05:09 +02:00
Paolo Tranquilli
c0f477e5c1
Swift: reorder generic type param children in nominal types
2022-08-31 10:57:34 +02:00
Paolo Tranquilli
66e6c7bb13
Swift: make GenericTypeParamDecls children
2022-08-31 10:47:36 +02:00
Paolo Tranquilli
3ce76e6c08
Swift: preserve base order in code generation
2022-08-31 10:45:22 +02:00
Mathias Vorreiter Pedersen
9545598daf
Merge pull request #10226 from github/redsun82/swift-generate-printast
...
Swift: add `PrintAst`
2022-08-31 09:26:46 +01:00
Tony Torralba
2ec53bf78c
Merge pull request #9873 from luchua-bc/java/permissive-dot-regex
...
Java: CWE-625 Query to detect regex dot bypass
2022-08-31 10:24:18 +02:00
Tamas Vajk
0cbb73a47e
Improve code quality
2022-08-31 09:02:35 +02:00
Paolo Tranquilli
bb845c6d7f
Swift: rename printast.ql->printAst.ql
2022-08-31 08:55:40 +02:00
Paolo Tranquilli
742cf0a593
Swift: hide orphaned DeclRefExpr nodes
2022-08-31 08:35:00 +02:00
Tom Hvitved
e4853d0e71
Merge pull request #10086 from michaelnebel/csharp/cil
...
C#: CIL Extractor option.
2022-08-31 08:22:18 +02:00
Tom Hvitved
787234cf5c
Merge pull request #10232 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-08-31 08:18:50 +02:00
Paolo Tranquilli
8f09485414
Swift: enhance PrintAst testing
...
The `ParentChild` tests have been generalized to test all `PrintAst`
by factoring out `PrintAstNode` into a separate file.
The `child.ql` and `parent.ql` tests have been removed as they are
subsumed by `PrintAst.ql`. Also, a new `no_parent_child_loops` is
added to detect back edges to a root node (back edges to a non-root
node are already detected by `no_double_parents.ql`).
2022-08-31 06:54:30 +02:00
Paolo Tranquilli
cd632dcfee
Swift: minor tweaks
...
Replace string singleton with a newtype-based one, and fix some doc
comment cosmetics.
2022-08-31 06:39:35 +02:00
github-actions[bot]
6c3c41e710
Add changed framework coverage reports
2022-08-31 00:21:31 +00:00
luchua-bc
e2e87980cc
Move pattern check to MatchRegexConfiguration::isSink
2022-08-30 22:48:12 +00:00
Asger F
32c8688805
JS: Make API graph more sparse for escaping class instance members
2022-08-30 20:24:55 +02:00
Mathias Vorreiter Pedersen
a4209df239
Merge branch 'main' into swift-field-flow-2
2022-08-30 18:52:23 +01:00
Ian Lynagh
6f82b06bd7
Kotlin: Implement and use singleOrNullSubType
...
Pulls another cast out into a utility function.
2022-08-30 18:31:01 +01:00
Geoffrey White
3e4a6be53f
Swift: Add missing test annotations.
2022-08-30 18:12:26 +01:00
Geoffrey White
430a8e141d
Swift: Fix issues.
2022-08-30 18:04:12 +01:00
Ed Minnix
6485e73cd3
Added documentation for providesMainIntent pred
2022-08-30 13:00:44 -04:00
Ian Lynagh
a07be192fa
Kotlin: Refactor useSimpleType to avoid some casts
2022-08-30 17:55:57 +01:00
Ed Minnix
500a6f3b86
Add check for files which provide the app launcher
...
Adds support for filtering which applications include the
`android.intent.action.MAIN` intent.
2022-08-30 12:54:26 -04:00
Ed Minnix
b5c54f5a3b
Add check for android:allowBackup explicitly set
...
`android:allowBackup` has a default value of `true`. So we want to flag
any file which explicitly sets it.
2022-08-30 12:53:12 -04:00
Asger F
5ad6c05a9c
Merge pull request #10205 from asgerf/mad-generics
...
Support type variables in MaD typings
2022-08-30 18:07:39 +02:00
Ian Lynagh
3459e5e432
Kotlin: Refactor extractStaticTypeAccessQualifier
...
Avoids a cast
2022-08-30 17:06:13 +01:00
Paolo Tranquilli
47b905bfaf
Swift: add PrintAst
2022-08-30 18:04:55 +02:00
Paolo Tranquilli
6914c4469c
Swift: accept tests after children changes
2022-08-30 17:36:39 +02:00
Paolo Tranquilli
4825e6b8ba
Swift: change some children
...
* made `members` children of an `IterableDeclContext`
* removed `elements` from the children of `EnumCaseDecl`, as they are
already children of the enclosing `EnumDecl`
* removed `base` from the children of `SelfApplyExpr`, as they currently
are already descendants via `getArgument(0).getExpr()`. We should
maybe consider either removing `base` from the schema and add it as
a shortcut on QL, or finish up replacing all `SelfApplyExpr` instances
with synthesized types.
2022-08-30 17:30:39 +02:00
Aditya Sharad
65095e0c5f
Merge pull request #10013 from adityasharad/docs/codeql-tools-changelog-links
...
Docs: Add CodeQL standard packs and bundle to CodeQL tools page
2022-08-30 07:54:42 -07:00
Asger F
0d88d20b56
JS: Actually update test output this time
2022-08-30 16:44:01 +02:00
Tamas Vajk
1bc105aff6
Kotlin: adjust log messages and severities in comment extraction
2022-08-30 15:45:25 +02:00
Tamas Vajk
5418c95a01
Kotlin: minor refactoring in comment extraction
2022-08-30 15:43:48 +02:00
Erik Krogh Kristensen
72942afe3e
Merge pull request #10220 from erik-krogh/overlapsWithNothing
...
print a correct range for ranges that doesn't contain any alpha-numeric chars
2022-08-30 15:38:34 +02:00
Tamas Vajk
9ced14672d
Kotlin: Assign container class as the owner of init block comments
2022-08-30 15:37:55 +02:00
Tamas Vajk
d9b3726ee8
Kotlin: Add test case for doc comment on init block
2022-08-30 15:37:00 +02:00
Anders Schack-Mulligen
4070860d2b
Merge pull request #10208 from aschackmull/java/dispatch-fixes
...
Java: A couple of small virtual dispatch fixes
2022-08-30 15:03:48 +02:00
Tamas Vajk
3513bb8eed
Kotlin: Change Modifiable::isPublic to not cover Kotlin internal members
2022-08-30 14:37:27 +02:00
Michael Nebel
a726aec362
C#: Update change note based on review comment.
2022-08-30 14:34:55 +02:00
Michael Nebel
944a9e6130
C#: Provide change-note.
2022-08-30 14:34:54 +02:00
Michael Nebel
b85db2cc35
C#: Remove '--cil' flag from the dbscheme comments and add dummy upgrade and downgrade scripts.
2022-08-30 14:34:54 +02:00
Michael Nebel
27d1008171
C#: Update tracer arguments.
2022-08-30 14:34:54 +02:00
Michael Nebel
da214c89d6
C#: Update unit tests.
2022-08-30 14:34:54 +02:00
Michael Nebel
ea40e7b29d
C#: Use the extractor option to decide, whether CIL should be enabled.
2022-08-30 14:34:54 +02:00
Michael Nebel
cc898e9b82
C#: Add extractor option parameter for enabling CIL.
2022-08-30 14:34:54 +02:00
Tamas Vajk
d9086e6328
Kotlin: Add test case for internal member accessed from java
2022-08-30 14:26:12 +02:00
Michael Nebel
e020ae77e0
Merge pull request #10158 from michaelnebel/csharp/narrowcollectiontypes
...
C#: Narrow collection like types in model generation.
2022-08-30 14:20:57 +02:00
Asger F
dd44187aed
Sync files again
2022-08-30 14:08:33 +02:00
Asger F
b107dd6855
Fix typo: receiver step -> type step
2022-08-30 14:08:33 +02:00
Asger F
f8b1aa7e7e
Also apply type step in getNodeFromSubPath
2022-08-30 14:08:33 +02:00
Asger F
51d6f752ab
JS: Add partially failing test
2022-08-30 14:08:31 +02:00
Asger F
d5d1365104
Synchronize ApiGraphModels.qll
2022-08-30 14:07:37 +02:00
Asger F
654c4eea0f
Add support for type steps
2022-08-30 14:07:37 +02:00
Asger F
ef627b4872
Add support for TypeVar[x] and typeVariable rows
2022-08-30 14:07:35 +02:00
Asger F
b414192dcc
Bugfix pruning in package-pruning API graph models
2022-08-30 14:05:41 +02:00
Asger F
623531a719
Merge pull request #10206 from asgerf/js/js-mad-changes
...
JS: Some JS-specific MaD changes
2022-08-30 14:03:14 +02:00
erik-krogh
7fd426e748
print a correct range for ranges that doesn't contain any alpha-numeric chars
2022-08-30 13:57:11 +02:00
Asger F
f589520917
JS: Add tests
2022-08-30 13:38:08 +02:00
Geoffrey White
4984d8f6f2
Apply suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-08-30 12:26:06 +01:00
Geoffrey White
645364e8b8
Update swift/ql/src/queries/Security/CWE-311/CleartextStorageDatabase.qhelp
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-08-30 12:24:49 +01:00
Ian Lynagh
f5d43b80ed
Merge pull request #10193 from igfoo/igfoo/extractClassSupertypes
...
Kotlin: Small simplification
2022-08-30 11:52:02 +01:00
Ian Lynagh
f118b39844
Merge pull request #10192 from igfoo/igfoo/array
...
Kotlin: Remove another cast
2022-08-30 11:51:48 +01:00
Ian Lynagh
a5893f38c5
Merge pull request #10189 from igfoo/igfoo/substituteTypeAndArguments
...
Kotlin: Remove a cast from substituteTypeAndArguments
2022-08-30 11:51:39 +01:00
Ian Lynagh
d6bdc8c711
Merge pull request #10178 from igfoo/igfoo/AnyDbType
...
Kotlin: Add AnyDbType
2022-08-30 11:51:25 +01:00
Tony Torralba
1f83c5833b
Merge pull request #10092 from zbazztian/zbazztian/string.replace-taint
...
Java: Add additional taint steps for java.lang.String methods
2022-08-30 12:24:37 +02:00
Paolo Tranquilli
55e5fa29cb
Merge pull request #10219 from github/redsun82/swift-add-params-to-init-name
...
Swift: fix integration tests
2022-08-30 12:06:09 +02:00
Paolo Tranquilli
57b8830972
Swift: fix integration tests
2022-08-30 11:46:27 +02:00
Paolo Tranquilli
fc919841ed
Merge pull request #10218 from github/redsun82/swift-add-params-to-init-name
...
Swift: make `ConstructorDecl`'s name include params
2022-08-30 11:34:56 +02:00
Nora Dimitrijević
ce1e4ad422
Merge branch 'main' into missing-check-scanf-squashed
2022-08-30 11:34:00 +02:00
Paolo Tranquilli
00755ecede
Merge pull request #10217 from github/redsun82/swift-add-qlgen-docstring
...
Swift: add missing `qlgen.py` docstring
2022-08-30 11:19:09 +02:00
Nora Dimitrijević
e10042be7d
C++: Improve docs based on doc-review
...
Thanks to @mchammer01 and @geoffw0 for the suggestions latest.
2022-08-30 11:14:57 +02:00
Paolo Tranquilli
38d65d3fae
Swift: make ConstructorDecl's name include params
...
In order to distinguish overloads of the constructor and for consistency
with other function calls, `ConstructorDecl` string representation uses
the name which includes parentheses and parameter labels.
For consistency also the destructor got the same change, which means
all `DestructorDecl`s will now show as `deinit()` rather than `deinit`.
2022-08-30 11:11:50 +02:00
Paolo Tranquilli
75a7bcd3b1
Swift: add missing qlgen.py docstring
2022-08-30 11:03:23 +02:00
Mathias Vorreiter Pedersen
f5471e4e1a
Merge pull request #10211 from github/redsun82/swift-generate-printast-first-step
...
Swift: generate indexed parent/child relationship
2022-08-30 09:55:05 +01:00
Erik Krogh Kristensen
2aec53b7fb
Merge pull request #10215 from erik-krogh/wayToLargeRangeAgainstRC
...
put a limit on the length of the equivalent range
2022-08-30 10:37:07 +02:00
Paolo Tranquilli
9102cb5d0d
Swift: make some ParentChild predicates private
2022-08-30 10:35:08 +02:00
Erik Krogh Kristensen
8f0b999c31
Merge pull request #10207 from erik-krogh/fixRank
...
fix performance issue in the ReDoS query
2022-08-30 10:17:11 +02:00
Paolo Tranquilli
beb0472811
Swift: fix ParentChild generation
...
There was an issue in case multiple inheritance from classes with
children was involved, where indexes would overlap.
The generated code structure has been reshuffled a bit, with
`Impl::getImmediateChildOf<Class>` predicates giving 0-based children
for a given class, including those coming from bases, and the final
`Impl::getImmediateChild` disjuncting the above on final classes only.
This removes the need of `getMaximumChildrenIndex<Class>`, and also
removes the code scanning alerts.
Also, comments were fixed addressing the review.
2022-08-30 10:15:11 +02:00
Erik Krogh Kristensen
25ee5545e6
Merge pull request #9751 from erik-krogh/dynCall
...
JS: add call-edge for dynamic dispatch to unknown property from an object literal
2022-08-30 10:07:08 +02:00
erik-krogh
e2caf3e8c0
put a limit on the length of the equivalent range
2022-08-30 09:29:22 +02:00
Erik Krogh Kristensen
c2679d8632
Merge pull request #10213 from erik-krogh/wayToLargeRange
...
put a limit on the length of the equivalent range in overly-large-range
2022-08-30 09:28:16 +02:00
erik-krogh
9963def300
update expected output of test that was failing on main. semantic merge conflict between #10202 and #10184
2022-08-30 09:15:36 +02:00
Anders Schack-Mulligen
4a2209752e
Merge pull request #10214 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-08-30 09:13:30 +02:00
github-actions[bot]
f2e37d25b3
Add changed framework coverage reports
2022-08-30 00:21:28 +00:00
Andrew Eisenberg
e14b803125
Add paragraph about lock files in library packs with tests
2022-08-29 14:08:12 -07:00
Andrew Eisenberg
f737e07e2b
Apply suggestions from code review
...
Co-authored-by: Dave Bartolomeo <dbartol@github.com >
2022-08-29 14:00:46 -07:00
Andrew Eisenberg
6ff006ce67
Add sentence about not needing to upgrade on CLI >= v2.3.4
2022-08-29 13:56:07 -07:00
Aditya Sharad
f175c60069
Apply suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-08-29 12:26:35 -07:00
erik-krogh
f47b097d7c
put a limit on the length of the equivalent range
2022-08-29 21:03:52 +02:00
Paolo Tranquilli
3f4a330658
Swift: make ParentChild::Impl module private
2022-08-29 17:35:16 +02:00
Paolo Tranquilli
f14f9375e0
Merge pull request #10210 from github/redsun82/swift-fix-double-parent
...
Swift: fix double parent
2022-08-29 17:27:57 +02:00
Paolo Tranquilli
20e94b8a38
Swift: add more tests for the generated parent-child relationship
2022-08-29 17:10:46 +02:00
Paolo Tranquilli
105c0d0dce
Swift: update after generated parent-child changes
2022-08-29 17:10:46 +02:00
Paolo Tranquilli
b5aad04f65
Swift: add indexes to generated parent-child library
2022-08-29 17:10:46 +02:00
Paolo Tranquilli
7b50c958f7
Swift: fix Cfg.expected
2022-08-29 17:09:42 +02:00
erik-krogh
52b9ff81c5
Merge branch 'main' into dynCall
2022-08-29 15:30:01 +02:00
Erik Krogh Kristensen
27bc69883c
Merge pull request #10184 from erik-krogh/ts48
...
JavaScript: Update to TypeScript 4.8
2022-08-29 15:03:32 +02:00
Anders Schack-Mulligen
e26a7fc4f3
Merge pull request #10173 from zbazztian/spring-crudrepository
...
Java: Add data flow model for Spring's CrudRepository.save() method
2022-08-29 15:00:07 +02:00
Paolo Tranquilli
4e453b1ac5
Swift: accept test changes
2022-08-29 14:57:03 +02:00
Paolo Tranquilli
0aecbc2a01
Swift: reorganize some children in schema.yml
2022-08-29 14:52:14 +02:00
Michael Nebel
e8d726606b
C#/Java: Add descriptive comment on negative summaries in ExternalFlow.
2022-08-29 14:29:32 +02:00
Michael Nebel
91abf79404
Java: Update negative summaries where static initializers has been excluded.
2022-08-29 14:29:32 +02:00
Michael Nebel
2b1423dd74
Java: Exclude static initializers from model generation.
2022-08-29 14:29:32 +02:00
Michael Nebel
37aa6b2c5f
C#: Add file level QL Doc.
2022-08-29 14:29:32 +02:00
Michael Nebel
dbfd16647b
Java: Add negative model CSV validation test.
2022-08-29 14:29:32 +02:00
Michael Nebel
290c35e7c6
Java: Use negative summary models in unsupported external api telemetry query.
2022-08-29 14:28:55 +02:00
Michael Nebel
23e0ee66e0
Java: Add negative models for commons-io.
2022-08-29 14:28:55 +02:00
Michael Nebel
beb85c20f2
Java: Update commons-io generated positive models based on main.
2022-08-29 14:28:55 +02:00
erik-krogh
196dfd9385
update expected output of the misspelling test
2022-08-29 14:26:59 +02:00
Asger F
d6ee54eb09
Merge pull request #10202 from asgerf/js/typescript-conditional-types
...
JS: Enable type extraction inside conditional types again
2022-08-29 14:26:06 +02:00
erik-krogh
8d162fac52
add query detecting consistent casing of names
2022-08-29 14:16:41 +02:00
Anders Schack-Mulligen
bd6acc0d75
Java: Refactor upcastCand, and track type flow for upcasts to unbound generics.
2022-08-29 13:57:39 +02:00
Anders Schack-Mulligen
fc415b32c2
Java: Bugfix in TypeFlow.
2022-08-29 13:50:13 +02:00
Anders Schack-Mulligen
e89b42fc11
Java: Allow dispatch to methods on abstract classes without subtypes.
2022-08-29 13:48:55 +02:00
erik-krogh
77949cbeb3
add context to the rankState predicate in ExponentialBackTracking.qll
2022-08-29 13:42:05 +02:00
Anders Schack-Mulligen
6e7dcfcc6e
Merge pull request #10097 from aschackmull/java/unification
...
Java: Improve virtual dispatch via better unification check and deduplicate code with parameterised module
2022-08-29 13:28:04 +02:00
erik-krogh
b1e53280a6
fix that the wrong line got deleted
2022-08-29 13:26:02 +02:00
Erik Krogh Kristensen
bd5fd7d963
fix typo in change-note
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-08-29 13:25:54 +02:00
erik-krogh
56292cad26
don't modify the TypeScript nodes, instead forward illegalDecorators to the java extractor
2022-08-29 13:22:04 +02:00
erik-krogh
d0814aa37c
Go: add change-note for go
2022-08-29 13:10:23 +02:00
erik-krogh
33ba01927f
Go: add CWE tag and @security-severity tag to go/insecure-hostkeycallback
2022-08-29 13:10:23 +02:00
erik-krogh
f09fc7b0fc
Java: add java change-note
2022-08-29 13:10:21 +02:00
erik-krogh
8b37168223
Java: remove security tag from queries not in the security folder and with missing security-severity tags
2022-08-29 13:08:56 +02:00
erik-krogh
f678c8a967
PY: add python change-note
2022-08-29 13:08:52 +02:00
erik-krogh
4353937bcf
PY: add missing security tags on Python queries
2022-08-29 13:08:47 +02:00
Asger F
ea0ae98e58
JS: Use explicit this
2022-08-29 12:39:53 +02:00
erik-krogh
6aca9b9f49
fix support for illegal decorators in the TypeScript extractor
2022-08-29 12:14:58 +02:00
erik-krogh
50734c7c6a
bump the TypeScript version in the list of supported languages
2022-08-29 12:14:58 +02:00
erik-krogh
e0ff27331f
bump extractor version
2022-08-29 12:14:58 +02:00
erik-krogh
97ffd2d4d9
add change-note
2022-08-29 12:14:58 +02:00
erik-krogh
b7367ca649
update to TypeScript 4.8RC
2022-08-29 12:14:55 +02:00
Asger F
45d64c48e3
JS: Update test output
2022-08-29 12:01:47 +02:00
Philip Ginsbach
0634b9b9f7
rename example module and parameters
2022-08-29 10:55:07 +01:00
Anders Schack-Mulligen
adfd474fee
Java: Move file.
2022-08-29 11:50:54 +02:00
Philip Ginsbach
b74886a920
better explain the relevance of applicative instantiation
2022-08-29 10:49:09 +01:00
Philip Ginsbach
61b8cee84b
reference module expression documentation
2022-08-29 09:39:33 +01:00
Philip Ginsbach
c21ca8f312
better description of example code
2022-08-29 09:19:46 +01:00
Philip Ginsbach
5c69b42efa
better explanation of nominal typing
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:15:39 +01:00
Asger F
99f03a0d61
JS: Make API graphs take types from models into account
2022-08-29 10:14:56 +02:00
Asger F
d166727db9
JS: Add WithStringArgument[arg=const] filter
2022-08-29 10:14:56 +02:00
Asger F
4f3c8ec770
JS: Add AnyMember MaD token
2022-08-29 10:14:53 +02:00
Asger F
9887025af2
JS: Some minor fixes in Classes.qll
2022-08-29 10:14:53 +02:00
Philip Ginsbach
89de63ad1d
better explanation of what type signatures are used for
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:13:59 +01:00
Philip Ginsbach
7ea0f8d96b
better explanation of structural typing
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:12:31 +01:00
Philip Ginsbach
c5110e5d68
better description for predicate signatures
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:11:19 +01:00
Philip Ginsbach
cca5dfbbde
better description for type signatures
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:10:23 +01:00
Philip Ginsbach
16973c9a80
better formulation for module parameters
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:07:59 +01:00
Philip Ginsbach
7806308d5f
better formulation for module signatures
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:07:19 +01:00
Philip Ginsbach
5957494583
better explanation of structural typing
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:06:45 +01:00
Philip Ginsbach
c9ecb32318
better description of parameterized module instantiation
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-08-29 09:05:26 +01:00
Philip Ginsbach
56f51ee1ff
use parameterized rather than parameterised
2022-08-29 09:02:37 +01:00
Erik Krogh Kristensen
68bf9f39b9
Merge pull request #10181 from erik-krogh/fixCons
...
QL: remove consistency errors related to resolving multiple predicates from parameterized modules
2022-08-29 09:40:07 +02:00
erik-krogh
dda16a0a30
add a isSignature() predicate to ClasslessPredicate
2022-08-29 09:17:40 +02:00
Harry Maclean
5d356df300
QLDoc fixes
2022-08-29 14:24:37 +12:00
Harry Maclean
9651fa1573
Ruby: Add ActiveResource change note
2022-08-29 14:24:37 +12:00
Harry Maclean
ec58107439
QlDoc fix
2022-08-29 14:24:37 +12:00
Harry Maclean
dcc0123023
Fix QL4QL alert
2022-08-29 14:24:37 +12:00
Harry Maclean
06c95ba457
Ruby: QLDoc
2022-08-29 14:24:37 +12:00
Harry Maclean
75e1497fbf
Ruby: Import ActiveResource by default
2022-08-29 14:24:37 +12:00
Harry Maclean
aa6edb0edb
Ruby: Model ActiveResource
2022-08-29 14:24:37 +12:00
Harry Maclean
09ad1c29bd
Ruby: Add SelfVariableAccessCfgNode
2022-08-29 14:24:37 +12:00
Andrew Eisenberg
68c2c16928
Address changes from PR
2022-08-26 14:35:59 -07:00
Ian Lynagh
4cd7bf2ebb
Kotlin: Small simplification
...
Also removes a cast
2022-08-26 16:28:10 +01:00
Ian Lynagh
d2a5281d94
Kotlin: Remove another cast
2022-08-26 15:59:26 +01:00
Nick Rolfe
898689f550
Merge pull request #9896 from github/nickrolfe/hardcoded_code
...
Ruby: port js/hardcoded-data-interpreted-as-code
2022-08-26 13:49:25 +01:00
Paolo Tranquilli
7887f669c1
Merge pull request #10175 from github/redsun82/swift-missing-extractions
...
Swift: fix missing extractions
2022-08-26 14:09:09 +02:00
Ian Lynagh
131632e7c1
Kotlin: Remove a cast from substituteTypeAndArguments
...
It looks like it was safe, but it was hard to see why, and may
become unsafe following future kotlinc changes.
2022-08-26 13:06:05 +01:00
Paolo Tranquilli
b5d18b05e2
Swift: accept new module type in tests
2022-08-26 13:52:24 +02:00
AlexDenisov
bb167a3d77
Merge pull request #10187 from github/redsun82/swift-port-frontend-invocations-test-to-linux
...
Swift: port frontend-invocations test to linux
2022-08-26 12:53:19 +02:00
Paolo Tranquilli
c9b14b4459
Swift: address review comments
2022-08-26 12:49:19 +02:00
Paolo Tranquilli
ced36ffc61
Swift: run swift instead of swift-frontend on Linux
2022-08-26 12:12:21 +02:00
Paolo Tranquilli
c7c42acbf5
Swift: port frontend-invocations test to linux
...
`swift-frontend` will be in `$PATH` on Linux, and apparently it does
not require the `-sdk` option.
2022-08-26 12:03:18 +02:00
Anders Schack-Mulligen
3e5155d1a1
Java: Address review comments.
2022-08-26 11:45:01 +02:00
Paolo Tranquilli
ebc7432f46
Swift: implement imported_ and exported_modules
...
This has expanded the required builtin symbols.
2022-08-26 11:37:14 +02:00
github-actions[bot]
3b4ad3c4f1
Post-release preparation for codeql-cli-2.10.4
2022-08-26 09:32:11 +00:00
Paolo Tranquilli
2e9d9cfb20
Swift: add imported modules properties to ModuleDecl
2022-08-26 11:23:02 +02:00
Paolo Tranquilli
a5a58d3dc5
Swift: start with loaded modules for extraction
2022-08-26 11:23:02 +02:00
Nick Rolfe
52d46552af
Ruby: fix 'inefficient string comparison' alert
2022-08-26 09:58:22 +01:00
Erik Krogh Kristensen
c02387a25a
Merge pull request #10153 from erik-krogh/more-acronyms
...
more renamings of acronyms to camelCase
2022-08-26 10:52:17 +02:00
Nick Rolfe
95bf18fdc9
Ruby: make hex-escaped strings ("\xCD\xEF" etc.) sources of hardcoded data
2022-08-26 09:33:03 +01:00
Paolo Tranquilli
0971ca6a82
Swift: emit <Builtin>.trap instead of .trap
2022-08-26 09:35:19 +02:00
Michael Nebel
f4835e3960
C#: Update flow summaries test cases based on the latest models.
2022-08-26 09:30:08 +02:00
Michael Nebel
e71ab59c9a
C#: Update the generated models.
2022-08-26 09:30:07 +02:00
Michael Nebel
be4c2231d1
C#: Avoid generating new source models on 'file' kind sources.
2022-08-26 09:30:07 +02:00
Michael Nebel
a83ab79d31
C#: Update models based on relevant collection changes.
2022-08-26 09:30:07 +02:00
Michael Nebel
41274d9e5a
C#: Update expected test output.
2022-08-26 09:30:07 +02:00
Michael Nebel
4bf41d0b81
C#: Update model generator to exclude models for some collection like types.
2022-08-26 09:30:07 +02:00
Michael Nebel
31dddef94e
C#: Update all models prior to model generator change.
2022-08-26 09:30:07 +02:00
Michael Nebel
83b3125dea
C#: Some test examples of collection like types that should be excluded.
2022-08-26 09:30:07 +02:00
Paolo Tranquilli
2c153f68e1
Swift: replace processed with seen in module visiting
2022-08-26 09:28:38 +02:00
Paolo Tranquilli
d5af30d28d
Swift: add comment to getBuiltinDecls
2022-08-26 09:28:02 +02:00
Asger F
1a0abfa7a5
JS: Enable type extraction inside conditional types again
2022-08-26 09:27:53 +02:00
Tamás Vajk
4f5c06fed7
Merge pull request #10169 from tamasvajk/kotlin-array-iterator
...
Kotlin: fix array iterator extraction
2022-08-26 08:33:52 +02:00
Raul Garcia
b51c6d6651
Fixes based on PR feedback
2022-08-25 16:40:50 -07:00
Geoffrey White
2d57786dae
Merge branch 'main' into cleartext
2022-08-25 23:10:36 +01:00
Geoffrey White
7fd64f1d9c
Swift: Make QL-for-QL happy.
2022-08-25 23:06:03 +01:00
Geoffrey White
926da4bedc
Swift: Query descriptions and metadata.
2022-08-25 22:52:19 +01:00
Geoffrey White
9a53a40ac6
Swift: Qhelp and examples for both queries.
2022-08-25 22:52:18 +01:00
Geoffrey White
2690732c75
Swift: Special cases to get taint flow working.
2022-08-25 22:15:19 +01:00
Geoffrey White
698a9e2e2e
Swift: Realm database support.
2022-08-25 22:15:18 +01:00
Geoffrey White
3126fb930d
Swift: Core Data support.
2022-08-25 22:15:18 +01:00
Geoffrey White
456ab980a5
Swift: Fix duplicate results.
2022-08-25 22:15:17 +01:00
Geoffrey White
0cd2efc1b1
Swift: CleartextTransmission query.
2022-08-25 22:15:16 +01:00
Geoffrey White
dacb7f5f25
Swift: Add a SensitiveExprs lib (and test it).
2022-08-25 22:15:15 +01:00
Geoffrey White
2aa6dd20ff
Swift: Make tests more accurate and don't use 'pwd' as a variable name (it has alternative meanings so is not a good test).
2022-08-25 22:15:14 +01:00
Geoffrey White
1c5283628b
Swift: Additional test cases.
2022-08-25 22:15:13 +01:00
Andrew Eisenberg
53d8bf27ff
Add docs for codeql workspaces
...
See https://github.com/github/codeql-core/issues/2687
2022-08-25 13:07:31 -07:00
Andrew Eisenberg
2ad0b2819a
Fix typos in docs
2022-08-25 12:54:38 -07:00
erik-krogh
c225605ed7
QL: remove consistency errors related to resolving multiple predicates from parameterized modules
2022-08-25 21:43:30 +02:00
erik-krogh
1d1aa7c8b4
update some expected output
2022-08-25 20:52:30 +02:00
erik-krogh
4b06bca770
fixup getAPrimaryQlClass
2022-08-25 20:52:30 +02:00
erik-krogh
ebb1106d9d
add missing qldoc
2022-08-25 20:52:30 +02:00
erik-krogh
cc7a9ef97a
rename more acronyms
2022-08-25 20:52:27 +02:00
Andrew Eisenberg
7f8fcef62c
Add a message about upgrading old databases
2022-08-25 11:51:42 -07:00
Andrew Eisenberg
b78faa4b71
Remove upgrade database docs
...
Database upgrades happens implicitly now as part of analysis. There
is no need to call this out in separate steps.
2022-08-25 11:39:28 -07:00
Andrew Eisenberg
5fe06abc24
Apply suggestions from code review
2022-08-25 11:35:36 -07:00
Arthur Baars
24526108d3
Ruby: update dbscheme stats
2022-08-25 17:48:28 +02:00
Arthur Baars
f77c2ac3d0
Update tests
2022-08-25 17:40:52 +02:00
Arthur Baars
ed005077fa
Ruby: upgrade/downgrade scripts
2022-08-25 17:40:52 +02:00
Ian Lynagh
5be8e45d09
Kotlin: Add AnyDbType
...
All DbType* types extend it, and `Label`s require their argument to be a
subtype of it.
2022-08-25 16:40:27 +01:00
Ian Lynagh
f318dd5e0e
Merge pull request #10174 from github/release-prep/2.10.4
...
Release preparation for version 2.10.4
2022-08-25 16:30:33 +01:00
Arthur Baars
59773eb743
Ruby: update tree-sitter grammar
2022-08-25 17:21:29 +02:00
Nora Dimitrijević
7d24d96d80
C++: Optimize MissingCheckScanf/bigStep()
2022-08-25 17:12:25 +02:00
Nora Dimitrijević
02772ed20c
Revert changes to .gitignore and .clang-format
...
because they are potentially too global, belong in a separate PR.
2022-08-25 16:37:39 +02:00
Philip Ginsbach
deecf76fd8
define -> declare
2022-08-25 15:06:38 +01:00
Nora Dimitrijević
2bd866cc82
C++: improve change note and move to right place
2022-08-25 16:00:25 +02:00
Rasmus Wriedt Larsen
0728ecebbb
Python: Highlight that import problem is not just a relative problem
2022-08-25 15:54:21 +02:00
Rasmus Wriedt Larsen
1ca19533e0
Python: Add import problem test from the wild
2022-08-25 15:50:55 +02:00
Ian Lynagh
ef98ce16f8
Update javascript/ql/lib/CHANGELOG.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:25:38 +01:00
Ian Lynagh
711e769382
Update go/ql/lib/change-notes/released/0.2.4.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:25:30 +01:00
Ian Lynagh
b951e94d85
Update go/ql/lib/CHANGELOG.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:25:20 +01:00
Ian Lynagh
f20825ae55
Update python/ql/lib/CHANGELOG.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:25:10 +01:00
Ian Lynagh
b21883292d
Update python/ql/lib/change-notes/released/0.5.4.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:24:58 +01:00
Ian Lynagh
a904438828
Update ruby/ql/lib/CHANGELOG.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:24:44 +01:00
Ian Lynagh
5cd4e0d3b1
Update ruby/ql/lib/change-notes/released/0.3.4.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:24:38 +01:00
Ian Lynagh
40b1825ef1
Update javascript/ql/lib/change-notes/released/0.2.4.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:24:20 +01:00
Ian Lynagh
9a3b540551
Update csharp/ql/src/change-notes/released/0.3.3.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:24:11 +01:00
Ian Lynagh
fb12d85d3c
Update csharp/ql/src/CHANGELOG.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:24:00 +01:00
Ian Lynagh
0479a59640
Update csharp/ql/lib/change-notes/released/0.3.4.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:23:44 +01:00
Ian Lynagh
5e06277b38
Update cpp/ql/lib/change-notes/released/0.3.4.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:23:38 +01:00
Ian Lynagh
d0ecb9f54b
Update csharp/ql/lib/CHANGELOG.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:23:32 +01:00
Ian Lynagh
badb2b7f13
Update cpp/ql/lib/CHANGELOG.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-08-25 14:23:25 +01:00
Nora Dimitrijević
ad56274a73
C++: Small improvements to query qldoc and message
2022-08-25 15:22:41 +02:00
Erik Krogh Kristensen
06afe9c0f4
Merge pull request #9816 from erik-krogh/msgConsis
...
Make alert messages consistent across languages
2022-08-25 15:20:01 +02:00
Paolo Tranquilli
df3dc9677f
Swift: fix missing extractions from Builtin
...
There were missing extractions from the Builtin (and other) modules.
This was actually caused by two issues:
* we did not visit all required modules, as for example the `Builtin`
module does not appear as being imported by anybody (together with
another mysterious `__Objc` module)
* moreover the `Builtin` module works internally by only creating
declarations on demand, and does not provide a list of its top level
declarations.
The first problem was solved by moving module collection to the actual
visiting. This may mean we extract less modules, as we only extract the
modules we actually use something from (recursively). This change can
be reverted if we feel we need it.
The second one was solved by explicitly listing the builtin symbols
encountered during a normal extraction. This does mean this list needs
to be kept up to date.
2022-08-25 15:18:24 +02:00
Nora Dimitrijević
a6a30b3725
C++: clarify ScanfOutput.getMinimumGuardConstant()
2022-08-25 15:07:39 +02:00
github-actions[bot]
0f63bc077f
Release preparation for version 2.10.4
2022-08-25 12:52:26 +00:00
yoff
9aa8b46cbf
Python: remove redundant code
2022-08-25 12:48:08 +00:00
Nora Dimitrijević
e39229d59e
C++: Remove unique-Instruction kludge in ScanfOutput
...
Passes tests.
2022-08-25 14:38:58 +02:00
Nora Dimitrijević
d8800c03b6
C++: new helper predicates in ScanfFunctionCall
...
Extract some of the logic from the `cpp/missing-check-scanf` query into
the more generally useful `getOutputArgument(int index)`, `getAnOutputArgument()`,
and `getNumberOfOutputArguments()` predicates.
2022-08-25 14:32:15 +02:00
yoff
6b4716485b
Python: rename file
2022-08-25 12:23:09 +00:00
yoff
54dde41329
Python: remove example code
2022-08-25 12:19:12 +00:00
Ian Lynagh
2e2621adad
Merge pull request #10154 from igfoo/igfoo/findSubType
...
Kotlin: Implement and use fun <T,reified S: T> Iterable<T>.findSubType
2022-08-25 12:57:46 +01:00
Sebastian Bauersfeld
130e1892f4
Address review comments.
2022-08-25 18:49:38 +07:00
Sebastian Bauersfeld
207aebc581
Change wording of change note.
2022-08-25 18:47:36 +07:00
Sebastian Bauersfeld
36b5e5f61a
Java: Add change notes.
2022-08-25 17:58:24 +07:00
Sebastian Bauersfeld
a486a89cee
Java: Taint flow through org.springframework.data.repository.CrudRepository.save().
2022-08-25 17:58:24 +07:00
Erik Krogh Kristensen
ba1ad00d2a
Merge pull request #10062 from erik-krogh/redosPrefix
...
JS: use the shared regular expression libraries in `js/case-sensitive-middleware-path`
2022-08-25 12:57:16 +02:00
Nick Rolfe
acf5b11139
Merge remote-tracking branch 'origin/main' into nickrolfe/hardcoded_code
2022-08-25 11:44:55 +01:00
erik-krogh
c7aa58252a
change "does not seem to check" to "does not check" in unchecked-cast-in-equals queries
2022-08-25 12:31:58 +02:00
yoff
800165d63c
python: udate deprecated call
2022-08-25 09:49:46 +00:00
yoff
d9444d8b08
Python: update synced file FlowSummaryImpl.qll
2022-08-25 09:31:45 +00:00
yoff
0b5d4c59dd
Merge branch 'main' of https://github.com/github/codeql into python-dataflow/flow-summaries-from-scratch
...
synced files have changed
2022-08-25 09:24:05 +00:00
Ian Lynagh
12eab3d7f0
Kotlin: Specialise findSubType to IrDeclaration
...
We only use it on that type, and this makes the uses a bit quieter.
2022-08-25 10:11:19 +01:00
Ian Lynagh
b0ae12850d
Merge pull request #10160 from igfoo/igfoo/more-not-null-exprs
...
Kotlin: Remove the last not-null-expressions
2022-08-25 10:05:53 +01:00
Ian Lynagh
bf6d9f8c23
Merge pull request #10161 from igfoo/igfoo/exec
...
Make a load of files non-executable
2022-08-25 10:05:39 +01:00
Tamas Vajk
15305fd9bb
Kotlin: Fix iterator extraction of IntArray, BooleanArray, ...
2022-08-25 11:05:17 +02:00
yoff
4a5fa5993d
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-08-25 10:47:16 +02:00
Anders Schack-Mulligen
c6f89aac0a
Merge pull request #10141 from aschackmull/ruby/perf-apigraph
...
Ruby: Perf fix for trackUseNode.
2022-08-25 10:22:07 +02:00
Tamas Vajk
7196fdd475
Kotlin: fix array iterator extraction to work outside of for loops
2022-08-25 09:23:34 +02:00
Tamas Vajk
af2614be84
Kotlin: Add array iterator tests
2022-08-25 09:17:50 +02:00
Paolo Tranquilli
606b9e6e38
Revert "Swift: rollback removal of std::variant"
...
This reverts commit 50d9a2e9cd .
2022-08-25 09:12:35 +02:00
Edward Minnix III
e6a1b1fab9
Rename allowBackup query id
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-08-24 15:54:13 -04:00
Ed Minnix
de36372d1c
Refactor android:backupAllowed query
...
Refactor the query to check for the nonexistence of the
`android:allowBackup` attribute being set to false.
The default value is true, so we need to check for it being explicitly
marked false.
2022-08-24 15:54:13 -04:00
Ed Minnix
a036639ecd
Added change notes
2022-08-24 15:54:13 -04:00
Ed Minnix
dad4a403db
Add support for android:allowBackup default value
...
The default value of `android:allowBackup` is `true`. Added support for
detecting if the default value is used.
2022-08-24 15:54:13 -04:00
Ed Minnix
6509426fb3
android:allowBackup query documentation
2022-08-24 15:54:13 -04:00
Ed Minnix
44b0a2b8af
Android allowBackup query
2022-08-24 15:54:13 -04:00
Ed Minnix
7d15af6caa
Add allowBackup check to AndroidManifest
2022-08-24 15:54:13 -04:00
Ed Minnix
dac64eeca7
Query test files
2022-08-24 15:54:13 -04:00
Nora Dimitrijević
5c894ae40b
Merge branch 'main' into missing-check-scanf-squashed
2022-08-24 21:14:57 +02:00
Nora Dimitrijević
6158ee1133
Change note
2022-08-24 21:09:24 +02:00
Nora Dimitrijević
170d12bf5a
Write MissingCheckScanf.qhelp
2022-08-24 19:58:19 +02:00
Mathias Vorreiter Pedersen
f2d9393928
Swift: Only test local-flow step relations for nodes with proper location information.
2022-08-24 17:14:11 +01:00
Ian Lynagh
3fcfd32eb1
Make *.ql non-executable
2022-08-24 16:55:11 +01:00
Ian Lynagh
5d97bb35d0
Make *.cs non-executable
2022-08-24 16:54:34 +01:00
Ian Lynagh
237b3670b4
Make *.xml non-executable
2022-08-24 16:53:48 +01:00
Ian Lynagh
b9a4b5ab9a
Make *.qlref non-executable
2022-08-24 16:53:16 +01:00
Ian Lynagh
4cd618f81c
Make *.expected non-executable
2022-08-24 16:51:50 +01:00
Henry Mercer
d9c078060a
Merge pull request #10159 from github/codeql-ci/js-atm-new-release
...
JS: Bump version numbers of ML-powered packs after 0.3.1 release
2022-08-24 16:50:41 +01:00
Ian Lynagh
344863d896
Make *.qhelp non-executable
2022-08-24 16:38:15 +01:00
Ian Lynagh
bb73767042
Make *.java non-executable
2022-08-24 16:38:03 +01:00
Ian Lynagh
5f8d8cdf40
Make *.dbscheme non-executable
2022-08-24 16:37:26 +01:00
Ian Lynagh
501a9b3c6b
Make *.qll non-executable
2022-08-24 16:36:15 +01:00
Jami
b3e88f8234
Merge pull request #9983 from jcogs33/android-implicit-export
...
Java: query to detect implicitly exported Android components
2022-08-24 10:52:50 -04:00
erik-krogh
014dcd1454
fixup a Python query, it didn't select something with a location
2022-08-24 16:23:20 +02:00
erik-krogh
5d9b25c75d
Merge branch 'main' into msgConsis
2022-08-24 16:19:32 +02:00
Mathias Vorreiter Pedersen
80bf22cf6f
Swift: Accept test changes in query tests.
2022-08-24 14:52:36 +01:00
Mathias Vorreiter Pedersen
2d90940111
Swift: Add field flow.
2022-08-24 14:52:36 +01:00
Ian Lynagh
b485706fde
Kotlin: Remove the last not-null-expressions
2022-08-24 14:39:03 +01:00
Henry Mercer
eb7091a6d3
Merge branch 'main' into codeql-ci/js-atm-new-release
2022-08-24 14:37:44 +01:00
Ian Lynagh
e4f66b8aa7
Kotlin: Refactor writeUpdateInPlaceExpr
...
In tryExtractArrayUpdate we need to know if writeUpdateInPlaceExpr will
succeed before we start writing any TRAP.
2022-08-24 14:31:10 +01:00
Paolo Tranquilli
610c788e34
Merge pull request #10156 from github/redsun82/swift-import-optional-module
...
Swift: make `ImportDecl:imported_module` optional
2022-08-24 15:18:04 +02:00
github-actions[bot]
3af330dce9
JS: Bump version of ML-powered library and query packs to 0.3.2
2022-08-24 13:12:12 +00:00
github-actions[bot]
613c13c2bf
JS: Bump patch version of ML-powered library and query packs
2022-08-24 13:03:14 +00:00
Mathias Vorreiter Pedersen
436fe65c7b
Merge pull request #10155 from MathiasVP/swift-properties-as-callables
...
Swift: Model property getters, setters and observers as callables
2022-08-24 13:57:12 +01:00
erik-krogh
1c0f2251e2
Merge branch 'main' into msgConsis
2022-08-24 14:38:57 +02:00
Paolo Tranquilli
2ee8d1a9d3
Swift: implement optional ImportDecl:imported_module
2022-08-24 14:31:55 +02:00
Mathias Vorreiter Pedersen
06a39d2b93
Swift: Accept test change.
2022-08-24 13:29:17 +01:00
Paolo Tranquilli
7873f07fac
Swift: define ImportDecl:imported_module optional
2022-08-24 14:26:29 +02:00
Mathias Vorreiter Pedersen
edb29b498d
Swift: Teach 'DataFlowDispatch' about property getters, observers and setters.
2022-08-24 13:08:26 +01:00
Ian Lynagh
31e1230c64
Kotlin: Remove another not-null-expr
2022-08-24 12:51:15 +01:00
Ian Lynagh
20ac15d549
Merge pull request #10152 from igfoo/igfoo/not-null-exprs
...
Kotlin: Remove more not-null expressions
2022-08-24 12:18:45 +01:00
Ian Lynagh
4cd90a15d0
Kotlin: Use findSubType in KotlinUsesExtractor too
2022-08-24 12:16:16 +01:00
Ian Lynagh
28d95f4d99
Kotlin: Implement and use fun <T,reified S: T> Iterable<T>.findSubType
...
We had a lot of uses of find which looked for a subtype, but then had to
cast (seemingly unsafely) the result to that subtype. This pulls all the
casts out into a utility function.
2022-08-24 12:10:53 +01:00
erik-krogh
f1799ae3d2
print the endpointExample in the alert-messsage, and only report one working example
2022-08-24 13:09:48 +02:00
Erik Krogh Kristensen
28d58be1b6
Merge pull request #10126 from erik-krogh/myApply
...
JS: precise flow through calls to `.apply()`
2022-08-24 12:55:36 +02:00
Mathias Vorreiter Pedersen
cee15277ce
Merge pull request #10144 from MathiasVP/swift-extract-this-param-decl
...
Swift: Extract `self` parameter declarations
2022-08-24 11:17:51 +01:00
Ian Lynagh
b5f20e40fc
Kotlin: Remove some more not-null-expressions
2022-08-24 11:13:27 +01:00
Ian Lynagh
8fe59e7ebc
Kotlin: Remove another not-null-expr
2022-08-24 11:09:31 +01:00
Ian Lynagh
01f27ea331
Kotlin: Remove another not-null-expr
2022-08-24 11:07:10 +01:00
Michael Nebel
c514c8838d
Merge pull request #9867 from michaelnebel/csharp/nosummary
...
C#: Negative summaries (ie. no flow through)
2022-08-24 12:06:05 +02:00
Ian Lynagh
940f18f5ae
Kotlin: Remove another not-null-expr
2022-08-24 10:59:15 +01:00
Ian Lynagh
44501f5318
Kotlin: Remove another not-null-expr
2022-08-24 10:57:36 +01:00
Ian Lynagh
da7b7ce9f5
Kotlin: Remove some not-null-exprs
2022-08-24 10:55:31 +01:00
Ian Lynagh
623d87aaca
Merge pull request #10142 from igfoo/igfoo/not-null-expr
...
Kotlin: Remove some more non-null-expressions
2022-08-24 10:37:37 +01:00
Ian Lynagh
8b4cf295bc
Merge pull request #10110 from igfoo/igfoo/compression
...
Kotlin: Add support for TRAP compression
2022-08-24 10:37:20 +01:00
Nora Dimitrijević
ca162a4365
C++: complete initial implementation of cpp/missing-check-scanf
...
There are still some remaining FPs (haven't fully tested them)
that should be ironed out in a follow-up to increase the precision, e.g.:
* if scanf(&i) != 1 return
if maybe() && scanf(&i) != 1 return
use(i) // should be OK on both counts
* The minimum guard constant for the *_s variants may not be right.
* int i[2]
scanf(i, i+1) // second i is flagged as a use of the first
* Maybe loosen the "unguarded or badly guarded use() = bad" policy to
"unguarded but already-initialized = good" and "badly guarded = bad",
since a lot of FPs in MRVA fall into the "unguarded but already-
initialized" bucket.
2022-08-24 11:25:06 +02:00
Nora Dimitrijević
69911d4f36
.clang-format: do not autoformat test.cpp
2022-08-24 11:25:05 +02:00
Arthur Baars
acff279e8d
Merge pull request #10147 from github/aibaars-fix-go
...
Go: fix tracing spec for windows
2022-08-24 11:17:34 +02:00
Mathias Vorreiter Pedersen
1d50dd54ce
Merge branch 'main' into swift-extract-this-param-decl
2022-08-24 10:14:18 +01:00
Paolo Tranquilli
f570cc1916
Merge pull request #10143 from github/redsun82/swift-add-module-to-decl
...
Swift: add module to `Decl`
2022-08-24 11:05:06 +02:00
Mathias Vorreiter Pedersen
de03fbdc49
Swift: Accept test changes.
2022-08-24 10:03:21 +01:00
Mathias Vorreiter Pedersen
997d9e8559
Swift: Include 'self' parameter declaration in the CFG.
2022-08-24 10:01:25 +01:00
Mathias Vorreiter Pedersen
09427af2a2
Swift: Accept test changes.
2022-08-24 10:01:25 +01:00
Mathias Vorreiter Pedersen
ca31984040
Swift: Autogenerate files.
2022-08-24 10:01:25 +01:00
Mathias Vorreiter Pedersen
273053c92a
Swift: Extract self parameter declarations.
2022-08-24 10:01:25 +01:00
Michael Nebel
a412c955e7
Java: One implementation of the interface has no flow (which seems unsound and contradicting our assumptions on interface 'contracts') - this now yields a negative summary.
2022-08-24 09:58:54 +02:00
Michael Nebel
e446eaba68
C#: Update C# Flowsummaries test expected out (Negative models has been updated due to rebase and changes in the model generator).
2022-08-24 09:58:54 +02:00
Michael Nebel
51e7b0880a
C#: Update negative models.
2022-08-24 09:58:54 +02:00
Michael Nebel
761ed283b6
C#/Java/Ruby/Swift: Address review comments.
2022-08-24 09:58:54 +02:00
Michael Nebel
f728ddf823
C#: Update negative summaries (there has been a rebase since last update).
2022-08-24 09:58:54 +02:00
Michael Nebel
fbc36800aa
C#: Fix merge issues after re-base.
2022-08-24 09:58:54 +02:00
Michael Nebel
2e273f2273
C#: Re-arange the import order, such that CsvValidation follows ExternalFlow directly.
2022-08-24 09:58:54 +02:00
Michael Nebel
30d554503a
C#/Java: Fix some QL doc spelling typos.
2022-08-24 09:58:53 +02:00
Michael Nebel
592b60d6ab
C#: Fix rebase error merge (validation on encryption kind was un-intentionally deleted).
2022-08-24 09:58:53 +02:00
Michael Nebel
160ae934af
C#/Java/Ruby/Swift: Fix typo in QL doc.
2022-08-24 09:58:53 +02:00
Michael Nebel
c3e21e8555
C#: Move NegativeSummary.qll to the internal folder.
2022-08-24 09:58:53 +02:00
Michael Nebel
37976d56bc
C#/Java/Go/Swift: Move CsvValidation back into ExternalFlow.
2022-08-24 09:58:53 +02:00
Michael Nebel
d2087ec748
C#: Update negative summaries reported by FlowSummaries test after rebase (stubs for .NET has been updated in the meantime).
2022-08-24 09:58:53 +02:00
Michael Nebel
581824a9b4
C#/Java/Ruby/Swift: Fix various typos.
2022-08-24 09:58:53 +02:00
Michael Nebel
8949f71250
C#: Fixup CSV validation refactor.
2022-08-24 09:58:53 +02:00
Michael Nebel
ad671f7fb4
C#: Update test expected output after addition of negative summaries.
2022-08-24 09:58:53 +02:00
Michael Nebel
00d1b8665d
C#: Add negative generated .NET Runtime models.
2022-08-24 09:58:52 +02:00
Michael Nebel
9b16192a7f
Swift: Re-factor CsvValidation into a separate file.
2022-08-24 09:58:52 +02:00
Michael Nebel
54e85ff903
Swift: Remove some of the copied (and dead) language specific (to C#) code from swift.
2022-08-24 09:58:52 +02:00
Michael Nebel
2c2e09b20b
Go: Add summary model validation on the kind column.
2022-08-24 09:58:52 +02:00
Michael Nebel
37f01fe10e
Go: Re-factor CSV validation into separate file.
2022-08-24 09:58:52 +02:00
Michael Nebel
9f9129d3c9
Java: Introduce column validation for negative summaries.
2022-08-24 09:58:52 +02:00
Michael Nebel
4939439982
Java: Re-factor CSV Validation into standalone module.
2022-08-24 09:58:52 +02:00
Michael Nebel
053460ffeb
C#: Introduce validation of negative summaries.
2022-08-24 09:58:52 +02:00
Michael Nebel
3315d768f8
C#: Introduce negative summary column count validation.
2022-08-24 09:58:52 +02:00
Michael Nebel
4c59cfb296
C#: Re-factor the invalidModelRow predicate.
2022-08-24 09:58:52 +02:00
Michael Nebel
19469a26d7
C#: Re-factor CSV validation into a separate file.
2022-08-24 09:58:52 +02:00
Michael Nebel
8db454aa15
Swift: Sync files and make dummy negative summary implementation.
2022-08-24 09:58:52 +02:00
Michael Nebel
fbc0e6a1ec
Ruby: Sync files and make dummy negative summary implementation.
2022-08-24 09:58:52 +02:00
Michael Nebel
120fb25702
Java: Sync files and model generator and tests.
2022-08-24 09:58:52 +02:00
Michael Nebel
5255e16816
Java: Sync files and make framework specific code.
2022-08-24 09:58:51 +02:00
Michael Nebel
15c05e201d
Java: Re-factor specialized CSV predicates into overrides of the row predicate.
2022-08-24 09:58:46 +02:00
Anders Schack-Mulligen
92f2976399
Java: Improve unification check for wildcards with lower bounds.
2022-08-24 09:50:13 +02:00
Anders Schack-Mulligen
f248c6a11e
Java: Improve unification check for bounded types.
2022-08-24 09:50:13 +02:00
Anders Schack-Mulligen
6b01f02df6
Java: Deduplicate unification code as a parameterised module.
2022-08-24 09:50:13 +02:00
Michael Nebel
0578d3e6c4
C#: Improve python script to allow generation of Negative summary models.
2022-08-24 09:46:54 +02:00
Michael Nebel
929f1b324b
C#: Prepare for .NET negative summaries and use in UnsupportedExternalAPIs query.
2022-08-24 09:46:54 +02:00
Michael Nebel
7d46d15f2b
C#: Update summary model generation test output.
2022-08-24 09:46:54 +02:00
Michael Nebel
136bdeb8e6
C#: Add test for Negative summary generation.
2022-08-24 09:46:54 +02:00
Michael Nebel
9c6bcec500
C#: Add model generator testcase for Negative summaries for abstract members.
2022-08-24 09:46:54 +02:00
Michael Nebel
87c7dd90c0
C#: Disregard destructors in model generation.
2022-08-24 09:46:54 +02:00
Michael Nebel
0cf4e64655
C#: Update test cases with new empty query predicate.
2022-08-24 09:46:54 +02:00
Michael Nebel
cc44e89065
C#: Introduce support for Negative summary models.
2022-08-24 09:46:54 +02:00
Paolo Tranquilli
50d9a2e9cd
Swift: rollback removal of std::variant
...
It turns out we are still missing some extractions. This will be fixed
with future work.
2022-08-24 09:44:37 +02:00
Erik Krogh Kristensen
4df2e5d937
Merge pull request #10096 from erik-krogh/acronyms-part1
...
make acronyms camelcase
2022-08-24 09:33:53 +02:00
erik-krogh
27fcc90a97
Merge branch 'main' into msgConsis
2022-08-24 09:21:43 +02:00
Mathias Vorreiter Pedersen
18ed9ed2ee
Merge pull request #10145 from MathiasVP/swift-inline-expect-for-dataflow
...
Swift: Use `InlineExpectationsTest` for dataflow tests
2022-08-24 08:15:45 +01:00
Tony Torralba
f0e5ef68c2
Merge pull request #10149 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-08-24 09:13:49 +02:00
Tamás Vajk
ecde0abc04
Merge pull request #10091 from tamasvajk/kotlin-data-class
...
Kotlin: Identify data classes during extraction
2022-08-24 08:45:41 +02:00
github-actions[bot]
03faddd7eb
Add changed framework coverage reports
2022-08-24 00:18:31 +00:00
Arthur Baars
8996c54b8e
Go: fix tracing spec for windows
2022-08-23 20:00:10 +02:00
Andrew Eisenberg
a40b7ef81c
Apply suggestions from code review
...
Co-authored-by: Henry Mercer <henrymercer@github.com >
2022-08-23 08:57:33 -07:00
Mathias Vorreiter Pedersen
6e148a4c3f
Swift: Use the inline testing framework for dataflow tests.
2022-08-23 16:31:05 +01:00
Paolo Tranquilli
2fc88d5f8e
Swift: add module to Decl and remove forward traps
...
Add module context to all declarations. As keeping the `std::variant`s
required slightly more work for this, and we intended to remove them
any way, this is done in this change.
For background, we put those in as we were not extracting all modules at
the time, so we were missing some DB ids that we put back in by adding
the "defining" traps not only in the trap file related to the defining
module but also to the one where the declaration was used. Since then
we fixed module extraction, so this should not be needed any more.
2022-08-23 16:53:07 +02:00
Ian Lynagh
910372bfb7
Kotlin: Refactor CallableReferenceHelper
...
This removes some non-null-expressions, and also makes the code more
robust and easier to understand.
2022-08-23 15:24:13 +01:00
Anders Schack-Mulligen
b83e851ac6
Ruby: one more pragma
2022-08-23 16:04:29 +02:00
Anders Schack-Mulligen
0ea55a9581
Ruby: autoformat
2022-08-23 15:58:29 +02:00
Anders Schack-Mulligen
844e0129b6
Ruby: Perf fix for trackUseNode.
2022-08-23 15:50:54 +02:00
Rasmus Wriedt Larsen
eccc7d6d6f
Ruby: Remove redundant .getExpr()
2022-08-23 15:42:21 +02:00
erik-krogh
a50234adb0
apply suggestion from review
2022-08-23 15:41:37 +02:00
Rasmus Wriedt Larsen
717a355913
Ruby: Accept grammar fix
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2022-08-23 15:36:45 +02:00
Rasmus Wriedt Larsen
d832298e40
Ruby: Accept grammar fix
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2022-08-23 15:36:37 +02:00
Erik Krogh Kristensen
dbefe73b62
Merge pull request #10134 from erik-krogh/simplifyAction
...
QL: simplify QL-for-QL action
2022-08-23 15:02:17 +02:00
Tony Torralba
22558e573d
Add change note
2022-08-23 14:19:00 +02:00
Tony Torralba
7070c4a2d2
Add summaries for ContentResolver and adjacent classes
2022-08-23 14:12:35 +02:00
erik-krogh
cddcea5d56
cache entire pack
2022-08-23 13:51:03 +02:00
Ian Lynagh
d3a8060e34
Kotlin: Remove another not-null-expr in the extractor
2022-08-23 12:05:14 +01:00
Ian Lynagh
98dd2448ff
Kotlin: Remove a not-null-expr from the extractor
2022-08-23 11:49:55 +01:00
erik-krogh
5e3cb08ed2
rename stateInPumpableRegexp to stateInRelevantRegexp
2022-08-23 12:40:45 +02:00
erik-krogh
1a7d3ee831
update expected output after changing queries
2022-08-23 12:35:32 +02:00
Chris Smowton
0a7350f3bf
Merge pull request #10041 from smowton/AddSensitiveApiCalls
...
Java: support more libraries in hardcoded-credentials queries
2022-08-23 10:51:04 +01:00
Ian Lynagh
51ada5c2af
Merge pull request #10130 from igfoo/igfoo/non-null-exprs
...
Kotlin: Fix some more not-null-exprs in the extractor
2022-08-23 10:49:45 +01:00
Tony Torralba
085c12a51f
Merge pull request #10116 from atorralba/atorralba/static-init-vector-fix
...
Java: Improve Static Initialization Vector query
2022-08-23 11:38:41 +02:00
erik-krogh
afadcd9b45
use a more detailed alert message in bitwise-sign-check
2022-08-23 11:18:45 +02:00
erik-krogh
d96d6721ba
change the alert message of unused-local-variable
2022-08-23 11:15:11 +02:00
erik-krogh
de8384d904
revert alert message change to java/unused-local-variable
2022-08-23 11:14:58 +02:00
Tony Torralba
e3c1101b79
Merge pull request #10136 from atorralba/atorralba/redos-cwe-tag
...
Java: Add CWE-1333 tag to Java ReDoS queries
2022-08-23 11:07:51 +02:00
erik-krogh
305a23b952
apply suggestion from review
2022-08-23 11:05:32 +02:00
Chris Smowton
131d6043c1
Add java imports
2022-08-23 09:41:00 +01:00
erik-krogh
82a5b7838c
don't add deprecated alias in experimental folder
2022-08-23 10:38:23 +02:00
erik-krogh
82d9180892
only have one deprecated alias for XmlDtd
2022-08-23 10:38:23 +02:00
Erik Krogh Kristensen
7704a9eeac
apply suggestions from Python review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-08-23 10:38:10 +02:00
erik-krogh
a57981ea69
apply suggestions from review
2022-08-23 10:18:14 +02:00
Joe Farebrother
ac79866799
Merge pull request #9982 from joefarebrother/rsa-without-oaep
...
Java: Add query for RSA without OAEP
2022-08-23 09:14:46 +01:00
erik-krogh
45e78a355f
ensure call-apply.js is seen as a module
2022-08-23 10:11:46 +02:00
Tony Torralba
6b4cfbbacd
Add change note
2022-08-23 10:00:10 +02:00
Tony Torralba
cd10f559ca
Add CWE-1333 tag to Java ReDoS queries
2022-08-23 09:56:59 +02:00
Tony Torralba
a3f27d4abe
Merge pull request #10131 from atorralba/atorralba/path-steps
...
Java: Add new java.nio.Path{,s} summary models
2022-08-23 09:47:34 +02:00
Tony Torralba
da3288fced
Move change note to src
2022-08-23 09:40:34 +02:00
Erik Krogh Kristensen
5fb3119fea
Merge pull request #10135 from erik-krogh/atmDep
...
ATM: fix deprecation warnings in ATM tests
2022-08-23 09:32:07 +02:00
erik-krogh
b5f9012033
fix deprecation warnings in ATM tests
2022-08-23 08:08:39 +02:00
erik-krogh
f7846a598e
add change-notes
2022-08-23 07:54:01 +02:00
erik-krogh
78ba7650b3
change the change-notes
2022-08-23 07:28:46 +02:00
erik-krogh
94ec0b8a52
update expected output of tests
2022-08-23 07:19:37 +02:00
Andrew Eisenberg
d892304c14
Address comments from PR
2022-08-22 16:06:26 -07:00
erik-krogh
e88d7d5027
simplify QL-for-QL action
2022-08-22 22:39:16 +02:00
erik-krogh
7e0bd5bde4
update expected output of tests
2022-08-22 21:41:47 +02:00
erik-krogh
df9a9f4a56
update rb/stored-css to match javascript
2022-08-22 21:41:47 +02:00
erik-krogh
9b257bfa9e
update rb/reflected-xss to match javascript
2022-08-22 21:41:47 +02:00
erik-krogh
ca299b9dc1
update py/unreachable-statement to match javascript/go
2022-08-22 21:41:47 +02:00
erik-krogh
31e15e27fc
update py/unsafe-deserialization to match ruby/javascript/java
2022-08-22 21:41:47 +02:00
erik-krogh
778879908e
update rb/code-injection to match python
2022-08-22 21:41:46 +02:00
erik-krogh
60908de089
update js/nested-loops-with-same-variable to match cpp
2022-08-22 21:41:46 +02:00
erik-krogh
20625ae60d
update {js/go/py}/xpath-injection to match csharp/java
2022-08-22 21:41:46 +02:00
erik-krogh
b5458b2125
update js/insecure-randomness to match csharp
2022-08-22 21:41:46 +02:00
erik-krogh
9cdd8cc8f5
update js/tainted-format-string to match ruby/java
2022-08-22 21:41:46 +02:00
erik-krogh
9395f156de
update {js/py}/command-line-injection to match csharp/java
2022-08-22 21:41:46 +02:00
erik-krogh
684a987abf
update java/unused-import to match python
2022-08-22 21:41:46 +02:00
erik-krogh
54268f4424
update java/static-array to match csharp
2022-08-22 21:41:46 +02:00
erik-krogh
8899c1be04
update java/unassigned-field to match csharp
2022-08-22 21:41:46 +02:00
erik-krogh
280b101caa
update java/useless-assignment-to-local to match go
2022-08-22 21:41:46 +02:00
erik-krogh
034d197e01
update {java/rb}/xxe to match python/javascript
2022-08-22 21:41:46 +02:00
erik-krogh
2d0a4c3d83
update {go/py}/stack-trace-exposure to match javascript
2022-08-22 21:41:46 +02:00
erik-krogh
5a0183f1e2
update java/password-in-configuration to match csharp
2022-08-22 21:41:46 +02:00
erik-krogh
151529d08f
correct the query-id of the experimental go/pam-auth-bypass query
2022-08-22 21:41:46 +02:00
erik-krogh
b5f3cd7a55
update cs/useless-tostring-call to match java
2022-08-22 21:41:46 +02:00
erik-krogh
49a3e208d7
update cs/index-out-of-bounds to match javascript/go
2022-08-22 21:41:46 +02:00
erik-krogh
52171d6733
update cs/unchecked-cast-in-equals to match java
2022-08-22 21:41:46 +02:00
erik-krogh
ea11f744e1
update cs/confusing-override-name to match java
2022-08-22 21:41:46 +02:00
erik-krogh
064c9a6938
update {cs/java}/todo-comment to match javascript
2022-08-22 21:41:46 +02:00
erik-krogh
678e433013
update cpp/missing-case-in-switch to match java
2022-08-22 21:41:45 +02:00
erik-krogh
ea2777fa3e
update {cs/cpp}/equality-on-floats to use the same alert-message/description
2022-08-22 21:41:45 +02:00
erik-krogh
55c8863e92
update java/sql-injection to match go/javascript/python/ruby
2022-08-22 21:41:45 +02:00
erik-krogh
3553f3d9b8
update {rb/py/js/go}/path-injection to match java/csharp
2022-08-22 21:41:45 +02:00
erik-krogh
39c1832995
update {cpp/js}/bitwise-sign-check to match java
2022-08-22 21:41:45 +02:00
erik-krogh
cc41a83a8d
update {py/cpp}/commented-out-code to match csharp/java/javascript
2022-08-22 21:41:45 +02:00
erik-krogh
b471a401cc
update {rb/js/java}/unused-parameter to match python
2022-08-22 21:41:45 +02:00
erik-krogh
698ccd8850
update {cpp/java}/unused-local to match python
2022-08-22 21:41:45 +02:00
erik-krogh
5a312cd0da
update cpp/complex-block to match java/csharp
2022-08-22 21:41:45 +02:00
erik-krogh
b1c9843d15
update {cs/cpp}/empty-block so they have the same alert message
2022-08-22 21:41:45 +02:00
erik-krogh
594fbc678e
update js/zip-slip to match java/go/csharp
2022-08-22 21:41:45 +02:00
erik-krogh
e52fa9a469
update {cs/java}/regex-injection to match javascript
2022-08-22 21:41:45 +02:00
erik-krogh
28083ebe09
run the implicit-this patch
2022-08-22 21:23:31 +02:00
erik-krogh
a593a52b5e
add missing qldoc (that was already missing?)
2022-08-22 21:22:39 +02:00
erik-krogh
e89e0eb7fb
make some acronyms camelCase
2022-08-22 21:22:35 +02:00
luchua-bc
3e382fd47c
Optimize the query
2022-08-22 17:04:03 +00:00
Jami Cogswell
0136c7542b
update XML to Xml due to recent deprecation
2022-08-22 12:41:22 -04:00
Jami Cogswell
733078183e
update query description
2022-08-22 12:41:22 -04:00
Jami Cogswell
f34e23bdba
adjusted comments and precision level
2022-08-22 12:41:22 -04:00
Jami Cogswell
ac07544d70
group negated expressions together
2022-08-22 12:41:22 -04:00
Jami Cogswell
efac4b197d
removed another comment
2022-08-22 12:41:22 -04:00
Jami Cogswell
e003e2c809
lib change note updates
2022-08-22 12:41:22 -04:00
Jami Cogswell
eee12264c3
excluded action main from query results, added unit test
2022-08-22 12:41:22 -04:00
Jami Cogswell
c5526ffef8
update class QLDoc to start with 'An'
2022-08-22 12:41:22 -04:00
Jami Cogswell
fba9ffd49a
update lib change note
2022-08-22 12:41:22 -04:00
Jami Cogswell
eacce03073
resolved merge conflict in AndroidManifest lib
2022-08-22 12:41:22 -04:00
Jami Cogswell
0934c1d184
resolved merge conflict in AndroidManifest lib
2022-08-22 12:41:22 -04:00
Jami Cogswell
9968d5d816
updated predicates
2022-08-22 12:41:22 -04:00
Jami Cogswell
115f76ac5a
fixed typo in unit tests; added a couple more tests
2022-08-22 12:41:22 -04:00
Jami Cogswell
b88d545c49
added unit tests
2022-08-22 12:41:22 -04:00
Jami Cogswell
58d3d89b2e
resolved merge conflict in AndroidManifest
2022-08-22 12:41:22 -04:00
Jami Cogswell
825df218a3
adding library change note
2022-08-22 12:41:22 -04:00
Jami Cogswell
084b9830bc
resolved merge conflict in AndroidManifest
2022-08-22 12:41:22 -04:00
Jami Cogswell
55bd9f943f
minor wording updates in help file
2022-08-22 12:41:22 -04:00
Jami Cogswell
a99d7ffaaf
minor wording update in change note
2022-08-22 12:41:22 -04:00
Jami Cogswell
33c48ec685
updated change note
2022-08-22 12:41:22 -04:00
Jami Cogswell
10fa687e26
updated help file and unit tests
2022-08-22 12:41:22 -04:00
Jami Cogswell
eea1089ee0
resolved merge conflict in AndroidManifest
2022-08-22 12:41:22 -04:00
Jami Cogswell
60921a0355
switched to checking for permission attr in application elem instead of in manifest elem
2022-08-22 12:41:22 -04:00
Jami Cogswell
a6ecac6e00
third draft with category launcher and permission element excluded
2022-08-22 12:41:22 -04:00
Jami Cogswell
8d5bbc458f
first draft of query and tests
2022-08-22 12:41:22 -04:00
Jami Cogswell
3e09d86a4f
adding starter files
2022-08-22 12:41:22 -04:00
Mathias Vorreiter Pedersen
0ac8b7ce65
Merge pull request #10128 from MathiasVP/add-cleartext-sanitizer
...
C++: Add a sanitizer to `cpp/cleartext-storage-buffer`
2022-08-22 17:13:22 +01:00
Chris Smowton
25195bb0ba
Merge pull request #10103 from smowton/smowton/feature/golang-1.19-support
...
Go: support go 1.19
2022-08-22 16:49:11 +01:00
Tony Torralba
422abc1a18
Add change note
2022-08-22 16:22:19 +02:00
Erik Krogh Kristensen
eadd85bce9
Merge pull request #10073 from erik-krogh/XMLXml
...
rename all occurrences of XML to Xml
2022-08-22 16:18:27 +02:00
Tamás Vajk
aa0ff2b53f
Merge pull request #10129 from tamasvajk/kotlin-fix-comment-type-alias
...
Kotlin: Extract type alias doc comments
2022-08-22 16:10:50 +02:00
Tony Torralba
ee6ac744c5
Add new Path steps and tests
2022-08-22 15:54:20 +02:00
Ian Lynagh
d5b414f163
Kotlin: Fix some more not-null-exprs in the extractor
2022-08-22 14:16:58 +01:00
Erik Krogh Kristensen
cede617840
Merge pull request #10012 from erik-krogh/update-ql-for-ql-action
...
QL: update codeql-action in QL-for-QL
2022-08-22 15:11:29 +02:00
erik-krogh
9c95dcc126
add change-note
2022-08-22 14:09:19 +02:00
erik-krogh
2ac5441aec
rename the XMLDTD class to XmlDTD
2022-08-22 14:09:19 +02:00
erik-krogh
1a89ddae5d
update some comments from XML to Xml
2022-08-22 14:09:19 +02:00
erik-krogh
ce9f69a639
rename all occurrences of XML to Xml
2022-08-22 14:08:31 +02:00
Mathias Vorreiter Pedersen
831f143fe6
C++: Add change note.
2022-08-22 12:40:08 +01:00
Tony Torralba
5e815fb359
Merge branch 'main' into atorralba/static-init-vector-fix
2022-08-22 13:31:00 +02:00
Tony Torralba
c35fbf9abc
Add more sanitizers
2022-08-22 13:20:02 +02:00
Tony Torralba
72c204063d
Merge pull request #10115 from atorralba/atorralba/fragment-fix
...
Java: Add support for androidx.fragment.app.Fragment
2022-08-22 12:53:19 +02:00
Tamas Vajk
25098ef2d8
Kotlin: Extract type alias doc comments
2022-08-22 12:31:13 +02:00
Jeroen Ketema
4c8926d880
Merge pull request #9720 from jketema/linkage
...
C++: Support link targets for global and namespace variables
2022-08-22 12:12:44 +02:00
Rasmus Wriedt Larsen
61bf2154cd
Merge branch 'main' into shared-http-client-request
2022-08-22 12:05:37 +02:00
Mathias Vorreiter Pedersen
65abb54a73
C++: Add a sanitizer to 'cpp/cleartext-storage-buffer' to improve the performance of the query.
2022-08-22 11:01:31 +01:00
Ian Lynagh
584037737e
Merge pull request #10113 from igfoo/igfoo/nullexpr
...
Kotlin: Remove another instance of a not-null-expression
2022-08-22 10:52:04 +01:00
Jeroen Ketema
284c8dd448
C++: Add change note
2022-08-22 11:25:40 +02:00
Tony Torralba
3314b56ffe
Fix Fragment tests after androidx stubs update
2022-08-22 11:13:19 +02:00
Taus
c904ba1d16
Merge pull request #9852 from tausbn/python-add-str-class
...
Python: Add `Str` class
2022-08-22 10:55:01 +02:00
Jeroen Ketema
f00a9ac8fc
Merge pull request #10112 from jketema/orphaned
...
C++: Handle orphaned local variables
2022-08-22 10:45:10 +02:00
Chris Smowton
f3ef8510d3
Merge pull request #10093 from smowton/smowton/feature/java-singular-locations
...
Java: pick an arbitrary representative location when an entity has many candidate locations.
2022-08-22 09:32:43 +01:00
Jeroen Ketema
04564b4323
Merge pull request #10123 from MathiasVP/optimize-exec-tainted
...
C++: Remove CP in `cpp/command-line-injection`
2022-08-22 10:20:03 +02:00
Michael Nebel
642c9929e6
Merge pull request #10050 from michaelnebel/csharp/asproutingendpoints
...
C#: ASP.NET MapGet Routing endpoints (Remote Flow Sources)
2022-08-22 09:05:12 +02:00
erik-krogh
2fd09d34de
improve performance of global dataflow by inlining a step predicate
2022-08-22 08:35:19 +02:00
erik-krogh
2f11f3760e
simplify getALibraryInputParameter by adding more general dataflow for the arguments object
2022-08-22 08:32:43 +02:00
Erik Krogh Kristensen
11b039c1f1
add tests
2022-08-22 08:29:28 +02:00
Erik Krogh Kristensen
31c09ba678
implement flow for .apply() by adding a ReflectiveParametersNode data-flow node
2022-08-22 08:29:28 +02:00
Erik Krogh Kristensen
d86b7f6c54
recognize an access to the arguments object as library-input
2022-08-22 08:29:24 +02:00
Erik Krogh Kristensen
7b1ef7473e
change ArrayCreationStep to a PreCallGraphStep and unrestrict the storeStep
2022-08-22 08:15:54 +02:00
erik-krogh
049af68bc2
restrict suffix-construction to relevant regexps
2022-08-21 20:35:39 +02:00
erik-krogh
0aebc90b61
don't lowercase the endpointExample, and correctly handle root states
2022-08-21 18:38:47 +02:00
Mathias Vorreiter Pedersen
d209231ff9
C++: Remove cartesian product in 'ExecTainted'.
2022-08-21 16:45:36 +01:00
Mathias Vorreiter Pedersen
b944005046
Merge pull request #10095 from MathiasVP/fix-joins-in-using-expired-stack-address
...
C++: Fix joins in `cpp/using-expired-stack-address`
2022-08-20 12:18:34 +01:00
Jeroen Ketema
2adf5662a2
C++: Add DB scheme upgrade and downgrade scripts
2022-08-20 08:55:33 +02:00
Jeroen Ketema
02c8e316d3
C++: Update DB scheme stats file
2022-08-20 08:46:50 +02:00
Jeroen Ketema
4a7ad84d02
C++: Add __func__ and __PRETTY_FUNCTION__ IR tests
2022-08-20 01:09:52 +02:00
Chris Smowton
e5370a0caa
Set MacOS and Windows Go versions to 1.19
2022-08-19 21:19:13 +01:00
Andrew Eisenberg
38909076ea
Update other articles to with details about packaging
...
In this commit:
- Replace _QL pack_ with _CodeQL pack_
- Replace `about-ql-pack` references with `about-codeql-packs`
- Replace examples using `libraryPathDependencies with
`dependencies`
- Update some examples to specify the optional `version` field
- Update description of query specifiers to note that a path
within a pack is valid.
2022-08-19 13:14:43 -07:00
Jeroen Ketema
584a0189a8
C++: Update test results after changes
2022-08-19 21:50:45 +02:00
Chris Smowton
259b942fac
Indent blocks that gofmt would mistake for markdown
...
As of go 1.19 it will try to format markdown nicely, but in both these cases the formatting isn't supposed to be interpreted this way, so indent it to make it a preformatted block.
2022-08-19 19:06:21 +01:00
Chris Smowton
8d20b9cf52
Use hasLocationInfo to match several Location fields at once
2022-08-19 19:03:17 +01:00
Chris Smowton
3266f1f35f
Create 2022-08-19-signular-locations.md
2022-08-19 18:42:41 +01:00
Chris Smowton
6ac6a81bfa
Update test action to use go 1.19
2022-08-19 18:37:39 +01:00
Chris Smowton
678ecffea8
Accept test changes
2022-08-19 18:34:05 +01:00
erik-krogh
bcf4c57060
Merge branch 'main' into redosPrefix
2022-08-19 19:22:49 +02:00
erik-krogh
d052b1e3c9
also support regular expressions without repetitions
2022-08-19 19:21:44 +02:00
Chris Smowton
1ea7caf559
Fix join ordering in inline-expectations test
2022-08-19 18:17:22 +01:00
Chris Smowton
e39475d778
Merge pull request #10100 from github/smowton/admin/note-java-19-support
...
Note support for Java 19
2022-08-19 17:20:23 +01:00
Chris Smowton
6f4fbac412
Create 2022-08-19-go-119-support.md
2022-08-19 17:20:03 +01:00
Tony Torralba
90aa7d8be5
Add change note
2022-08-19 17:01:37 +02:00
Tom Hvitved
a0a3dfb93d
Merge pull request #10108 from hvitved/remove-redundant-overrides
...
Remove redundant overrides
2022-08-19 16:43:23 +02:00
Tony Torralba
3c6c09b0f8
No longer require a mode in Cipher.init
2022-08-19 16:40:59 +02:00
Tony Torralba
794fd976a9
Add androidx Fragment support
2022-08-19 16:32:06 +02:00
Paolo Tranquilli
75f62098e0
Merge pull request #10111 from github/redsun82/swift-add-methodrefexpr
...
Swift: synthesize `MethodRefExpr`
2022-08-19 16:27:16 +02:00
Rasmus Wriedt Larsen
9790594984
Ruby: Bugfix after HTTP::Client::Request change
...
I guess this is not 100% accurate any longer since the base class is
only a `DataFlow::Node` now... I guess we could make it a
`DataFlow::CallNode` in the Concept definition.
2022-08-19 16:25:47 +02:00
Paolo Tranquilli
631d234026
Swift: expand tests
2022-08-19 16:15:17 +02:00
Rasmus Wriedt Larsen
9eda630965
Ruby: Add CallNode.getKeywordArgumentIncludeHashArgument
2022-08-19 15:54:15 +02:00
Rasmus Wriedt Larsen
10968bf115
Ruby: Fix alert-msg logic for RequestWithoutValidation.ql
...
This really surprised me, but as shown on the results, it does actually
make a difference in the alert-message.
2022-08-19 15:50:09 +02:00
Ian Lynagh
5d670c6186
Kotlin: Remove another instance of a not-null-expression
2022-08-19 14:50:06 +01:00
Rasmus Wriedt Larsen
0ac3624342
Ruby: Implement new disablesCertificateValidation for all HTTP client models
...
Sadly most alert text changed, but the two important changes are:
1. The request on RestClient.rb:19 now has an expanded alert text,
highlighting where the origin of the value that disables certificate
validation comes from. (in this case, it's trivial since it's the
line right above)
2. We handle passing `false`/`OpenSSL::SSL::VERIFY_NONE` the same in the
argument passing examples in Faraday.rb
2022-08-19 15:46:22 +02:00
Erik Krogh Kristensen
812b6bddcf
Merge pull request #10053 from erik-krogh/msgConsis-ql-query
...
QL: add ql/consistent-alert-message
2022-08-19 15:45:35 +02:00
Rasmus Wriedt Larsen
1f028ac206
Ruby: Implement new disablesCertificateValidation for RestClient
2022-08-19 15:43:19 +02:00
Rasmus Wriedt Larsen
07d95918f2
Ruby: Add more RequestWithoutValidation.ql tests
...
Added:
- one where the value is not directly used when disabling certificate
validation.
- one with argument passing, Faraday, where it is only the passing of
`OpenSSL::SSL::VERIFY_NONE` that is recognized.
2022-08-19 15:42:50 +02:00
Paolo Tranquilli
f0ec43b04c
Swift: remove getMethodDeclaration
...
`getStaticTarget` gives the same result.
2022-08-19 15:37:49 +02:00
Paolo Tranquilli
66459b81da
Swift: use field in MethodApplyExpr
...
Also rename `getMethod` to `getMethodDeclaration` to clear up possible
confusion with `getFunction`.
2022-08-19 15:31:00 +02:00
Tom Hvitved
99c049c09e
Merge pull request #10102 from hvitved/ql/redundant-override-refined
...
QL: Refine 'redundant override' query
2022-08-19 15:25:11 +02:00
Jeroen Ketema
309fecac92
C++: Extend getFunction to handle orphaned local variables
2022-08-19 15:22:30 +02:00
Paolo Tranquilli
6706ba6ded
Swift: accept toString changes in tests
2022-08-19 15:22:02 +02:00
Jeroen Ketema
3b81f4860e
C++: Add orphaned local variable relation to DB scheme
2022-08-19 15:21:56 +02:00
Paolo Tranquilli
e3f86a9eb0
Swift: fix QL warning
2022-08-19 15:03:18 +02:00
Tamas Vajk
e23d36909d
Add DB stats file
2022-08-19 14:51:37 +02:00
Tamas Vajk
e30a488dab
Fix downgrade folder SHA and file directions
2022-08-19 14:51:36 +02:00
Tamas Vajk
e668bf631a
Add DB downgrade folder
2022-08-19 14:51:36 +02:00
Tamas Vajk
b34cae6bdd
Add DB upgrade folder
2022-08-19 14:51:36 +02:00
Tamas Vajk
1c08ac1d7a
Kotlin: Identify data classes during extraction
2022-08-19 14:51:36 +02:00
Paolo Tranquilli
9b50336e47
Swift: synthesize MethodRefExpr
...
This introduces a `MethodRefExpr` node synthesized out of
`DotSyntaxCallExpr` under the `LookupExpr` hierarchy. This means that
much like
```free_function(1, 2)```
is a `CallExpr` with `getFunction` giving a `DeclRefExpr`,
```foo.method(1, 2)```
is now a `CallExpr` with `getFunction` giving a `MethodRefExpr`.
`ApplyExpr::getStaticTarget` has been made work with it (as well as
`ConstructorRefCallExpr` which for the moment has been left where it
is), a new `MethodApplyExpr` has been introduced deriving from it,
and control and data flow libraries have adapted.
A small but was fixed in `qlgen` where the default constructor for DB
types was not correctly subtracting derived IPA types depending on the
order of definitions in `schema.yml`.
There are still some occurrences of `DotSyntaxCallExpr`, and as already
mentioned the other `SelfApply` class (`ConstructorRefCallExpr`) was
left alone. Their treatment is left for a future PR.
2022-08-19 14:48:36 +02:00
Tom Hvitved
18fb4a87af
Revert change to QL test
2022-08-19 14:37:25 +02:00
Ian Lynagh
a6cee9edf9
Kotlin: Add an integration test for TRAP compression
2022-08-19 13:34:43 +01:00
Tom Hvitved
1b29bddb73
Python: Revert change to AnyNode
2022-08-19 14:08:21 +02:00
Tom Hvitved
663096fe3a
Remove redundant overrides
2022-08-19 13:57:41 +02:00
Ian Lynagh
62779944e8
Kotlin: Compress TRAP files
...
The Kotlin extractor can now be told to write TRAP with no compression,
gzip compression or Brotli compression - although Brotli is not yet
supported and it will fall back to gzip.
The invocation TRAP file is a bit more complicated, as it's already been
started before the extractor starts. For now that continues to always be
uncompressed.
2022-08-19 12:47:10 +01:00
Sebastian Bauersfeld
da79ad854c
Added change notes.
2022-08-19 17:46:02 +07:00
Sebastian Bauersfeld
2ec3746861
Address PR comments.
2022-08-19 17:33:35 +07:00
Sebastian Bauersfeld
f6d42bd3c6
Allow blacklist sanitizers.
2022-08-19 17:33:35 +07:00
Sebastian Bauersfeld
11f527ea5b
Fix up query tests.
2022-08-19 17:33:35 +07:00
Sebastian Bauersfeld
354a7fd252
Make taint flow through java.lang.String.(replace|replaceFirst|replaceAll) more permissive.
2022-08-19 17:33:35 +07:00
Sebastian Bauersfeld
5cf320d553
Add corresponding taint steps.
2022-08-19 17:33:35 +07:00
Sebastian Bauersfeld
b0fbe3658d
Add java.lang.String taint tests.
2022-08-19 17:33:35 +07:00
Chris Smowton
949de2a8dd
Create 2022-08-19-java-19-support.md
2022-08-19 11:15:23 +01:00
Chris Smowton
e2afc80aff
Autoformat go
2022-08-19 10:29:45 +01:00
Chris Smowton
45f922b3f2
Add models for Go 1.19's new url.JoinPath and URL.JoinPath functions
2022-08-19 10:29:45 +01:00
Chris Smowton
6068f63e9e
Add taint models for go 1.19's new fmt.Append functions
2022-08-19 10:29:45 +01:00
Tom Hvitved
c86c9ec2c3
QL: Move query logic into library
2022-08-19 10:35:47 +02:00
Tom Hvitved
93fc952ef1
Merge pull request #10099 from hvitved/csharp/html-raw-tests
...
C#: Add a cshtml-based XSS test
2022-08-19 10:24:52 +02:00
Tom Hvitved
50a53008cd
QL: Refine 'redundant override' query
2022-08-19 10:15:47 +02:00
Michael Nebel
c3e0388a75
C#: Add testcase for complex models.
2022-08-19 08:51:39 +02:00
Michael Nebel
058541c0d6
C#: Added change note.
2022-08-19 08:10:23 +02:00
Michael Nebel
bbb6ba088b
C#: Add more Map like remote flow source testcases.
2022-08-19 08:10:23 +02:00
Michael Nebel
424d909201
C#: Add more Map like method delegate parameter as flow sources.
2022-08-19 08:10:23 +02:00
Michael Nebel
d2c5266139
C#: Add more test examples.
2022-08-19 08:10:23 +02:00
Michael Nebel
aaf14b0184
C#: Improve solution (pair programming with @hvitved).
2022-08-19 08:10:23 +02:00
Michael Nebel
6e5a412150
C#: Make one more ASP.NET routing example.
2022-08-19 08:10:23 +02:00
Michael Nebel
bd6d3c7347
C#: Consider parameters passed to lambdas in MapGet remote flow sources.
2022-08-19 08:10:23 +02:00
Michael Nebel
c8afb1bb94
C#: Update expected test case with new line numbers.
2022-08-19 08:10:23 +02:00
Michael Nebel
328e47834e
C#: Add ASP.NET Core MapGet routing end point example.
2022-08-19 08:10:23 +02:00
Andrew Eisenberg
d737b5715f
Merge and update about-ql-packs with about-codeql-packs
...
This is the first of a series of commits around updating packaging docs.
`about-ql-packs.rst` is outdated. All relevant information has been
moved to about-codeql-packs.rst`.
2022-08-18 15:31:35 -07:00
Chris Smowton
d2055283de
Add models for go 1.19's new atomic pointer typex
2022-08-18 17:47:13 +01:00
Chris Smowton
8eb5d001f7
Upgrade Go extractor to latest golang and x-packages
2022-08-18 16:22:04 +01:00
Jeroen Ketema
38b4c02508
C++: Support link targets for global and namespace variables
2022-08-18 17:01:02 +02:00
Mathias Vorreiter Pedersen
c953b05cc2
Merge branch 'main' into fix-joins-in-using-expired-stack-address
2022-08-18 15:13:05 +01:00
Chris Smowton
ec1cc72669
Note support for Java 19
2022-08-18 15:02:16 +01:00
Erik Krogh Kristensen
4f93f2b9ba
Merge pull request #10076 from erik-krogh/ql-for-ql-fixes
...
various QL-for-QL fixes
2022-08-18 15:46:48 +02:00
Chris Smowton
17dd1f64ec
Java: pick an arbitrary representative location when an entity has many candidate locations.
2022-08-18 14:29:16 +01:00
Tom Hvitved
f275885258
C#: Add a cshtml-based XSS test
2022-08-18 15:24:04 +02:00
Anders Schack-Mulligen
61a2c0dab5
Merge pull request #10084 from aschackmull/java/numericcasttainted-barrier
...
Java: Move sink-constraints into the configuration in NumericCastTainted.ql.
2022-08-18 15:22:00 +02:00
Joe Farebrother
e8f027dab2
Apply docs suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-08-18 14:21:40 +01:00
Tom Hvitved
2afb4abaa2
Merge pull request #10094 from hvitved/csharp/redundant-override
...
C#: Remove redundant override
2022-08-18 15:17:20 +02:00
Tom Hvitved
d68f817e53
Merge pull request #10098 from hvitved/ql/redundant-override
...
QL: Add redundant overrides query
2022-08-18 15:13:35 +02:00
erik-krogh
26fcf6b25b
apply suggestions from review
2022-08-18 15:00:57 +02:00
Tom Hvitved
e5911df697
QL: Add redundant overrides query
2022-08-18 14:59:04 +02:00
Rasmus Wriedt Larsen
47c9c5bddd
Ruby: Update RequestWithoutValidation.ql to match Python version
...
No library modeling currently has support for the new disablesCertificateValidation/2, so only the alert text has changed
(removed an import from Python so the queries would ACTUALLY match)
2022-08-18 14:32:41 +02:00
Mathias Vorreiter Pedersen
5704995b62
C++: Fix joins in 'cpp/using-expired-stack-address'.
2022-08-18 13:23:39 +01:00
Chris Smowton
72009f8614
Merge pull request #10085 from smowton/smowton/fix/dont-use-write-instruction-for-channel-flow
...
Go: don't use WriteNode for channel writes
2022-08-18 12:47:55 +01:00
Rasmus Wriedt Larsen
4a82025087
Ruby: Base HTTP::Client::Request on shared concept
...
Fixing up deprecation errors in next commit
2022-08-18 13:42:53 +02:00
Rasmus Wriedt Larsen
e2b78df5ad
Ruby: Change HTTP::Client::Request to have DataFlow::Node as base class
...
Although this is a breaking change, as explained in the change-note, it
should onyl affect peopel that have created their own HTTP client
request modeling, which I assume is none.
The alternative would have been to keep the old class/module as
deprecated, and introduce a `HTTP::Client::Requestv2` class/module that
is based on `DataFlow::Node` instead. The old class could then be
deprecated in 1 year, and we could do a rename from
`HTTP::Client::Requestv2` -> `HTTP::Client::Request` at the same time.
(and then wait 1 more year before being able to delete
`HTTP::Client::Requestv2`)
All in all, I think this is the right tradeoff, given that CodeQL Ruby
is still in beta.
2022-08-18 13:42:52 +02:00
Rasmus Wriedt Larsen
e6b4d12f94
Sync ConceptsShared
2022-08-18 13:42:52 +02:00
Rasmus Wriedt Larsen
635fd1902d
Python: Move HTTP::Client::Request to shared concepts
...
New shared concepts uses correct casing of HTTP according to our
style-guide.
2022-08-18 13:42:52 +02:00
Rasmus Wriedt Larsen
9d96b73b8b
Ruby: Fixup test annotation
2022-08-18 13:42:49 +02:00
Tom Hvitved
ece37d80f0
C#: Remove redundant override
2022-08-18 13:13:06 +02:00
Tamás Vajk
ad1cb8f8c7
Merge pull request #10065 from tamasvajk/kotlin-1.7.20-Beta
...
Kotlin: Add support for version 1.7.20-Beta
2022-08-18 12:17:10 +02:00
Tom Hvitved
08a5b5dc73
Merge pull request #10089 from hvitved/ruby/local-source-nodes
...
Ruby: Reduce size of `isLocalSourceNode`
2022-08-18 12:02:35 +02:00
Tom Hvitved
e949458add
Merge pull request #10066 from hvitved/csharp/underlying-as-callable
...
C#: Include both source code and hand-written summaries in data flow
2022-08-18 12:01:49 +02:00
Asger F
349331d6ca
Merge pull request #10082 from asgerf/js/exports-handling2
...
JS: Handle nested conditions in "exports" section
2022-08-18 11:10:59 +02:00
Nick Rolfe
a46e2b3f2f
Merge pull request #10056 from hmac/hmac/action-controller-response-body
...
Ruby: Recognise Rails render calls as HTTP responses
2022-08-18 10:02:17 +01:00
Tom Hvitved
682986c0a2
Merge pull request #10087 from hvitved/ruby/unknown-member-warning
...
Ruby: Get rid of warning in `getUnknownMember`
2022-08-18 10:50:24 +02:00
erik-krogh
9e7c0c6ab9
revert changing imports in java/
2022-08-18 10:19:12 +02:00
Anders Schack-Mulligen
07e0bd3ce1
Merge pull request #10083 from aschackmull/java/sensitivelog-barrier
...
Java: Add some type-based sanitizers to SensitiveInfoLog.ql.
2022-08-18 10:18:33 +02:00
erik-krogh
de3e1c39e4
use the shared regular expression libraries in js/case-sensitive-middleware-path
2022-08-18 10:07:55 +02:00
erik-krogh
473bc92e2d
move the PrefixConstruction module out of the ReDoSPruning module
2022-08-18 10:07:48 +02:00
Tom Hvitved
93830f43cc
Address review comment
2022-08-18 10:06:26 +02:00
Tom Hvitved
baa646e102
Ruby: Remove unused UnknownMember from API graphs
2022-08-18 09:40:02 +02:00
Anders Schack-Mulligen
37e5f0438c
Java: Add change note.
2022-08-18 09:19:32 +02:00
Tamas Vajk
fb9a34851a
Apply code review changes
2022-08-18 09:01:10 +02:00
erik-krogh
4bc10f9b5c
explicitly import required frameworks that were previously implicitly imported
2022-08-18 08:40:46 +02:00
Harry Maclean
8f370b2457
Update ruby/ql/lib/change-notes/2022-08-16-action-controller-response-body.md
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2022-08-18 10:03:52 +12:00
Harry Maclean
70ec70940a
Merge pull request #8142 from github/hmac/incomplete-multi-char-sanitization
2022-08-18 10:02:39 +12:00
erik-krogh
d96dca4f5e
fix typo
2022-08-17 22:59:16 +02:00
erik-krogh
7850ab2dcc
rename badlangs to otherlangs
2022-08-17 22:58:58 +02:00
erik-krogh
cb110ba266
this is an odd commit
2022-08-17 22:57:27 +02:00
erik-krogh
f738567f96
refactor some code out into a helper class QueryDoc
2022-08-17 22:56:46 +02:00
Philip Ginsbach
e8a1925e9c
add reference file for signatures
2022-08-17 20:44:00 +01:00
Philip Ginsbach
6c08542278
add "Parameterised modules" section to documentation of modules
2022-08-17 20:43:59 +01:00
Erik Krogh Kristensen
e93ff8672c
Merge pull request #10075 from erik-krogh/depOld
...
delete old deprecations
2022-08-17 21:21:57 +02:00
yoff
78756bdc6a
Merge pull request #9859 from tausbn/python-fix-another-bad-value-transfer-join
2022-08-17 20:47:00 +02:00
Chris Smowton
3802deab70
Adjust test expectations re: reformatting
2022-08-17 17:31:27 +01:00
Chris Smowton
e33ddbdcfd
Format go
2022-08-17 16:42:06 +01:00
Tom Hvitved
ed2ec1acc0
Ruby: Reduce size of isLocalSourceNode
2022-08-17 17:19:30 +02:00
Tom Hvitved
c307a12c20
Ruby: Get rid of warning in getUnknownMember
2022-08-17 16:22:11 +02:00
Alex Ford
d4d6657cb7
Merge pull request #10008 from alexrford/rb/log-injection
...
Ruby: Add `rb/log-injection` query
2022-08-17 15:01:22 +01:00
Taus
1c15fc5600
Python: Define Str as an alias of StrConst
2022-08-17 13:36:32 +00:00
erik-krogh
6b9f01535b
change All to Most in the change-notes
2022-08-17 15:34:57 +02:00
Chris Smowton
077bae55fe
Go: don't use WriteNode for channel writes
...
I overlooked the fact that this has a WriteInstruction, which wasn't bound in the channel-write case, but somehow the evaluator discarded the implied cartesian product until last night's performance evaluation.
Rather than try to cram channel writes into WriteInstruction, just handle them as their own beast.
2022-08-17 14:27:16 +01:00
Anders Schack-Mulligen
f6eccd390e
Java: Move sink-constraints into the configuration.
2022-08-17 15:06:55 +02:00
Tamas Vajk
5d01653371
Fix gradle exclude list after the version number changes
2022-08-17 15:03:37 +02:00
Mathias Vorreiter Pedersen
1eb0f6a12e
Merge pull request #10081 from erik-krogh/desugar
...
add desugered to the typo database
2022-08-17 13:56:59 +01:00
Anders Schack-Mulligen
c3ba632a32
Java: Add some type-based sanitizers to SensitiveInfoLog.ql.
2022-08-17 14:54:28 +02:00
Erik Krogh Kristensen
bd4947fdbd
Merge pull request #10046 from erik-krogh/protoFunc
...
JS: generalize `BarrierGuardFunction`to work on function that have multiple parameters
2022-08-17 14:50:54 +02:00
Anders Schack-Mulligen
6e495ba6e5
Merge pull request #10068 from aschackmull/java/summarizedcallable-split
...
Java: Make synthesized method bodies disjoint from source code.
2022-08-17 14:13:56 +02:00
erik-krogh
2622c78766
add change-notes
2022-08-17 13:55:16 +02:00
erik-krogh
14d83ab1b5
make the framework imports in FlowSources.qll private
2022-08-17 13:50:08 +02:00
erik-krogh
8066e39d07
delete some redundant imports
2022-08-17 13:50:04 +02:00
Tom Hvitved
355c1f5959
Merge pull request #10035 from hvitved/ssa/phi-reads
...
SSA: Improve use-use calculation using "phi read nodes"
2022-08-17 13:43:00 +02:00
erik-krogh
dbbba32579
revert change to generated swift code
2022-08-17 13:34:22 +02:00
erik-krogh
b7b80fe176
reintroduce redundant cast in synced file
2022-08-17 13:34:22 +02:00
erik-krogh
ffb65d054e
delete redundant inline casts
2022-08-17 13:34:22 +02:00
erik-krogh
2e44fba67d
add explicit this
2022-08-17 13:33:31 +02:00
erik-krogh
b9823cf335
fix ql/could-be-cast
2022-08-17 13:33:31 +02:00
erik-krogh
b2e3d8bb86
remove some more legacy code that existed to support deprecated code
2022-08-17 13:32:39 +02:00
erik-krogh
6ac898bad4
add desugered to the typo database
2022-08-17 13:13:43 +02:00
Ian Lynagh
0d4419dd8c
Merge pull request #10071 from igfoo/igfoo/refactor
...
Kotlin: Refactor TypeResults
2022-08-17 11:58:33 +01:00
Joe Farebrother
5d00b871d4
Correct node type
2022-08-17 11:58:11 +01:00
Joe Farebrother
2bc2649204
Merge pull request #9853 from joefarebrother/static-init-vec
...
Java: Promote Static Initialization Vector query
2022-08-17 11:56:00 +01:00
Nick Rolfe
61db581512
Merge pull request #10080 from github/nickrolfe/desugared-typo
...
Ruby: fix typo: s/Desugered/Desugared
2022-08-17 11:54:15 +01:00
Anders Schack-Mulligen
c034a1e268
Java: Fix test.
2022-08-17 12:46:35 +02:00
Anders Schack-Mulligen
27f76330be
Java: Fix models.
2022-08-17 12:46:09 +02:00
Anders Schack-Mulligen
857b473503
Java: Delete duplicate tests.
2022-08-17 12:44:42 +02:00
Nick Rolfe
94a51142d0
Ruby: fix typo in internal predicate name
2022-08-17 11:05:39 +01:00
Tamas Vajk
abc4405221
Kotlin: Change version numbers
2022-08-17 11:57:33 +02:00
Tamas Vajk
f12c73f472
Kotlin: Add support for version 1.7.20-Beta
2022-08-17 11:57:33 +02:00
Tom Hvitved
d8f7861ab1
C#: Include both source code and hand-written summaries in data flow
...
Still, generated summaries are only included when there is no source code.
2022-08-17 11:57:24 +02:00
Erik Krogh Kristensen
47353f6c28
Merge pull request #10067 from erik-krogh/paramSig
...
QL: support signature parameters in QL-for-QL
2022-08-17 11:50:39 +02:00
Joe Farebrother
de69827711
Use a full dataflow config rather than local flow
2022-08-17 10:35:48 +01:00
Joe Farebrother
fe5a61bdde
Fix typos in docs and comments
2022-08-17 10:35:48 +01:00
Joe Farebrother
c77b17574a
Use CryptoAlgoSpec rather than hadcoding Cipher.getInstance
2022-08-17 10:35:47 +01:00
Joe Farebrother
08b77493d2
Add security severity and change note
2022-08-17 10:35:47 +01:00
Joe Farebrother
9ae652dd6a
Add tests
2022-08-17 10:35:47 +01:00
Joe Farebrother
41bdd6d4cc
Add RSA without OEAP query and qhelp
2022-08-17 10:35:46 +01:00
Joe Farebrother
7c188a6b96
Apply doc suggestions
2022-08-17 10:35:16 +01:00
Joe Farebrother
7989ba3391
Replace a tainttracking instance with local flow
2022-08-17 10:35:16 +01:00
Joe Farebrother
5afc0b0c15
Add security severity
2022-08-17 10:35:15 +01:00
Joe Farebrother
bf32b5a8fd
Reiview suggestions - add doc comment, reword description, simplify a part
2022-08-17 10:35:15 +01:00
Joe Farebrother
a62bb8e115
Add additional test case
2022-08-17 10:35:15 +01:00
Joe Farebrother
960a4e58a0
Add change note
2022-08-17 10:35:14 +01:00
Joe Farebrother
c152a27a68
Reword docs
2022-08-17 10:35:14 +01:00
Joe Farebrother
4d0957711b
Reduce FPs from empty arrays
2022-08-17 10:35:14 +01:00
Joe Farebrother
c0a1300955
Improve initializedWthConstants to no longer need a workaround
2022-08-17 10:35:13 +01:00
Joe Farebrother
f8f21c7ee6
Move static init vector query and tests from experimental to main
2022-08-17 10:35:13 +01:00
Tom Hvitved
44e1ecdf94
Merge pull request #10060 from hvitved/ruby/pos-args-missing-flow-tests
...
Ruby: Add tests that demonstrate missing flow through positional arguments
2022-08-17 10:45:25 +02:00
Tony Torralba
1d12bd1521
Share SpringUrlRedirect library
2022-08-17 10:43:43 +02:00
Paolo Tranquilli
979706903a
Merge pull request #10070 from github/redsun82/swift-self-apply-tests
...
Swift: add more `SelfApplyExpr` testing
2022-08-17 09:34:20 +02:00
Harry Maclean
1f4dad4167
Update for rename of ReDoSUtil to NfaUtils
2022-08-17 16:03:49 +12:00
Harry Maclean
f1a546c4d6
Rename IncompleteMultiCharacterSanitization[Query]
2022-08-17 16:03:49 +12:00
Harry Maclean
e48158b9ad
JS: Share more code with Ruby
2022-08-17 16:03:49 +12:00
Harry Maclean
f2384a6a8f
Ruby: Share more code with JS
2022-08-17 16:03:49 +12:00
Harry Maclean
025e34d8e1
Ruby: Simplify imports
2022-08-17 16:03:48 +12:00
Harry Maclean
ab6287aebd
Ruby: Fix import
2022-08-17 16:03:48 +12:00
Harry Maclean
b7d9bf4066
Share IncompleteMultiCharacterSanitization JS/Ruby
...
Most of the classes and predicates in this query can be shared between
the two languages. There's just a few language-specific things that we
place in IncompleteMultiCharacterSanitizationSpecific.
2022-08-17 16:03:46 +12:00
Harry Maclean
3179c60a1e
Ruby: Remove RegExpLiteral.getAMatch
...
This predicate is a duplicate of getAMatchedString, which matches the
naming in the JS version.
2022-08-17 16:02:48 +12:00
Harry Maclean
6bb24f9d7c
Ruby: matchesEmptyString -> isNullable
...
Rename RegExpLiteral.matchesEmptyString to isNullable, to match the JS
version.
2022-08-17 16:02:48 +12:00
Harry Maclean
3fba4a5fa7
Ruby: Add change note for new query
2022-08-17 16:02:48 +12:00
Harry Maclean
c234bd94d1
Ruby: IncompleteMultiCharacterSanitization Query
...
This query is similar to IncompleteSanitization but for multi-character
sequences.
2022-08-17 16:02:48 +12:00
Harry Maclean
6e289a9db3
Ruby: Improvements to StringSubstitutionCall
...
- Handle block arguments
- Recognise patterns passed via constants
2022-08-17 16:02:48 +12:00
Harry Maclean
17dfb4e7b8
Ruby: Add RegExpTerm.getAMatch
2022-08-17 16:02:48 +12:00
Harry Maclean
c9fc43a4ba
Ruby: Add matchesEmptyString to RegExpTerm
2022-08-17 16:02:47 +12:00
Robert Marsh
56eacce320
C++: restrict to end-of-allocation pointers
2022-08-16 17:52:06 -04:00
Robert Marsh
93de8e2308
C++: fix missing bounds in exp range analysis
2022-08-16 17:44:51 -04:00
Robert Marsh
c306ba4d77
C++: one more PR comment
2022-08-16 17:44:50 -04:00
Robert Marsh
66ce9158a3
C++: respond to easy comments on ProducFlow.qll
2022-08-16 17:44:48 -04:00
Robert Marsh
0ebd7d0de5
C++: respond to PR comments
2022-08-16 17:44:47 -04:00
Robert Marsh
e4d0e7431c
C++: some experimental product flow queries
2022-08-16 17:44:46 -04:00
Robert Marsh
d0f4c2f823
C++: product flow prototype
2022-08-16 17:44:45 -04:00
erik-krogh
478e0bf5a3
delete old code that only existed to support a deleted deprecated feature
2022-08-16 23:35:48 +02:00
erik-krogh
04173b7e93
fix test that was using old code
2022-08-16 23:35:29 +02:00
erik-krogh
2c71c46282
drive-by fix a QL-for-QL warning that showed up in code-scanning
2022-08-16 22:43:10 +02:00
erik-krogh
e69f4cd1b3
delete another dead file (thanks to the dead-code query)
2022-08-16 22:42:48 +02:00
erik-krogh
42049b1c0e
delete dead code (thanks QL-for-QL)
2022-08-16 22:35:42 +02:00
erik-krogh
507e0aa164
delete import to deprecated file
2022-08-16 22:35:03 +02:00
erik-krogh
1568763eec
delete two dead predicates
2022-08-16 22:34:55 +02:00
erik-krogh
4b7f63a0f3
sync SensitiveDataHeuristics.qll to the other languages
2022-08-16 22:31:26 +02:00
erik-krogh
514f98cd44
delete entire file that was deprecated
2022-08-16 22:29:52 +02:00
erik-krogh
5586c9a17e
delete old deprecations
2022-08-16 22:27:15 +02:00
Ian Lynagh
7406915616
Kotlin: Remove some dead code
2022-08-16 17:47:12 +01:00
Ian Lynagh
7b33aebe1f
Kotlin: Refactor TypeResults
...
We statically know when we expect to have no signature, so now we tell
the type system what we know, rather than having signature always be
nullable.
2022-08-16 17:42:47 +01:00
Robert Marsh
9e0c82eabb
Merge pull request #10039 from rdmarsh2/rdmarsh2/cpp/sem-range-analysis-perf
...
C++: Fix missing bounds and performance issues in semantic range analysis
2022-08-16 12:27:02 -04:00
Paolo Tranquilli
9232b282d8
Merge pull request #9891 from github/redsun82/swift-first-prototype-of-generated-ipa-layer
...
Swift: first prototype of a generated IPA layer
2022-08-16 18:08:03 +02:00
Jeroen Ketema
8fb57149fb
Merge pull request #10069 from jketema/ir-present
...
C++: Expose `PresentIRFunction` and override in `cpp/count-ir-inconsistencies`
2022-08-16 17:59:26 +02:00
Paolo Tranquilli
f17fed7c9a
Swift: add more SelfApplyExpr testing
2022-08-16 17:46:22 +02:00
Robert Marsh
818bdcf3ab
C++: autoformat a test
2022-08-16 11:31:28 -04:00
Paolo Tranquilli
9cd2ae2fd1
Swift: rename Synth conversion functions
2022-08-16 16:54:33 +02:00
Jeroen Ketema
31aa6692cb
Sync files
2022-08-16 16:38:37 +02:00
Jeroen Ketema
243dda79d2
C++: Expose PresentIRFunction and override in cpp/count-ir-inconsistencies
...
The `toString` implementtion that `PresentIRFunction` uses may result in very
long strings that may crash the evaluator. Overriding allows is to limit the
string size and still suffices when just counting the number of inconsistencies.
2022-08-16 16:30:38 +02:00
Jami
dd23d48ad2
Merge pull request #9939 from jcogs33/android-debug-query-inline-tests
...
Java: query to detect android:debuggable attribute enabled
2022-08-16 10:07:13 -04:00
Tom Hvitved
4901deb796
Merge pull request #10004 from hvitved/csharp/mad-this-rename
...
C#: Rename `Argument[Qualifier]` to `Argument[this]` in MaD
2022-08-16 15:09:51 +02:00
Ian Lynagh
0e4066b6a8
Kotlin: Typo in comment
2022-08-16 14:09:07 +01:00
Sid Shankar
1e1e2318b7
Merge pull request #10052 from github/task/fix-broken-links
...
Docs: Replace HTTP broken links to equivalent HTTPS resources
2022-08-16 08:45:08 -04:00
yoff
e7c6c04076
Merge pull request #9858 from tausbn/python-fix-bad-getOuterVariable-join
...
Python: Fix bad join in `getOuterVariable`
2022-08-16 14:40:42 +02:00
yoff
3006fa60c6
Merge pull request #9856 from tausbn/python-fix-bad-ScopeEntryDefinition-charpred-join
...
Python: Fix bad join in `ScopeEntryDefinition`
2022-08-16 14:37:53 +02:00
Tom Hvitved
7395587244
Sync files
2022-08-16 14:07:39 +02:00
Tom Hvitved
611a6807bc
SSA: Improve use-use calculation using "phi read nodes"
2022-08-16 14:07:38 +02:00
Tom Hvitved
9a61f24e16
C#: Add SSA use-use stress test
2022-08-16 14:06:15 +02:00
Tom Hvitved
6be6d26cb5
C#: Add new SSA test
2022-08-16 14:06:15 +02:00
Paolo Tranquilli
98819f64da
Merge branch 'main' into redsun82/swift-first-prototype-of-generated-ipa-layer
2022-08-16 14:05:44 +02:00
Taus
1f5176d623
Python: Simplify class_var_scope
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2022-08-16 14:02:47 +02:00
erik-krogh
37f6fecf51
don't check the formatting on the test files
2022-08-16 13:49:56 +02:00
erik-krogh
3a373c508d
fix the type of the getImplements() predicate, to fix the parent-child relation in the AST
2022-08-16 13:44:43 +02:00
Taus
b17e74dfe8
Python: Simplify binding fix
...
Co-authored-by: yoff <yoff@github.com >
2022-08-16 11:41:43 +00:00
Anders Schack-Mulligen
df40ccd129
Java: Make synthesized method bodies disjoint from source code.
2022-08-16 13:36:39 +02:00
erik-krogh
232952519a
support signature parameters in QL-for-QL
2022-08-16 13:36:05 +02:00
Erik Krogh Kristensen
fd5b8896df
Merge pull request #10063 from erik-krogh/fixRbDep
...
re-deprecate ReDoSUtil in ruby
2022-08-16 13:27:52 +02:00
Tom Hvitved
e4c257db74
C#: Rename Argument[Qualifier] to Argument[this] in MaD
2022-08-16 13:24:41 +02:00
Mathias Vorreiter Pedersen
367752222f
Merge pull request #10064 from MathiasVP/fix-ssa-for-getters
...
Swift: Fix SSA for calls to getter functions
2022-08-16 12:08:08 +01:00
Alex Ford
d02ad51d74
Merge pull request #10032 from github/post-release-prep/codeql-cli-2.10.3
...
Post-release preparation for codeql-cli-2.10.3
2022-08-16 12:04:07 +01:00
Mathias Vorreiter Pedersen
cbb1108f6e
Swift: Fix SSA for calls to getter functions.
2022-08-16 11:48:46 +01:00
Ian Lynagh
c927ac9b33
Merge pull request #10048 from igfoo/igfoo/NotNullExpr
...
Kotlin: Remove not-null-expressions from KotlinUsesExtractor
2022-08-16 10:59:43 +01:00
Ian Lynagh
19c2ca8d40
Merge pull request #10049 from igfoo/igfoo/NotNullExpr2
...
Kotlin: Remove a non-null-expr
2022-08-16 10:59:33 +01:00
Asger F
449e697761
JS: Handle nested conditions in "exports" section
2022-08-16 11:45:48 +02:00
Tom Hvitved
9f5b215d49
Merge pull request #10055 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-08-16 11:39:04 +02:00
erik-krogh
2fbae81356
re-deprecate ReDoSUtil in ruby
2022-08-16 11:22:00 +02:00
erik-krogh
8e6a36256c
import the non-deprecated NfaUtils in the overly-large-range query
2022-08-16 11:21:43 +02:00
Geoffrey White
dd51b7f356
Swift: Add many tests.
2022-08-16 10:04:00 +01:00
Nick Rolfe
7a47551027
Merge pull request #10059 from hvitved/ruby/fix-deprecation-warning
...
Ruby: Fix deprecation warning
2022-08-16 09:50:55 +01:00
Tom Hvitved
aa93986d1a
Ruby: Add tests that demonstrate missing flow through positional arguments
2022-08-16 10:36:40 +02:00
Tom Hvitved
007d98e3b4
Ruby: Fix deprecation warning
2022-08-16 10:23:06 +02:00
Anders Schack-Mulligen
28e4224ab1
Merge pull request #10023 from aschackmull/java/numbertype-perf
...
Java: Minor perf improvement.
2022-08-16 09:52:55 +02:00
Tamás Vajk
6e57e45309
Merge pull request #10034 from tamasvajk/kotlin-build-versions-2
...
Kotlin: Change handling of version variants in build script
2022-08-16 09:38:19 +02:00
Erik Krogh Kristensen
f106e064fa
Merge pull request #9422 from erik-krogh/refacReDoS
...
Refactorizations of the ReDoS libraries
2022-08-16 09:32:08 +02:00
erik-krogh
14cfe2e250
improve the join-order of BarrierGuardFunction::isBarrierCall
2022-08-16 09:28:48 +02:00
erik-krogh
3355a7a046
generalize BarrierGuardFunctionto work on function that have multiple parameters
2022-08-16 09:13:15 +02:00
Paolo Tranquilli
5bad696b41
Swift: remove unused no-parameter constructors
2022-08-16 09:09:00 +02:00
Harry Maclean
7ef6ffbc54
Ruby: Recognise Rails render calls as HTTP responses
2022-08-16 14:03:26 +12:00
github-actions[bot]
ab9079a838
Add changed framework coverage reports
2022-08-16 00:20:20 +00:00
erik-krogh
b3adb62adb
move the pack cache to where it's read
2022-08-15 22:47:08 +02:00
erik-krogh
d38d810677
include the workflow in the cache key
2022-08-15 22:47:08 +02:00
erik-krogh
ae08130451
more threads
2022-08-15 22:47:05 +02:00
erik-krogh
427a607843
point codeql-action to the local QL-for-QL queries
2022-08-15 22:46:57 +02:00
erik-krogh
847934078c
update the version of codeql-action used by QL-for-QL
2022-08-15 22:28:05 +02:00
erik-krogh
5e53124217
don't report warning for deprecated classes/predicates
2022-08-15 21:52:34 +02:00
erik-krogh
d816f7f390
add ql/consistent-alert-message
2022-08-15 21:52:10 +02:00
Jami Cogswell
07e141c5be
added commas to help file
2022-08-15 15:50:00 -04:00
Jami Cogswell
4986cc8458
update isDebuggable predicate
2022-08-15 15:50:00 -04:00
Jami Cogswell
f529cc43bc
updated lib change note name
2022-08-15 15:50:00 -04:00
Jami Cogswell
29acce1e93
remove extraneous unit test
2022-08-15 15:50:00 -04:00
Jami Cogswell
4c2b05ce8c
adding change-note for android manifest library
2022-08-15 15:50:00 -04:00
Jami Cogswell
b779f9f935
added casting
2022-08-15 15:50:00 -04:00
Jami Cogswell
c010f92811
simplified predicates, removed overridden getFile predicate
2022-08-15 15:50:00 -04:00
Jami Cogswell
6e10fcf519
added predicates in the AndroidManifest library and adjusted tests
2022-08-15 15:50:00 -04:00
Jami Cogswell
229324fde0
updated overview section of help file; also added 'App Manifest Overview' to references
2022-08-15 15:50:00 -04:00
Jami Cogswell
3714a98403
add reference to help file
2022-08-15 15:50:00 -04:00
Jami Cogswell
ead36822be
update change note based on review comment
2022-08-15 15:50:00 -04:00
Jami Cogswell
f961540979
added change note
2022-08-15 15:50:00 -04:00
Jami Cogswell
af0a663ee8
remove commented-out code in Test.java file
2022-08-15 15:50:00 -04:00
Jami Cogswell
d1a23ad78c
updated to getRelativePath with %build%
2022-08-15 15:50:00 -04:00
Jami Cogswell
15df392fd8
updates to InlineExpectationsTest
2022-08-15 15:50:00 -04:00
Jami Cogswell
d8dbdfcd70
rename expected file, add ql file, delete qlref file
2022-08-15 15:50:00 -04:00
Jami Cogswell
8c4b98c04f
rename files
2022-08-15 15:50:00 -04:00
Jami Cogswell
475d67a4df
minor updates, removed comments
2022-08-15 15:50:00 -04:00
Jami Cogswell
e2374f816a
test commit for new branch
2022-08-15 15:50:00 -04:00
Jami Cogswell
54470c794d
updated location part of query to use abs path and /build
2022-08-15 15:49:59 -04:00
Jami Cogswell
54acd0e330
add numeric value for security-severity
2022-08-15 15:49:59 -04:00
Jami Cogswell
fdb437552c
clean up android query and tests
2022-08-15 15:49:59 -04:00
Jami Cogswell
cf39cc0909
updates to android debug query
2022-08-15 15:49:59 -04:00
Jami Cogswell
6720dba8e7
draft android debug query
2022-08-15 15:49:59 -04:00
Sid Shankar
639af0a9a3
Use Wayback Machine 🔗 for IE Conditional Comments
2022-08-15 14:45:34 -04:00
Sid Shankar
79a4ddd2ee
Fix invalid link to Ecmascript 2015 specification
2022-08-15 14:44:18 -04:00
Sid Shankar
68d1c2d3e8
Fix link to python requests documentation
...
docs.python-requests.org seems to be a suspended domain. The replacement link is to the same Python requests library on readthedocs.io, and points to the ssl-cert-verification section.
2022-08-15 14:43:28 -04:00
Sid Shankar
02cd7bc7d2
Remove reference to infosecwriters.com
...
infosecwriters.com now redirects to a completely unrelated page. The broken link was replaced with a mailing list post from Diabolical Crab (DCrab) diving into HTTP response splitting.
2022-08-15 14:41:50 -04:00
Sid Shankar
ffbb158570
Update invalid link to devx.com
2022-08-15 14:40:12 -04:00
Sid Shankar
69de832f76
Replace invalid link to blogs.msdn.com
...
Replace with link to the same article on devblogs.microsoft.com. Unfortunately, blogs.msdn.com does not automatically redirect to the new location, making this replacement necessary.
2022-08-15 14:39:26 -04:00
Paolo Tranquilli
9de5985218
Swift: fix subtracted constructors
2022-08-15 17:00:36 +02:00
Chris Smowton
79bae0caeb
Merge pull request #9999 from github/smowton/feature/golang-channel-flow
...
Go: implement conservative cross-thread dataflow
2022-08-15 15:38:15 +01:00
Paolo Tranquilli
1365d0911d
Swift: generalize synth constructors
...
Now all types get a default synth constructor.
2022-08-15 16:12:19 +02:00
Ian Lynagh
d06b3a17bb
Kotlin: Remove a non-null-expr
2022-08-15 15:01:48 +01:00
Ian Lynagh
48e6b4c01b
Kotlin: Remove another not-null-expression
2022-08-15 14:43:59 +01:00
Ian Lynagh
10463e12a7
Kotlin: Add List<T?>.requireNoNullsOrNull(): List<T>? utility
2022-08-15 14:38:09 +01:00
Asger F
eaf3aa7075
Merge pull request #10036 from asgerf/js/exports-handling
...
JS: More precise handling of "exports"
2022-08-15 15:32:00 +02:00
Ian Lynagh
d4517f1266
Kotlin: Refactor away a NotNullExpr in the extractor
2022-08-15 14:17:53 +01:00
Taus
16451654db
Merge pull request #9884 from tausbn/ql-untangle-parsers
...
QL: Untangle the various parsers
2022-08-15 15:12:30 +02:00
Paolo Tranquilli
8ba330a886
Swift: rename conversion predicates
2022-08-15 15:04:39 +02:00
Paolo Tranquilli
ace92d0958
Swift: rename Db to Raw
2022-08-15 14:54:21 +02:00
Paolo Tranquilli
9347030611
Swift: rename Ipa to Synth
2022-08-15 14:31:17 +02:00
erik-krogh
459c2a21b4
Merge branch 'main' into ql-untangle-parsers
2022-08-15 14:11:32 +02:00
erik-krogh
c652f3e3dd
update grammar after https://github.com/tree-sitter/tree-sitter-ql/pull/17 has been merged
2022-08-15 14:10:10 +02:00
Jeroen Ketema
6b94cdbd8d
Merge pull request #10047 from jketema/fix-ir-comment
...
C++: Fix block assignment evaluation order comment in IR translation
2022-08-15 14:01:48 +02:00
Chris Smowton
774e379eb1
Merge pull request #9742 from smehta23/feat/SM/java_partial_path_traversal_vulnerability
...
[JAVA] Partial Path Traversal Vuln Query
2022-08-15 12:56:16 +01:00
Erik Krogh Kristensen
0adb588fe8
Merge pull request #9712 from erik-krogh/badRange
...
JS/RB/PY/Java: add suspicious range query
2022-08-15 13:55:44 +02:00
Michael Nebel
15906338dc
Merge pull request #9923 from michaelnebel/csharp/webgoat
...
C#: SQL Injection improvements for SQLite.
2022-08-15 13:22:25 +02:00
Chris Smowton
e27d62b0b4
Fix qldoc wording
2022-08-15 12:08:14 +01:00
Chris Smowton
c40ec728c6
Remove non-ascii char
2022-08-15 12:08:14 +01:00
Chris Smowton
38c0557d90
Adjust test to moved and expanded stubs
2022-08-15 12:08:14 +01:00
Asger F
3c41f28519
JS: Use explicit this
2022-08-15 12:49:23 +02:00
Asger F
671573633b
JS: Simplify getMain()
2022-08-15 12:48:41 +02:00
Chris Smowton
9f82088f5d
Remove unnecessary casts
2022-08-15 11:47:58 +01:00
Chris Smowton
1a3dc1d6eb
Remove extra closing tag
2022-08-15 11:31:53 +01:00
Michael Nebel
79a716488b
Merge pull request #10003 from michaelnebel/csharp/stubsenum
...
C#: Stub generator improvements.
2022-08-15 12:14:06 +02:00
Asger F
80a37c5863
JS: More precise handling of "exports"
2022-08-15 11:59:40 +02:00
Jeroen Ketema
6c4685e538
C++: Fix block assignment evaluation order comment in IR translation
2022-08-15 11:58:57 +02:00
Erik Krogh Kristensen
51a724315f
Merge pull request #10017 from erik-krogh/forAwait
...
JS: support top-level for await statements
2022-08-15 11:58:56 +02:00
Ian Lynagh
09d249e5d8
Merge pull request #10038 from igfoo/igfoo/java-downgrades
...
Java: Add initial downgrades directory
2022-08-15 10:57:52 +01:00
Paolo Tranquilli
6dc90bc46c
Swift: accept test change
2022-08-15 11:53:18 +02:00
Chris Smowton
5677e38994
Style edit
2022-08-15 10:37:55 +01:00
Chris Smowton
3cf871e9e5
Apply docs suggestions
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-08-15 10:34:55 +01:00
Mathias Vorreiter Pedersen
dfde5712a3
Merge pull request #10031 from jketema/block-assign
...
C++: Handle block assignments
2022-08-15 10:29:23 +01:00
erik-krogh
a28948e836
add change note
2022-08-15 10:53:33 +02:00
Anders Schack-Mulligen
a3fb54c9de
Merge pull request #10007 from aschackmull/dataflow/source-node-identity
...
Dataflow: Fix identification of source PathNodes in the presence of source-to-source flow
2022-08-15 10:39:17 +02:00
Paolo Tranquilli
176009ca88
Merge branch 'main' into redsun82/swift-first-prototype-of-generated-ipa-layer
2022-08-15 10:18:41 +02:00
Chris Smowton
ca4ef6578d
Spelling
2022-08-13 14:37:08 +01:00
Chris Smowton
c5e46f78ec
Add change note
2022-08-13 14:29:17 +01:00
Chris Smowton
8bea2a5f6c
Add missing qldoc
2022-08-13 14:20:48 +01:00
Jeroen Ketema
40334a21ce
C++: add upgrade and downgrade scripts
2022-08-13 15:09:06 +02:00
Chris Smowton
b62e9dc92c
Convert tests to inline expectations and fix one bug revealed doing so
...
Specifically Apache sshd defines its sensitive api calls on an inherited interface, and they need to be described that way for us to pick them up.
2022-08-13 14:02:05 +01:00
Chris Smowton
ddb0846e06
Split up hardcoded creds queries, ready for conversion to inline expectations
2022-08-13 12:39:16 +01:00
Chris Smowton
0a6ccbca45
Add stubs and tests for new hardcoded-credential sinks
2022-08-13 12:39:15 +01:00
Daniel Santos
60e0f09586
Additional hardcoded credentials candidates 3rd-party api calls
2022-08-13 12:39:15 +01:00
Jeroen Ketema
cac6bd57ab
C++: Update DB scheme stats file
2022-08-13 01:01:30 +02:00
erik-krogh
3a4a3437b5
fix some QL-for-QL warnings
2022-08-12 20:38:50 +02:00
erik-krogh
b54f037424
Merge branch 'main' into refacReDoS
2022-08-12 20:28:30 +02:00
erik-krogh
b9e96fb078
sync changes to other languages
2022-08-12 20:28:12 +02:00
erik-krogh
97681ea219
simplify code after review
2022-08-12 20:27:50 +02:00
erik-krogh
3403e2f325
apply suggestions from code review
2022-08-12 20:25:55 +02:00
Robert Marsh
5450681ade
C++: Autoformat and fix a test
2022-08-12 13:49:16 -04:00
Raul Garcia
e5f5d461f4
addressing feedback from PR review
2022-08-12 10:16:10 -07:00
Jeroen Ketema
0449d914c4
C++: Add change note
2022-08-12 18:43:24 +02:00
Jeroen Ketema
4d76fd198e
C++: Handle block assignments in the IR
2022-08-12 18:43:23 +02:00
Jeroen Ketema
5c905b76b4
C++: Expose block assignment operations in the QL library
2022-08-12 18:43:23 +02:00
Jeroen Ketema
ebf8161f1b
C++: Add block assignment expression to the database schema
...
These can under some circumstances be generated by the frontend as part
of compiler generated copy constructors and assignment operators.
2022-08-12 18:43:23 +02:00
Jeroen Ketema
e1b1657cdd
C++: Remove unused abstract predicate
2022-08-12 18:43:23 +02:00
Jeroen Ketema
de142b276d
C++: Add IR test that exposes a gap in the extractor output
2022-08-12 18:43:23 +02:00
Robert Marsh
65643515ba
C++: inexact memory operands as SSA variables
...
This makes inexact memory operands into their own SSA variables in the
Semantic interface, which resolves an issue with phi nodes losing
inexact operands (e.g. the unknown-size variable for parameter
indirections).
2022-08-12 12:35:54 -04:00
Robert Marsh
3bbd333336
C++: fix missing bounds in exp range analysis
2022-08-12 12:33:45 -04:00
Robert Marsh
e6aa2de977
C++: semantic range analysis perf fixes
2022-08-12 12:28:04 -04:00
Ian Lynagh
254c166f93
Java: Add initial downgrades directory
2022-08-12 16:19:31 +01:00
Tamas Vajk
ccef2f7646
Address review comments
2022-08-12 15:25:46 +02:00
Michael Nebel
af473db067
C#: Add function pointer test case in stub generation.
2022-08-12 14:56:52 +02:00
Tamás Vajk
1d56330baa
Merge pull request #9782 from tamasvajk/cs/newtonsoft-deserialization
...
C#: Fix unsafe deserialization with `JsonConvert.DeserializeObject`
2022-08-12 14:46:41 +02:00
Tamas Vajk
451be6c32c
Kotlin: Add explicit CI version number to build script
2022-08-12 14:27:06 +02:00
Michael Nebel
e9b184fa4c
C#: Avoid multiple explicit casts in stub generator.
2022-08-12 13:34:50 +02:00
Michael Nebel
eb9057918c
C#: Manual updates to .NET Core stubs to make it compile.
2022-08-12 13:12:33 +02:00
Tamas Vajk
0bd00ce1db
Kotlin: Change handling of version variants in build script
2022-08-12 13:11:33 +02:00
Michael Nebel
b4f7e07cc1
C#: Update .NET Core stubs.
2022-08-12 13:10:08 +02:00
Michael Nebel
0c58764643
C#: Update FunctionPointer expected output with specific CallingConvention printing.
2022-08-12 13:01:15 +02:00
Michael Nebel
d3047f6293
C#: Update calling convetion QL doc to comply with standard.
2022-08-12 13:01:15 +02:00
Michael Nebel
9ae17f93da
C#: Stub generator support for function pointer types.
2022-08-12 13:01:15 +02:00
Michael Nebel
e2882f0706
C#: Re-generate stubs for the ASP.NET Core framework.
2022-08-12 13:01:15 +02:00
Michael Nebel
7c7c335b0e
C#: Update stub generator expected output.
2022-08-12 13:01:15 +02:00
Michael Nebel
b052fbf41c
C#: Add enum long type testcase.
2022-08-12 12:51:31 +02:00
Michael Nebel
f71d684a08
C#: Use explicit typing for enums in the stub generator.
2022-08-12 12:48:50 +02:00
Michael Nebel
9ff94120d8
C#: Update stub generator test(s) expected output.
2022-08-12 12:48:24 +02:00
Michael Nebel
284d88d906
C#: Update stub generator query to explicit include enum constants.
2022-08-12 12:48:24 +02:00
Michael Nebel
d023f840de
C#: Add Enum examples in stub generator test code.
2022-08-12 12:48:24 +02:00
Chris Smowton
50fb6621a9
Create 2022-08-12-cross-thread-flow.md
2022-08-12 09:00:16 +01:00
Raul Garcia
39e53a2932
Updates based on PR feedback. 1 pending change
2022-08-11 17:59:57 -07:00
Raul Garcia
0805b49914
Update csharp/ql/src/experimental/Security Features/JsonWebTokenHandler/JsonWebTokenHandlerLib.qll
...
Co-authored-by: Tom Hvitved <hvitved@github.com >
2022-08-11 17:35:10 -07:00
Raul Garcia
6070e4f312
Update csharp/ql/src/experimental/Security Features/JsonWebTokenHandler/JsonWebTokenHandlerLib.qll
...
Co-authored-by: Tom Hvitved <hvitved@github.com >
2022-08-11 17:31:12 -07:00
github-actions[bot]
21d0c78376
Post-release preparation for codeql-cli-2.10.3
2022-08-11 23:20:39 +00:00
Geoffrey White
c1be060ef8
Swift: Create query + test stubs.
2022-08-11 16:10:18 +01:00
Alex Ford
f30b735443
Merge pull request #10022 from github/release-prep/2.10.3
...
Release preparation for version 2.10.3
2022-08-11 13:52:43 +01:00
Anders Schack-Mulligen
a3fc463d0a
Java: Minor perf improvement.
2022-08-11 14:21:10 +02:00
Tamas Vajk
740265dc38
Add change note
2022-08-11 13:32:49 +02:00
github-actions[bot]
57c4f9145b
Release preparation for version 2.10.3
2022-08-11 11:12:15 +00:00
Erik Krogh Kristensen
73df8e4c7d
Merge pull request #9832 from erik-krogh/misspellings
...
Fix lots of misspellings
2022-08-11 12:43:26 +02:00
Jeroen Ketema
2a9af11727
Merge pull request #10021 from jketema/consistency
...
C++: Add internal metrics query for IR consistency
2022-08-11 12:39:22 +02:00
erik-krogh
2feb9db96c
re-enable consistency checks for swift
2022-08-11 12:33:03 +02:00
Erik Krogh Kristensen
9b1842b18e
use an exclusion filter in the ModConsistency predicates (consistency query is now empty)
2022-08-11 12:31:53 +02:00
Erik Krogh Kristensen
160208188e
remove redundant cast
2022-08-11 12:31:53 +02:00
Erik Krogh Kristensen
77277a9e1b
rename YAMLValue to YamlValue
2022-08-11 12:31:53 +02:00
Erik Krogh Kristensen
ad09386c5e
add explicit this
2022-08-11 12:31:53 +02:00
Erik Krogh Kristensen
79a8f96139
disable the ModConsistency::noResolve predicate for qltests
2022-08-11 12:31:53 +02:00
Erik Krogh Kristensen
fcdba7ce57
speed up resolving fields
2022-08-11 12:31:53 +02:00
Erik Krogh Kristensen
3005b4bfcc
cleanup the query pack after compilation, to avoid including that in the following analysis
2022-08-11 12:31:53 +02:00
Erik Krogh Kristensen
c97001ede7
add support for module instantiations in import statements. Rework the import resolution logic to reuse the logic from ModuleExpr
2022-08-11 12:31:53 +02:00
Erik Krogh Kristensen
641c6b0300
re-generate bindings in the other grammars
2022-08-11 12:31:52 +02:00
Erik Krogh Kristensen
82beca6787
change the tree-sitter version constaint to ">= 0.20, < 0.21" throughout the grammars
2022-08-11 12:31:52 +02:00
Erik Krogh Kristensen
98f49e08b6
re-generate bindings in tree-sitter-ql
2022-08-11 12:31:52 +02:00
Erik Krogh Kristensen
774ae0e5da
pin the version of tree-sitter-ql-dbscheme / tree-sitter-ql
2022-08-11 12:31:52 +02:00
Erik Krogh Kristensen
1e3306d341
synchronize the version of tree-sitter-ql-yaml across the Cargo.toml files
2022-08-11 12:31:52 +02:00
Taus
41003231b0
QL: Actually match qlpack.yml files
2022-08-11 12:31:52 +02:00
Taus
a83bd4292a
QL: Update tree-sitter dependency
2022-08-11 12:31:52 +02:00
Taus
66a191e4b5
QL: Update extractor
2022-08-11 12:31:52 +02:00
Taus
395414c3cf
Update generator
2022-08-11 12:31:52 +02:00
Taus
495576c438
Use upstream tree-sitter-ql
...
This gets rid of all of the `dbscheme` and YAML bits. These will be
added in later commits. (Doing it all in one go made for an unreadable
diff.)
Also modifies `create-extractor-path.sh` to automatically install
`gh codeql` if there is no CodeQL CLI available for autoformatting.
2022-08-11 12:31:52 +02:00
erik-krogh
4cbfbfe170
add call-edge for dynamic dispatch to unknown property from an object literal
2022-08-11 12:29:50 +02:00
Geoffrey White
c62ae3b350
C++: First working. We now prefer flagging the cases where the variable was initialized, as in real world cases we haven't seen it done safely.
2022-08-11 12:27:48 +02:00
Geoffrey White
76ef779f60
C++: Add test and placeholder query.
2022-08-11 12:27:39 +02:00
Nora Dimitrijević
94c43c07c7
Update .gitignore for .vscode/*.log temporaries
...
These keep getting added, by the Makefile extension I believe.
2022-08-11 12:18:37 +02:00
Geoffrey White
2ee1979546
Merge pull request #10014 from geoffw0/inlinetaint
...
Swift: Add an inline expectations test for taint flow
2022-08-11 11:18:18 +01:00
Geoffrey White
1dcc44ff2f
Swift: taintedFromLine -> tainted.
2022-08-11 11:01:05 +01:00
Rasmus Wriedt Larsen
ff23f8ef86
Merge pull request #9855 from tausbn/python-fix-bad-scope_entry_transfer-join
...
Python: Fix bad join in scope entry transfer
2022-08-11 11:55:51 +02:00
Jeroen Ketema
5259025c67
Merge pull request #10020 from jketema/jketema/minor
...
C++: Improve QLDoc based on earlier review
2022-08-11 11:45:59 +02:00
Jeroen Ketema
c89592cda7
C++: Add internal metrics query for IR consistency
2022-08-11 11:39:52 +02:00
Jeroen Ketema
faaf1ec30d
C++: Improve QLDoc based on earlier review
2022-08-11 11:31:21 +02:00
Jeroen Ketema
a5c0fa24d7
Merge pull request #9971 from jketema/attribute-arg
...
C++: Handle all forms of constant attribute arguments
2022-08-11 11:30:18 +02:00
Jeroen Ketema
18094fb1d8
Merge pull request #10019 from erik-krogh/deleteDeadSwift
...
delete the dead TypeRepr files
2022-08-11 11:13:54 +02:00
Chris Smowton
3d4e9061a4
Merge pull request #10016 from aschackmull/java/kotlin-test-fix
...
Kotlin: Reflection test should not refer to DataFlowPrivate.
2022-08-11 10:08:38 +01:00
Tamas Vajk
7a406d8e41
C#: Fix unsafe deserialization with JsonConvert.DeserializeObject
...
Remove false positives when `JsonConvert.DeserializeObject` is called with not necessarily unsafe settings.
2022-08-11 11:00:46 +02:00
Tamas Vajk
6e6bd208b1
C#: Add test case for JsonConvert.DeserializeObject in unsafe deserialization tests
2022-08-11 11:00:23 +02:00
erik-krogh
c778b38a77
delete the dead TypeRepr files
2022-08-11 10:56:58 +02:00
Chris Smowton
e9df675f88
Autoformat ql
2022-08-11 09:55:46 +01:00
Tamas Vajk
548d7ac37d
C#: Regenerate Newtonsoft.Json test stub
...
The newly generated stubs contain the actual values of enum constants.
2022-08-11 10:52:48 +02:00
erik-krogh
a5239bc1e8
fix one more misspelling in swift
2022-08-11 10:27:20 +02:00
erik-krogh
eb6c2882f9
cleanup pack in QL-for-QL
2022-08-11 10:22:32 +02:00
erik-krogh
e7f009e879
support top-level for await statements
2022-08-11 09:53:32 +02:00
Anders Schack-Mulligen
74b05d2aa4
Kotlin: Reflection test should not refer to DataFlowPrivate.
2022-08-11 09:48:10 +02:00
Anders Schack-Mulligen
87461fece4
Merge pull request #10006 from aschackmull/java/sensitive-log-dedup
...
Java: Remove SensitiveLoggingQuery results that flow through a source.
2022-08-11 09:26:33 +02:00
Anders Schack-Mulligen
ced083be61
Merge pull request #10015 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-08-11 09:20:12 +02:00
Michael Nebel
b817bd43ca
Merge pull request #10005 from michaelnebel/csharp/constructorsummaries
...
C#: Constructor summaries
2022-08-11 09:16:05 +02:00
Michael Nebel
9cb4e4a61c
C#: Update release note.
2022-08-11 08:57:10 +02:00
Tom Hvitved
e106edc04e
Merge pull request #9989 from hvitved/csharp/lua-tracer-improvements2
...
C#: Handle `dotnet exec csc.dll` and the likes in the Lua tracer
2022-08-11 08:55:46 +02:00
github-actions[bot]
33ce9552cb
Add changed framework coverage reports
2022-08-11 00:17:52 +00:00
Erik Krogh Kristensen
803e079dab
fix accidental typo
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-08-10 23:23:32 +02:00
Erik Krogh Kristensen
a66229ee9d
update the expected output of the misspelling test
2022-08-10 23:21:41 +02:00
Erik Krogh Kristensen
887f6557ed
fix common misspellings throughout github/codeql
2022-08-10 23:21:41 +02:00
Erik Krogh Kristensen
db614bda29
generalize the ql/misspelling query to work on all kinds of comments
2022-08-10 23:21:41 +02:00
Jeroen Ketema
32a2363f85
C++: Add change note
2022-08-10 21:11:59 +02:00
Jeroen Ketema
32db845af8
C++: Add DB scheme upgrade and downgrade scripts
2022-08-10 21:11:58 +02:00
Jeroen Ketema
bdd8f2bbe9
C++: Update DB scheme stats file
2022-08-10 21:11:58 +02:00
Jeroen Ketema
8528e6b8e1
C++: Update test results for exposing attribute arguments as proper constants
2022-08-10 21:11:58 +02:00
Jeroen Ketema
b20961a065
C++: Expose constant expressions as attribute arguments
2022-08-10 21:11:58 +02:00
Jeroen Ketema
553f1c496e
C++: Update DB scheme to allow for constant expression as attribute arguments
2022-08-10 21:11:58 +02:00
Jeroen Ketema
9ae9b89529
C++: Improve accuracy of AttributeArgument.getValueText QLDoc
2022-08-10 21:11:58 +02:00
Jeroen Ketema
0e12c9d8b1
C++: Simplify this suppression for specifiers
2022-08-10 21:11:58 +02:00
Aditya Sharad
c0da29b204
Docs: Add spacing to fix list formatting
2022-08-10 11:16:41 -07:00
Geoffrey White
d16a7754e1
Swift: Take out common code.
2022-08-10 19:04:01 +01:00
Geoffrey White
d7f50eafae
Swift: Minor fixes.
2022-08-10 19:03:52 +01:00
Geoffrey White
11f45cf20c
Swift: Add expectation annotations.
2022-08-10 18:53:45 +01:00
Aditya Sharad
231178d858
Docs: Add CodeQL standard packs and bundle to CodeQL tools page
...
Include links to changelogs, releases, and source code.
2022-08-10 10:49:19 -07:00
Geoffrey White
c2ee5fe258
Swift: Add inlineExpectations test.
2022-08-10 18:47:46 +01:00
Chris Smowton
cc8e9806c4
Merge pull request #10009 from smowton/smowton/java17-options
...
Java: Adapt tests as required by JDK17 extractor upgrade
2022-08-10 18:46:06 +01:00
Chris Smowton
bf24d7886a
Accept test changes
2022-08-10 18:10:02 +01:00
Chris Smowton
341241cf43
Use SrcFloatingPointLiteral
2022-08-10 17:28:14 +01:00
Mathias Vorreiter Pedersen
56fddd75bb
Merge pull request #10000 from geoffw0/defaulttaint
...
Swift: Taint flow improvements
2022-08-10 16:30:09 +01:00
Alex Ford
7a61f59b1e
Ruby: add change note for new rb/log-injeciton query
2022-08-10 16:17:55 +01:00
Alex Ford
44c4b9ba5c
Ruby: add rb/log-injection test cases
2022-08-10 16:17:37 +01:00
Alex Ford
00e290e1f1
Ruby: document rb/log-injection
2022-08-10 16:17:18 +01:00
Alex Ford
c31995764b
Ruby: add rb/log-inection query
2022-08-10 16:16:54 +01:00
Geoffrey White
6ffe5fcaed
Swift: Comment some other cases.
2022-08-10 15:46:32 +01:00
Geoffrey White
537caf85f2
Swift: Fix cartesian product.
2022-08-10 15:46:30 +01:00
Geoffrey White
e09e64ee85
Swift: Restrict taint flow through + to strings.
2022-08-10 15:46:28 +01:00
Geoffrey White
f3499e98a4
Swift: Move try, ! to dataflow.
2022-08-10 15:13:04 +01:00
Nora Dimitrijević
cce39fb2ce
Merge pull request #9998 from d10c/use-strcpyfunction-in-bad-strncpy-size
...
Use StrcpyFunction in `cpp/bad-strncpy-size`
This PR:
- Uses the [StrcpyFunction](https://github.com/github/codeql/blob/main/cpp/ql/lib/semmle/code/cpp/models/implementations/Strcpy.qll#L14 ) class in the [StrncpyFlippedArgs](https://github.com/github/codeql/blob/main/cpp/ql/src/Likely%20Bugs/Memory%20Management/StrncpyFlippedArgs.ql ) query instead of an ad-hoc predicate for finding strcpy-like functions.
- Tests this by adding one previously unsupported strcpy-like function (`wcsxfrm_l`) to StrncpyFlippedArgs's test.cpp.
2022-08-10 15:11:20 +02:00
Tamás Vajk
b2c22dacc2
Merge pull request #9769 from tamasvajk/fix/ctor-field-flow
...
C#: Fix dataflow for default constructors
2022-08-10 15:06:25 +02:00
Anders Schack-Mulligen
abad133ab5
Dataflow: Fix identification of source PathNodes in the presence of source-to-source flow.
2022-08-10 15:02:56 +02:00
Michael Nebel
0d83b7cbd0
C#: Add release note.
2022-08-10 14:58:22 +02:00
Anders Schack-Mulligen
cbd6d24b9c
Merge pull request #9963 from intrigus-lgtm/java/model-set-properties
...
Model `java.util.Properties.setProperty`
2022-08-10 14:51:00 +02:00
Michael Nebel
da30436c44
C#: Update flow summaries test case with new summaries.
2022-08-10 14:49:20 +02:00
Michael Nebel
c3adb990a3
C#: Update SQL Injection with testcase with found vulnerability.
2022-08-10 14:49:20 +02:00
Michael Nebel
36a713510c
C#: Add summary models for the FileStream constructor.
2022-08-10 14:49:20 +02:00
Michael Nebel
504160fee4
C#: Update expected file for Sql injection and Second Order sql injection (note that this is already a second order sql injection).
2022-08-10 14:49:20 +02:00
Michael Nebel
5c47ae3f98
C#: Add testcase for unsanitized filename used in Filestream.
2022-08-10 14:49:20 +02:00
Michael Nebel
1355931b50
C#: Update SecondOrder SQL Injection test case expected output with vulnerability from test case.
2022-08-10 14:49:19 +02:00
Michael Nebel
ced9ee5f5d
C#: Update FlowSummaries test expected output after addition of new summaries.
2022-08-10 14:49:19 +02:00
Anders Schack-Mulligen
ecc15a1f95
Java: Remove SensitiveLoggingQuery results that flow through a source.
2022-08-10 14:28:07 +02:00
Michael Nebel
736ae4f7d6
C#: Update FlowSummaries expected output.
2022-08-10 14:23:54 +02:00
Michael Nebel
5659db73d3
C#: Update alle manually written summaries for constructors to use Argument[Qualifier] instead of ReturnValue.
2022-08-10 14:17:16 +02:00
Nora Dimitrijević
60f4049388
Re-autoformat StrncpyFlippedArgs.ql
2022-08-10 14:14:42 +02:00
Chris Smowton
2abd1f77f4
Go: implement conservative cross-thread dataflow
...
Steps into captured variables are moved into jumpStep where they always should have been, and the store/load step implementation for channels is completed.
For the time being this takes a very conservative approach to identify channels that are likely connected: if there is exactly one receive site and one send site for a field, the two are presumed connected.
2022-08-10 12:44:12 +01:00
Nora Dimitrijević
05f4f98aa0
Add change note
2022-08-10 13:42:21 +02:00
Nora Dimitrijević
8e60a4a478
Update StrncpyFlippedArgs.expected
...
Add output lines for the newly implemented test case, test.cpp/test9().
2022-08-10 13:42:21 +02:00
Nora Dimitrijević
df419003ad
Use Strcpy.qll in StrncpyFlippedArgs.ql
...
As a result, the query gets access to more types of strncpy-like
functions, as demonstrated by test.cpp, which now "fails" (i.e. works) for the new test
cases instroduced
in the previous commit.
2022-08-10 13:42:21 +02:00
Nora Dimitrijević
554aea1bb8
New strcpy-variant in StrncpyFlippedArgs test
...
Added wcsxfrm_l, which is not currently caught by the query,
meaning that in this case a successful
test implies missing functionality.
2022-08-10 13:42:21 +02:00
Chris Smowton
8c32758ae5
Merge pull request #9829 from smowton/smowton/fix/kotlin-underscore-parameter-names
...
Kotlin: Don't extract a name for a '_' parameter
2022-08-10 12:28:26 +01:00
yoff
b8931d36ca
python: give InterpretNode empty charpred
...
InterpreNode is going away, but we need a dummy implementation.
However, we do not need any instances, and some tests get confused.
2022-08-10 10:57:30 +00:00
Tom Hvitved
2bb9e4859f
C#: Handle dotnet exec csc.dll and the likes in the Lua tracer
2022-08-10 12:52:18 +02:00
Rasmus Wriedt Larsen
40d25cb34c
Merge pull request #9849 from tausbn/python-fix-bad-essa-getInput-join
...
Python: Fix bad join in ESSA `getInput`
2022-08-10 11:45:23 +02:00
Chris Smowton
09e4c6b66b
Add dataflow path-graph
2022-08-10 10:37:55 +01:00
Chris Smowton
2ca0b0c6b5
Inline qhelp overview
...
A <p> at the top isn't allowed, and for some reason the inclusion is required to be a valid qhelp file.
2022-08-10 10:37:48 +01:00
Michael Nebel
f1cc7bb60c
C#: Consider FileStreams StoredFlowSources and propagate taint via StreamReader.
2022-08-10 11:08:27 +02:00
Michael Nebel
2b51e03223
C#: Add SecondOrder SQL injection example, where reading from a file.
2022-08-10 11:08:27 +02:00
Michael Nebel
1e7e49a528
C#: Add relevant stubs.
2022-08-10 11:08:27 +02:00
Michael Nebel
344770f06a
C#: Update Sqlinjection test query output with new results.
2022-08-10 11:08:27 +02:00
Michael Nebel
fd67c34ee4
C#: Add sinks and summaries for adapters with tainted commands.
2022-08-10 11:08:27 +02:00
Michael Nebel
78cfb226a3
C#: Add some examples where adapter is used in conjunction with a tainted command.
2022-08-10 11:08:27 +02:00
Michael Nebel
86000f32e7
C#: Update SqlInjection query tests with new results.
2022-08-10 11:08:27 +02:00
Michael Nebel
aa13ab31e1
C#: Add SQLiteDataAdapter sinks.
2022-08-10 11:08:27 +02:00
Michael Nebel
1fb209990e
C#: Add SQLiteDataAdapter examples.
2022-08-10 11:08:27 +02:00
Michael Nebel
ce9baaa1f3
C#: Update SQLInjection query test output.
2022-08-10 11:08:27 +02:00
Michael Nebel
6f9f771f58
C#: Add SQLiteCommand sinks.
2022-08-10 11:08:27 +02:00
Michael Nebel
d42752714c
C#: Add SQLCommand examples.
2022-08-10 11:08:21 +02:00
Michael Nebel
7fc95fb49b
Merge pull request #9988 from michaelnebel/csharp/updatestubs
...
C#: Update .NET Core and ASP.NET Core Stubs.
2022-08-10 11:02:35 +02:00
yoff
75ac24a847
Merge branch 'main' into python-dataflow/flow-summaries-from-scratch
2022-08-10 10:57:59 +02:00
Rasmus Wriedt Larsen
b541103b7f
Merge pull request #9846 from tausbn/python-fix-bad-syntactic_call_count-join
...
Python: Fix bad join in `syntactic_call_count`
2022-08-10 10:09:51 +02:00
Michael Nebel
0aa64b3a8f
Merge pull request #10001 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-08-10 10:09:19 +02:00
Tom Hvitved
19043bdf38
Merge pull request #9976 from hvitved/ruby/hash-literal-summary-simplification
...
Ruby: Simplify flow summaries for hash literals
2022-08-10 08:57:33 +02:00
Erik Krogh Kristensen
d008975ff4
Merge pull request #9825 from erik-krogh/repeatedWord
...
QL: add ql/repeated-word query
2022-08-10 07:25:26 +02:00
github-actions[bot]
cb19ae2638
Add changed framework coverage reports
2022-08-10 00:16:31 +00:00
Harry Maclean
30ff18aec8
Merge pull request #9919 from hmac/hmac/ar-associations
...
Ruby: ActiveRecord associations
2022-08-10 11:13:39 +12:00
Esben Sparre Andreasen
0c6f28014c
Merge pull request #9821 from erik-krogh/jsQlFix
...
JS: fix some QL-for-QL warnings in JS
2022-08-09 22:06:29 +02:00
Erik Krogh Kristensen
559ec7ba56
Merge branch 'main' into repeatedWord
2022-08-09 21:22:47 +02:00
smehta23
cf68a11267
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversal.qhelp
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-08-09 11:59:28 -07:00
smehta23
4d80fd0b00
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversal.qhelp
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-08-09 11:59:14 -07:00
smehta23
7da07400ea
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversalFromRemote.qhelp
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-08-09 11:59:03 -07:00
smehta23
c2b670eff8
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversalFromRemote.qhelp
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-08-09 11:58:55 -07:00
Geoffrey White
6f696ccc3c
Swift: Effect of merging with main to get the AnyTryExpr fix.
2022-08-09 19:02:59 +01:00
Geoffrey White
efcc696e6e
Merge branch 'main' into defaulttaint
2022-08-09 18:59:36 +01:00
Geoffrey White
f2fead7ec7
Merge pull request #9995 from MathiasVP/swift-cfg-for-anytry
...
Swift: CFG for `any!`
2022-08-09 18:00:28 +01:00
Geoffrey White
36f410b9f7
Swift: Move taint logic from isAdditionalTaintStep to defaultAdditionalTaintStep.
2022-08-09 17:42:28 +01:00
Geoffrey White
242dc80907
Swift: Add taint test of try.
2022-08-09 17:42:25 +01:00
Geoffrey White
3bda9af97a
Swift: Add taint test of Data.
2022-08-09 17:42:24 +01:00
Geoffrey White
42c3e29a29
Swift: Add taint test of URL.
2022-08-09 17:42:23 +01:00
Geoffrey White
068ec8ea20
Swift: More tests of taint flow through Strings.
2022-08-09 16:43:07 +01:00
Geoffrey White
0141609703
Swift: Rename test.
2022-08-09 16:41:26 +01:00
Tony Torralba
7f5fe85e2e
Merge pull request #9975 from atorralba/atorralba/asynctask-improvs
...
Java: Improve AsyncTask data flow support
2022-08-09 17:10:09 +02:00
Erik Krogh Kristensen
da4da229b1
move tests to new test location
2022-08-09 16:25:00 +02:00
Erik Krogh Kristensen
49276b1f38
Merge branch 'main' into refacReDoS
2022-08-09 16:18:46 +02:00
Mathias Vorreiter Pedersen
5ee11c3d7b
Swift: Accept test changes.
2022-08-09 15:12:42 +01:00
Mathias Vorreiter Pedersen
06fecf3869
Swift: Include 'any!' in the the CFG tree for 'any' expressions.
2022-08-09 15:12:31 +01:00
Michael Nebel
eb19090746
C#: Remove unused hand written stubs.
2022-08-09 15:23:43 +02:00
Michael Nebel
cdd1172cee
C#: Use generated stubs in the RequireSSLAspNetCore like tests and update test results with new line numbers.
2022-08-09 15:18:34 +02:00
Michael Nebel
a23be5ca3b
C#: Manually re-order the values in the CookieSecurePolicy enum.
2022-08-09 15:17:14 +02:00
Michael Nebel
98f8bed037
C#: Update CookieWithoutHttpOnlyAspNetCore tests to use generated stubs and update line numbers in test output.
2022-08-09 14:54:19 +02:00
Michael Nebel
77a321ee9a
C#: Manually re-order the values in the HttpOnlyPolicy enum.
2022-08-09 14:52:54 +02:00
Michael Nebel
d6880f059d
C#: Use generated stubs for CookieHttpOnlyFalseAspNetCore testcases and update test output with new line numbers.
2022-08-09 14:32:19 +02:00
Tom Hvitved
28c8d9b885
Ruby: Add two more hash flow tests
2022-08-09 14:17:07 +02:00
Michael Nebel
3a908ac4b8
C#: Cleanup stub project references.
2022-08-09 14:15:00 +02:00
Michael Nebel
1a2fc2b565
C#: Remove unused stubs.
2022-08-09 14:14:00 +02:00
Erik Krogh Kristensen
0abbd50ca1
apply changes based on docs review
2022-08-09 13:51:40 +02:00
Michael Nebel
3ba893dfa8
C#: Remove System.Data.SqlClient 4.8.2 stub.
2022-08-09 13:15:44 +02:00
Michael Nebel
7c68947035
C#: Update flow summaries expected out as we now include ASP.NET Core as stubs for these tests.
2022-08-09 13:08:34 +02:00
Michael Nebel
6d96da1838
C#: Use ASP.NET Core stub instead of Microsoft.Extensions.Primitives and manual written ASP.NET Core stubs.
2022-08-09 13:08:34 +02:00
Michael Nebel
63b06d50b0
C#: Delete ServiceStack 5.11.0 and related projects.
2022-08-09 13:08:34 +02:00
Michael Nebel
094dcf989e
C#: Update FlowSummaries test expected file (this is required since the .NET Runtime stubs have been updated).
2022-08-09 13:08:34 +02:00
Michael Nebel
d76b069bc5
C#: Manual changes to stubs to ensure compilation.
2022-08-09 13:08:34 +02:00
Michael Nebel
73b6697ea6
C#: Add ServiceStack 6.2.0 and friends.
2022-08-09 13:08:17 +02:00
Chris Smowton
1c6642f3fb
Format QL
2022-08-09 11:50:54 +01:00
Chris Smowton
80f5b977d6
Use sealed classes released version
2022-08-09 11:50:54 +01:00
yo-h
c46b54b9c2
Java 17: exclude non-source locations in some tests
2022-08-09 11:50:54 +01:00
yo-h
0bf7e075e5
Java 17: adjust expected test output
2022-08-09 11:50:54 +01:00
yo-h
27b699df33
Java: adjust test options for JDK 17 upgrade
2022-08-09 11:50:54 +01:00
Erik Krogh Kristensen
add9e9dac4
Merge pull request #9548 from erik-krogh/exports
...
JS: support the "exports" property in a package.json
2022-08-09 12:16:12 +02:00
Tamás Vajk
82a56608ef
Merge pull request #9992 from tamasvajk/fix/fetch-codeql-path
...
Fix path of `fetch-codeql`
2022-08-09 10:57:11 +02:00
Geoffrey White
db8a3107b3
Merge pull request #9089 from ihsinme/ihsinme-patch-87
...
CPP: Add query for CWE-125 Out-of-bounds Read with different interpretation of the string when use mbtowc
2022-08-09 09:31:32 +01:00
Tom Hvitved
975edac34e
Merge pull request #9969 from hvitved/ruby/kwargs-missing-flow
...
Ruby: Support more flow through keyword arguments
2022-08-09 09:59:57 +02:00
Michael Nebel
b90a404658
Merge pull request #9636 from michaelnebel/csharp/sinkmodelcsv
...
C#: Convert Sinks to CSV format for SymmetricAlgorithm.
2022-08-09 09:05:12 +02:00
Tamas Vajk
2cab1ed076
Fix path of fetch-codeql
2022-08-09 07:59:25 +02:00
Tom Hvitved
dd465e739b
Code review suggestion
2022-08-09 07:46:27 +02:00
Tamas Vajk
36c913061c
C#: Fix dataflow for default constructors
2022-08-09 07:46:27 +02:00
Tamas Vajk
1a92fc90e0
C#: Add test to demonstrate missing dataflow for default constructors
2022-08-09 07:46:27 +02:00
Harry Maclean
22d7b046ab
Ruby: Fix <<
2022-08-09 15:08:17 +12:00
Harry Maclean
e3115b5ed7
Ruby: Add test for other=
2022-08-09 15:08:17 +12:00
Harry Maclean
831f722402
Ruby: Make room for new test
2022-08-09 15:08:17 +12:00
Harry Maclean
58b628b6d1
Ruby: Add change note
2022-08-09 15:08:17 +12:00
Harry Maclean
dc853d9728
Ruby: Model ActiveRecord associations
2022-08-09 15:08:17 +12:00
Shyam Mehta
af92fc389b
Update PartialPathTraversalFromRemote.qhelp
2022-08-08 17:37:57 -04:00
Shyam Mehta
50b4df52f0
Fixed precision labels
2022-08-08 17:36:04 -04:00
Shyam Mehta
9d3e8ec475
Update PartialPathTraversalFromRemote.qhelp
2022-08-08 17:35:36 -04:00
smehta23
4f1bc3022c
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversalFromRemote.ql
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-08-08 17:09:43 -04:00
ihsinme
4fdf4b23bd
Update DangerousWorksWithMultibyteOrWideCharacters.ql
2022-08-08 18:46:39 +03:00
ihsinme
212b1031b2
Update DangerousWorksWithMultibyteOrWideCharacters.qhelp
2022-08-08 18:42:54 +03:00
ihsinme
7cbf79b144
Rename DangerousUseMbtowc.ql to DangerousWorksWithMultibyteOrWideCharacters.ql
2022-08-08 18:39:41 +03:00
ihsinme
9b5154f878
Update and rename DangerousUseMbtowc.qlref to DangerousWorksWithMultibyteOrWideCharacters.qlref
2022-08-08 18:39:10 +03:00
ihsinme
bce395f201
Rename DangerousUseMbtowc.expected to DangerousWorksWithMultibyteOrWideCharacters.expected
2022-08-08 18:38:24 +03:00
ihsinme
ef04b8f5b3
Rename DangerousUseMbtowc.qhelp to DangerousWorksWithMultibyteOrWideCharacters.qhelp
2022-08-08 18:37:15 +03:00
ihsinme
5ee499389e
Rename DangerousUseMbtowc.cpp to DangerousWorksWithMultibyteOrWideCharacters.cpp
2022-08-08 18:36:53 +03:00
ihsinme
02bea35da2
Update DangerousUseMbtowc.qhelp
2022-08-08 18:35:25 +03:00
Asger F
fdcb1fa115
Merge pull request #9928 from asgerf/js/source-node-type
...
JS: Simplify type hierarchy for SourceNode
2022-08-08 16:53:20 +02:00
Esben Sparre Andreasen
ab3d365ddb
Merge pull request #9535 from github/js-array-filter-taint-step
...
Tests for rebased 7010
2022-08-08 14:31:22 +02:00
Tom Hvitved
9268437a58
Ruby: Generalize SynthHashSplatParameterNode to also work for synthesized methods
2022-08-08 14:05:06 +02:00
Michael Nebel
6febbc5966
C#: Update .NET Core and ASP.NET Core.
2022-08-08 13:29:20 +02:00
Ian Lynagh
b5d6258e54
Merge pull request #9809 from igfoo/igfoo/fakeLabel
...
Kotlin: Remove the last uses of fakeLabel
2022-08-08 11:54:53 +01:00
yoff
20febb6edd
Merge pull request #9567 from RasmusWL/typetracker-decorators
...
Python: allow class decorators in `.getASubclass()`
2022-08-08 12:42:27 +02:00
Esben Sparre Andreasen
da44340334
formatting
2022-08-08 12:22:41 +02:00
Edoardo Pirovano
d3ec8a8ec3
Merge pull request #9949 from github/edoardo/trap-cache-config
...
JS: Change how TRAP cache is configured
2022-08-08 11:19:31 +01:00
Rasmus Wriedt Larsen
f89b32183f
Merge branch 'main' into typetracker-decorators
2022-08-08 11:52:09 +02:00
Edoardo Pirovano
5c3d39579a
JS: Change how TRAP cache is configured
2022-08-08 10:25:50 +01:00
Esben Sparre Andreasen
a3cf81d419
js: add filter taint test (post rebase conflicts)
2022-08-08 11:00:11 +02:00
Evgenii Protsenko
50264547bf
make array taint-step better
2022-08-08 11:00:11 +02:00
Anders Schack-Mulligen
aa3655678e
Merge pull request #9823 from aschackmull/dataflow/stage-module
...
Dataflow: Replace stage duplication with parameterised modules.
2022-08-08 10:56:32 +02:00
Tom Hvitved
d16a154f9e
Address review comment
2022-08-08 10:45:55 +02:00
Michael Nebel
cebd49af9d
Merge pull request #9968 from michaelnebel/csharp/aspreviewcomment
...
C#: Simplification of AspNetCoreRemoteFlowSourceMember.
2022-08-08 09:44:02 +02:00
Tony Torralba
98b930cd67
Accept test changes in experimental query after AsyncTask improvements
2022-08-08 09:23:12 +02:00
Tom Hvitved
27e89cbbb1
Merge pull request #9980 from hvitved/csharp/lua-tracer-improvements
...
C#: Also disable shared compilation in the tracer for `dotnet msbuild`
2022-08-08 08:57:52 +02:00
Joe Farebrother
d2007bcd6e
Merge pull request #9663 from joefarebrother/android-certificate-validation
...
Java: Add query for improper webview certificate validation
2022-08-05 20:49:15 +01:00
Mathias Vorreiter Pedersen
f2767eb03a
Merge pull request #9972 from MathiasVP/swift-taint-through-interpolated-strings
...
Swift: Taint through interpolated strings
2022-08-05 15:55:35 +01:00
Robert Marsh
10710e27df
Merge pull request #9978 from MathiasVP/swift-fix-mad
...
Swift: Fix flow summaries for methods
2022-08-05 09:53:16 -04:00
Tony Torralba
03b854a1ed
Add test for initializer method
2022-08-05 15:29:17 +02:00
Mathias Vorreiter Pedersen
6cfeb24d94
Swift: More comments.
2022-08-05 13:30:45 +01:00
Tom Hvitved
400071091c
C#: Also disable shared compilation in the tracer for dotnet msbuild
2022-08-05 14:17:16 +02:00
AlexDenisov
d3e5449e3b
Merge pull request #9979 from MathiasVP/add-inline-expectations-framework-to-Swift
...
Swift: Add InlineExpectationsTest framework
2022-08-05 14:10:41 +02:00
Joe Farebrother
dd83c17144
Use more precise control flow logic
2022-08-05 12:56:21 +01:00
Joe Farebrother
e9f9e681ef
Change man-in-the-middle back to machine-in-the-middle
...
(gender-neutral language)
This reverts commit d5ab330450d3f5c1d36d0d9b6a8f1dc32bc908e3.
2022-08-05 12:56:21 +01:00
Joe Farebrother
79b1f24133
Change machine-in-the-middle to man-in-the-middle
2022-08-05 12:56:20 +01:00
Joe Farebrother
04df556861
Add suggested reference
2022-08-05 12:56:20 +01:00
Joe Farebrother
abf894a64c
Fix typos
2022-08-05 12:56:20 +01:00
Joe Farebrother
03c2a0e818
Add missing qldoc
2022-08-05 12:56:20 +01:00
Joe Farebrother
0d09484efc
Add change note
2022-08-05 12:56:19 +01:00
Joe Farebrother
f8ccbcba70
Add qhelp
2022-08-05 12:56:19 +01:00
Joe Farebrother
a2245bb858
Fix test
2022-08-05 12:56:19 +01:00
Joe Farebrother
498ad230c2
Update stubs
2022-08-05 12:56:19 +01:00
Joe Farebrother
c4de158e0d
Add tests
2022-08-05 12:56:18 +01:00
Joe Farebrother
16e16f08dc
Add webview cert validation query
2022-08-05 12:56:18 +01:00
Mathias Vorreiter Pedersen
b20b0a091d
Update identical-files.
2022-08-05 11:49:36 +01:00
Mathias Vorreiter Pedersen
46ec7a9b82
Swift: Add the InlineExpectationsTest framework.
2022-08-05 11:49:15 +01:00
Mathias Vorreiter Pedersen
69564d2192
Swift: Add a couple of standard Comment subclasses.
2022-08-05 11:48:29 +01:00
Tony Torralba
b75b073dae
Remove unused class member
2022-08-05 12:21:22 +02:00
Mathias Vorreiter Pedersen
946b8c68a6
Swift: Accept test changes.
2022-08-05 11:19:00 +01:00
Mathias Vorreiter Pedersen
a302570349
Merge branch 'main' into swift-taint-through-interpolated-strings
2022-08-05 11:17:54 +01:00
AlexDenisov
a779f0e376
Merge pull request #9977 from github/alexdenisov/extract-swift-comments
...
Swift: extract comments
2022-08-05 12:15:56 +02:00
Mathias Vorreiter Pedersen
24c9ab8015
Swift: Fix MaD for methods
2022-08-05 10:52:28 +01:00
Alex Denisov
5e69adb0a9
Swift: extract comments
2022-08-05 11:50:48 +02:00
Mathias Vorreiter Pedersen
1c8090fa04
Merge pull request #9964 from geoffw0/cwe95
...
Swift: Query for CWE-79 / CWE-95
2022-08-05 10:38:33 +01:00
Geoffrey White
1ce06accbd
Swift: Fix capitalization issue?
2022-08-05 10:20:51 +01:00
Mathias Vorreiter Pedersen
ac26371de0
Merge pull request #9909 from geoffw0/stringlengthconflation6
...
Swift: Understand String.utf8.count etc in the string length conflation CVE query
2022-08-05 10:13:25 +01:00
Tony Torralba
9ee90f8022
Remove unnecessary import from test
2022-08-05 11:11:13 +02:00
Tony Torralba
792d34c3a1
Add change note
2022-08-05 11:10:09 +02:00
Anders Schack-Mulligen
3d47875b60
Dataflow: Generate shorter RA/DIL names.
2022-08-05 11:00:56 +02:00
Anders Schack-Mulligen
d3dcc3ce3a
Dataflow: Sync.
2022-08-05 11:00:56 +02:00
Anders Schack-Mulligen
09d0f8e0ce
Dataflow: Replace stage duplication with parameterised modules.
2022-08-05 11:00:56 +02:00
Tom Hvitved
56ee07e24c
Merge pull request #9936 from aibaars/gh-codeql-nightly
...
Use 'gh codeql' with the nightly release for CI jobs
2022-08-05 10:34:39 +02:00
Tony Torralba
5ebce6ee4f
Improve AsyncTask data flow support
...
Model the life-cycle described here: https://developer.android.com/reference/android/os/AsyncTask\#the-4-steps
2022-08-05 10:29:49 +02:00
Tom Hvitved
e0dadb4df6
Ruby: Simplify flow summaries for hash literals
2022-08-05 10:20:07 +02:00
Jeroen Ketema
ba2cee07a9
Merge pull request #8596 from rdmarsh2/rdmarsh2/dataflow-global-vars
...
C++: IR data flow through global variables
2022-08-05 10:07:00 +02:00
Anders Schack-Mulligen
1fde06c0a8
Merge pull request #9970 from aschackmull/java/confusingoverload-perf
...
Java: Improve performance of ConfusingOverloading.
2022-08-05 09:38:22 +02:00
Harry Maclean
74d529d3e3
Merge pull request #9918 from hmac/hmac/mime-type-match
...
Ruby: Model Mime::Type
2022-08-05 11:51:45 +12:00
Harry Maclean
157bbccf62
Merge pull request #9851 from hmac/hmac/active-record-improvements
...
Ruby: Recognise more AR write accesses
2022-08-05 11:49:50 +12:00
Mathias Vorreiter Pedersen
2f13c65ad7
Update swift/ql/lib/codeql/swift/controlflow/internal/ControlFlowGraphImpl.qll
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2022-08-04 22:45:45 +01:00
Mathias Vorreiter Pedersen
05e6dd85d4
Swift: Add taint tests for flow through interpolated strings.
2022-08-04 21:57:05 +01:00
Mathias Vorreiter Pedersen
9c48ce1bf2
Swift: Flow (1) through the internal function calls generated by the compiler during string interpolation, and (2) out of the internal 'TapExpr' and into the interpolated string result.
2022-08-04 21:57:05 +01:00
Mathias Vorreiter Pedersen
52b78b6e68
Swift: Don't assume we know the call target statically in 'TInOutUpdateNode'.
2022-08-04 21:57:04 +01:00
Mathias Vorreiter Pedersen
ff6b8c5c9c
Swift: Replace 'CallExpr' with 'ApplyExpr'. This is needed because not all the calls inside the interpolated string computations are 'CallExpr's.
2022-08-04 21:57:04 +01:00
Mathias Vorreiter Pedersen
3028b80e46
Swift: Control-flow through interpolated strings.
2022-08-04 21:57:04 +01:00
Tom Hvitved
6fa1e06afb
Merge pull request #9966 from hvitved/csharp/no-clr-tracer
...
C#: Disable CLR tracer
2022-08-04 20:50:19 +02:00
intrigus
b7d94906bf
Add change note
2022-08-04 16:21:55 +02:00
intrigus
88ded4679a
Accept test changes
2022-08-04 16:21:53 +02:00
intrigus
c867a1a146
Test setProperty/put with taint stored earlier
2022-08-04 16:21:51 +02:00
intrigus
0b7f0fbe54
Accept test changes
2022-08-04 16:21:50 +02:00
intrigus
55618adf6a
Model java.util.Properties.setProperty
2022-08-04 16:21:48 +02:00
Tom Hvitved
01c0d4b59f
Ruby: Support more flow through keyword arguments
2022-08-04 16:20:08 +02:00
Anders Schack-Mulligen
43d4324f65
Java: Improve performance of ConfusingOverloading.
2022-08-04 16:05:30 +02:00
Tom Hvitved
38ede25385
Ruby: Add test that illustrates missing flow for keyword arguments
2022-08-04 14:39:22 +02:00
Michael Nebel
64e8660904
C#: Simplification of AspNetCoreRemoteFlowSourceMember.
2022-08-04 14:18:25 +02:00
Tom Hvitved
bc6a74b4dd
C#: Disable CLR tracer
...
Also remove old tracer configs, as we now use the Lua tracer.
2022-08-04 13:11:07 +02:00
mc
935def739c
Merge pull request #9955 from securingdev/patch-1
...
Update Other section with example exit code details
2022-08-04 10:26:45 +01:00
mc
df1633a838
Merge branch 'main' into patch-1
2022-08-04 10:13:23 +01:00
Anders Schack-Mulligen
a5a58f46eb
Merge pull request #9945 from aschackmull/java/wrappedinvocation-joinorder
...
Java: Improve join-order.
2022-08-04 11:12:23 +02:00
mc
360cff9c24
Merge branch 'main' into patch-1
2022-08-04 10:08:55 +01:00
Anders Schack-Mulligen
c2b99747d4
Merge pull request #9951 from aschackmull/java/notintersect-perf
...
Java: Improve join-order for `not haveIntersection`.
2022-08-04 11:08:02 +02:00
mc
8905df9abb
Merge branch 'main' into patch-1
2022-08-04 10:06:01 +01:00
mc
e4c9f8a9a2
Update docs/codeql/codeql-cli/exit-codes.rst
2022-08-04 10:05:52 +01:00
Chris Smowton
96091e4fa0
Merge pull request #9947 from github/smowton/fix/golang-path-injection-numeric-sanitizer
...
Go: note that numeric-typed nodes can't cause path traversal
2022-08-04 09:00:34 +01:00
Chris Smowton
af274354a0
Merge pull request #9956 from github/smowton/feature/tainted-path-query-mad
...
Make java/path-injection recognise create-file MaD sinks
2022-08-04 08:59:59 +01:00
Harry Maclean
ee9e6b1f2e
Ruby: Add change note
2022-08-04 17:27:34 +12:00
Harry Maclean
452811dbf2
Ruby: move change note
2022-08-04 17:25:55 +12:00
Harry Maclean
83393dc195
Ruby: Recognise more AR write accesses
...
This change means we recognise calls like
```rb
User.create(params)
User.update(id, params)
```
as instances of `PersistentWriteAccess`.
2022-08-04 17:22:46 +12:00
Harry Maclean
21b4918904
Ruby: Add getPositionalArgument
...
This gets positional arguments from a call. These are arguments which
are not keyword arguments.
2022-08-04 17:22:46 +12:00
Harry Maclean
d4f7f2b75e
Ruby: Add test for AR PersistentWriteAccesses
2022-08-04 17:22:46 +12:00
Harry Maclean
7ed81db32d
Ruby: Move ActiveRecord tests to new directory
2022-08-04 17:22:46 +12:00
Harry Maclean
def1b3c3b3
Ruby: QLDoc fix
2022-08-04 17:21:29 +12:00
Harry Maclean
fdbe16945f
Ruby: Add change note
2022-08-04 17:19:05 +12:00
Shyam Mehta
76cecc170e
Fix documentation
2022-08-03 14:30:17 -04:00
Geoffrey White
997068a9cb
Swift: Fix a suggestion merge conflict.
2022-08-03 18:16:31 +01:00
Geoffrey White
873c62ef78
Swift: Apply another code review suggestion.
2022-08-03 18:16:01 +01:00
Geoffrey White
e4dab17318
Apply suggestions from code review
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2022-08-03 18:14:14 +01:00
Geoffrey White
9d49986345
Swift: Make QL-for-QL happy.
2022-08-03 17:18:57 +01:00
Mathias Vorreiter Pedersen
9355f9132e
Merge pull request #9961 from MathiasVP/swift-cache-lastRefRedef
...
Swift: Cache `lastRefRedef`
2022-08-03 15:43:35 +01:00
Alex Ford
33fbec1174
Merge pull request #9917 from github/post-release-prep/codeql-cli-2.10.2
...
Post-release preparation for codeql-cli-2.10.2
2022-08-03 15:17:00 +01:00
Mathias Vorreiter Pedersen
97bd007592
Merge pull request #9962 from intrigus-lgtm/patch-7
...
C: Add additional reference to CERT C coding standard
2022-08-03 15:00:33 +01:00
Geoffrey White
39f1352847
Swift: Complete the rename.
2022-08-03 14:45:20 +01:00
Geoffrey White
81bd61288c
Swift: I think CWE-079 is the more accurate CWE for this query.
2022-08-03 14:45:19 +01:00
Geoffrey White
c635895644
Swift: Documentation.
2022-08-03 14:45:18 +01:00
Alex Ford
440547c958
Merge branch 'main' into post-release-prep/codeql-cli-2.10.2
2022-08-03 13:44:37 +01:00
Arthur Baars
912dce3ea7
Merge branch 'main' into gh-codeql-nightly
2022-08-03 14:43:07 +02:00
Arthur Baars
e23a45d02c
Merge pull request #9959 from aibaars/order-order
...
Ruby: PrintAST: more stable order for synthesized nodes
2022-08-03 14:42:42 +02:00
intrigus-lgtm
c59e6586f7
Add additional reference to CERT C coding standard
2022-08-03 14:19:53 +02:00
Mathias Vorreiter Pedersen
be7ba925f9
Swift: Cache 'lastRefRedef'.
2022-08-03 11:14:55 +01:00
Arthur Baars
35f7fdf24b
Update ruby/ql/lib/codeql/ruby/printAst.qll
...
Co-authored-by: Tom Hvitved <hvitved@github.com >
2022-08-03 12:06:47 +02:00
Chris Smowton
977823bd76
Create 2022-08-03-tainted-path-mad.md
2022-08-03 10:54:35 +01:00
Chris Smowton
84a4b6a866
Make reporting locations consistent with PathCreation; add test
2022-08-03 10:42:09 +01:00
Geoffrey White
8d9653a999
Swift: Generated security-severity tag.
2022-08-03 09:54:54 +01:00
Geoffrey White
ea17b852b4
Swift: Explain ExternalRemoteFlowSource.
2022-08-03 09:42:51 +01:00
Geoffrey White
651b73e21e
Swift: Check for tainted baseURL.
2022-08-03 09:42:48 +01:00
Rasmus Wriedt Larsen
8fb85a98d8
Merge branch 'main' into post-release-prep/codeql-cli-2.10.2
2022-08-03 10:42:02 +02:00
Mathias Vorreiter Pedersen
c582d17350
Merge pull request #9952 from MathiasVP/speedup-return-stack-allocated-memory
...
C++: Speedup `cpp/return-stack-allocated-memory`
2022-08-03 09:41:38 +01:00
Geoffrey White
53ea65b045
Swift: Implement query.
2022-08-03 09:41:28 +01:00
Chris Smowton
e04c77ce15
Rename sanitizer
2022-08-03 09:37:20 +01:00
Geoffrey White
2d76d6d51a
Swift: Tests for CWE-95.
2022-08-03 09:36:22 +01:00
Chris Smowton
03fa5d8ed0
Merge pull request #9960 from RasmusWL/fix-qltest
...
Python: Accept `.expected` for TarSlip
2022-08-03 09:28:47 +01:00
Chris Smowton
83498f58db
Add missing import
2022-08-03 08:53:43 +01:00
Rasmus Wriedt Larsen
3d0c23e441
Python: Accept .expected for TarSlip
...
Changed after merging https://github.com/github/codeql/pull/9579 ,
which improved our handling of `not` for guards.
2022-08-03 09:52:11 +02:00
Arthur Baars
d8592a2b05
Ruby: PrintAST: more stable order for synthesized nodes
2022-08-03 09:02:38 +02:00
Anders Schack-Mulligen
d9ae4605c1
Merge pull request #9948 from aschackmull/java/samenameassuper-perf
...
Java: Fix join-order in SameNameAsSuper.
2022-08-03 08:04:30 +02:00
Chris Smowton
81f3bcd802
Don't require a PathCreation for every tainted-path sink
2022-08-02 21:30:06 +01:00
Chris Smowton
c95f17fdf2
Make java/path-injection recognise create-file MaD sinks
2022-08-02 21:28:00 +01:00
Alex Ford
8e3548efb3
Merge branch 'main' into post-release-prep/codeql-cli-2.10.2
2022-08-02 20:29:26 +01:00
Arthur Baars
759fd6cc0b
Use 'gh codeql' with the nightly release for CI jobs
2022-08-02 17:01:20 +02:00
Arthur Baars
0be625f396
Merge pull request #9954 from aibaars/fix-triggers
...
CI: fix path triggers
2022-08-02 17:00:23 +02:00
Jeroen Ketema
a63df8fee9
Merge pull request #9930 from jketema/templ-var
...
C++: Update test for indexing of static template variable template arguments
2022-08-02 16:59:56 +02:00
Keith Hoodlet
b21fa0e2b0
Update Other section with example exit code
...
Add troubleshooting steps to remediate issues with the kernel killing a process.
2022-08-02 10:49:45 -04:00
Arthur Baars
64704057cb
CI: fix path triggers
2022-08-02 16:33:21 +02:00
Arthur Baars
55e15540f6
Merge pull request #9943 from aibaars/gh-codeql-follow-up
...
CI: remove unneeded PATH definitions
2022-08-02 16:22:18 +02:00
Mathias Vorreiter Pedersen
f385041ab3
C++: Add change note.
2022-08-02 14:07:22 +01:00
Mathias Vorreiter Pedersen
5181cc1295
C++: Add a 'allowInterproceduralFlow' predicate to the 'MustFlow' library to and use it instead of checking the enclosing callables after computing the dataflow graph.
2022-08-02 13:43:01 +01:00
Anders Schack-Mulligen
aabdf84300
Java: Improve join-order for not haveIntersection.
2022-08-02 14:29:03 +02:00
Anders Schack-Mulligen
80bba605e3
Java: Fix join-order in SameNameAsSuper.
2022-08-02 12:49:21 +02:00
Chris Smowton
e04a9b5805
Add change note
2022-08-02 11:37:27 +01:00
Chris Smowton
13b2b7674d
Go: note that numeric-typed nodes can't cause path traversal
2022-08-02 11:28:28 +01:00
Geoffrey White
bada5bf7c1
Swift: Placeholder query + docs for CWE-95.
2022-08-02 10:47:06 +01:00
Jeroen Ketema
34de4000ac
Merge pull request #9941 from MathiasVP/swift-taint-tracking
...
Swift: Add 'TaintTracking.qll'
2022-08-02 10:15:21 +02:00
Anders Schack-Mulligen
cd356a5ac1
Java: Improve join-order.
2022-08-02 08:49:58 +02:00
Robert Marsh
3007c96c72
C++: fix a nit
2022-08-01 15:34:03 -04:00
Robert Marsh
f0697ff28b
C++: fix QL4QL warnings
2022-08-01 15:23:59 -04:00
Robert Marsh
6dbaae6bfc
Merge branch 'main' into rdmarsh2/dataflow-global-vars
2022-08-01 14:56:24 -04:00
Robert Marsh
4f8373f577
Merge branch 'main' into rdmarsh2/dataflow-global-vars
2022-08-01 14:55:45 -04:00
Jeroen Ketema
b906c1a6b7
Merge pull request #9942 from MathiasVP/remove-microsoft-tags
...
C++: Remove internal `microsoft` tags from queries
2022-08-01 19:25:35 +02:00
Arthur Baars
c63afbf7be
CI: remove left-over 'env' commands
2022-08-01 18:49:37 +02:00
Arthur Baars
a63c168822
Merge pull request #9938 from aibaars/gh-codeql-ci
...
CI: make all jobs that fetch a CodeQL CLI use the fetch-codeql action
2022-08-01 18:36:50 +02:00
Mathias Vorreiter Pedersen
e3cb7cf9fe
C++: Remove internal 'microsoft' tags from queries.
2022-08-01 17:30:23 +01:00
Arthur Baars
7dc3d7d47e
CI: remove unneeded PATH definitions
2022-08-01 18:17:04 +02:00
Mathias Vorreiter Pedersen
e29676af72
Swift: Add 'TaintTracking.qll'.
2022-08-01 16:48:02 +01:00
Michael Nebel
02165e8ee1
Merge pull request #9327 from michaelnebel/csharp/dotnetruntimerefresh
...
C#: Re-create summary models and include source and sink models as well.
2022-08-01 16:15:54 +02:00
Arthur Baars
4d35d8da48
CI: fix Ruby build job
2022-08-01 16:15:04 +02:00
Arthur Baars
29381dc264
Use fetch-codeql in more places
2022-08-01 15:43:22 +02:00
Arthur Baars
2bbd2f36c9
Fix .github/workflows/query-list.yml
2022-08-01 12:56:07 +02:00
Arthur Baars
3b8eeb09bf
Add fetch-codeql path to Actions triggers
2022-08-01 12:56:06 +02:00
Arthur Baars
bc05cdaa4d
Implement fetch-codeql using 'gh codeql'
2022-08-01 12:55:35 +02:00
Rasmus Wriedt Larsen
1737d08145
Merge pull request #9579 from yoff/python/more-logic-tests
...
Python: Improve `BarrierGuard`
2022-08-01 11:36:11 +02:00
AlexDenisov
b5d4a2d462
Merge pull request #9926 from github/redsun82/swift-extract-module-type
...
Swift: extract `ModuleType`
2022-08-01 10:33:33 +02:00
AlexDenisov
ed67fb0933
Merge pull request #9927 from github/redsun82/swift-pcm-inconsistencies-workaround
...
Swift: append clang module names in trap keys
2022-08-01 10:33:18 +02:00
ihsinme
96e220588e
Update DangerousUseMbtowc.ql
2022-07-31 13:44:50 +03:00
Jeroen Ketema
c02e7a4896
C++: Update test for indexing of static template variable template arguments
2022-07-31 09:58:29 +02:00
Raul Garcia
5a7b6532a9
Updated to handle lambda statements (previously false negatives) + a couple of bug fixes.
2022-07-29 13:47:53 -07:00
Asger F
98a9cb0b55
JS: Simplify type hierarchy for SourceNode
...
The charpred caused spurious type to appear
2022-07-29 19:44:10 +02:00
Jeroen Ketema
b50f4bc1a8
Merge pull request #9903 from jketema/builtin
...
C++: Support additional compiler builtin operations
2022-07-29 17:20:19 +02:00
Paolo Tranquilli
4ce100f9a3
Swift: append clang module names in trap keys
...
We have found out there can be separate declarations (`VarDecl` or
`AccessorDecl`) which are effectively the same (with equal mangled name)
but come from different clang modules. This is the case for example
for glibc constants like `L_SET` that appear in both `SwiftGlibc` and
`CDispatch`.
In this patch, we simply avoid full deduplication in that case by
appending the module name to the trap key for non-swift modules.
A more solid solution should be found in the future.
2022-07-29 16:56:51 +02:00
Paolo Tranquilli
45e14c96f2
Swift: extract ModuleType
2022-07-29 16:48:45 +02:00
Paolo Tranquilli
13f2cf9003
Merge pull request #9922 from github/redsun82/swift-precompiled-modules-are-not-extracted
...
Swift: extract precompiled swiftmodule files
2022-07-29 16:43:34 +02:00
Paolo Tranquilli
daf1fa3c31
Swift: lock built swiftmodule traps in main
...
This should cover `-merge-modules` mode.
Dumping of the configuration to the target files was moved to a
separate pair of header/source files, as now it is also done in
`SwiftOutputRewrite.cpp`.
2022-07-29 16:27:55 +02:00
Paolo Tranquilli
405d0fcd54
Merge branch 'main' into redsun82/swift-precompiled-modules-are-not-extracted
2022-07-29 15:57:52 +02:00
Tony Torralba
593ce01362
Merge pull request #9908 from atorralba/atorralba/xml-inline-exp-test
...
Java: Add support for XML InlineExpectationsTest
2022-07-29 14:49:19 +02:00
AlexDenisov
48e93b3654
Merge pull request #9925 from github/alexdenisov/pcm-var-dedup
...
Swift: do not deduplicate PCM variables (as the mangler crashes there sometimes)
2022-07-29 14:30:41 +02:00
AlexDenisov
22c5b7af4f
Merge pull request #9921 from github/alexdenisov/type-alias-mangling
...
Swift: mangle TypeAliasDecls differently
2022-07-29 14:30:28 +02:00
Alex Denisov
34edb2537f
Swift: mangle TypeAliasDecls differently
2022-07-29 14:12:02 +02:00
Alex Denisov
5b1fe56d5f
Swift: do not deduplicate PCM variables (as the mangler crashes there sometimes)
2022-07-29 14:06:18 +02:00
Tony Torralba
ec03ebbbfc
Add spurious and missing test cases
2022-07-29 13:44:25 +02:00
Tony Torralba
6091f0dbce
Use camelCase for XML acronym
2022-07-29 13:44:11 +02:00
Paolo Tranquilli
099ab0e0c2
Swift: readd .trap suffix to swiftmodule trap files
2022-07-29 12:26:33 +02:00
Paolo Tranquilli
604328ea5f
Swift: strip suffix from swiftmodule trap files
2022-07-29 12:25:11 +02:00
Paolo Tranquilli
652230d021
Merge branch 'main' into redsun82/swift-precompiled-modules-are-not-extracted
2022-07-29 12:21:15 +02:00
Paolo Tranquilli
69633948ce
Merge pull request #9920 from github/alexdenisov/colocate-pcms
...
Swift: put all the PCM traps into the same place
2022-07-29 12:20:58 +02:00
Paolo Tranquilli
065fecc57e
Swift: extract precompiled swiftmodule files
...
Previously we were not extracting any `swiftmodule` file that was not
a system or a built-in one. This was done to avoid re-extracting
`swiftmodule` files that were built previously in the same build, but it
turned out to be too eager, as there are legitimate cases where a
non-system, non-built-in precompiled swift module can be used. An
example of that is the `PackageDescription` module used in Swift
Package Manager manifest files (`Package.swift`).
We now relax the test and trigger module extraction on all loaded
modules that do not have source files (we trigger source file extraction
for those). The catch, is that we also create empty trap files for
current output `swiftmodule` files (including possible alias locations
set up by XCode).
This means that if a following extractor run loads a previously built
`swiftmodule` file, although it will trigger module extraction, this
will however be skipped as it will find its target file already present
(this is done via the `TargetFile` semantics).
2022-07-29 11:10:03 +02:00
Alex Denisov
50e1ffda64
Swift: put all the PCM traps into the same place
2022-07-29 10:19:13 +02:00
Jeroen Ketema
a27b1ee33a
C++: Improve ErrorExpr documentation to match current practise
2022-07-29 09:08:56 +02:00
Jeroen Ketema
5a59354d73
C++: Minor clean up of the builtin operations qldoc
2022-07-29 09:08:56 +02:00
Jeroen Ketema
bce253920c
C++: Fix __builtin_shuffle qldoc
2022-07-29 09:08:56 +02:00
Jeroen Ketema
afdd21eab7
C++: Update DB scheme stats file
2022-07-29 09:08:56 +02:00
Jeroen Ketema
295ecbb401
C++: Add upgrade and downgrade scripts for new builtins
2022-07-29 09:08:56 +02:00
Jeroen Ketema
1806b8933f
C++: Add change note for newly added builtins
2022-07-29 09:08:56 +02:00
Jeroen Ketema
20b66eaf34
C++: Support __builtin_shuffle builtin
...
While here write gcc instead of GNU, which is more accurate.
2022-07-29 09:08:56 +02:00
Jeroen Ketema
81e687ea98
C++: Support __builtin_bit_cast builtin
2022-07-29 09:08:56 +02:00
Jeroen Ketema
a85d3f9b7f
C++: Support __has_unique_object_representations builtin
2022-07-29 09:08:56 +02:00
Jeroen Ketema
0c03935437
C++: Support __is_aggregate builtin
...
Fix some whitespace issues while here.
2022-07-29 09:08:56 +02:00
Jeroen Ketema
c4283dd23f
C++: Support __is_assignable builtin
...
While here fix the documentation of `__is_trivially_assignable` and
`__is_nothrow_assignable`.
2022-07-29 09:08:56 +02:00
AlexDenisov
9876c391fa
Merge pull request #9915 from github/redsun82/swift-fixes
...
Swift: small dispatcher fixes
2022-07-29 08:22:54 +02:00
luchua-bc
b69eba9238
Add check for Spring redirect
2022-07-29 01:59:47 +00:00
Harry Maclean
2034498690
Ruby: Fix QLDoc warnings
2022-07-29 12:20:32 +12:00
Harry Maclean
f42d33312f
Ruby: Model Mime::Type
...
Add type summaries to recognise instances of Mime::Type, and recognise
arguments to Mime::Type.match? and Mime::Type.=~ as regular expression
interpretations.
2022-07-29 11:41:48 +12:00
Harry Maclean
b7be25e18f
Ruby: Make isInterpretedAsRegExp extensible
...
This allows frameworks to add new instances where a node is interpreted
as a regular expression. We introduce a class
RegExpInterpretation::Range that represents these nodes. In the future
we may want to make this a full Concept, but it's not necessary at the
moment.
2022-07-29 11:39:41 +12:00
Harry Maclean
c29eb814b2
Ruby: Reorganise ActionDispatch framework
...
Put routing modelling inside a Routing module.
2022-07-29 10:44:36 +12:00
github-actions[bot]
e8747d3176
Post-release preparation for codeql-cli-2.10.2
2022-07-28 20:00:09 +00:00
Chris Smowton
e140d2ab4f
Merge pull request #9824 from smowton/smowton/admin/wildcard-substitution-test
...
Add test for Java wildcard substitution
2022-07-28 17:07:41 +01:00
Alex Ford
2a8567960e
Merge pull request #9913 from github/release-prep/2.10.2
...
Release preparation for version 2.10.2
2022-07-28 16:56:11 +01:00
Paolo Tranquilli
985237ab2d
Swift: small dispatcher fixes
...
File extraction was not using named trap keys, and `emitDebugInfo` was
using `std::forward` when it should not.
2022-07-28 17:05:52 +02:00
Chris Smowton
1737ed50ba
Add test cases for wildcard lowering of array types
2022-07-28 15:52:00 +01:00
Chris Smowton
8cd2aeb65d
Accept test changes
2022-07-28 15:52:00 +01:00
Chris Smowton
7475f84ea5
Fix type-parameter-out-of-scope test
2022-07-28 15:51:59 +01:00
Chris Smowton
e7f275382e
Add test for Java wildcard substitution
2022-07-28 15:51:59 +01:00
Alex Ford
a8345e00fc
Update java/ql/lib/change-notes/released/0.3.2.md
2022-07-28 14:58:38 +01:00
Alex Ford
258b58cd37
Update java/ql/lib/CHANGELOG.md
2022-07-28 14:58:34 +01:00
Jeroen Ketema
15a979cfc6
Update ruby/ql/lib/change-notes/released/0.3.2.md
2022-07-28 15:45:01 +02:00
Jeroen Ketema
3137addfc1
Update ruby/ql/lib/CHANGELOG.md
2022-07-28 15:44:53 +02:00
github-actions[bot]
212786ed91
Release preparation for version 2.10.2
2022-07-28 13:38:35 +00:00
Paolo Tranquilli
8a36a2b563
Merge pull request #9912 from github/redsun82/swift-human-readable-trap-prefixes
...
Swift: make trap key prefixes readable
2022-07-28 14:34:57 +02:00
Paolo Tranquilli
ddf715e6a9
Merge pull request #9911 from github/redsun82/swift-deduplicate-vardecls
...
Swift: deduplicate `VarDecl`
2022-07-28 14:31:59 +02:00
Paolo Tranquilli
d547a417c9
Swift: accept new test results
2022-07-28 12:57:12 +02:00
Paolo Tranquilli
cb006900cd
Merge branch 'main' into redsun82/swift-deduplicate-vardecls
2022-07-28 12:55:31 +02:00
Paolo Tranquilli
7d7966e711
Swift: make trap key prefixes readable
...
This replaces numeric tag-based prefixes with the actual tag name.
While this means in general slightly larger trap files, it aids
debugging them for a human.
In the future we can make this conditional on some kind of trap debug
option, but for the moment it does not seem detrimental.
2022-07-28 12:43:30 +02:00
Paolo Tranquilli
b491884996
Merge pull request #9910 from github/redsun82/swift-no-cleanup-on-integration-tests
...
Swift: add `--no-cleanup` to integration tests
2022-07-28 12:41:53 +02:00
Paolo Tranquilli
76ea63ffbe
Swift: deduplicate VarDecl
...
Deduplication of `ConcreteVarDecl` is triggered only if its
`DeclContext` is not local. This avoids a mangled name conflict.
Also added more thourough tests for `ConcreteVarDecl` and `ParamDecl`.
2022-07-28 12:28:52 +02:00
Paolo Tranquilli
ab1370cc8f
Swift: add --no-cleanup to integration tests
2022-07-28 11:19:45 +02:00
Geoffrey White
6cd6f74be9
Swift: Repair predicate lost in merge.
2022-07-28 10:13:04 +01:00
Geoffrey White
72fd7179f6
Merge branch 'main' into stringlengthconflation6
2022-07-28 10:01:28 +01:00
Geoffrey White
e5342867c6
Swift: Add a note to the qhelp.
2022-07-28 09:52:33 +01:00
Paolo Tranquilli
457ce3d884
Swift: fix derived IPA type properties
...
Also rename `IpaTypes.qll` to `Ipa.qll`
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
f81abe40c4
Swift: disambuigate Cfg test order
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
18b9a2fa6e
Swift: accept tests
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
95df751425
Swift: new toString for ExprPattern
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
954047c6ab
Swift: accept test changes
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
60795fc652
Swift: fix codescanning warnings
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
8b13adbb93
Swift: IPA layer tweaks
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
6abd4a6a29
Swift: fix QL libraries
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
c578505ae0
Swift: specialize Ipa <-> Db conversions
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
a16d5f72d1
Swift: cache equivalent of asDbInstance
...
Which is now a predicate in the `IpaTypes.qll` file (where `Cached`
was also renamed to `Ipa`).
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
ef09031cf9
Swift: fix autopep8 and codegen
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
47f26e6029
Swift: fix codegen unit tests
2022-07-28 10:26:11 +02:00
Paolo Tranquilli
10976bbbab
Swift: use IPA layer in generated classes
2022-07-28 10:26:10 +02:00
Paolo Tranquilli
ea0725525b
Swift: first IPA layer
2022-07-28 10:26:10 +02:00
Paolo Tranquilli
e43755b34f
Merge pull request #9905 from github/redsun82/cfg-order
...
Control Flow: extend ordering
2022-07-28 10:25:49 +02:00
Paolo Tranquilli
9b26921cb6
Control flow: add order disambuigation customization
2022-07-28 09:11:42 +02:00
Geoffrey White
fe69bbf17c
Swift: It turns out NSString.length always exactly matches String.utf16.count.
2022-07-27 17:54:57 +01:00
Geoffrey White
70ca37a3d0
Swift: Model utf8, utf16 a\nd unicodeScalars sources.
2022-07-27 17:39:04 +01:00
Geoffrey White
89d5bbb8e0
Swift: Generalize the flow states in this query.
2022-07-27 17:39:01 +01:00
Geoffrey White
9e773302ed
Swift: Extend test cases.
2022-07-27 17:39:01 +01:00
Tony Torralba
7ca955a0e6
Add support for XML InlineExpectationsTest
2022-07-27 17:23:10 +02:00
Paolo Tranquilli
ebf650c0c0
Control Flow: add more ordering for edges
2022-07-27 15:01:17 +02:00
Anders Schack-Mulligen
70e6db3ce1
Merge pull request #9902 from aschackmull/java/junit5-assertnotnull
...
Java: Add support for JUnit5 assertions in the nullness queries.
2022-07-27 13:52:01 +02:00
Chris Smowton
9e7fc1731f
Merge pull request #9898 from smowton/smowton/fix/kotlin-super-calls
...
Kotlin: implement super-method calls
2022-07-27 11:31:36 +01:00
Tony Torralba
e179126abb
Merge pull request #9129 from atorralba/atorralba/get-underlying-expr
...
Java: Add Expr::getUnderlyingExpr predicate
2022-07-27 11:42:28 +02:00
Anders Schack-Mulligen
cc423af8f1
Java: Add support for JUnit5 assertions in the nullness queries.
2022-07-27 10:20:47 +02:00
Anders Schack-Mulligen
f2670bcd61
Merge pull request #9900 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-07-27 09:14:28 +02:00
AlexDenisov
f9bdca3079
Merge pull request #9818 from github/redsun82/swift-file-label-caching
...
Swift: cache file labels
2022-07-27 09:12:20 +02:00
github-actions[bot]
30accecd8a
Add changed framework coverage reports
2022-07-27 00:19:16 +00:00
luchua-bc
1ce31ec32c
Add sinks of servlet dispatcher and filter
2022-07-26 23:05:25 +00:00
Chris Smowton
5086841b46
Kotlin: implement super-method calls
...
If we only look at the dispatch receiver, these show up like `this` references rather than `super` references, preventing flow through super-calls. The super-interface case requires properly noting that interface methods with a body get a `default` modifier in order to avoid QL discarding the method as a possible callee.
2022-07-26 17:03:46 +01:00
Nick Rolfe
6356b20928
Ruby: port js/hardcoded-data-interpreted-as-code
2022-07-26 16:05:22 +01:00
Paolo Tranquilli
42f462504e
Merge branch 'main' into redsun82/swift-file-label-caching
2022-07-26 15:20:27 +02:00
Tony Torralba
edc8f6f0f2
Merge pull request #9894 from atorralba/atorralba/scanner_models
...
Java: Add CSV models for java.util.Scanner
2022-07-26 12:00:08 +02:00
Tony Torralba
33f5620782
Add more models
2022-07-26 11:06:11 +02:00
Tony Torralba
c56e0f7c0d
Add change note
2022-07-26 10:50:34 +02:00
Tony Torralba
95db81658b
Add CSV models for java.util.Scanner
2022-07-26 10:42:24 +02:00
Andrew Eisenberg
43ae5d4285
Merge pull request #9838 from github/aeisenberg/python-local-ref-def
...
Move python contextual queries to lib folders
2022-07-25 09:00:32 -07:00
Chris Smowton
3f6925e7be
Merge pull request #9875 from smowton/smowton/fix/charat-naming
...
Kotlin: Special-case String.charAt naming
2022-07-25 16:10:13 +01:00
Chris Smowton
715b0b3fb8
Accept test changes
2022-07-25 15:17:14 +01:00
Chris Smowton
3af2e71932
Merge pull request #9874 from smowton/smowton/fix/kotlin-for-loop-iterators
...
Kotlin: fix for-loop iterators over primitive or wildcard types
2022-07-25 15:02:49 +01:00
Jeroen Ketema
8cd0a9d245
Merge pull request #9735 from jketema/inline-yolo
...
C++: Remove `pragma[noinline]` from `ResolveGlobalVariable.ql`
2022-07-25 11:25:26 +02:00
Nick Rolfe
a61ec78f03
Merge pull request #9883 from github/nickrolfe/trap-buffering
...
Ruby/QL: speed up trap writing by putting BufWriter in front of GzEncoder
2022-07-25 08:48:54 +01:00
Paolo Tranquilli
fe73601a4e
Merge pull request #9805 from github/redsun82/swift-type-repr-collapse
...
Swift: collapse `TypeRepr` hierarchy
2022-07-25 09:31:41 +02:00
Harry Maclean
681e58c8e0
Merge pull request #9850 from hmac/hmac/arel
...
Ruby: Model Arel.sql
2022-07-25 12:09:18 +12:00
Harry Maclean
cb3ebeedf9
Merge pull request #9696 from thiggy1342/experimental-strong-params
...
RB: Experimental strong params query
2022-07-25 12:08:55 +12:00
Harry Maclean
db41ce5f76
Merge pull request #9605 from thiggy1342/experimental-manually-check-request-verb
...
RB: Experimental query to manually check request verb
2022-07-25 12:08:11 +12:00
thiggy1342
6cfde70898
Merge branch 'main' into experimental-strong-params
2022-07-22 20:41:33 -04:00
thiggy1342
b4d762fb21
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-22 20:41:23 -04:00
luchua-bc
962069ccff
Add path check in a security context (redirect)
2022-07-22 23:10:52 +00:00
thiggy1342
0c0ba925a7
this one should have no tag
2022-07-22 18:44:03 +00:00
thiggy1342
f39ca1aad2
correct cwe tagged
2022-07-22 18:36:25 +00:00
Robert Marsh
0a35f97074
Merge pull request #9872 from jketema/return-join
...
C++: Fix join-order problem in `cpp/return-stack-allocated-memory`
2022-07-22 14:32:10 -04:00
thiggy1342
c2710fb038
Update ruby/ql/src/change-notes/2022-07-21-check-http-verb.md
...
Co-authored-by: Harry Maclean <hmac@github.com >
2022-07-22 13:52:00 -04:00
thiggy1342
2c095cf166
Update ruby/ql/src/change-notes/2022-07-21-weak-params.md
...
Co-authored-by: Harry Maclean <hmac@github.com >
2022-07-22 13:51:38 -04:00
Jeroen Ketema
a9d95a9418
C++: Remove pragma[noinline] from ResolveGlobalVariable.ql
2022-07-22 17:59:27 +02:00
Jeroen Ketema
23c19311fb
Merge pull request #9700 from jketema/resolve-global-variable
...
C++: Ensure only one `Variable` exists for every global variable
2022-07-22 17:57:21 +02:00
Nick Rolfe
4767d5a1ba
Ruby/QL: speed up trap writing by putting BufWriter in front of GzEncoder
2022-07-22 15:37:53 +01:00
Arthur Baars
43266b75a1
Merge pull request #9866 from aibaars/encoding
...
Ruby: handle magic coding: comments
2022-07-22 14:33:46 +02:00
Taus
5f9a03f103
Merge pull request #9880 from github/nickrolfe/ql-ql-extractor-cleanup
...
QL: sync Ruby extractor changes
2022-07-22 14:15:04 +02:00
Paolo Tranquilli
77401ded4e
Swift: reflow comment
2022-07-22 13:54:32 +02:00
Arthur Baars
d44bf326f0
Update ruby/extractor/src/main.rs
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2022-07-22 13:36:22 +02:00
Paolo Tranquilli
7e67338fb5
Update swift/extractor/infra/SwiftDispatcher.h
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-07-22 13:34:11 +02:00
thiggy1342
871b6515d5
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-21 18:47:07 -04:00
thiggy1342
1842bde879
add change note
2022-07-21 22:13:53 +00:00
thiggy1342
c1a6ca5f94
add change note
2022-07-21 22:11:14 +00:00
thiggy1342
486a394a7f
Update ruby/ql/src/experimental/weak-params/WeakParams.ql
...
Co-authored-by: Harry Maclean <hmac@github.com >
2022-07-21 17:26:09 -04:00
thiggy1342
8fabc06d37
fix test assertion
2022-07-21 21:25:44 +00:00
thiggy1342
cc958dc171
Update ruby/ql/src/experimental/manually-check-http-verb/ManuallyCheckHttpVerb.ql
...
Co-authored-by: Harry Maclean <hmac@github.com >
2022-07-21 17:19:33 -04:00
Arthur Baars
1399610bd4
Merge branch 'main' into encoding
2022-07-21 21:21:17 +02:00
Nick Rolfe
5f96c92fac
QL: sync Ruby extractor changes
2022-07-21 17:38:33 +01:00
Nick Rolfe
ed0325f162
Merge pull request #9878 from github/nickrolfe/extractor-cleanup
...
Ruby: some extractor refactoring
2022-07-21 17:18:24 +01:00
Arthur Baars
7be106d7bb
Ruby: handle magic coding: comments
2022-07-21 16:33:18 +02:00
Arthur Baars
27be3dff54
Merge pull request #9868 from aibaars/update-tree-sitter-ruby-3
...
Ruby: update tree-sitter-ruby
2022-07-21 16:08:32 +02:00
Nick Rolfe
8dae85e1b1
Ruby: avoid repeated construction of table name strings
2022-07-21 12:21:06 +01:00
Nick Rolfe
0a8ecd3cf7
Ruby: compute path string only once
2022-07-21 10:44:30 +01:00
Nick Rolfe
388c9ffb74
Ruby: separate trap-writer into its own module
2022-07-21 10:44:00 +01:00
Jeroen Ketema
ad8335d6f3
C++: Fix join-order problem in cpp/return-stack-allocated-memory
...
Before on Abseil:
```
Evaluated relational algebra for predicate #select#cpe#12356#fffff@3ffb21o1 with tuple counts:
1235939 ~0% {2} r1 = SCAN functions OUTPUT In.0, In.0
1235939 ~0% {2} r2 = JOIN r1 WITH functions ON FIRST 1 OUTPUT Lhs.1, Lhs.0
33500841 ~0% {2} r3 = JOIN r2 WITH DataFlowUtil::Node::getEnclosingCallable#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
280683 ~3% {3} r4 = JOIN r3 WITH MustFlow::MkLocalPathNode#0227f5a1#fff ON FIRST 1 OUTPUT Rhs.2, Lhs.1, Lhs.0
40970 ~2% {4} r5 = JOIN r4 WITH MustFlow::MustFlowConfiguration::hasFlowPath#dispred#f0820431#fff#cpe#23_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.0
40970 ~0% {5} r6 = JOIN r5 WITH MustFlow::MkLocalPathNode#0227f5a1#fff_20#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.0
40970 ~1% {5} r7 = JOIN r6 WITH DataFlowUtil::Cached::TInstructionNode#47741e1f#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4
40970 ~1% {5} r8 = JOIN r7 WITH project#Instruction::VariableAddressInstruction#class#577b6a83#ff ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4
40970 ~0% {6} r9 = JOIN r8 WITH SSAConstruction::Cached::getInstructionAst#2b11997e#ff ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Rhs.1
40970 ~2% {7} r10 = JOIN r9 WITH SSAConstruction::Cached::getInstructionAst#2b11997e#ff ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5, Rhs.1
0 ~0% {6} r11 = JOIN r10 WITH Instruction::Instruction::getEnclosingFunction#dispred#f0820431#3#ff ON FIRST 2 OUTPUT Rhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6
0 ~0% {5} r12 = JOIN r11 WITH functions ON FIRST 1 OUTPUT Lhs.5, Lhs.1, Lhs.2, Lhs.3, Lhs.4
0 ~0% {5} r13 = JOIN r12 WITH Element::ElementBase::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, Lhs.3, Lhs.2, Lhs.4, Rhs.1
return r13
```
After:
```
Evaluated relational algebra for predicate #select#cpe#12356#fffff@1dbc97kv with tuple counts:
40970 ~0% {2} r1 = SCAN MustFlow::MustFlowConfiguration::hasFlowPath#dispred#f0820431#fff#cpe#23 OUTPUT In.1, In.0
40970 ~0% {3} r2 = JOIN r1 WITH MustFlow::MkLocalPathNode#0227f5a1#fff_20#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Rhs.1
40970 ~7% {4} r3 = JOIN r2 WITH MustFlow::MkLocalPathNode#0227f5a1#fff_20#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1, Lhs.2
40970 ~2% {4} r4 = JOIN r3 WITH DataFlowUtil::Cached::TInstructionNode#47741e1f#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3
40970 ~2% {4} r5 = JOIN r4 WITH project#Instruction::VariableAddressInstruction#class#577b6a83#ff ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3
40970 ~0% {5} r6 = JOIN r5 WITH SSAConstruction::Cached::getInstructionAst#2b11997e#ff ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Rhs.1
40970 ~1% {6} r7 = JOIN r6 WITH SSAConstruction::Cached::getInstructionAst#2b11997e#ff ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Rhs.1
40970 ~0% {6} r8 = JOIN r7 WITH Instruction::Instruction::getEnclosingFunction#dispred#f0820431#3#ff ON FIRST 1 OUTPUT Lhs.3, Rhs.1, Lhs.1, Lhs.2, Lhs.4, Lhs.5
0 ~0% {5} r9 = JOIN r8 WITH DataFlowUtil::Node::getEnclosingCallable#dispred#f0820431#fb ON FIRST 2 OUTPUT Lhs.5, Lhs.2, Lhs.3, Lhs.0, Lhs.4
0 ~0% {5} r10 = JOIN r9 WITH Element::ElementBase::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.3, Lhs.1, Lhs.2, Lhs.4, Rhs.1
return r10
```
2022-07-21 11:27:02 +02:00
Jeroen Ketema
466eb4a845
Merge pull request #9870 from jketema/exec-tainted-join
...
C++: Fix join-order problem in `cpp/command-line-injection`
2022-07-21 11:22:02 +02:00
Cornelius Riemenschneider
a437fcbbcc
Merge pull request #9705 from github/criemen/csharp-lua-tracing
...
C#: Implement correct behavior for `dotnet build` tracing
2022-07-21 11:01:33 +02:00
Chris Smowton
9593ceeda5
Kotlin: Special-case String.charAt naming
...
In the Kotlin universe this is called `get` so that Kotlin programmers can use the `[]` operator on `String`s.
2022-07-21 09:17:08 +01:00
Chris Smowton
0a351b73cb
Underscore query: tolerate synthetic functions
2022-07-21 09:15:27 +01:00
Chris Smowton
1cbe26a54f
Kotlin: fix for-loop iterators over primitive or wildcard types
...
Array<*> can't be queried for an argument type, and IntArray doesn't have an argument at all; both were previously causing the extractor to fail to extract the whole file due to throwing an exception.
2022-07-21 09:13:55 +01:00
Harry Maclean
4d0f6a0b96
Merge pull request #9788 from thiggy1342/add-activerecord-annotate
...
RB: Add ActiveRecord::Relation#annotate to sqlFragmentArgument()
2022-07-21 15:37:03 +12:00
luchua-bc
48f143e7d4
Query to detect regex dot bypass
2022-07-20 22:39:24 +00:00
Shyam Mehta
09ec37943c
Partial Path Traversal split into 2 queries
2022-07-20 17:53:26 -04:00
thiggy1342
a10370f813
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-20 16:33:36 -04:00
thiggy1342
b3f2159a7e
Merge branch 'main' into experimental-strong-params
2022-07-20 16:33:32 -04:00
thiggy1342
17c80336f5
Merge branch 'main' into add-activerecord-annotate
2022-07-20 16:33:30 -04:00
smehta23
b7e522749f
Apply suggestions from code review
...
Co-authored-by: Chris Smowton <smowton@github.com >
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2022-07-20 15:32:59 -04:00
Raul Garcia
9b79668ed2
Addressing some of the feedback. Work still pending
2022-07-20 10:58:01 -07:00
Raul Garcia
7f725137e5
Addressing some of the feedback. Work pending.
2022-07-20 10:56:44 -07:00
Arthur Baars
8d80e0332e
Ruby: update tree-sitter-ruby
2022-07-20 18:16:30 +02:00
Aditya Sharad
a1d9228a66
Merge pull request #9831 from adityasharad/docs/supported-frameworks-changelog-links
...
Docs: Update supported languages page with links to CLI and pack information
2022-07-20 07:36:37 -07:00
Jeroen Ketema
694d6395d5
C++: Fix join-order problem in cpp/command-line-injection
...
Before on Abseil Linux:
```
Evaluated relational algebra for predicate ExecTainted::ExecState#class#91000ffb#fff@41084cm7 with tuple counts:
40879811 ~0% {2} r1 = SCAN DataFlowUtil::Node::getLocation#dispred#f0820431#ff OUTPUT In.1, In.0
40879811 ~0% {2} r2 = JOIN r1 WITH Location::Location::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1
7527 ~3% {3} r3 = JOIN r2 WITH ExecTainted::interestingConcatenation#91000ffb#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
7527 ~0% {4} r4 = JOIN r3 WITH DataFlowUtil::Node::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0, Rhs.1
7527 ~0% {5} r5 = JOIN r4 WITH DataFlowUtil::Node::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0, Lhs.3, Rhs.1
7527 ~0% {6} r6 = JOIN r5 WITH DataFlowUtil::Node::getLocation#dispred#f0820431#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.0, Lhs.3, Lhs.4
7527 ~0% {3} r7 = JOIN r6 WITH Location::Location::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT ((((((("ExecState (" ++ Rhs.1) ++ " | ") ++ Lhs.4) ++ ", ") ++ Lhs.1) ++ " | ") ++ Lhs.5 ++ ")"), Lhs.3, Lhs.2
return r7
```
After:
```
Evaluated relational algebra for predicate ExecTainted::ExecState#class#91000ffb#fff@1ffe61ps with tuple counts:
7527 ~0% {3} r1 = JOIN ExecTainted::interestingConcatenation#91000ffb#ff WITH DataFlowUtil::Node::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Rhs.1
7527 ~0% {4} r2 = JOIN r1 WITH DataFlowUtil::Node::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2, Rhs.1
7527 ~1% {5} r3 = JOIN r2 WITH DataFlowUtil::Node::getLocation#dispred#f0820431#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0, Lhs.2, Lhs.3
7527 ~0% {5} r4 = JOIN r3 WITH Location::Location::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4, Rhs.1
7527 ~4% {6} r5 = JOIN r4 WITH DataFlowUtil::Node::getLocation#dispred#f0820431#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4
7527 ~0% {3} r6 = JOIN r5 WITH Location::Location::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT ((((((("ExecState (" ++ Rhs.1) ++ " | ") ++ Lhs.3) ++ ", ") ++ Lhs.5) ++ " | ") ++ Lhs.4 ++ ")"), Lhs.1, Lhs.2
return r6
```
2022-07-20 16:27:47 +02:00
thiggy1342
8c55a15fa6
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-20 10:27:40 -04:00
thiggy1342
6f74a2609c
Merge branch 'main' into experimental-strong-params
2022-07-20 10:26:49 -04:00
thiggy1342
f54fc1a88d
Merge branch 'main' into add-activerecord-annotate
2022-07-20 10:26:44 -04:00
Jeroen Ketema
c2b7300709
Merge pull request #9848 from geoffw0/stringlengthconflation5
...
Swift: More improvements for the string length conflation query
2022-07-20 14:05:05 +02:00
Cornelius Riemenschneider
e9e5d948b3
C#: Implement proper dotnet build handling in the Lua tracing config.
...
For proper C# tracing, `dotnet build` needs the parameter
/p:UseSharedCompilation=false. However, we can't pass that to the other
subcommands of `dotnet`, therefore we need to figure out which subcommand
of `dotnet` is being invoked.
2022-07-20 10:11:36 +00:00
Cornelius Riemenschneider
ca819573f5
Merge pull request #9862 from github/adityasharad/codeql-cli-2.10.1-mergeback
...
Merge codeql-cli-2.10.1 into main
2022-07-20 10:42:34 +02:00
Paolo Tranquilli
3527897eff
Swift: make type optional in TypeRepr
...
A type representation may not have a type in unresolved things, which
for example pop up in inactive `#if` clauses.
2022-07-20 09:13:34 +02:00
Aditya Sharad
7620a6f653
Docs: Update supported languages page with links to CLI and pack information
...
Include links to the CLI changelog, CLI releases, bundle releases,
pack changelogs, and pack source.
Clarify that this support information applies to the current version of
the CLI, bundle, query packs, and library packs.
2022-07-19 14:58:27 -07:00
Asger F
aa53841466
Merge pull request #9828 from github/post-release-prep/codeql-cli-2.10.1
...
Post-release preparation for codeql-cli-2.10.1
2022-07-19 19:49:50 +02:00
Taus
2436b060f1
Python: Fix another bad "value transfer" join
...
The culprit:
```
Tuple counts for PointsTo::InterProceduralPointsTo::scope_entry_value_transfer_from_earlier#741b54e2#ffff#join_rhs/5@eb1340iv after 12.6s:
72973 ~3% {2} r1 = JOIN PointsToContext::TImportContext#cf3039a0#f WITH Definitions::NonEscapingGlobalVariable#class#486534ab#f CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0 'arg1'
537932 ~0% {3} r2 = JOIN r1 WITH Essa::EssaDefinition::getSourceVariable#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'arg2', Lhs.1 'arg1', Lhs.0
982333 ~0% {4} r3 = JOIN r2 WITH Essa::EssaVariable::getAUse#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1 'arg1', Lhs.0 'arg2', Rhs.1 'arg0'
37029774 ~0% {4} r4 = JOIN r3 WITH Essa::TEssaNodeDefinition#24e22a14#ffff ON FIRST 1 OUTPUT Rhs.3 'arg3', Lhs.1 'arg1', Lhs.2 'arg2', Lhs.3 'arg0'
35956211 ~0% {5} r5 = JOIN r4 WITH Essa::ScopeEntryDefinition::getScope#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.3 'arg0', Lhs.1 'arg1', Lhs.2 'arg2', Lhs.0 'arg3', Rhs.1 'arg4'
return r5
```
You may notice that this is a predicate that's _materialised_, but it's
never actually used anywhere. It's the old "standard order" bringing
much sadness.
The problem here is that in the standard order (which we never actually
use here), we end up with a join between the bits above, `getRootCall`,
and `appliesToScope`. The `join_rhs` bit is joined twice, once with
`getRootCall#prev` and `appliesToScope#prev_delta` (in that order), and
once with `prev` and `prev_delta` swapped.
So to fix this, I used the unbinding pragma to force `appliesToScope` to
appear first in the join order. This was enough to make the compiler
_not_ push the common context into its own `join_rhs` predicate (and
the join-order is still decent.)
2022-07-19 17:18:07 +00:00
Taus
b5cac9285e
Python: Fix bad join in getOuterVariable
...
Much sadness:
```
Tuple counts for ImportTime::ImportTimeScope::getOuterVariable#dispred#f0820431#fff/3@64d04d33 after 7.6s:
19624 ~1% {1} r1 = SCAN py_Classes OUTPUT In.0 'this'
19531 ~1% {1} r2 = JOIN r1 WITH ImportTime::ImportTimeScope#class#7851b601#f ON FIRST 1 OUTPUT Lhs.0 'this'
19531 ~0% {2} r3 = JOIN r2 WITH Scope::Scope::getEnclosingModule#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.0 'this', Rhs.1
296389 ~0% {3} r4 = JOIN r3 WITH Variables::Variable::getScope#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'var', Lhs.0 'this', Lhs.1
296389 ~0% {3} r5 = JOIN r4 WITH Variables::LocalVariable#3aa06bbf#f ON FIRST 1 OUTPUT Lhs.0 'var', Lhs.1 'this', Lhs.2
296389 ~1% {4} r6 = JOIN r5 WITH Variables::Variable::getId#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1 'this', Lhs.0 'var', Rhs.1
62294919 ~0% {4} r7 = JOIN r6 WITH Variables::Variable::getScope#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'var', Lhs.1 'this', Lhs.2 'var', Lhs.3
62294919 ~0% {4} r8 = JOIN r7 WITH Variables::GlobalVariable#class#3aa06bbf#f ON FIRST 1 OUTPUT Lhs.0 'result', Lhs.3, Lhs.1 'this', Lhs.2 'var'
639 ~0% {3} r9 = JOIN r8 WITH Variables::Variable::getId#dispred#f0820431#ff ON FIRST 2 OUTPUT Lhs.2 'this', Lhs.3 'var', Lhs.0 'result'
return r9
```
Clearly we _shouldn't_ be joining on `getId` as the last thing, as this
means we're building tuples of completely unrelated variables (not even
with the same name!) which obviously blows up.
A standard way of fixing this is to correlate as much information about
these variables as possible in a `nomagic`ked helper predicate. This is
what we do here, grouping together the variable with its scope and name
(both of which are uniquely determined by the variable). This results
in a much nicer join order:
```
Tuple counts for ImportTime::ImportTimeScope::getOuterVariable#dispred#f0820431#fff/3@82866b6p after 42ms:
23867 ~4% {2} r1 = JOIN Scope::Scope::getEnclosingModule#dispred#f0820431#ff WITH ImportTime::ImportTimeScope#class#7851b601#f ON FIRST 1 OUTPUT Lhs.0 'this', Lhs.1
296389 ~0% {4} r2 = JOIN r1 WITH ImportTime::class_var_scope#7851b601#fff ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0 'this', Rhs.2 'var'
639 ~0% {3} r3 = JOIN r2 WITH ImportTime::global_var_scope#7851b601#fff ON FIRST 2 OUTPUT Lhs.2 'this', Lhs.3 'var', Rhs.2 'result'
return r3
```
```
Tuple counts for ImportTime::class_var_scope#7851b601#fff/3@366258vr after 47ms:
19624 ~1% {1} r1 = SCAN py_Classes OUTPUT In.0 'scope'
296743 ~0% {2} r2 = JOIN r1 WITH Variables::Variable::getScope#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'var', Lhs.0 'scope'
296743 ~0% {2} r3 = JOIN r2 WITH Variables::LocalVariable#3aa06bbf#f ON FIRST 1 OUTPUT Lhs.0 'var', Lhs.1 'scope'
296743 ~2% {3} r4 = JOIN r3 WITH Variables::Variable::getId#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1 'scope', Rhs.1 'name', Lhs.0 'var'
return r4
```
```
Tuple counts for ImportTime::global_var_scope#7851b601#fff/3@718e4bpm after 18ms:
108173 ~0% {2} r1 = JOIN Variables::GlobalVariable#class#3aa06bbf#f WITH Variables::Variable::getId#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.0 'var', Rhs.1 'name'
108173 ~0% {3} r2 = JOIN r1 WITH Variables::Variable::getScope#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1 'name', Rhs.1 'scope', Lhs.0 'var'
return r2
```
(You may be wondering what's up with the order of arguments for the two
helper predicates. By ordering the arguments this way, there's no need
to reorder the resulting relations when used in `getOuterVariable.)
2022-07-19 17:14:37 +00:00
Henti Smith
018a76bb17
Merge pull request #9857 from github/henti/new_actions_predicates
...
Added Workflow.getName and Step.GetId
2022-07-19 16:12:54 +01:00
Henti Smith
dcc76ddf36
Apply suggestions from code review
...
Co-authored-by: Henry Mercer <henrymercer@github.com >
2022-07-19 15:53:12 +01:00
Henti Smith
0828474192
Added Workflow::getName and Step::GetId
2022-07-19 15:34:10 +01:00
thiggy1342
43a9b8960e
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-19 10:29:48 -04:00
thiggy1342
cf23d338f3
Merge branch 'main' into experimental-strong-params
2022-07-19 10:29:36 -04:00
thiggy1342
6bc2fe513d
Merge branch 'main' into add-activerecord-annotate
2022-07-19 10:29:24 -04:00
Taus
cfacd015b9
Python: Fix bad join in ScopeEntryDefinition
...
Before:
```
Tuple counts for Essa::ScopeEntryDefinition#class#24e22a14#f/1@45e0d8dh after 10.5s:
2133368 ~1% {2} r1 = Essa::TEssaNodeDefinition#24e22a14#ffff_03#join_rhs AND NOT Essa::ImplicitSubModuleDefinition#class#24e22a14#f(Lhs.1 'this')
534478950 ~0% {2} r2 = JOIN r1 WITH Definitions::SsaSourceVariable::getScopeEntryDefinition#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1 'this', Rhs.1
581249 ~4% {1} r3 = JOIN r2 WITH Essa::EssaNodeDefinition::getDefiningNode#dispred#f0820431#ff ON FIRST 2 OUTPUT Lhs.0 'this'
return r3
```
Let's see if pushing the `getDefiningNode` join further up improves the
number of intermediary tuples. (Intuitively it should, since there
should only be one defining node for any given `EssaNodeDefinition`.)
To do this, we unbind the `this.getSourceVariable()` part, which
encourages the compiler to put this join later.
After:
```
Tuple counts for Essa::ScopeEntryDefinition#class#24e22a14#f/1@30758cv4 after 300ms:
2133569 ~1% {2} r1 = SCAN Essa::TEssaNodeDefinition#24e22a14#ffff OUTPUT In.0, In.3 'this'
2133368 ~1% {2} r2 = r1 AND NOT Essa::ImplicitSubModuleDefinition#class#24e22a14#f(Lhs.1 'this')
2133368 ~0% {2} r3 = JOIN r2 WITH Definitions::SsaSourceVariable#class#486534ab#f ON FIRST 1 OUTPUT Lhs.1 'this', Lhs.0
2133368 ~0% {3} r4 = JOIN r3 WITH Essa::EssaNodeDefinition::getDefiningNode#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0 'this'
581249 ~4% {1} r5 = JOIN r4 WITH Definitions::SsaSourceVariable::getScopeEntryDefinition#dispred#f0820431#ff ON FIRST 2 OUTPUT Lhs.2 'this'
return r5
```
Much better (and our intuition is confirmed -- joining with
`getDefiningNode` did not increase the number of tuples).
2022-07-19 14:28:25 +00:00
Asger F
b9bdee6651
Merge branch 'main' into post-release-prep/codeql-cli-2.10.1
2022-07-19 16:24:35 +02:00
Taus
87960b6e42
Python: Fix bad join in scope entry transfer
...
How it started:
```
Tuple counts for Base::BaseFlow::scope_entry_value_transfer_from_earlier#f76ef5bb#ffff/4@f2af49f5 after 18s:
1526390 ~0% {3} r1 = JOIN Base::BaseFlow::scope_entry_value_transfer_from_earlier#f76ef5bb#ffff#shared WITH Essa::EssaVariable::getScope#dispred#f0820431#ff ON FIRST 1 OUTPUT Rhs.1 'pred_scope', Lhs.0 'pred_var', Lhs.1
7798319 ~0% {4} r2 = JOIN r1 WITH Scope::Scope::precedes#dispred#f0820431#ff ON FIRST 1 OUTPUT Rhs.1 'succ_scope', Lhs.1 'pred_var', Lhs.2, Lhs.0 'pred_scope'
5427334 ~0% {4} r3 = JOIN Base::BaseFlow::scope_entry_value_transfer_from_earlier#f76ef5bb#ffff#shared#1 WITH Scope::Scope::precedes#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1 'pred_var', Lhs.2, Lhs.0 'pred_scope', Rhs.1 'succ_scope'
5426883 ~0% {4} r4 = r3 AND NOT Base::BaseFlow::scope_entry_value_transfer_from_earlier#f76ef5bb#ffff#antijoin_rhs(Lhs.0 'pred_var', Lhs.1, Lhs.2 'pred_scope', Lhs.3)
5426883 ~0% {5} r5 = SCAN r4 OUTPUT In.3, "__init__", In.0 'pred_var', In.1, In.2 'pred_scope'
2002084 ~0% {4} r6 = JOIN r5 WITH Scope::Scope::getName#dispred#f0820431#fb ON FIRST 2 OUTPUT Lhs.0, Lhs.2 'pred_var', Lhs.3, Lhs.4 'pred_scope'
39293988 ~2% {4} r7 = JOIN r6 WITH Scope::Scope::precedes#dispred#f0820431#ff ON FIRST 1 OUTPUT Rhs.1 'succ_scope', Lhs.1 'pred_var', Lhs.2, Lhs.3 'pred_scope'
47092307 ~0% {4} r8 = r2 UNION r7
94173236 ~7% {5} r9 = JOIN r8 WITH Essa::ScopeEntryDefinition::getScope#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.2, Rhs.1 'succ_def', Lhs.1 'pred_var', Lhs.3 'pred_scope', Lhs.0 'succ_scope'
599441 ~1% {4} r10 = JOIN r9 WITH Essa::TEssaNodeDefinition#24e22a14#ffff_03#join_rhs ON FIRST 2 OUTPUT Lhs.2 'pred_var', Lhs.3 'pred_scope', Lhs.1 'succ_def', Lhs.4 'succ_scope'
return r10
```
How it ended:
```
Tuple counts for Base::essa_var_scope#f76ef5bb#fff/3@20fd243c after 153ms:
1526390 ~0% {2} r1 = JOIN Essa::EssaDefinition::getSourceVariable#dispred#f0820431#ff WITH Base::BaseFlow::reaches_exit#f76ef5bb#f ON FIRST 1 OUTPUT Lhs.0 'pred_var', Lhs.1 'var'
1526390 ~5% {3} r2 = JOIN r1 WITH Essa::EssaVariable::getScope#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1 'var', Rhs.1 'pred_scope', Lhs.0 'pred_var'
return r2
```
```
Tuple counts for Base::scope_entry_def_scope#f76ef5bb#fff/3@34224fid after 40ms:
581249 ~1% {3} r1 = JOIN Essa::TEssaNodeDefinition#24e22a14#ffff_30#join_rhs WITH Essa::ScopeEntryDefinition::getScope#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1 'var', Rhs.1 'succ_scope', Lhs.0 'succ_def'
return r1
```
```
Tuple counts for Base::scope_entry_value_transfer_through_init#f76ef5bb#ffff#shared/5@cb3c45lu after 76ms:
471230 ~0% {3} r1 = JOIN Variables::GlobalVariable#class#3aa06bbf#f WITH Base::scope_entry_def_scope#f76ef5bb#fff ON FIRST 1 OUTPUT Rhs.1 'arg1', Lhs.0 'arg0', Rhs.2 'arg2'
313791 ~2% {5} r2 = JOIN r1 WITH Base::step_through_init#f76ef5bb#fff ON FIRST 1 OUTPUT Lhs.1 'arg0', Lhs.0 'arg1', Lhs.2 'arg2', Rhs.1 'arg3', Rhs.2 'arg4'
return r2
```
```
Tuple counts for Base::scope_entry_value_transfer_through_init#f76ef5bb#ffff#antijoin_rhs/5@886d8bvr after 67ms:
508926 ~0% {6} r1 = JOIN Base::scope_entry_value_transfer_through_init#f76ef5bb#ffff#shared WITH Exprs::Name::defines#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.4 'arg4', Lhs.0 'arg0', Lhs.1 'arg1', Lhs.2 'arg2', Lhs.3 'arg3'
25 ~46% {5} r2 = JOIN r1 WITH Exprs::Expr::getScope#dispred#f0820431#ff ON FIRST 2 OUTPUT Lhs.2 'arg0', Lhs.3 'arg1', Lhs.4 'arg2', Lhs.5 'arg3', Lhs.1 'arg4'
return r2
```
```
Tuple counts for Base::scope_entry_value_transfer_through_init#f76ef5bb#ffff/4@87ec703f after 80ms:
313774 ~2% {5} r1 = Base::scope_entry_value_transfer_through_init#f76ef5bb#ffff#shared AND NOT Base::scope_entry_value_transfer_through_init#f76ef5bb#ffff#antijoin_rhs(Lhs.0, Lhs.1 'succ_scope', Lhs.2 'succ_def', Lhs.3 'pred_scope', Lhs.4)
313774 ~0% {4} r2 = SCAN r1 OUTPUT In.3 'pred_scope', In.0, In.1 'succ_scope', In.2 'succ_def'
313774 ~4% {4} r3 = JOIN r2 WITH @py_scope#f ON FIRST 1 OUTPUT Lhs.1, Lhs.0 'pred_scope', Lhs.2 'succ_scope', Lhs.3 'succ_def'
313778 ~0% {4} r4 = JOIN r3 WITH Base::essa_var_scope#f76ef5bb#fff ON FIRST 2 OUTPUT Rhs.2 'pred_var', Lhs.1 'pred_scope', Lhs.3 'succ_def', Lhs.2 'succ_scope'
return r4
```
```
Tuple counts for Base::step_through_init#f76ef5bb#fff/3@7ba1ee1c after 17ms:
11763 ~0% {1} r1 = JOIN Scope::Scope::precedes#dispred#f0820431#ff#join_rhs WITH Scope::Scope::getName#dispred#f0820431#fb_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'init'
196671 ~4% {2} r2 = JOIN r1 WITH Scope::Scope::precedes#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.0 'init', Rhs.1 'succ_scope'
196671 ~6% {3} r3 = JOIN r2 WITH Scope::Scope::precedes#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1 'succ_scope', Rhs.1 'pred_scope', Lhs.0 'init'
return r3
```
```
Tuple counts for Base::BaseFlow::scope_entry_value_transfer_from_earlier#f76ef5bb#ffff/4@4892f93f after 426ms:
1526390 ~0% {3} r1 = SCAN Base::essa_var_scope#f76ef5bb#fff OUTPUT In.1, In.0, In.2 'pred_var'
7798319 ~0% {4} r2 = JOIN r1 WITH Scope::Scope::precedes#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1 'succ_scope', Rhs.0, Lhs.2 'pred_var'
285663 ~3% {4} r3 = JOIN r2 WITH Base::scope_entry_def_scope#f76ef5bb#fff ON FIRST 2 OUTPUT Lhs.3 'pred_var', Lhs.2 'pred_scope', Rhs.2 'succ_def', Lhs.1 'succ_scope'
599441 ~1% {4} r4 = Base::scope_entry_value_transfer_through_init#f76ef5bb#ffff UNION r3
return r4
```
It's possible this could be improved even further, but I think this is
good enough. (I'm not entirely happy with how many helper predicates I
ended up needing, but it was the only way I could get the joins to
happen in a semi-sensible order.)
2022-07-19 13:46:55 +00:00
Cornelius Riemenschneider
03bf9eb166
Merge pull request #9837 from github/aeisenberg/definitions.ql
...
Move definitions.ql back to src
2022-07-19 14:43:10 +02:00
Taus
bde47836d0
Python: Add Str class
...
This makes the AST viewer (which annotates string constant nodes as
`Str`) a bit more consistent.
2022-07-19 12:25:10 +00:00
Taus
bfe90413e2
Merge pull request #9847 from alexet/alexet/fix-predicate-binding
...
Python: Fix binding incorrect predicate.
2022-07-19 13:59:13 +02:00
Arthur Baars
dcbd82907f
Merge pull request #9845 from aibaars/skip-dotgit
...
Ruby: skip .git folder
2022-07-19 11:58:43 +02:00
Harry Maclean
ec1d1eb547
Ruby: Add change note
2022-07-19 14:33:51 +12:00
thiggy1342
962155fd61
fix changenotes
2022-07-19 00:33:04 +00:00
thiggy1342
9586259706
style tweak for checking multiple method names
2022-07-19 00:29:30 +00:00
thiggy1342
304203ad2f
fix path problem output
2022-07-19 00:25:50 +00:00
Harry Maclean
7b8603c89b
Ruby: Model Arel.sql
2022-07-19 11:27:15 +12:00
Taus
8c0725e8c6
Python: Fix bad join in ESSA getInput
...
Before:
```
Tuple counts for Essa::EssaEdgeRefinement::getInput#dispred#f0820431#ff/2@b84afc77 after 20.3s:
873421 ~0% {3} r1 = JOIN Essa::TEssaEdgeDefinition#24e22a14#ffff_31#join_rhs WITH Essa::TEssaEdgeDefinition#24e22a14#ffff_30#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0 'this'
181627951 ~0% {3} r2 = JOIN r1 WITH Essa::EssaDefinition::getSourceVariable#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.1, Lhs.2 'this'
873418 ~0% {2} r3 = JOIN r2 WITH Essa::EssaDefinition::reachesEndOfBlock#dispred#f0820431#ff ON FIRST 2 OUTPUT Lhs.2 'this', Lhs.0 'result'
return r3
```
It's perhaps not immediately obvious what's going on here (because of
the `...join_rhs` indirection), but basically we're joining together
`this` and `def` and their `getSourceVariable`, and only then actually
relating `this` and `def` through `reachesEndOfBlock`.
By unbinding `var`, we prevent this early join, which now encourages the
`reachesEndOfBlock` join to happen earlier:
```
Tuple counts for Essa::EssaEdgeRefinement::getInput#dispred#f0820431#ff/2@2d63e5lb after 2s
873421 ~0% {2} r1 = SCAN Essa::TEssaEdgeDefinition#24e22a14#ffff OUTPUT In.3 'this', In.1
873421 ~0% {3} r2 = JOIN r1 WITH Essa::TEssaEdgeDefinition#24e22a14#ffff_30#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0 'this'
873421 ~0% {3} r3 = JOIN r2 WITH Definitions::SsaSourceVariable#class#486534ab#f ON FIRST 1 OUTPUT Lhs.1, Lhs.2 'this', Lhs.0
8758877 ~0% {3} r4 = JOIN r3 WITH Essa::EssaDefinition::reachesEndOfBlock#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.2, Lhs.1 'this'
873418 ~0% {2} r5 = JOIN r4 WITH Essa::EssaDefinition::getSourceVariable#dispred#f0820431#ff ON FIRST 2 OUTPUT Lhs.2 'this', Lhs.0 'result'
return r5
```
2022-07-18 20:21:39 +00:00
alexet
f9b6ca76e5
Python: Fix binding incorrect predicate.
2022-07-18 16:28:19 +01:00
thiggy1342
fc00e56058
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-18 10:58:13 -04:00
Taus
bdd771989f
Python: Fix bad join in syntactic_call_count
...
On certain databases, the evaluation of this predicate was running out
of memory due to the way the `count` aggregate was being used. Here's
an example of the tuple counts involved:
```
Tuple counts for PointsToContext::syntactic_call_count#cf3039a0#ff#antijoin_rhs/1@d2199bb8 after 1m27s:
595518502 ~521250% {1} r1 = JOIN PointsToContext::syntactic_call_count#cf3039a0#ff#shared#3 WITH Flow::CallNode::getFunction#dispred#f0820431#ff_1#join_rhs ON FIRST 1 OUTPUT Lhs.1 'arg0'
26518709 ~111513% {1} r2 = JOIN PointsToContext::syntactic_call_count#cf3039a0#ff#shared#2 WITH Flow::CallNode::getFunction#dispred#f0820431#ff_1#join_rhs ON FIRST 1 OUTPUT Lhs.1 'arg0'
622037211 ~498045% {1} r3 = r1 UNION r2
return r3
```
and a timing report that looked like this:
```
time | evals | max @ iter | predicate
------|-------|--------------|----------
5m8s | | | PointsToContext::syntactic_call_count#cf3039a0#ff#shared#2@6d98d1nd
4m38s | | | PointsToContext::syntactic_call_count#cf3039a0#ff#count_range@f5df1do4
3m51s | | | PointsToContext::syntactic_call_count#cf3039a0#ff#shared#3@da3b4abf
1m58s | 7613 | 37ms @ 4609 | MRO::ClassListList::removedClassParts#f0820431#fffff#reorder_2_3_4_0_1@8155axyi
1m37s | 7613 | 33ms @ 3904 | MRO::ClassListList::bestMergeCandidate#f0820431#2#fff@8155a83w
1m27s | | | PointsToContext::syntactic_call_count#cf3039a0#ff#antijoin_rhs@d2199bb8
1m8s | 1825 | 63ms @ 404 | PointsTo::Expressions::equalityEvaluatesTo#741b54e2#fffff@8155aw7w
37.6s | | | PointsToContext::syntactic_call_count#cf3039a0#ff#join_rhs@e348fc1p
...
```
To make optimising this easier for the compiler, I moved the bodies of
the `count` aggregate into their own helper predicates (with size
linear in the number of `CallNode`s), and also factored out the many
calls to `f.getName()`.
The astute reader will notice that in writing this as a sum of `count`s
rather than a count of a disjunction, the intersection (if it exists)
will be counted twice, and so the semantics may be different. However,
since `method_call` and `function_call` require `AttrNode` and
`NameNode` functions respectively, and as these two types are disjoint,
there is no intersection, and so the semantics should be preserved.
After the change, the evaluation of `syntactic_call_count` now looks as
follows:
```
Tuple counts for PointsToContext::syntactic_call_count#cf3039a0#ff/2@662dd8s0 after 216ms:
23960 ~0% {1} r1 = @py_scope#f AND NOT py_Functions_0#antijoin_rhs(Lhs.0 's')
23960 ~0% {2} r2 = SCAN r1 OUTPUT In.0 's', 0
276309 ~7% {2} r3 = SCAN @py_scope#f OUTPUT In.0 's', "__init__"
11763 ~0% {2} r4 = JOIN r3 WITH Scope::Scope::getName#dispred#f0820431#fb ON FIRST 2 OUTPUT Lhs.0 's', 1
35723 ~0% {2} r5 = r2 UNION r4
252349 ~0% {2} r6 = JOIN @py_scope#f WITH Function::Function::getName#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.0 's', Rhs.1
240586 ~0% {2} r7 = SELECT r6 ON In.1 != "__init__"
131727 ~4% {2} r8 = r7 AND NOT project#PointsToContext::method_call#cf3039a0#ff(Lhs.1)
131727 ~0% {3} r9 = SCAN r8 OUTPUT In.1, In.0 's', 0
240586 ~0% {2} r10 = SCAN r7 OUTPUT In.1, In.0 's'
108859 ~0% {3} r11 = JOIN r10 WITH PointsToContext::syntactic_call_count#cf3039a0#ff#join_rhs ON FIRST 1 OUTPUT Lhs.0, Lhs.1 's', Rhs.1
240586 ~0% {3} r12 = r9 UNION r11
24100 ~0% {2} r13 = JOIN r12 WITH PointsToContext::syntactic_call_count#cf3039a0#ff#join_rhs#1 ON FIRST 1 OUTPUT Lhs.1 's', (Rhs.1 + Lhs.2)
240586 ~0% {2} r14 = SELECT r6 ON In.1 != "__init__"
131727 ~4% {2} r15 = r14 AND NOT project#PointsToContext::method_call#cf3039a0#ff(Lhs.1)
131727 ~0% {3} r16 = SCAN r15 OUTPUT In.0 's', In.1, 0
108859 ~4% {3} r17 = JOIN r10 WITH PointsToContext::syntactic_call_count#cf3039a0#ff#join_rhs ON FIRST 1 OUTPUT Lhs.1 's', Lhs.0, Rhs.1
240586 ~4% {3} r18 = r16 UNION r17
216486 ~2% {3} r19 = r18 AND NOT project#PointsToContext::function_call#cf3039a0#ff(Lhs.1)
216486 ~0% {2} r20 = SCAN r19 OUTPUT In.0 's', (0 + In.2)
240586 ~0% {2} r21 = r13 UNION r20
276309 ~0% {2} r22 = r5 UNION r21
return r22
```
2022-07-18 13:58:00 +00:00
Arthur Baars
c9e5206396
Ruby: skip .git folder
2022-07-18 15:26:38 +02:00
Geoffrey White
541df9b550
Swift: Remove TODO comment. We have a test for this problem now.
2022-07-18 14:26:12 +01:00
Geoffrey White
336548f746
Swift: Improve comments.
2022-07-18 14:24:16 +01:00
Geoffrey White
9474e63faf
Swift: Clean up isSink (4 - move common code out).
2022-07-18 14:24:15 +01:00
Geoffrey White
b136790efd
Swift: Clean up isSink (3 - rename f -> funcDecl and move that out as well; in the other two cases this variable didn't exist, now it does).
2022-07-18 14:24:14 +01:00
Geoffrey White
0bd94a6307
Swift: Clean up isSink (2 - rename methodName -> funcName and move that out as well).
2022-07-18 14:24:13 +01:00
Geoffrey White
4854679a40
Swift: Clean up isSink (1 - move common variables to an outer exists).
2022-07-18 14:24:13 +01:00
Geoffrey White
39fb714ad1
Swift: Add test with substring declared differently.
2022-07-18 14:24:12 +01:00
Michael Nebel
6603024488
C#: Allow encryption- prefix for sinks in CsvValidation.
2022-07-18 14:32:31 +02:00
Michael Nebel
57ba0c4e5d
C#: Move sinks into System.Security.Cryptography framework code.
2022-07-18 14:28:49 +02:00
Michael Nebel
c91d49a0fe
C#: Add provenance column to CSV format for SymmetricAlgorithm.
2022-07-18 14:28:49 +02:00
Michael Nebel
66232a8054
C#: Fix typo.
2022-07-18 14:28:49 +02:00
Michael Nebel
a5b7e2a2e1
C#: Convert set Key of SymmetricAlgorithm to Csv sink.
2022-07-18 14:28:49 +02:00
Michael Nebel
032448041d
C#: Convert CreateSymmetricKey to CSV sink.
2022-07-18 14:28:49 +02:00
Michael Nebel
1d405dba14
C#: Collapse Sink classes.
2022-07-18 14:28:49 +02:00
Michael Nebel
383ad51682
C#: Use CSV format for CreateEncryptor and CreateDecryptor sinks.
2022-07-18 14:28:49 +02:00
Michael Nebel
e6e82ef56d
C#: Update test with Decrypt example.
2022-07-18 14:28:49 +02:00
Michael Nebel
52a9fb0de7
C#: Add test for decrypt.
2022-07-18 14:28:49 +02:00
Paolo Tranquilli
e1bd4a78ff
Merge branch 'main' into redsun82/swift-type-repr-collapse
2022-07-18 14:05:43 +02:00
Paolo Tranquilli
10b7b1f183
Merge branch 'main' into redsun82/swift-file-label-caching
2022-07-18 14:02:57 +02:00
Paolo Tranquilli
410167671f
Merge pull request #9795 from github/redsun82/swift-extraction
...
Swift: extract more entities
2022-07-18 13:37:43 +02:00
Nick Rolfe
eebba36b18
Merge pull request #9708 from github/nickrolfe/pathname
...
Ruby: model the standard library's `Pathname` class
2022-07-18 11:29:30 +01:00
Paolo Tranquilli
98fc8812fc
Merge 'main' into redsun82/swift-extraction
2022-07-18 11:55:21 +02:00
Paolo Tranquilli
c779936ee8
Swift: commit forgotten files
2022-07-18 11:19:40 +02:00
Paolo Tranquilli
c08c3955d6
Swift: add UnresolvedPatternExpr test
2022-07-18 10:37:54 +02:00
Paolo Tranquilli
78fc356feb
Swift: address review comments
2022-07-18 10:29:20 +02:00
Nick Rolfe
dbd6607875
Ruby: use ASCII dash in comment
...
Co-authored-by: Harry Maclean <hmac@github.com >
2022-07-18 08:54:58 +01:00
Harry Maclean
cc5f59f313
Merge pull request #9138 from hmac/hmac/array-inclusion-guard-local-flow
...
Ruby: Make StringArrayInclusion more sensitive
2022-07-18 10:11:49 +12:00
yo-h
d4443592eb
Merge pull request #9776 from raulgarciamsft/azure-sdk-client-encryption-version
...
New queries to detect unsafe client side encryption in Azure Storage
2022-07-16 14:59:51 -04:00
Raul Garcia
6b17890e4f
Fixing warning on usage of a deprecated feature.
2022-07-16 08:30:06 -07:00
Raul Garcia
eefa659503
Update java/ql/src/experimental/Security/CWE/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: yo-h <55373593+yo-h@users.noreply.github.com >
2022-07-16 08:23:59 -07:00
Raul Garcia
fe789c8aa9
Update java/ql/src/experimental/Security/CWE/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: yo-h <55373593+yo-h@users.noreply.github.com >
2022-07-16 08:22:18 -07:00
Andrew Eisenberg
b897a40228
Move python contextual queries to lib folders
...
This will ensure that python projects can use jump to ref/def in
vscode when the core libraries are not installed.
2022-07-15 13:12:17 -07:00
Andrew Eisenberg
2f50549184
Move definitions.ql back to src
2022-07-15 11:48:15 -07:00
thiggy1342
a1df1d1119
Merge branch 'main' into experimental-strong-params
2022-07-15 11:17:57 -04:00
thiggy1342
ee1c09329f
Merge branch 'main' into add-activerecord-annotate
2022-07-15 11:17:48 -04:00
Chris Smowton
41ca791966
Implement is-underscore-parameter for old versions of Kotlin
2022-07-15 12:36:37 +01:00
Erik Krogh Kristensen
625e37a0da
fix typo
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2022-07-14 21:53:21 +02:00
Aditya Sharad
d50816a284
Merge pull request #9802 from adityasharad/docs/language-pack-changelogs
...
Docs: Add links from query help to query pack changelog for each language
2022-07-14 08:52:50 -07:00
Chris Smowton
d4b0163c4c
Kotlin: Don't extract a name for a '_' parameter
...
I can't reproduce the exact circumstances, but these sometimes get "<anonymous parameter X>" names and sometimes get "$noName_X" names. Whichever way, avoiding extracting a synthetic name seems safest; anyone finding the .class file and not reading the metadata indicating it came from a `_` will extract the binary name selected, or else QL will
invent a name.
2022-07-14 16:36:26 +01:00
github-actions[bot]
0ee476129a
Post-release preparation for codeql-cli-2.10.1
2022-07-14 14:38:49 +00:00
Paolo Tranquilli
5e74df3882
Swift: cache file paths
...
This required a bit of a generalization of `TrapLabelStore` to not
work only with pointers.
2022-07-14 16:32:33 +02:00
Aditya Sharad
d13f9d5d71
Update docs/codeql/query-help/javascript.rst
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-07-14 07:29:29 -07:00
Paolo Tranquilli
7fbe4f8547
Merge pull request #9815 from github/redsun82/swift-exclusive-file
...
Swift: trap output rework
2022-07-14 16:23:44 +02:00
thiggy1342
592ce3ec58
Merge branch 'main' into add-activerecord-annotate
2022-07-14 09:55:25 -04:00
Paolo Tranquilli
22ff8c2c7e
Swift: remove redundant braces
2022-07-14 15:40:48 +02:00
Paolo Tranquilli
3e06455ac1
Swift: delete TargetFile's move assignment
2022-07-14 15:39:36 +02:00
Anders Schack-Mulligen
21066d277f
Merge pull request #9819 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-07-14 15:13:37 +02:00
Erik Krogh Kristensen
5ba4f6dae8
Merge pull request #9826 from erik-krogh/combineWork
...
QL: rewrite the QL-for-QL workflow to just do everything in one go
2022-07-14 14:24:31 +02:00
Asger F
fd7561cf27
Merge pull request #9822 from github/release-prep/2.10.1
...
Release preparation for version 2.10.1
2022-07-14 14:02:41 +02:00
Erik Krogh Kristensen
1037c2b182
all comments are alive
2022-07-14 13:30:12 +02:00
Erik Krogh Kristensen
a7a9428dc1
split the sarif file into languages
2022-07-14 13:20:52 +02:00
Erik Krogh Kristensen
47c9b446f0
exclude upgrade scripts from QL-for-QL
2022-07-14 13:01:40 +02:00
Erik Krogh Kristensen
380070f2e4
rewrite the QL-for-QL workflow to just do everything in one go
2022-07-14 12:54:27 +02:00
Erik Krogh Kristensen
85a652f3d1
remove a bunch of repeated words
2022-07-14 12:42:48 +02:00
Erik Krogh Kristensen
2ea2bd8966
refine the repeated-word query
2022-07-14 12:35:09 +02:00
Erik Krogh Kristensen
cb3a0fb5de
make a Comment superclass
2022-07-14 12:25:01 +02:00
Erik Krogh Kristensen
f20c186277
add ql/repeated-word query
2022-07-14 12:20:30 +02:00
Asger F
dbff20a3d8
Update cpp/ql/lib/CHANGELOG.md
2022-07-14 12:10:03 +02:00
Asger F
9f184ec122
Update cpp/ql/lib/change-notes/released/0.3.1.md
2022-07-14 12:09:58 +02:00
Jeroen Ketema
fe1f1bb79d
Fix issues with change notes
2022-07-14 11:06:14 +02:00
Erik Krogh Kristensen
33fdcf1e4f
Merge pull request #9794 from erik-krogh/unusedVue
...
JS: exclude variables in .vue files form js/unused-local-variable
2022-07-14 10:57:06 +02:00
github-actions[bot]
d1aa0d7dd3
Release preparation for version 2.10.1
2022-07-14 08:56:03 +00:00
Asger F
855d4c2ea1
Merge pull request #9718 from asgerf/js/case-sensitive-middleware
...
JS: Add 'case sensitive middleware' query
2022-07-14 10:47:58 +02:00
Erik Krogh Kristensen
43a82004b2
Merge pull request #9798 from erik-krogh/backtrackers
...
JS: use small steps in TypeBackTracker correctly
2022-07-14 10:28:07 +02:00
Erik Krogh Kristensen
ed80089d7c
fix some QL-for-QL warnings in JS
2022-07-14 09:45:44 +02:00
Asger F
18c5a8c8da
Merge branch 'main' into js/case-sensitive-middleware
2022-07-14 09:38:35 +02:00
Asger F
da8123072d
Apply suggestions from doc review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-07-14 09:38:10 +02:00
Paolo Tranquilli
f1144b9672
Swift: small TypeRepr visit rewording
2022-07-14 06:18:51 +02:00
Paolo Tranquilli
d748cb483d
Swift: include cleanup
...
Fix a problem with `sstream` not being transitively included on macOS.
2022-07-14 06:10:12 +02:00
Paolo Tranquilli
4c53c341f6
Swift: make TargetFile::good() a class invariant
...
Fallible initialization has been moved to a factory function, and
`commit` has been moved to the destructor.
2022-07-14 06:02:35 +02:00
thiggy1342
62a10e20b2
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-13 20:28:09 -04:00
thiggy1342
8ca7d7d775
update change note
2022-07-14 00:22:38 +00:00
thiggy1342
9d277027a3
Merge branch 'main' into experimental-strong-params
2022-07-13 20:19:50 -04:00
thiggy1342
3dd61cadf4
formatting query
2022-07-14 00:19:36 +00:00
github-actions[bot]
9a186ba5d2
Add changed framework coverage reports
2022-07-14 00:18:56 +00:00
thiggy1342
ee79834cc8
formatting in qhelp
2022-07-14 00:15:39 +00:00
thiggy1342
ae634367c9
add qhelp file
2022-07-14 00:11:52 +00:00
thiggy1342
2cc703387b
use taint config for data flow
2022-07-14 00:11:52 +00:00
Chris Smowton
a6970638cb
Improve description
2022-07-13 20:27:10 +01:00
Chris Smowton
01cec0490b
Abbreviate qhelp
2022-07-13 20:24:44 +01:00
thiggy1342
f5301aa478
Merge branch 'main' into add-activerecord-annotate
2022-07-13 14:35:44 -04:00
Chris Smowton
80cbddf626
Merge pull request #9817 from smowton/smowton/feature/model-java-util-properties
...
Java: Model `java.util.Properties.getProperty`
2022-07-13 17:12:11 +01:00
Raul Garcia
f7c47b6c75
Update python/ql/src/experimental/Security/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.py
...
Co-authored-by: Taus <tausbn@github.com >
2022-07-13 08:34:48 -07:00
Chris Smowton
f9da4a0456
Add change note
2022-07-13 14:11:31 +01:00
Chris Smowton
b1dd3c2d84
Model java.util.Properties.getProperty
2022-07-13 13:59:28 +01:00
Erik Krogh Kristensen
9e2e32f037
Merge pull request #9322 from erik-krogh/fixAutoBuild
...
QL/RB: fix the QL-for-QL and ruby autobuilders
2022-07-13 14:39:59 +02:00
Paolo Tranquilli
6dd09c1815
Merge pull request #9796 from github/redsun82/swift-codegen-skip-cpp-pragma
...
Swift: allow skipping fields in cppgen
2022-07-13 13:20:47 +02:00
Erik Krogh Kristensen
3e4a182ee8
Merge pull request #7450 from erik-krogh/missDocParam
...
QL: Add query detecting suspiciously missing parameters from the QLDoc of a predicate
2022-07-13 12:45:15 +02:00
Erik Krogh Kristensen
595875ff98
remove redundant not-equals check
2022-07-13 12:06:12 +02:00
Paolo Tranquilli
5773a734c3
Swift: slightly simplify a cppgen change
2022-07-13 11:27:50 +02:00
Erik Krogh Kristensen
a4262f8d91
add some more references to the overly-large-range qhelp
2022-07-13 11:20:24 +02:00
Paolo Tranquilli
f7dca4d70f
Swift: trap output rework
...
Firstly, this change reworks how inter-process races are resolved.
Moreover some responsability reorganization has led to merging
`TrapArena` and `TrapOutput` again into a `TrapDomain` class.
A `TargetFile` class is introduced, that is successfully created
only for the first process that starts processing a given trap output
file. From then on `TargetFile` simply wraps around `<<` stream
operations, dumping them to a temporary file. When `TargetFile::commit`
is called, the temporary file is moved on to the actual target trap
file.
Processes that lose the race can now just ignore the unneeded
extraction and go on, while previously all processes would carry out
all extractions overwriting each other at the end.
Some of the file system logic contained in `SwiftExtractor.cpp` has been
moved to this class, and two TODOs are solved:
* introducing a better inter process file collision avoidance strategy
* better error handling for trap output operations: if unable to write
to the trap file (or carry out other basic file operations), we just
abort.
The changes to `ExprVisitor` and `StmtVisitor` are due to wanting to
hide the raw `TrapDomain::createLabel` from them, and bring more
funcionality under the generic caching/dispatching mechanism.
2022-07-13 11:19:57 +02:00
Harry Maclean
1fa2144716
Ruby: Update test fixtures
2022-07-13 21:02:08 +12:00
Erik Krogh Kristensen
fd10947ca0
use small steps in TypeBackTracker correctly
2022-07-13 10:29:57 +02:00
Erik Krogh Kristensen
cd5fbe633f
update locations in test after merging in the focus-location-pr
2022-07-13 10:12:52 +02:00
Erik Krogh Kristensen
c4f44bb67f
sync files
2022-07-13 10:01:26 +02:00
Erik Krogh Kristensen
a49d34cf0f
Merge branch 'main' into missDocParam
2022-07-13 09:58:04 +02:00
Erik Krogh Kristensen
dded3af3d8
remove more false positives from the ql/missing-parameter-qldoc query
2022-07-13 09:57:17 +02:00
Erik Krogh Kristensen
047b14e310
get the autobuilders to work after introducing test-cases
2022-07-13 09:50:55 +02:00
Erik Krogh Kristensen
eb0340dcb6
get excludes to work properly
2022-07-13 09:50:55 +02:00
Erik Krogh Kristensen
878168384e
remove tools:latest from codeql-action in QL-for-QL
2022-07-13 09:50:54 +02:00
Erik Krogh Kristensen
2850b35a04
update, and fix, the autobuilders by using the new --also-match option
2022-07-13 09:48:29 +02:00
Harry Maclean
49aab51893
Ruby: Make helper predicate private
2022-07-13 18:20:27 +12:00
Harry Maclean
ea95e2e1d0
Ruby: Use InclusionTests library in barrier guards
2022-07-13 18:20:27 +12:00
Harry Maclean
b9fc82a741
Ruby: Test both old and new-style barrier guards
2022-07-13 18:20:25 +12:00
Harry Maclean
4cfaa86d5d
Ruby: Update new-style barrier-guard
2022-07-13 18:20:14 +12:00
Harry Maclean
5f17d8370c
Ruby: Small change to isArrayExpr
2022-07-13 18:20:14 +12:00
Harry Maclean
63dcce9a31
Ruby: Refactor isArrayConstant
2022-07-13 18:20:14 +12:00
Harry Maclean
b5a3d3c488
Ruby: Extract isArrayConstant
...
This predicate might be useful elsewhere.
2022-07-13 18:20:14 +12:00
Harry Maclean
301914d80c
Ruby: Add an extra barrier guard test
2022-07-13 18:20:14 +12:00
Harry Maclean
706d1d2eee
Ruby: Make StringArrayInclusion more sensitive
...
We now recognise the following pattern as a barrier guard for `x`:
values = ["foo", "bar"]
if values.include? x
sink x
end
2022-07-13 18:20:12 +12:00
Raul Garcia
0dbb03f732
Adding CVE information.
2022-07-12 21:49:19 -07:00
thiggy1342
7df7b92d86
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-12 20:36:34 -04:00
thiggy1342
7129002573
tweak tests more
2022-07-13 00:33:58 +00:00
thiggy1342
b3f1a513d1
Update tests
2022-07-13 00:25:43 +00:00
thiggy1342
9a0a9491da
Merge branch 'main' into add-activerecord-annotate
2022-07-12 20:13:56 -04:00
thiggy1342
2566ae9889
Merge branch 'main' into experimental-strong-params
2022-07-12 20:12:51 -04:00
thiggy1342
db5f63b208
add tests
2022-07-12 23:14:16 +00:00
thiggy1342
7facc63699
remove predicate
2022-07-12 22:59:48 +00:00
Erik Krogh Kristensen
2aaedacd5d
Merge pull request #9593 from erik-krogh/param2
...
QL: followup fixes to parameterized modules
2022-07-13 00:23:11 +02:00
Erik Krogh Kristensen
89043ec4ef
Merge branch 'main' into param2
2022-07-12 23:21:11 +02:00
thiggy1342
74d6061082
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-12 17:15:54 -04:00
Erik Krogh Kristensen
5cbe01d8dc
Merge pull request #8351 from erik-krogh/inconsistentDep
...
QL: add query detecting inconsistent deprecations
2022-07-12 23:12:24 +02:00
Erik Krogh Kristensen
e092cb02cd
Merge pull request #8937 from erik-krogh/qlFocusedLocations
...
QL: more precise alert locations
2022-07-12 23:11:22 +02:00
Raul Garcia
a4adf06713
Addressing feedback for the qhelp file.
2022-07-12 13:51:12 -07:00
Jeroen Ketema
c18428f1a9
Merge pull request #9785 from bdrodes/main
...
C++: Nullness.qll bug fixes
2022-07-12 21:43:44 +02:00
Raul Garcia
d929b1338b
Addressing API::Node feedback for all predicates
2022-07-12 11:55:06 -07:00
ihsinme
e77a989133
Update DangerousUseMbtowc.expected
2022-07-12 20:22:31 +03:00
ihsinme
98af52fba5
Update DangerousUseMbtowc.ql
2022-07-12 20:19:59 +03:00
ihsinme
1291f33c39
Merge pull request #1 from geoffw0/test123
...
C++: Accept test results.
2022-07-12 20:18:59 +03:00
Ian Lynagh
83edb3b5e9
Kotlin: Remove the last uses of fakeLabel
2022-07-12 17:43:50 +01:00
Geoffrey White
f29104ccce
C++: Accept test results.
2022-07-12 16:49:04 +01:00
Raul Garcia
64343e00f4
Update java/ql/src/experimental/Security/CWE/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-07-12 08:14:25 -07:00
Raul Garcia
8a48708014
Update java/ql/src/experimental/Security/CWE/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-07-12 08:14:13 -07:00
Raul Garcia
2bac181094
Update java/ql/src/experimental/Security/CWE/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-07-12 08:13:53 -07:00
Raul Garcia
a4e35a97ea
Update java/ql/src/experimental/Security/CWE/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-07-12 08:13:38 -07:00
Raul Garcia
a51d713925
Update java/ql/src/experimental/Security/CWE/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-07-12 08:13:12 -07:00
Jeroen Ketema
f7c4fa691d
Apply suggestions from code review
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-07-12 16:59:15 +02:00
Erik Krogh Kristensen
8e52fc97fc
changes based on review by Shack
2022-07-12 16:02:50 +02:00
Erik Krogh Kristensen
220ff3cb2e
convert tabs to spaces in qhelp
2022-07-12 16:02:50 +02:00
Erik Krogh Kristensen
712805f3bf
add a!=b to the overlap predicate
2022-07-12 16:02:50 +02:00
Erik Krogh Kristensen
592464d98b
simplify the overlap computation
2022-07-12 16:02:50 +02:00
Erik Krogh Kristensen
aae3e2ddde
other changes based on Esbens review
2022-07-12 16:02:50 +02:00
Erik Krogh Kristensen
ff25451699
rename query to overly-large-range, and rewrite the @description
2022-07-12 16:02:46 +02:00
Ian Lynagh
a0636ff843
Merge pull request #9545 from igfoo/igfoo/type_cycles
...
Java: Fix RefType.getAStrictAncestor() in the presence of type hierarchy cycles
2022-07-12 14:28:54 +01:00
Jeroen Ketema
8f9d419441
C++: Add change note
2022-07-12 15:24:09 +02:00
Jeroen Ketema
e5eabc4e47
C++: Slightly tweak nullness test and update test results
2022-07-12 15:23:33 +02:00
Jeroen Ketema
d63b0946d9
C++: Use ConditionDeclExpr in AnalysedExpr::isDef
2022-07-12 15:22:13 +02:00
Jeroen Ketema
2ceb25dc9a
C++: Order left and right operands in the logical left to right order
2022-07-12 15:21:37 +02:00
Ian Lynagh
d0bf424b19
Merge pull request #9806 from igfoo/igfoo/useType
...
Kotlin: Extract an ErrorType if we fail to correctly extract a type
2022-07-12 13:45:04 +01:00
Ian Lynagh
1bcb17b760
Update java/ql/lib/change-notes/2022-07-12-errortype.md
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2022-07-12 12:16:24 +01:00
Paolo Tranquilli
48c71c9407
Swift: add comment about TypeRepr in ASTNode fetching
2022-07-12 12:10:22 +02:00
Jeroen Ketema
de6a9375ba
Merge pull request #9804 from jketema/get-target
...
C++: Clarify the "most-specific" part of `FunctionCall:getTarget`
2022-07-12 12:06:50 +02:00
Ian Lynagh
2edeeaac0e
Merge pull request #9801 from igfoo/igfoo/psi
...
Kotlin: We can't extract comments for < 1.5.20
2022-07-12 11:01:30 +01:00
Ian Lynagh
965f5a980a
Java/Kotlin: Add changenote for ErrorType
2022-07-12 10:58:16 +01:00
Henry Mercer
2ddcf8364c
Merge pull request #9585 from github/henrymercer/packaging-on-ghes
...
Docs: Document packaging support for CodeQL CLI 2.9.4+ on GHES 3.6+
2022-07-12 10:36:03 +01:00
Paolo Tranquilli
033b239b22
Swift: collapse TypeRepr hierarchy
...
Now `TypeRepr` is a final class in the AST, which is more or less just
a type with a location in code.
As the frontend does not provide a direct way to get a type from a
type representation, this information must be provided when fetching
the label of a type repr.
This meant:
* removing the type repr field from `EnumIsCaseExpr`: this is a virtual
AST node introduced in place of some kinds of `IsEpxr`. The type
repr is still available from the `ConditionalCheckedCastExpr` wrapped
by this virtual node, and we will rebuild the original `IsExpr` with
the IPA layer.
* some logic to get the type of keypath roots has been added to
`KeyPathExpr`. This was done to keep the `TypeRepr` to `Type` relation
total in the DB, but goes against the design of a dumb extractor. The
logic could be moved to QL in the future
* in the control flow library, `TypeRepr` children are now ignored. As
far as I can tell, there is no runtime evaluation going on in
`TypeRepr`s, so it does not make much sense to have control flow
through them.
2022-07-12 10:49:14 +02:00
Nick Rolfe
685389d219
Merge pull request #9797 from github/nickrolfe/railties_fix
...
Ruby: fix defining every dataflow node as a command execution sink
2022-07-12 09:30:55 +01:00
Jeroen Ketema
c75599c3da
C++: Clarify the "most-specific" part of FunctionCall:getTarget
2022-07-12 10:28:19 +02:00
Nick Rolfe
217c9a8aaf
Fix typo in changenote
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2022-07-12 08:50:58 +01:00
Paolo Tranquilli
47a4cac8ee
Merge branch 'main' into redsun82/swift-extraction
2022-07-12 09:29:10 +02:00
Paolo Tranquilli
70838fe57f
Merge pull request #9774 from github/redsun82/swift-disable-change-note-check
...
Swift: disable change note checking for now
2022-07-12 09:28:37 +02:00
Shyam Mehta
65b9947428
Incorporate jksco's feedback
2022-07-12 02:02:31 -04:00
smehta23
781a2a73d3
Merge branch 'main' into feat/SM/java_partial_path_traversal_vulnerability
2022-07-12 01:48:12 -04:00
Raul Garcia
d5791e2d56
Addressing feedback from the PR
2022-07-11 15:45:15 -07:00
Aditya Sharad
02e11b7ee9
Docs: Add links from query help to query pack changelog for each language
2022-07-11 13:59:38 -07:00
Raul Garcia
ac05577966
Making various changes based on the feedback. Pending: 2 non-trivial fixes for Java & Python.
2022-07-11 13:25:35 -07:00
Raul Garcia
e5702d0e15
Update python/ql/src/experimental/Security/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: Taus <tausbn@github.com >
2022-07-11 13:07:37 -07:00
Raul Garcia
7fc9ae6c49
Update python/ql/src/experimental/Security/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: Taus <tausbn@github.com >
2022-07-11 13:07:20 -07:00
Andrew Eisenberg
022acf2de0
Merge pull request #9570 from github/aeisenberg/docs/packs-with-paths
...
Update docs to include how to run a pack with path
2022-07-11 11:40:11 -07:00
Ian Lynagh
960d1dba8a
Kotlin: We can't etract comments for < 1.5.20
...
We were making our own PsiSourceManager, but that didn't know about any
IrFile -> PsiFile mappings.
2022-07-11 19:36:43 +01:00
Ian Lynagh
4c68624b00
Kotlin: Pass a FileLogger to Psi2Ir
2022-07-11 19:17:21 +01:00
Ian Lynagh
b9072a3594
Kotlin: Share a Psi2Ir instance
2022-07-11 18:57:43 +01:00
Henry Mercer
4704269086
Add example registry authentication string
2022-07-11 18:36:03 +01:00
Nick Rolfe
a3628b06f1
Ruby: fix markup in changenote
2022-07-11 17:23:45 +01:00
Nick Rolfe
032aa56dc3
Ruby: add change note for system command execution sink bug
2022-07-11 17:00:07 +01:00
Nick Rolfe
6632dfaf88
Ruby: fix another SystemCommandExecution::isShellInterpreted implementation
2022-07-11 16:53:30 +01:00
Raul Garcia
5d89a5d164
Update csharp/ql/src/experimental/Security Features/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.ql
...
Co-authored-by: Taus <tausbn@github.com >
2022-07-11 08:42:50 -07:00
Raul Garcia
156bc34cda
Update UnsafeUsageOfClientSideEncryptionVersion.qhelp
2022-07-11 08:41:05 -07:00
thiggy1342
ad7c3e7217
Merge branch 'main' into experimental-manually-check-request-verb
2022-07-11 10:20:07 -04:00
thiggy1342
539fbbc126
Merge branch 'main' into experimental-strong-params
2022-07-11 10:20:00 -04:00
Nick Rolfe
348ad95fc0
Ruby: fix defining every dataflow node as a command execution sink
2022-07-11 15:06:27 +01:00
Paolo Tranquilli
93d06daf67
Swift: allow skipping fields in cppgen
...
Some fields of base classes pose some problems with diamond hierarchies,
and we don't use them any way as we are emitting them using directly
trap entries instead of structured C++ classes.
This introduces a `cpp_skip` pragma to skip generation of those fields
in structured generated C++ classes, and applies it to `is_unknown` and
`location`.
2022-07-11 15:59:21 +02:00
Paolo Tranquilli
39406436bf
Swift: extract IfConfigDecl
...
This also adds `UnresolvedDeclRefExpr` tests, as `IfConfigDecl`
consistently introduces those.
2022-07-11 15:11:13 +02:00
Ben Rodes
a6048dd594
Merge branch 'github:main' into main
2022-07-11 08:49:13 -04:00
Jeroen Ketema
93a4a32527
Merge pull request #9786 from jketema/lossy
...
C++: LossyFunctionResultCast updates
2022-07-11 14:14:33 +02:00
Robert Marsh
bbd7e62341
Merge pull request #9793 from jketema/nullness
...
C++: Add tests for `AnalysedExpr::isNullCheck` and `AnalysedExpr::isValidCheck`
2022-07-11 08:07:24 -04:00
Ian Lynagh
28a8999b74
Java: Add an upgrade script
2022-07-11 12:09:48 +01:00
Ian Lynagh
aa07600f5a
Java: Update stats
2022-07-11 12:09:48 +01:00
Erik Krogh Kristensen
9ed7aa9fae
exclude variables in .vue files form js/unused-local-variable
2022-07-11 12:52:23 +02:00
Chris Smowton
74641ccfee
Simplify test for no-arg constructor
2022-07-11 11:01:19 +01:00
Jeroen Ketema
6b2154eb8b
C++: Add tests for AnalysedExpr::isNullCheck and AnalysedExpr::isValidCheck
2022-07-11 11:54:48 +02:00
Paolo Tranquilli
7d5dd384c3
Swift: extract UnresolvedPatternExpr
2022-07-11 10:59:00 +02:00
Paolo Tranquilli
7c3cadc9b6
Swift: extract OpenedArchetypeType
2022-07-11 10:48:21 +02:00
thiggy1342
e8e8da1b31
fix lib test expect for ActionController
2022-07-08 19:01:01 +00:00
thiggy1342
5d3232c614
refactor to use data flow
2022-07-08 18:53:24 +00:00
thiggy1342
96e66c4a50
move tests
2022-07-08 18:39:04 +00:00
thiggy1342
0435105d16
Merge remote-tracking branch 'upstream/main' into experimental-strong-params
2022-07-08 18:36:09 +00:00
thiggy1342
6aab970a9e
refactor query to use cfg and dataflow
2022-07-08 18:32:54 +00:00
thiggy1342
bd50fd7f1e
format fix
2022-07-08 17:20:41 +00:00
thiggy1342
11e39aa030
Add changelog
2022-07-07 21:40:16 +00:00
thiggy1342
940254d251
update framework tests
2022-07-07 19:39:59 +00:00
thiggy1342
b4869158f2
expand query tests for cwe-089
2022-07-07 19:23:57 +00:00
thiggy1342
2f1cfa816f
Add annotate arguments as sqli sink
2022-07-07 19:23:06 +00:00
Raul Garcia
f8994d04d6
Clean up
2022-07-07 11:49:05 -07:00
REDMOND\brodes
4379aa4398
Adding Initializer in condition as an occurance of isDef
2022-07-07 10:32:36 -04:00
Raul Garcia
01da877d0e
Moving the new query to experimental. It was added to the wrong folder initially.
2022-07-06 14:07:14 -07:00
Jeroen Ketema
0b471c2007
C++: Improve LossyFunctionResultCast join order
...
Before on wireshark:
```
Tuple counts for #select#ff@eca61bf2:
180100 ~2% {2} r1 = SCAN Type::Type::getUnderlyingType#dispred#f0820431#ff OUTPUT In.1, In.0
84 ~2% {2} r2 = JOIN r1 WITH project#Type::FloatingPointType#class#2e8eb3ef#fffff ON FIRST 1 OUTPUT Lhs.1, Rhs.0
2021 ~0% {2} r3 = JOIN r2 WITH Function::Function::getType#dispred#f0820431#fb_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
2437 ~0% {2} r4 = JOIN r3 WITH Call::FunctionCall::getTarget#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Rhs.1
2150 ~0% {2} r5 = r4 AND NOT LossyFunctionResultCast::whiteListWrapped#377b528a#f(Lhs.1)
2150 ~0% {2} r6 = SCAN r5 OUTPUT In.1, In.0
313 ~0% {3} r7 = JOIN r6 WITH exprconv ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
313 ~0% {3} r8 = JOIN r7 WITH Cast::Conversion#class#1f33e835#b ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2
148 ~3% {2} r9 = JOIN r8 WITH Expr::Expr::isCompilerGenerated#f0820431#b ON FIRST 1 OUTPUT Lhs.2, Lhs.1
148 ~1% {3} r10 = JOIN r9 WITH Expr::Expr::getActualType#dispred#f0820431#bf ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
21 ~0% {3} r11 = JOIN r10 WITH Type::IntegralType#class#2e8eb3ef#ff ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.0
21 ~0% {3} r12 = JOIN r11 WITH Element::ElementBase::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
21 ~0% {2} r13 = JOIN r12 WITH Element::ElementBase::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, ("Return value of type " ++ Lhs.2 ++ " is implicitly converted to " ++ Rhs.1 ++ " here.")
return r13
```
After:
```
Tuple counts for #select#ff@a5a185eg:
20 ~0% {2} r1 = SCAN project#Type::FloatingPointType#class#2e8eb3ef#fffff OUTPUT In.0, In.0
20 ~0% {2} r2 = JOIN r1 WITH project#Type::FloatingPointType#class#2e8eb3ef#fffff ON FIRST 1 OUTPUT Lhs.1, Lhs.0
84 ~2% {2} r3 = JOIN r2 WITH Type::Type::getUnderlyingType#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
2021 ~0% {2} r4 = JOIN r3 WITH Function::Function::getType#dispred#f0820431#fb_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
2437 ~0% {2} r5 = JOIN r4 WITH Call::FunctionCall::getTarget#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Rhs.1
2150 ~0% {2} r6 = r5 AND NOT LossyFunctionResultCast::whiteListWrapped#377b528a#f(Lhs.1)
2150 ~0% {2} r7 = SCAN r6 OUTPUT In.1, In.0
313 ~0% {3} r8 = JOIN r7 WITH exprconv ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
313 ~0% {3} r9 = JOIN r8 WITH Cast::Conversion#class#1f33e835#b ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2
148 ~3% {2} r10 = JOIN r9 WITH Expr::Expr::isCompilerGenerated#f0820431#b ON FIRST 1 OUTPUT Lhs.2, Lhs.1
148 ~1% {3} r11 = JOIN r10 WITH Expr::Expr::getActualType#dispred#f0820431#bf ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
21 ~0% {3} r12 = JOIN r11 WITH Type::IntegralType#class#2e8eb3ef#ff ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.0
21 ~0% {3} r13 = JOIN r12 WITH Element::ElementBase::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
21 ~0% {2} r14 = JOIN r13 WITH Element::ElementBase::toString#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, ("Return value of type " ++ Lhs.2 ++ " is implicitly converted to " ++ Rhs.1 ++ " here.")
return r14
```
2022-07-06 21:53:12 +02:00
Jeroen Ketema
7d6fb7f91a
C++: Rename LossyFunctionResultCast tests to be correctly named
2022-07-06 21:52:13 +02:00
REDMOND\brodes
74ff579dbc
Fixing logic bug with LogicalAndExpr
2022-07-06 15:19:36 -04:00
Raul Garcia
97d9fd9846
Update security-validation-disabled.ql
2022-07-05 15:18:56 -07:00
Raul Garcia
dd1a9a22e3
Update UnsafeUsageOfClientSideEncryptionVersion.qhelp
2022-07-05 13:58:38 -07:00
Raul Garcia
f5c6b45014
Update UnsafeUsageOfClientSideEncryptionVersion.qhelp
2022-07-05 13:58:11 -07:00
Raul Garcia
56060e0610
Update csharp/ql/src/experimental/Security Features/CWE-327/Azure/UnsafeUsageOfClientSideEncryptionVersion.qhelp
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2022-07-05 13:57:28 -07:00
ihsinme
8967f57bbc
Update DangerousUseMbtowc.ql
2022-07-04 11:17:12 +03:00
ihsinme
4e28887689
Create test3.cpp
2022-07-04 11:13:07 +03:00
ihsinme
1ce42dcd30
Create test2.cpp
2022-07-04 11:12:34 +03:00
ihsinme
6d800de377
Create test1.cpp
2022-07-04 11:11:49 +03:00
ihsinme
f53adca108
Update DangerousUseMbtowc.ql
2022-07-04 11:10:02 +03:00
Mathias Vorreiter Pedersen
3bacb18315
Merge pull request #9770 from MathiasVP/nomagic-use-in-own-init
...
C++: Add `nomagic` to `VariableAccessInInitializer`
2022-07-02 16:35:45 +01:00
Chris Smowton
4d45a2ca87
Merge pull request #9775 from smowton/smowton/fix/accessors-respect-private-member-exclusion
...
Kotlin: don't extract private setters of external classes
2022-07-02 10:27:06 +01:00
Raul Garcia
fcb01ef28d
Merge branch 'github:main' into Token_validation
2022-07-01 17:37:05 -07:00
Raul Garcia
62c28571c6
making changes based on feedback during PR
2022-07-01 17:35:02 -07:00
Raul Garcia
e43e5810cf
New queries to detect unsafe client side encryption in Azure Storage
2022-07-01 17:08:35 -07:00
Mathias Vorreiter Pedersen
e98bdbf73f
Merge pull request #9773 from geoffw0/stringlengthconflation4
...
Swift: More improvements to swift/string-length-conflation
2022-07-01 17:46:04 +01:00
Geoffrey White
e38254c05e
Swift: Fix typo.
2022-07-01 17:00:36 +01:00
Shyam Mehta
39f885413f
Change log
2022-07-01 11:34:56 -04:00
Ian Lynagh
1730ec22d9
Kotlin: Extract an ErrorType if we fail to correctly extract a type
2022-07-01 16:33:43 +01:00
smehta23
391dd5b38d
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversalGood.java
...
Co-authored-by: Jonathan Leitschuh <jonathan.leitschuh@gmail.com >
2022-07-01 10:55:58 -04:00
smehta23
ebe48ec30a
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversal.qhelp
...
Co-authored-by: Jonathan Leitschuh <jonathan.leitschuh@gmail.com >
2022-07-01 10:53:43 -04:00
smehta23
48e16e52b5
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversal.qhelp
...
Co-authored-by: Jonathan Leitschuh <jonathan.leitschuh@gmail.com >
2022-07-01 10:52:41 -04:00
Shyam Mehta
1a41d4c379
Add CVE number
2022-07-01 10:51:33 -04:00
Chris Smowton
b499ba5aa8
Kotlin: don't extract private setters of external classes
...
Previously these would get extracted unlike other private methods even if the class was a standard library or other external class. This could cause inconsistencies because if we also compiled the class from source we could end up deciding different names for the property's setter: setXyz$private when seen from source, and setXyz without a
suffix when seen as an external .class file. Avoiding extracting these functions from the external perspective both restores consistency with other kinds of method and avoids these consistency problems.
2022-07-01 15:44:17 +01:00
Shyam Mehta
300a14c35c
Add ESAPI reference
2022-07-01 10:43:59 -04:00
Paolo Tranquilli
c393c9b03e
Revert "Fix change note check to accept changes to itself"
...
This reverts commit 2dca78295d .
2022-07-01 16:41:09 +02:00
smehta23
209a21655a
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversalGood.java
...
Co-authored-by: Jonathan Leitschuh <jonathan.leitschuh@gmail.com >
2022-07-01 10:40:38 -04:00
smehta23
c6f2f61bfb
Update java/ql/src/Security/CWE/CWE-023/PartialPathTraversalBad.java
...
Co-authored-by: Jonathan Leitschuh <jonathan.leitschuh@gmail.com >
2022-07-01 10:39:46 -04:00
Paolo Tranquilli
2dca78295d
Fix change note check to accept changes to itself
...
The file is not removed from the triggers, as we still want to check
that the workflow file itself is correct.
2022-07-01 16:35:30 +02:00
Paolo Tranquilli
e88cc31468
Swift: disable change note checking for now
2022-07-01 16:16:21 +02:00
Paolo Tranquilli
563d27333a
Merge pull request #9772 from github/redsun82/swift-extraction
...
Swift: extract ImportDecl and ModuleDecl
2022-07-01 16:14:23 +02:00
Geoffrey White
34ffd1aac5
Swift: Support String.Index and flow through * /.
2022-07-01 14:59:50 +01:00
Geoffrey White
d60d2457c2
Swift: Add String.Index.init as a source as as well.
2022-07-01 14:59:50 +01:00
Geoffrey White
bc03f6959c
Swift: Detect String -> NSString results.
2022-07-01 14:59:50 +01:00
Geoffrey White
a306f312cd
Swift: Add a test of converting Range to NSRange.
2022-07-01 14:59:50 +01:00
Geoffrey White
416977dc50
Swift: Add test cases for removeFirst, removeLast.
2022-07-01 14:59:50 +01:00
Paolo Tranquilli
8addc06799
Swift: add integration test for multiple modules
2022-07-01 15:59:36 +02:00
Paolo Tranquilli
227dad8bf5
Merge main into redsun82/swift-extraction
2022-07-01 15:56:23 +02:00
Paolo Tranquilli
7a1c3800e6
Merge pull request #9771 from github/redsun82/swift-integration-test-runner
...
Swift: locally run integration tests
2022-07-01 15:54:27 +02:00
Paolo Tranquilli
e575bab9d6
Revert unwanted committed files
2022-07-01 15:45:28 +02:00
Paolo Tranquilli
f9143f7855
Swift: fix extraction of empty files
2022-07-01 15:43:16 +02:00
Chris Smowton
4c6a9772af
Merge pull request #9768 from smowton/smowton/fix/internal-method-name-mangling
...
Kotlin: Mangle names of internal functions to match JVM symbols
2022-07-01 14:33:32 +01:00
Paolo Tranquilli
3a975174c3
Swift: extract ImportDecl and ModuleDecl
...
As `ASTMangler` crashes when called on `ModuleDecl`, we simply use
its name.
This might probably not work reliably in a scenario where multiple
modules are compiled with the same name (like `main`), but this is left
for future work. At the moment this cannot create DB inconsistencies.
2022-07-01 15:29:30 +02:00
Paolo Tranquilli
7a7440a115
Swift: move createEntry to SwiftDispatcher
2022-07-01 15:22:44 +02:00
Paolo Tranquilli
24da81fdb0
Swift: disable integration tests on macOS for now
...
Also, add swift workflow to code owned by the C team
2022-07-01 15:00:05 +02:00
Paolo Tranquilli
901e066355
Swift: locally run integration tests
...
Minimal recreations of internal `integration-tests-runner.py` and
`create_database_utils.py` are provided to be able to run the
integration tests on the codeql repository with a released codeql CLI.
For the moment we skip the database checks by default, as we are still
producing inconsistent results.
2022-07-01 15:00:05 +02:00
yoff
f52d792b36
Merge branch 'main' of https://github.com/github/codeql into python-dataflow/flow-summaries-from-scratch
2022-07-01 12:01:07 +00:00
CodeQL CI
5b5a52fa25
Merge pull request #9551 from yoff/python/port-tarslip
...
Approved by RasmusWL
2022-07-01 12:58:25 +01:00
yoff
61523bd330
python: better names
...
- "Normal" instead of "NonSpecial"
- "NonLibrary" instead of "2"
I could not find a good replacement for "NonLibrary", nor for "Source",
but I added QLDocs in a few places to help the reading.
2022-07-01 11:55:20 +00:00
yoff
a0db438799
python: rename getACall2 -> getANonLibraryCall
2022-07-01 10:29:03 +00:00
Erik Krogh Kristensen
7dd095c0d2
Merge pull request #9756 from erik-krogh/greyMatter
...
JS: add model for the gray-matter library to js/code-injection
2022-07-01 12:19:12 +02:00
Mathias Vorreiter Pedersen
e4636be8db
C++: Add 'nomagic' to the charpred of 'VariableAccessInInitializer'.
2022-07-01 11:07:18 +01:00
yoff
f6af24894d
python: recover isPackageUsed
...
- add `unknownAttribute` to pre-compute negation
- add `Node`-less formulation of "is imported"
2022-07-01 09:39:07 +00:00
Chris Smowton
14aef792e0
Accept test changes
2022-07-01 10:35:17 +01:00
Chris Smowton
df78b7e54b
Merge pull request #9755 from smowton/smowton/feature/implement-jvmstatic-annotation
...
Kotlin: support JvmStatic annotation
2022-07-01 10:14:08 +01:00
yoff
71583bf6be
python: fix import of AccessPathSyntax
2022-07-01 08:48:55 +00:00
yoff
3a80baf39c
python: concession to get the code to compile
...
`isPackageUsed` now does no filtering
2022-07-01 07:06:09 +00:00
yoff
e54ada175d
python: rewrite not away
...
A `LocalSourceNode` is either a `ModuleVariableNode`
or an `ExprNode`.
2022-07-01 07:03:14 +00:00
Paolo Tranquilli
8336c67edb
Merge pull request #9762 from github/alexdenisov/vfs-followup
...
Swift: cleanup
2022-07-01 09:00:54 +02:00
Chris Smowton
b9eec13466
Accept integration test changes
2022-06-30 22:21:04 +01:00
Chris Smowton
dd93062101
Kotlin: Mangle names of internal functions to match JVM symbols
2022-06-30 21:56:25 +01:00
Ian Lynagh
144c0d63b1
Merge pull request #9766 from igfoo/igfoo/extension
...
Kotlin: Fix a label
2022-06-30 21:16:26 +01:00
Erik Krogh Kristensen
ef0ec396c4
Merge pull request #9754 from erik-krogh/chownr
...
JS: add model for chownr
2022-06-30 22:02:45 +02:00
Jeroen Ketema
08b1c5495a
Merge pull request #9767 from igfoo/igfoo/typo
...
C++: Typo: intrepret
2022-06-30 20:00:03 +02:00
Ian Lynagh
57e026d617
C++: Typo: intrepret
2022-06-30 18:22:17 +01:00
Henry Mercer
9b424ac8b2
Docs: Update guidance to install the _latest_ version of the bundle
2022-06-30 17:38:18 +01:00
Henry Mercer
92a9738bd5
Docs: Fix precedence of registries list
2022-06-30 17:32:00 +01:00
Henry Mercer
3bb51c2643
Fix rst header
2022-06-30 17:07:42 +01:00
Ian Lynagh
b373af47d1
Kotlin: Fix a label
...
We want the .javaResult.id of a TypeResults.
2022-06-30 16:59:18 +01:00
Chris Smowton
570e418b22
Fix ordering PrintAst nodes
2022-06-30 16:07:32 +01:00
Chris Smowton
ec95cbace4
PrintAst: Tie-break multiple class members created at the same source location
...
Otherwise Kotlin introducing a getter, setter and field declaration based on the same property tied in the sort order, and so could be output in different orders on different machines.
2022-06-30 15:29:56 +01:00
Chris Smowton
0d0d240fd4
Accept test changes re: new compiler-generated nodes
2022-06-30 15:29:20 +01:00
Ian Lynagh
83fd9c3b3e
Merge pull request #9763 from igfoo/igfoo/foreach
...
Kotlin: Replace a map call with forEach
2022-06-30 15:02:57 +01:00
Mathias Vorreiter Pedersen
6b5785bffa
Merge pull request #9765 from geoffw0/stringlengthconflation3
...
Swift: Improvements to the string length conflation query
2022-06-30 14:49:12 +01:00
Erik Krogh Kristensen
eaec1ac561
add change-note
2022-06-30 15:11:49 +02:00
yoff
cf9b69b5f2
python: More helpful comment
2022-06-30 13:07:13 +00:00
yoff
b0a29b146a
Update python/ql/lib/semmle/python/security/dataflow/TarSlipQuery.qll
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-06-30 14:54:01 +02:00
yoff
df7ffb2880
Update python/ql/lib/semmle/python/security/dataflow/TarSlipCustomizations.qll
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-06-30 14:53:49 +02:00
Ian Lynagh
0e56e50d18
Kotlin: Replace a map call with forEach
2022-06-30 13:50:22 +01:00
Chris Smowton
8214c3b78e
Add AST dump for JvmStatic annotation test
2022-06-30 13:11:43 +01:00
Chris Smowton
98761041f1
Prevent labelling proxies of default getters and setters as themselves default getters and setters
2022-06-30 13:11:00 +01:00
Chris Smowton
bf581b971c
Rename willExtract properties to shouldExtract
2022-06-30 12:51:09 +01:00
Chris Smowton
5a47e1dd95
Annotate generated static proxy methods as compiler-generated
2022-06-30 12:48:11 +01:00
Chris Smowton
466cf7573b
Autoformat
2022-06-30 12:42:39 +01:00
Chris Smowton
b4124ac553
Add test
2022-06-30 12:42:39 +01:00
Chris Smowton
bfdb21d551
Kotlin: support JvmStatic annotation
...
This makes non-companion object methods into static methods, and for companion objects introduces static proxy methods that call the companion instance method.
Note this doesn't quite implement what kotlinc does, since it will also eliminate getters and setters by promoting an object field into a static field, but our translation is simpler and only differs in private members' details.
2022-06-30 12:42:38 +01:00
Chris Smowton
28c05e7a56
Merge pull request #9704 from smowton/smowton/fix/generic-inner-class
...
Kotlin: note that raw inner classes nest within a raw outer
2022-06-30 12:10:36 +01:00
Geoffrey White
68c76006bd
Swift: Allow trivial taint-like flow.
2022-06-30 11:52:57 +01:00
Geoffrey White
0251fb2d35
Swift: Add result annotations to test.
2022-06-30 11:52:44 +01:00
Geoffrey White
2bd25fc589
Swift: Add QLDoc.
2022-06-30 11:52:17 +01:00
Mathias Vorreiter Pedersen
51e3ff9d09
Merge pull request #9736 from github/redsun82/swift-fix-warnings
...
Swift: fix QL warnings about overriding methods
2022-06-30 11:44:44 +01:00
Alex Denisov
5a04d62969
Swift: cleanup extraction
2022-06-30 12:32:03 +02:00
Alex Denisov
133a6caaa3
Swift: cleanup output rewriting code
2022-06-30 12:03:53 +02:00
AlexDenisov
4367044a8b
Merge pull request #9702 from github/alexdenisov/swift-multiple-modules
...
Swift: emit intermediate build artifacts for own consumption later
2022-06-30 11:24:48 +02:00
Chris Smowton
ab52a020fa
Add test
2022-06-30 10:22:56 +01:00
Chris Smowton
8e5bbea9f9
Use map...firstOrNull not firstNotNullOfOrNull
...
The latter was introduced in Kotlin 1.5, so we can't use it in all supported versions.
2022-06-30 10:15:44 +01:00
Chris Smowton
2d98eb591e
Kotlin: note that raw inner classes nest within a raw outer.
...
Previously the Java extractor did this but the Kotlin extractor nested them within an unbound outer type.
2022-06-30 10:15:44 +01:00
AlexDenisov
d42b752c6d
Apply suggestions from code review
...
Co-authored-by: Paolo Tranquilli <redsun82@github.com >
2022-06-30 11:10:43 +02:00
Nick Rolfe
02dd933e5f
Ruby: move Pathname from core to stdlib
2022-06-30 10:08:25 +01:00
AlexDenisov
b5c1ec8958
Update swift/extractor/SwiftOutputRewrite.cpp
...
Co-authored-by: Paolo Tranquilli <redsun82@github.com >
2022-06-30 11:08:23 +02:00
AlexDenisov
6b0e734c47
Update swift/extractor/SwiftOutputRewrite.cpp
...
Co-authored-by: Paolo Tranquilli <redsun82@github.com >
2022-06-30 11:06:03 +02:00
AlexDenisov
b9f4a09f19
Merge branch 'main' into alexdenisov/swift-multiple-modules
2022-06-30 10:13:34 +02:00
AlexDenisov
de9e8855a8
Merge pull request #9759 from github/alexdenisov/fix-test-file
...
Swift: fix test case
2022-06-30 09:33:19 +02:00
Tony Torralba
48d85407ad
Merge pull request #9757 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-06-30 09:21:04 +02:00
Erik Krogh Kristensen
11be15aab1
inline field into the charpred
2022-06-30 09:00:10 +02:00
Erik Krogh Kristensen
f71a64b99d
recognize when the js engine in gray-matter is set to something safe
2022-06-30 09:00:10 +02:00
Erik Krogh Kristensen
22d285f777
add model for the gray-matter libary to js/code-injection
2022-06-30 09:00:10 +02:00
Alex Denisov
1dd3141e2d
Swift: address more code review comments
2022-06-30 08:57:22 +02:00
Alex Denisov
35da75f685
Swift: rename method
2022-06-30 08:48:36 +02:00
AlexDenisov
522d48aa33
Apply suggestions from code review
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-06-30 08:47:17 +02:00
Alex Denisov
5d5f3f82b1
Swift: fix test case
2022-06-30 07:41:28 +02:00
AlexDenisov
7ee11056d7
Merge pull request #9750 from github/alexdenisov/extract-imported-modules
...
Swift: also extract imported modules
2022-06-30 07:15:51 +02:00
github-actions[bot]
e9d3f658a3
Add changed framework coverage reports
2022-06-30 00:18:31 +00:00
Shyam Mehta
16814071df
Fix typo in .qhelp
2022-06-29 18:03:57 -04:00
Shyam Mehta
7ab8f0262c
Fix duplicate class header and better fix using toPath()
2022-06-29 18:01:12 -04:00
Shyam Mehta
955e614563
Add documentation of the Partial Path Traversal vuln
2022-06-29 17:31:04 -04:00
Erik Krogh Kristensen
7cef4322e7
add model for chownr
2022-06-29 22:09:23 +02:00
Andrew Eisenberg
fbeecd6c08
Merge pull request #9744 from github/aeisenberg/move-contextual-queries
2022-06-29 11:44:33 -07:00
Andrew Eisenberg
06c68661ed
Merge pull request #9753 from github/aeisenberg/pack-pull-quote
...
Recommend installing the latest version of the CLI to use packaging
2022-06-29 10:46:24 -07:00
Erik Krogh Kristensen
399fd85fd8
Merge pull request #9748 from erik-krogh/navigation
...
JS: add navigation.navigate as an XSS / URL sink
2022-06-29 19:34:59 +02:00
Andrew Eisenberg
3c8f415f69
Recommend installing the latest version of the CLI to use packaging
2022-06-29 10:33:27 -07:00
Andrew Eisenberg
7864a7580e
Fix import statements
2022-06-29 10:22:45 -07:00
Andrew Eisenberg
41244180b3
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-06-29 10:18:13 -07:00
Andrew Eisenberg
ddf06f8617
Add change notes and qldoc for moved files
2022-06-29 10:03:12 -07:00
Henry Mercer
4dcec2b98c
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
Co-authored-by: Andrew Eisenberg <aeisenberg@github.com >
2022-06-29 17:49:59 +01:00
Alex Denisov
5233a5e17b
Swift: also extract imported modules
2022-06-29 17:27:57 +02:00
Andrew Eisenberg
a3f4d1bf66
Move contextual queries from src to lib
...
With this change, users are now able to run View AST command in
vscode within vscode workspaces that do not include the core libraries.
The relevant core library only needs to be installed in the package
cache.
2022-06-29 07:51:26 -07:00
Alex Ford
578a967160
Merge pull request #9641 from boveus/patch-1
...
Make ActiveRecordInstanceMethodCall Public
2022-06-29 14:39:36 +01:00
Paolo Tranquilli
d00fec34c3
Merge pull request #9336 from MathiasVP/swift-decls-in-cfg
...
Swift: CFG for local declarations
2022-06-29 15:10:45 +02:00
Erik Krogh Kristensen
0e4954a68c
add navigation.navigate as an XSS / URL sink
2022-06-29 14:56:20 +02:00
Brandon Stewart
5888325549
Merge branch 'main' into patch-1
2022-06-29 08:42:24 -04:00
Mathias Vorreiter Pedersen
e03646aba4
Merge pull request #9737 from geoffw0/arithmetic
...
Swift: Add ArithmeticOperation.qll library
2022-06-29 13:40:20 +01:00
Nick Rolfe
5db2f9a768
Merge remote-tracking branch 'origin/main' into nickrolfe/pathname
2022-06-29 13:16:49 +01:00
Nick Rolfe
c1302a90e0
Ruby: use MaD for more precise Pathname flow summaries
2022-06-29 13:16:18 +01:00
yoff
8988a02806
Merge pull request #9733 from tausbn/python-fix-bad-mro-flatten-list-join
...
Python: Fix bad join in MRO `flatten_list`
2022-06-29 13:29:48 +02:00
yoff
f122af81ea
Merge pull request #9741 from tausbn/python-fix-bad-join-in-regexpbackref-getgroup
...
Python: Fix bad join in `RegExpBackRef::getGroup`
2022-06-29 13:23:07 +02:00
Mathias Vorreiter Pedersen
f35ab7c292
Swift: Accept test changes to the cfg. These happen due to the fixes in 9e0cf62cda.
2022-06-29 12:20:07 +01:00
Erik Krogh Kristensen
9ecc3a2671
filter out potential misparses from java/suspicious-regexp-range
2022-06-29 13:16:40 +02:00
Erik Krogh Kristensen
2e295e4a04
filter out potential misparses from rb/suspicious-regexp-range
2022-06-29 13:16:28 +02:00
yoff
731f866242
Merge pull request #9717 from tausbn/python-fix-bad-mro-linearization-of-bases-join
...
Python: Fix bad join in MRO
2022-06-29 13:08:18 +02:00
Mathias Vorreiter Pedersen
15dc08351e
Merge pull request #9747 from MathiasVP/fix-joins-in-swift-cwe-135
...
Swift: Don't join on index in `swift/string-length-conflation`
2022-06-29 11:58:36 +01:00
Geoffrey White
8b7535af81
Swift: Don't use abstract classes.
2022-06-29 11:49:22 +01:00
Geoffrey White
2cf65c7d35
Swift: Autoformat tests.
2022-06-29 11:49:21 +01:00
Geoffrey White
822002d37d
Swift: Missing qldoc.
2022-06-29 11:49:20 +01:00
Mathias Vorreiter Pedersen
cc25e2644f
Swift: Don't join on index in 'swift/string-length-conflation'.
2022-06-29 11:40:46 +01:00
Ian Lynagh
d285e19e77
Merge pull request #9731 from igfoo/igfoo/private
...
Kotlin: Make more methods private
2022-06-29 11:24:33 +01:00
Mathias Vorreiter Pedersen
4356155eeb
Merge branch 'main' into swift-decls-in-cfg
2022-06-29 10:03:34 +01:00
Alex Denisov
4d81206a87
Swift: teach extractor to emit build artifacts for later consumption
2022-06-29 10:58:24 +02:00
AlexDenisov
1997d6b18c
Merge pull request #9745 from github/alexdenisov/put-traps-into-a-temp-folder
...
Swift: store TRAP files in a temporary folder until the extraction is complete
2022-06-29 10:55:27 +02:00
Jeroen Ketema
55e052af26
Merge pull request #9686 from aschackmull/dataflow/no-node-scan
...
Dataflow performance: Avoid node scans
2022-06-29 10:38:56 +02:00
AlexDenisov
e1ef637c54
Update swift/extractor/SwiftExtractorConfiguration.h
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-06-29 10:16:14 +02:00
AlexDenisov
968ede3d4a
Merge pull request #9746 from github/alexdenisov/add-test-case-showing-modules-loading-issue
...
Swift: add a test case showing module loading problem
2022-06-29 10:07:56 +02:00
Paolo Tranquilli
296b8cb630
Merge pull request #9719 from github/redsun82/swift-enum-is-case
...
Swift: add EnumIsCase test
2022-06-29 09:55:20 +02:00
Tony Torralba
12fa6967dc
Merge pull request #8669 from joefarebrother/intent-verification
...
Java: Add query for Improper Verification of Intent by Broadcast Receiver (CWE-925)
2022-06-29 09:43:07 +02:00
Jeroen Ketema
8b13d1fab8
Merge pull request #9726 from github/rdmarsh2/stack-address-join-order
...
C++: fix join order in UsingExpiredStackAddress
2022-06-29 09:35:47 +02:00
Tony Torralba
741b2a923a
Merge pull request #9207 from joefarebrother/android-external-storage
...
Java: Add sources for Android external storage
2022-06-29 09:34:51 +02:00
Alex Denisov
57811a4efc
Swift: add a test case showing module loading problem
...
Extractor fails to load separate modules that were built by another
version of an actual compiler.
2022-06-29 07:38:18 +02:00
Alex Denisov
488befb577
Swift: store TRAP files in a temporary folder until the extraction is complete
...
Currently, we have a number of assertions in the codebase and certain
assumptions about the AST. These don't always hold, sometimes leading to
a crash in the extractor.
The crashes leave incomplete TRAP files that cannot be imported into the
database.
With this change, we still get those incomplete TRAP files, but we also
get a database in the end (even thoough it is also incomplete as we
cannot import everything).
2022-06-29 07:17:06 +02:00
AlexDenisov
6c68872163
Merge pull request #9743 from MathiasVP/fix-path-problem
...
Swift: Fix `kind` in `swift/string-length-conflation`
2022-06-29 06:58:36 +02:00
Mathias Vorreiter Pedersen
c2e57c3c9b
Swift: Fix 'kind' in 'swift/string-length-conflation'.
2022-06-28 22:33:28 +01:00
Shyam Mehta
b5ca2c3d9d
Add additional tests from real world query run
2022-06-28 17:32:20 -04:00
Brandon Stewart
13fae22756
Merge branch 'main' into patch-1
2022-06-28 17:27:07 -04:00
yoff
1105cd569b
Merge branch 'main' into python/port-tarslip
2022-06-28 22:17:28 +02:00
yoff
6087bc6888
Merge branch 'main' into python/more-logic-tests
2022-06-28 22:16:38 +02:00
yoff
ac0c8d238f
python: only clear taint on false-edge
2022-06-28 20:14:52 +00:00
Shyam Mehta
7122f29296
Finish Partial Path Traversal Query
2022-06-28 15:02:06 -04:00
Shyam Mehta
4c7d476280
[JAVA] Partial Path Traversal Vuln Query
2022-06-28 13:52:41 -04:00
Taus
38b8640582
Python: Fix bad join in RegExpBackRef::getGroup
...
Although this wasn't (as far as I know) causing any performance issues,
it was making the join-order badness report quite noisy, and so I
figured it was worth fixing.
Before:
```
Tuple counts for RegexTreeView::RegExpBackRef::getGroup#dispred#f0820431#ff/2@d3441d0b after 84ms:
1501195 ~3% {2} r1 = JOIN RegexTreeView::RegExpTerm::getLiteral#dispred#f0820431#ff_10#join_rhs WITH RegexTreeView::RegExpTerm::getLiteral#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.1 'result'
149 ~0% {5} r2 = JOIN r1 WITH RegexTreeView::RegExpBackRef#class#31aac2a7#ffff ON FIRST 1 OUTPUT Rhs.1, Rhs.2, Rhs.3, Lhs.1 'result', Lhs.0 'this'
149 ~1% {3} r3 = JOIN r2 WITH regex::RegexString::numbered_backreference#dispred#f0820431#ffff ON FIRST 3 OUTPUT Lhs.3 'result', Rhs.3, Lhs.4 'this'
4 ~0% {2} r4 = JOIN r3 WITH RegexTreeView::RegExpGroup::getNumber#dispred#f0820431#ff ON FIRST 2 OUTPUT Lhs.2 'this', Lhs.0 'result'
1501195 ~3% {2} r5 = JOIN RegexTreeView::RegExpTerm::getLiteral#dispred#f0820431#ff_10#join_rhs WITH RegexTreeView::RegExpTerm::getLiteral#dispred#f0820431#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1 'result', Rhs.1 'result'
42526 ~0% {5} r6 = JOIN r5 WITH RegexTreeView::RegExpGroup#31aac2a7#ffff ON FIRST 1 OUTPUT Lhs.1 'this', Lhs.0 'result', Rhs.1, Rhs.2, Rhs.3
22 ~0% {8} r7 = JOIN r6 WITH RegexTreeView::RegExpBackRef#class#31aac2a7#ffff ON FIRST 1 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.1 'result', Lhs.0 'this', Rhs.1, Rhs.2, Rhs.3
0 ~0% {6} r8 = JOIN r7 WITH regex::RegexString::getGroupName#dispred#f0820431#ffff ON FIRST 3 OUTPUT Lhs.5, Lhs.6, Lhs.7, Rhs.3, Lhs.3 'result', Lhs.4 'this'
0 ~0% {2} r9 = JOIN r8 WITH regex::RegexString::named_backreference#dispred#f0820431#ffff ON FIRST 4 OUTPUT Lhs.5 'this', Lhs.4 'result'
4 ~0% {2} r10 = r4 UNION r9
return r10
```
In this case I opted for a classical solution: tying together the
literal and number (or name) part of the backreference in order to
encourage a two-column join.
After:
```
Tuple counts for RegexTreeView::RegExpBackRef::getGroup#dispred#f0820431#ff/2@b0cc4d5n after 0ms:
898 ~1% {3} r1 = JOIN RegexTreeView::RegExpTerm::getLiteral#dispred#f0820431#ff WITH RegexTreeView::RegExpGroup::getNumber#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0 'result'
4 ~0% {2} r2 = JOIN r1 WITH RegexTreeView::RegExpBackRef::hasLiteralAndNumber#f0820431#fff_120#join_rhs ON FIRST 2 OUTPUT Rhs.2 'this', Lhs.2 'result'
1110 ~0% {5} r3 = JOIN RegexTreeView::RegExpGroup#31aac2a7#ffff WITH RegexTreeView::RegExpTerm::getLiteral#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.0 'result', Rhs.1
146 ~0% {3} r4 = JOIN r3 WITH regex::RegexString::getGroupName#dispred#f0820431#ffff ON FIRST 3 OUTPUT Lhs.4, Rhs.3, Lhs.3 'result'
0 ~0% {2} r5 = JOIN r4 WITH RegexTreeView::RegExpBackRef::hasLiteralAndName#f0820431#fff_120#join_rhs ON FIRST 2 OUTPUT Rhs.2 'this', Lhs.2 'result'
4 ~0% {2} r6 = r2 UNION r5
return r6
```
2022-06-28 16:51:09 +00:00
Andrew Eisenberg
0f8ffb12e6
Update docs/codeql/codeql-cli/analyzing-databases-with-the-codeql-cli.rst
2022-06-28 09:45:54 -07:00
Mathias Vorreiter Pedersen
f97cc9e37c
Merge pull request #9739 from MathiasVP/swift-conflation-query-high-precision
...
Swift: Set 'swift/string-length-conflation' to precision `high`
2022-06-28 17:26:23 +01:00
Mathias Vorreiter Pedersen
1a7f5db8e2
Swift: Set 'swift/string-length-conflation' to precision high and delete the placeholder query.
2022-06-28 17:01:06 +01:00
Mathias Vorreiter Pedersen
f2ae73b6be
Merge pull request #9738 from geoffw0/misc
...
Swift: Add a Locatable.getFile() shortcut similar to the one in CPP.
2022-06-28 16:44:02 +01:00
Erik Krogh Kristensen
b81251865f
Merge pull request #9716 from erik-krogh/htmlTypeSan
...
JS: sanitize non-strings from html-constructed-from-input
2022-06-28 17:31:00 +02:00
Mathias Vorreiter Pedersen
677f6dafcd
Merge pull request #9732 from github/redsun82/swift-dot-syntax-call-expr
...
Swift: add DotSyntaxCallExpr tests
2022-06-28 16:09:10 +01:00
Geoffrey White
ff06e3cb6b
Swift: Add a Locatable.getFile() shortcut similar to the one in CPP.
2022-06-28 15:49:49 +01:00
Geoffrey White
8a8a7ead9b
Swift: Add tests for ArithmeticOperation.qll.
2022-06-28 15:34:23 +01:00
Geoffrey White
a5fff9af5d
Swift: Create ArithmeticOperation.qll.
2022-06-28 15:34:15 +01:00
Geoffrey White
9e0cf62cda
Swift: Fix + simplify LogicalOperation.qll.
2022-06-28 15:33:03 +01:00
Paolo Tranquilli
363f7a88a9
Swift: fix QL warnings about overriding methods
...
The `getName` in `Type.qll` was issuing a warning in other generated
classes having a `getName` from a `name` property in `schema.yml`.
To fix the possible inconsistency, `diagnostic_name` is being renamed to
`name` in the schema. Despite the scary doc comment on
`swift::Type::getString` (namely `for use in diagnostics only`), that
seems to be the right generic naming mechanism for types, and it
coincides with the name we were extracting on types with an explicit
`name` property.
In case we find a case where `Type::getString` gives something wrong,
we can probably just patch it on that specific type class.
2022-06-28 16:30:25 +02:00
Taus
b98c482c47
Python: Fix bad join in MRO flatten_list
...
This bad join was identified by the join-order-badness report, which
showed that:
py/use-of-input:MRO::flatten_list#f4eaf05f#fff#9c5fe54whnlqffdgu65vhb8uhpg# (order_500000)
calculated a whopping 212,820,108 tuples in order to produce an output of
size 55516, roughly 3833 times more effort than needed.
Here's a snippet of the slowest iteration of that predicate:
```
Tuple counts for MRO::flatten_list#f4eaf05f#fff/3@i1839#0265eb3w after 14ms:
0 ~0% {3} r1 = JOIN MRO::need_flattening#f4eaf05f#f#prev_delta WITH MRO::ConsList#f4eaf05f#fff#reorder_2_0_1#prev ON FIRST 1 OUTPUT Rhs.1, Lhs.0 'list', Rhs.2
0 ~0% {3} r2 = JOIN r1 WITH MRO::ClassList::length#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.2, Lhs.1 'list', Rhs.1 'n'
0 ~0% {3} r3 = JOIN r2 WITH MRO::ClassListList::flatten#dispred#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.1 'list', Lhs.2 'n', Rhs.1 'result'
0 ~0% {3} r4 = SCAN MRO::ConsList#f4eaf05f#fff#prev_delta OUTPUT In.2 'list', In.0, In.1
0 ~0% {3} r5 = JOIN r4 WITH MRO::need_flattening#f4eaf05f#f#prev ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.0 'list'
0 ~0% {3} r6 = JOIN r5 WITH MRO::ClassList::length#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.1, Lhs.2 'list', Rhs.1 'n'
0 ~0% {3} r7 = JOIN r6 WITH MRO::ClassListList::flatten#dispred#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.1 'list', Lhs.2 'n', Rhs.1 'result'
0 ~0% {3} r8 = r3 UNION r7
26355 ~2% {3} r9 = SCAN MRO::ConsList#f4eaf05f#fff#prev OUTPUT In.2 'list', In.0, In.1
0 ~0% {3} r10 = JOIN r9 WITH MRO::need_flattening#f4eaf05f#f#prev ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.0 'list'
0 ~0% {3} r11 = JOIN r10 WITH MRO::ClassList::length#f0820431#ff#prev_delta ON FIRST 1 OUTPUT Lhs.1, Lhs.2 'list', Rhs.1 'n'
0 ~0% {3} r12 = JOIN r11 WITH MRO::ClassListList::flatten#dispred#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.1 'list', Lhs.2 'n', Rhs.1 'result'
...
```
(... and a bunch more lines. The same construction appears several times,
but the join order is the same each time.)
Clearly it would be better to start with whatever is in `need_flattening`,
and then do the other joins. This is what the present fix does (by
unbinding `list` in all but the `needs_flattening` call).
After the fix, the slowest iteration is as follows:
```
Tuple counts for MRO::flatten_list#f4eaf05f#fff/3@i2617#8155ab3w after 9ms:
0 ~0% {2} r1 = SCAN MRO::need_flattening#f4eaf05f#f#prev_delta OUTPUT In.0 'list', In.0 'list'
0 ~0% {3} r2 = JOIN r1 WITH MRO::ConsList#f4eaf05f#fff#reorder_2_0_1#prev ON FIRST 1 OUTPUT Rhs.1, Lhs.1 'list', Rhs.2
0 ~0% {3} r3 = JOIN r2 WITH MRO::ClassList::length#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.2, Lhs.1 'list', Rhs.1 'n'
0 ~0% {3} r4 = JOIN r3 WITH MRO::ClassListList::flatten#dispred#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.1 'list', Lhs.2 'n', Rhs.1 'result'
1 ~0% {2} r5 = SCAN MRO::need_flattening#f4eaf05f#f#prev OUTPUT In.0 'list', In.0 'list'
0 ~0% {3} r6 = JOIN r5 WITH MRO::ConsList#f4eaf05f#fff#reorder_2_0_1#prev_delta ON FIRST 1 OUTPUT Rhs.1, Lhs.1 'list', Rhs.2
0 ~0% {3} r7 = JOIN r6 WITH MRO::ClassList::length#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.2, Lhs.1 'list', Rhs.1 'n'
0 ~0% {3} r8 = JOIN r7 WITH MRO::ClassListList::flatten#dispred#f0820431#ff#prev ON FIRST 1 OUTPUT Lhs.1 'list', Lhs.2 'n', Rhs.1 'result'
...
```
(... and so on. The remainder is 0 tuples all the way.)
In total, we went from
```
40.6s | 7614 | 15ms @ 1839 | MRO::flatten_list#f4eaf05f#fff@0265eb3w
```
to
```
7.8s | 7614 | 11ms @ 2617 | MRO::flatten_list#f4eaf05f#fff@8155ab3w
```
2022-06-28 14:17:47 +00:00
Paolo Tranquilli
5c6ac2a5f2
Swift: accept test results
2022-06-28 16:15:05 +02:00
Geoffrey White
63376da90f
Swift: Add tests for LogicalOperaion.qll.
2022-06-28 15:04:47 +01:00
Paolo Tranquilli
6ff45d3dbe
Merge main into redsun82/swift-enum-is-case
2022-06-28 16:03:38 +02:00
Brandon Stewart
c7b4133fbe
Merge branch 'main' into patch-1
2022-06-28 09:46:46 -04:00
Paolo Tranquilli
364085a596
Swift: add DotSyntaxCallExpr tests
2022-06-28 15:44:42 +02:00
AlexDenisov
c4c3a52804
Merge pull request #9730 from github/redsun82/swift-trap-newlines
...
Swift: add missing newlines in trap
2022-06-28 15:41:05 +02:00
Ian Lynagh
3026456a39
Kotlin: Make more methods private
2022-06-28 14:38:13 +01:00
Jeroen Ketema
a7956ad422
C++: Add change note
2022-06-28 15:32:43 +02:00
Jeroen Ketema
82c9b8b494
C++: Ensure only one Variable exists for every global variable
...
Depending on the extraction order, before this change there might be multiple
`GlobalVariable`s per declared global variable. See the tests in
`cpp/ql/test/library-tests/variables/global`. This change ensures that only one
of those `GlobalVariable`s is visible to the user if we can locate a unique
definition. If not, the old situation persists.
Note that an exception needs to be made for templated variables. Here, the
definition refers to the non-instantiated template, while a declaration that
is not a definition refers to an instantiation. In case the instantiation refers
to a template parameter, the mangled names of the template and the instantiation
will be identical. This happens for example in the following case:
```
template <typename T>
T x = T(42); // Uninstantiated templated variable
template <typename T>
class C {
T y = x<T>; // Instantiation using a template parameter
};
```
Since the uninstantiated template and the instantiation are two different
entities, we do not unify them as described above.
2022-06-28 15:32:43 +02:00
Paolo Tranquilli
7175869518
Swift: add missing newlines in trap
...
This is mostly cosmetic and for debugging, as the trap importer is
perfectly happy with trap entries on the same line without spaces
between them.
2022-06-28 15:17:18 +02:00
Henry Mercer
a7bd2030b6
Address review comments
2022-06-28 13:52:26 +01:00
Brandon Stewart
33d1aae92a
Update ruby/ql/lib/codeql/ruby/frameworks/ActiveRecord.qll
...
Co-authored-by: Harry Maclean <hmac@github.com >
2022-06-28 08:51:01 -04:00
Brandon Stewart
1dc26a0ca3
Update ruby/ql/lib/codeql/ruby/frameworks/ActiveRecord.qll
...
Co-authored-by: Harry Maclean <hmac@github.com >
2022-06-28 08:50:54 -04:00
Asger F
a522562f93
Merge pull request #9369 from asgerf/python/api-graph-api
...
Python: API graph renaming and documentation
2022-06-28 14:48:12 +02:00
Arthur Baars
6e836c7eb8
Merge pull request #9706 from aibaars/update-tree-sitter-ruby-2
...
Ruby: update tree-sitter-ruby
2022-06-28 14:14:15 +02:00
Erik Krogh Kristensen
112caa3f5d
rewrite qldoc based on review
2022-06-28 13:23:44 +02:00
yoff
834d2603a2
python: update use of barrier guard
2022-06-28 11:15:37 +00:00
Paolo Tranquilli
7f8bff571d
Merge pull request #9729 from github/redsun82/swift-extraction
...
Swift: extract `ProtocolCompositionType` and all `BuiltinType`s
2022-06-28 12:30:47 +02:00
Paolo Tranquilli
131524d867
Swift: accept test changes
...
These are due to the changes on `toBeTested` that include canonical
types.
2022-06-28 12:16:08 +02:00
Asger F
b3b53360ae
Python: change category to deprecated because library is apparently supported anymore
2022-06-28 12:14:28 +02:00
Asger F
5dfc3c6537
Python: rename change note again
2022-06-28 12:10:26 +02:00
Paolo Tranquilli
68a341d72c
Swift: use createEntry in the whole type visitor
2022-06-28 12:06:19 +02:00
Paolo Tranquilli
57981384df
Swift: extract ProtocolComposition- and BuiltinType
2022-06-28 12:01:36 +02:00
Paolo Tranquilli
b41cbaec33
Swift: add possibility to add flags in tests
2022-06-28 12:01:36 +02:00
Paolo Tranquilli
f2b589743a
Swift: add possibility to collapse class hierarchy in tests
2022-06-28 12:01:36 +02:00
Asger F
d9f57e6d23
Python: rename change note file
2022-06-28 11:41:07 +02:00
Asger F
6d25fb6988
Python: add change note
2022-06-28 11:28:30 +02:00
Ian Lynagh
780f5abc67
Merge pull request #9724 from igfoo/igfoo/private
...
Kotlin: Make more methods private
2022-06-28 10:21:55 +01:00
Ian Lynagh
b6790ef735
Merge pull request #9725 from igfoo/igfoo/inline
...
Kotlin: Extract inlineability of functions
2022-06-28 10:21:30 +01:00
Asger F
c33690381e
JS: Add explicit 'this'
2022-06-28 10:21:44 +02:00
Asger F
c1a2e2abe0
JS: Rename to isLikelyCaseSensitiveRegExp
2022-06-28 10:21:33 +02:00
Tony Torralba
e0b4c63a53
Add new source kind to CsvValidation
2022-06-28 10:16:40 +02:00
Joe Farebrother
49b419c52e
Update models to include manual tag
2022-06-28 10:10:28 +02:00
Joe Farebrother
55e78e3e25
Minor doc fixes + making directFileRead private
2022-06-28 10:10:28 +02:00
Joe Farebrother
a41f28ebe5
Use more file openning methods
2022-06-28 10:10:28 +02:00
Joe Farebrother
58fba20689
Add change note
2022-06-28 10:10:28 +02:00
Joe Farebrother
cb717a22bf
Fix failing test cases
2022-06-28 10:10:27 +02:00
Joe Farebrother
810854d6b5
Add tests
2022-06-28 10:10:27 +02:00
Joe Farebrother
0e04f2b2e8
Add external storage souces
2022-06-28 10:10:27 +02:00
Asger F
fd28397056
JS: Fix typo
2022-06-28 10:10:23 +02:00
Asger F
9cf48fc804
JS: Clarify that strings are case insensitive by default
2022-06-28 10:09:56 +02:00
Asger F
b1251f0c63
JS: invertCase -> toOtherCase
2022-06-28 10:07:57 +02:00
Erik Krogh Kristensen
a343ceaf8b
add suspicious-regexp-range query
2022-06-28 09:49:27 +02:00
Asger F
4c73ab2679
Apply suggestions from code review
...
Co-authored-by: Taus <tausbn@github.com >
2022-06-28 09:48:53 +02:00
Asger F
a033338d20
Python: Explicitly mention lack of transitive flow in asSource/asSink
2022-06-28 09:46:26 +02:00
Asger F
9b27a7cbcd
Python: Dont claim that external libraries are excluded from the database
2022-06-28 09:28:26 +02:00
Asger F
0346b6b67a
Merge pull request #9698 from github/post-release-prep/codeql-cli-2.10.0
...
Post-release preparation for codeql-cli-2.10.0
2022-06-28 09:05:13 +02:00
yoff
67b6f215dc
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-06-28 08:05:53 +02:00
yoff
1788507571
python: add qldoc
2022-06-27 21:00:12 +00:00
Rasmus Lerchedahl Petersen
a1fe8a5b2b
python: handle not in BarrierGuard
...
in the program
```python
if not is_safe(path):
return
```
the last node in the `ConditionBlock` is `not is_safe(path)`,
so it would never match "a call to is_safe".
Thus, guards inside `not` would not be part of `GuardNode`
(nor `BarrierGuard`). Now they can.
2022-06-27 20:10:47 +00:00
Rasmus Lerchedahl Petersen
882000afb3
python: not is confusing our logic
...
- added `is_unsafe`
- added "negated version" of two tests.
These versions do not use `not` and the analysis gets the taint right.
2022-06-27 20:10:47 +00:00
Brandon Stewart
4fb0264ec8
Merge branch 'main' into patch-1
2022-06-27 16:07:15 -04:00
Taus
dc0f50d49a
Python: Clean up variable names
...
Makes it more consistent with the names used in
`legalMergeCandidateNonEmpty`.
2022-06-27 19:54:09 +00:00
Taus
8fc9ce9699
Python: Fix bad join in MRO
...
Fixes a bad join in `list_of_linearization_of_bases_plus_bases`.
Previvously, we joined together `ConsList` and `getBase` before filtering
these out using the recursive call. Now we do the recursion first.
Co-authored-by: yoff <yoff@github.com >
2022-06-27 19:54:09 +00:00
Robert Marsh
829fdd1ff6
C++: fix join order in UsingExpiredStackAddress
2022-06-27 15:28:14 -04:00
Andrew Eisenberg
43bb439b82
Add version info for running subset of queries
2022-06-27 12:03:23 -07:00
Ian Lynagh
3543864e0b
Merge pull request #9723 from igfoo/igfoo/delegates
...
Kotlin: Mark DELEGATED_PROPERTY_ACCESSORs as compiler-generated
2022-06-27 19:48:53 +01:00
Asger F
cc57cb8af5
Merge branch 'main' into post-release-prep/codeql-cli-2.10.0
2022-06-27 20:37:25 +02:00
Ian Lynagh
44e69e1c09
Kotlin: Add Modifier.isInline()
2022-06-27 19:33:08 +01:00
Ian Lynagh
af672b4899
Kotlin: Add a changenote for Modifier.isInline()
2022-06-27 19:31:01 +01:00
Ian Lynagh
4a404aee76
Kotlin: Add inline info to methods test
2022-06-27 19:27:26 +01:00
Ian Lynagh
06060954ec
Kotlin: Extract inlineability of functions
2022-06-27 19:25:56 +01:00
Ian Lynagh
4e4b34290b
Kotlin: Make more methods private
2022-06-27 18:20:33 +01:00
Ian Lynagh
7dc490ff7c
Kotlin: Enhance methods test
2022-06-27 17:59:52 +01:00
Ian Lynagh
7430a413ad
Kotlin: Mark DELEGATED_PROPERTY_ACCESSORs as compiler-generated
2022-06-27 17:57:40 +01:00
Paolo Tranquilli
9d97fe7f30
Swift: generalize EnumIsCaseExpr test
2022-06-27 17:22:48 +02:00
Paolo Tranquilli
7f694f3b90
Swift: add EnumIsCase test
2022-06-27 16:25:46 +02:00
Asger F
3c9e743495
JS: Add change note
2022-06-27 16:16:38 +02:00
Asger F
17d139c87d
JS: Add qhelp
2022-06-27 16:14:30 +02:00
Brandon Stewart
99ae1b3f0d
Merge branch 'main' into patch-1
2022-06-27 10:12:26 -04:00
Brandon Stewart
52290fd4ae
run codeql query format
2022-06-27 10:01:40 -04:00
Asger F
dfe276aa18
Merge pull request #9715 from asgerf/js/always-check-file-header
...
JS: always sniff file header of TypeScript files
2022-06-27 14:58:57 +02:00
Rasmus Wriedt Larsen
9e154ff4bd
Merge branch 'main' into python/port-tarslip
2022-06-27 14:36:15 +02:00
Erik Krogh Kristensen
34e7589844
sanitize non-strings from unsafe-html-construction
2022-06-27 13:53:44 +02:00
Asger F
c8b2be616f
JS: Bump extractor version string
2022-06-27 13:52:44 +02:00
Asger F
c082578688
JS: Always sniff file type of TypeScript files
2022-06-27 13:48:00 +02:00
Arthur Baars
051b865230
Ruby: update tree-sitter-ruby
2022-06-27 13:03:04 +02:00
Nick Rolfe
280c959dc8
Merge branch 'main' into nickrolfe/pathname
2022-06-27 11:11:17 +01:00
Ian Lynagh
c72377cf2c
Merge pull request #9711 from igfoo/igfoo/integ
...
Kotlin: Add integration tests
2022-06-27 11:08:12 +01:00
Mathias Vorreiter Pedersen
41b23572f0
Merge pull request #9673 from geoffw0/stringlengthconflation2
...
Swift: String length conflation query
2022-06-27 10:29:09 +01:00
Asger F
5991e9b83c
Merge pull request #9714 from asgerf/ruby/fix-api-graphdeprecation
...
Ruby: fix deprecation warning
2022-06-27 11:09:11 +02:00
Asger F
09476d1c13
Ruby: fix deprecation warning
2022-06-27 10:01:37 +02:00
Harry Maclean
101111bd2f
Merge pull request #9574 from hmac/hmac/action-cable-logger
...
Ruby: More Rails modeling
2022-06-27 19:56:54 +12:00
Asger F
d92430b0e7
JS: Fix FP from char class
2022-06-27 09:08:37 +02:00
Asger F
9e4116618a
JS: Add CaseSensitiveMiddlewarePath query
2022-06-27 09:08:37 +02:00
Asger F
d6fd43fe12
Merge pull request #9364 from asgerf/ruby/api-graph-api
...
Ruby: API graph renaming an documentation
2022-06-27 08:54:24 +02:00
Brandon Stewart
29e73e1a04
Update ActiveRecord.qll
2022-06-24 15:35:36 -04:00
Brandon Stewart
463c096d4c
Update ActiveRecord.qll
2022-06-24 15:33:02 -04:00
Brandon Stewart
2047954013
Merge branch 'main' into patch-1
2022-06-24 15:30:11 -04:00
Brandon Stewart
ff9a7244c2
Update ActiveRecord.qll
2022-06-24 15:28:09 -04:00
Ian Lynagh
861a368734
Merge pull request #9703 from igfoo/igfoo/generated
...
Kotlin: Record more kinds of elements as compiler-generated
2022-06-24 19:46:56 +01:00
Ian Lynagh
0ddd5bb162
Merge pull request #9709 from igfoo/igfoo/isLocalFunction
...
Kotlin: Let useFunction worry about isLocalFunction for us
2022-06-24 19:22:43 +01:00
Mathias Vorreiter Pedersen
9f58ba1a1a
Merge pull request #9707 from github/redsun82/swift-extraction
...
Swift: extract more types
2022-06-24 18:38:28 +01:00
Ian Lynagh
0b312b61e4
Kotlin: qlformat some test queries
2022-06-24 18:35:58 +01:00
Ian Lynagh
31b3c1fff8
Kotlin: Add integration tests
2022-06-24 17:33:58 +01:00
Paolo Tranquilli
41fb55a7a8
Swift: extract all ReferenceStorageTypes
2022-06-24 18:10:31 +02:00
Geoffrey White
9013d56f37
Swift: Strengthen claim about severity in the qhelp.
2022-06-24 17:09:37 +01:00
Paolo Tranquilli
fd209e57cd
Swift: extract InoutType
2022-06-24 17:29:46 +02:00
Ian Lynagh
73a79e064c
Kotlin: Accept test output
2022-06-24 16:24:41 +01:00
Geoffrey White
ef283d9b7a
Swift: Metadata.
2022-06-24 16:20:16 +01:00
Asger F
3a44584de5
Merge pull request #9695 from asgerf/js/unused-var-template-placeholder
...
JS: Fix unused variable FP in template placeholders
2022-06-24 17:19:35 +02:00
Paolo Tranquilli
189a47e30d
Swift: extract VariadicSequenceType
2022-06-24 17:15:45 +02:00
Paolo Tranquilli
346110e8dd
Swift: extract DynamicSelfType
2022-06-24 16:49:58 +02:00
Paolo Tranquilli
4281605ba7
Swift: extract existential types
2022-06-24 16:28:18 +02:00
Paolo Tranquilli
631156dbc6
Swift: extract Nested- and PrimaryArchetypeType
2022-06-24 16:28:17 +02:00
Ian Lynagh
4791aaae52
Kotlin: Use an enum for compiler-generated-kinds
...
For now this is in KotlinFileExtractor, but we can move it out later if
we have generated things elsewhere.
2022-06-24 15:19:50 +01:00
Ian Lynagh
c0b6d1d093
Kotlin: Let useFunction worry about isLocalFunction for us
2022-06-24 14:24:02 +01:00
Ian Lynagh
46446f9dfa
Kotlin: Move the isLocalFunction check deeper into useFunction
2022-06-24 14:22:45 +01:00
Nick Rolfe
c1515db09c
Ruby: modeling of some file-related concepts for the Pathname class
2022-06-24 14:14:07 +01:00
Nick Rolfe
03d0f66247
Ruby: add flow summaries for Pathname class
2022-06-24 14:14:06 +01:00
Ian Lynagh
27b83a0b33
Java: Add an upgrade script
2022-06-24 14:01:07 +01:00
Ian Lynagh
008a8f0bba
Kotlin: Add an enum class to the methods test
2022-06-24 14:00:47 +01:00
Ian Lynagh
20817a54da
Kotlin: Mark enum class special members as cmopiler-generated
2022-06-24 14:00:47 +01:00
Ian Lynagh
c5d6ca7afc
Kotlin: Accept method test changes
2022-06-24 14:00:47 +01:00
Ian Lynagh
50eeb47244
Kotlin: Mark <clinit> as compiler-generated
2022-06-24 14:00:47 +01:00
Ian Lynagh
c0600820ac
Kotlin: Update methods test
2022-06-24 14:00:47 +01:00
Ian Lynagh
c06eb09100
Kotlin: Record that DEFAULT_PROPERTY_ACCESSOR are compiler-generated
2022-06-24 14:00:47 +01:00
Ian Lynagh
aefd89ed49
Kotlin: Add compiler-generated info to methods test
2022-06-24 14:00:47 +01:00
Ian Lynagh
5fc294d49e
Kotlin: Record that generated data class members are compiler-generated
2022-06-24 14:00:47 +01:00
Tamás Vajk
381bcf7dad
Merge pull request #9153 from tamasvajk/kotlin-simplify-loop-breaks-1
...
Kotlin: Unify loop `break`/`continue` statement handling between java and kotlin
2022-06-24 14:45:57 +02:00
Geoffrey White
f2ae2dbe1f
Swift: Consistency.
2022-06-24 12:28:10 +01:00
Geoffrey White
ef3d4f3242
Swift: Add qhelp and example.
2022-06-24 12:27:10 +01:00
Paolo Tranquilli
6230a3a3c5
Merge pull request #9685 from github/redsun82/swift-code-reorg
...
Swift: split up generated C++ code
2022-06-24 13:24:42 +02:00
Erik Krogh Kristensen
9bc12ed8fd
sync review changes to other languages
2022-06-24 13:12:15 +02:00
Erik Krogh Kristensen
28ac47689f
changes based on reviews
2022-06-24 13:11:46 +02:00
Paolo Tranquilli
299e1af22e
Merge main into redsun82/swift-code-reorg
2022-06-24 13:06:14 +02:00
Paolo Tranquilli
80ffd81b2c
Merge pull request #9614 from github/alexdenisov/swift-extract-all-inputs-with-outputs
...
Swift: extract all output-producing source files, not only primary files
2022-06-24 12:23:36 +02:00
Chris Smowton
d0e521ef4a
Merge pull request #9681 from smowton/smowton/fix/reintroduce-obinit
...
Kotlin: reintroduce obinit when we have multiple secondary constructors and no primary
2022-06-24 10:25:24 +01:00
Chris Smowton
fcc8691394
Merge pull request #9625 from smowton/smowton/test/kotlin-1-7-support
...
Switch to using Kotlin 1.7 by default
2022-06-24 10:24:54 +01:00
Ian Lynagh
ae16a874c8
Merge pull request #9694 from igfoo/igfoo/useFunction
...
Kotlin: Some useFunction simplification
2022-06-24 09:31:14 +01:00
Paolo Tranquilli
b708e627ad
Merge pull request #9701 from github/redsun82/swift-final-resolve
...
Swift: make `Element::resolve` final
2022-06-24 10:30:33 +02:00
Paolo Tranquilli
8ca529e8d9
Swift: make Element::resolve final
...
One should only override `getResolveStep` (or `convertsFrom` for `Expr`
classes), as otherwise the resolution/conversion becomes inconsitent.
2022-06-24 10:05:58 +02:00
Paolo Tranquilli
d14eab84fa
Merge pull request #9699 from github/redsun82/swift-stop-stub-reverts
...
Swift: yet another fix to stub revert prevention
2022-06-24 10:04:55 +02:00
Paolo Tranquilli
bc44007e18
Swift: yet another fix to stub revert prevention
2022-06-24 09:40:03 +02:00
github-actions[bot]
d506f448ef
Post-release preparation for codeql-cli-2.10.0
2022-06-24 07:36:33 +00:00
Paolo Tranquilli
f539be33d5
Merge pull request #9697 from github/redsun82/swift-stop-stub-reverts
...
Swift: fix stub revert prevention
2022-06-24 09:32:29 +02:00
Paolo Tranquilli
a9bd784ba2
Swift: fix stub revert prevention
...
It turns out the threshold of 5 lines for stub modification detection
was too strict: in case of a long class name the QL formatter will put
the closing brace of the empty class definition on a new line, leading
to codegen fail with an error thinking the stub was modified.
On the other side of things, also adding a base to a stub class was not
being detected as a modification.
Now the modification test is slightly smarter. If the stub still marked
as generated and
* has more than 6 lines, or
* the contents does not match a regexp aproximation of a plain stub
then codegen will abort. The test will still avoid reading the whole
contents of all the stubs.
2022-06-24 09:02:40 +02:00
thiggy1342
6ea1aad5fc
more style fixes
2022-06-23 22:57:51 -04:00
thiggy1342
ce2edd4b28
style tweaks
2022-06-24 02:46:48 +00:00
thiggy1342
ca074e2275
add qhelp file
2022-06-24 02:19:06 +00:00
thiggy1342
cf36333082
forgot to finish this test
2022-06-24 02:18:48 +00:00
thiggy1342
45dd38df6e
polish up dataflow query
2022-06-24 01:50:20 +00:00
Ian Lynagh
eb1b3f801d
Merge pull request #9689 from igfoo/igfoo/makeprivate
...
Kotlin: Make some more methods private
2022-06-23 21:28:07 +01:00
Ian Lynagh
bee703a870
Kotlin: Inline away useFunctionCommon
2022-06-23 21:23:21 +01:00
Chris Smowton
a124d83265
Autoformat
2022-06-23 20:13:27 +01:00
Robert Marsh
4a522831c4
C++: update change note for IR global var flow
2022-06-23 14:39:13 -04:00
Robert Marsh
e45c982dd1
C++: change note for global variables in dataflow
2022-06-23 14:32:52 -04:00
Ian Lynagh
3934491dcc
Kotlin: Refactor useFunction*
...
They now work in a way more similar to other families of functions we
have.
2022-06-23 19:19:47 +01:00
Asger F
f5a19a1013
JS: Fix unused variable FP in template placeholders
2022-06-23 19:26:32 +02:00
Geoffrey White
1a980c94a0
Swift: Query description.
2022-06-23 18:13:48 +01:00
Ian Lynagh
ab19d8c3c3
Kotlin: Move useFunctionCommon
2022-06-23 17:59:28 +01:00
Brandon Stewart
caeef68bde
Update ActiveRecord.qll
2022-06-23 12:31:05 -04:00
Brandon Stewart
173bea2579
Update ActiveRecord.qll
2022-06-23 12:18:26 -04:00
Brandon Stewart
fa622f551a
Update ruby/ql/lib/codeql/ruby/frameworks/ActiveRecord.qll
...
Co-authored-by: Alex Ford <alexrford@users.noreply.github.com >
2022-06-23 12:16:50 -04:00
Mathias Vorreiter Pedersen
71efffd79b
Merge pull request #9691 from rdmarsh2/rdmarsh2/swift/ssa-perf-1
...
Swift: remove check for inout params in SSA gen
2022-06-23 17:16:38 +01:00
Mathias Vorreiter Pedersen
998a75e768
Merge pull request #9690 from github/redsun82/swift-stop-stub-reverts
...
Swift: prevent accidental revert of modified stub
2022-06-23 17:13:52 +01:00
Geoffrey White
911d30bd9a
Swift: Proper query message.
2022-06-23 17:12:02 +01:00
Raul Garcia
13464e8015
Changing @Severity tag to error
2022-06-23 09:07:28 -07:00
Raul Garcia
202a0916a3
IdentityModel_tokenvalidation
2022-06-23 09:03:16 -07:00
Robert Marsh
946d0358c9
Swift: remove check for inout params in SSA gen
...
This check is unnecessary since it's enforced by the compiler, and is
causing a bad join order.
2022-06-23 15:59:34 +00:00
Paolo Tranquilli
ad38cf2026
Swift: prevent accidental revert of modified stub
...
If one modifies a QL stub but forgets to remove the `// generated`
header comment, codegen will now abort with an error rather than
silently reverting the change.
This is based on the rough heuristic of just counting the lines. If any
change is done to the stub class, the number of lines is bound to be
5 or more.
2022-06-23 17:49:21 +02:00
Paolo Tranquilli
a6ae6cfad0
Merge pull request #9688 from github/redsun82/swift-autopep8
...
Swift: autopep8 codegen
2022-06-23 17:49:09 +02:00
Ian Lynagh
bd8a8d00aa
Kotlin: Make some more methods private
2022-06-23 16:44:06 +01:00
Chris Smowton
b5010337a4
Avoid extracting needless obinit methods where we're only extracting a class' outline.
2022-06-23 16:26:54 +01:00
Chris Smowton
3cf7f96298
Ensure <obinit>'s return type is void not Unit
2022-06-23 16:26:54 +01:00
Chris Smowton
af5230349b
Kotlin: reintroduce obinit when we have multiple secondary constructors and no primary
...
This avoids DB inconsistencies because complex initialisers are extracted to more than one function.
2022-06-23 16:26:54 +01:00
Paolo Tranquilli
7334b4e03a
Swift: autopep8 all python files
...
Additionally set up a pre-commit hook and a CI check for that.
2022-06-23 17:13:56 +02:00
Geoffrey White
64d7296847
Swift: Remove redundant cast.
2022-06-23 16:04:26 +01:00
Geoffrey White
3291029e6d
Swift: Address further review comments.
2022-06-23 16:00:56 +01:00
yoff
5042c804dd
python: sync files and fix many small things
...
- but now we have non-monotonic recursion again...
2022-06-23 14:57:06 +00:00
Geoffrey White
ebcb1e9448
Swift: Clean up other uses of toString.
2022-06-23 15:53:55 +01:00
Chris Smowton
1aae3c5f5e
Fix whenexpr test
...
Prior to Kotlin 1.7 the gratuitous `?` was ignored for typing purposes; now it yields a `String?`. We should make the test work everywhere by using a real nullable type.
2022-06-23 15:34:40 +01:00
Chris Smowton
e64a8bc79a
Use binary names not fqnames for uniquing IrDeclarations
...
Otherwise we fall into the trap of confusing the two overloads of `MapsKt.iterator` which have differing jvmnames.
2022-06-23 15:34:40 +01:00
Chris Smowton
57ea34d3ff
Unique external classes/functions by fqname
...
Previously we used the IrDeclaration itself, but in Kotlin 1.7 this can be ambiguous because we can get more than one copy of a class in different modules.
2022-06-23 15:34:40 +01:00
Chris Smowton
8c57308661
Prevent extracting hidden functions
...
I'm not sure how these looked in 1.6 and below yet, but in 1.7 they appear with visibility = public, but a descriptor field set to indicate they have a name clash with a 'real' function.
2022-06-23 15:34:40 +01:00
Chris Smowton
2b2c384933
Kotlin: Move from 1.7.0-RC to 1.7.0
2022-06-23 15:34:40 +01:00
Chris Smowton
4899aabb05
Switch to using Kotlin 1.7 by default
2022-06-23 15:34:40 +01:00
Chris Smowton
45c85228bd
Implement Kotlin 1.7 support
...
- Implement getIrStubFromDescriptor for Kotlin 1.7
- Stop using ClassSymbol.signature, which is now only populated for classes built from Kotlin, and noteworthily is null for primitive and other internally-synthesised types.
2022-06-23 15:34:40 +01:00
Mathias Vorreiter Pedersen
43d449f1f7
Merge pull request #9687 from github/redsun82/swift-codegen-tag-to-pragma
...
Swift: tag -> pragma in codegen
2022-06-23 15:21:58 +01:00
Ian Lynagh
3b2b884f09
Merge pull request #9683 from igfoo/igfoo/getDiagnosticLocation
...
Kotlin: Remove unused function getDiagnosticLocation
2022-06-23 14:09:00 +01:00
Paolo Tranquilli
8d4637ddfd
Swift: tag -> pragma in codegen
...
For the use the former tags are meant for, pragma is a more
meaningful name. It now also accepts both strings and lists of strings.
2022-06-23 14:52:21 +02:00
Anders Schack-Mulligen
dc517a758e
Autoformat
2022-06-23 14:44:40 +02:00
Erik Krogh Kristensen
554888b884
update expected output for QL-for-QL now that I've renabled the queries
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
724721c5c8
fix typo
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
22871138c6
simplify the recursion between TTrace and isReachableFromStartTuple
...
similar to the fix made by Shack in `ExponentialBackTracking.qll`
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
be37763125
improve performance of process() by pruning accept states early
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
bf20b7dfc5
add change note for the ReDoS renamings
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
14204be2f9
add missing qldoc
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
3bea7df45d
add deprecated aliases in the old locations, and use the Query.qll pattern for js/polynomial-redos
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
2e4c2df67e
move the JS ReDoS test to a more appropriate folder
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
13482fc97b
rename ReDoSUtil to NfaUtils, and rename the "performance" folder to "regexp"
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
bbc8cb32be
update expected output from disabling the dead-code query
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
6b0df9bdfb
refactor the concretize algorithm
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
dbeae9aefb
make a parameterized module out of the RegexpMatching implementation
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
7fb3d81d2f
add further normalization of char classses
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
3be4a86acd
make ReDoSPruning into a parameterized module
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
dc06e9df02
move predicates that depend on isReDoSCandidate into a ReDoSPruning module
2022-06-23 14:36:24 +02:00
Anders Schack-Mulligen
4a317a25d3
Dataflow: Sync.
2022-06-23 14:34:52 +02:00
Anders Schack-Mulligen
c27290563a
Dataflow: Perf fix, avoid node scans.
2022-06-23 14:34:05 +02:00
Paolo Tranquilli
0957f63cc7
Swift: update codegen workflow to include all files
2022-06-23 14:31:48 +02:00
Paolo Tranquilli
a9877ed2fd
Swift: split generated C++ files by directory
2022-06-23 14:24:03 +02:00
Paolo Tranquilli
b2ebf63d2e
Swift: split generated C++ code into .h and .cpp
2022-06-23 14:22:58 +02:00
Ian Lynagh
1713c416c0
Kotlin: Remove unused function getDiagnosticLocation
2022-06-23 13:07:09 +01:00
yoff
a2851baa9f
python: fix import of "merge moved" file
2022-06-23 12:05:55 +00:00
Geoffrey White
3b48cb02bc
Swift: Add Type.getName().
2022-06-23 12:54:56 +01:00
Geoffrey White
01f697abe9
Swift: Rename argName -> paramName.
2022-06-23 12:16:04 +01:00
Geoffrey White
5222ba9073
Swift: Suggestions from review.
2022-06-23 12:02:32 +01:00
Rasmus Wriedt Larsen
3248f7b423
Merge pull request #9649 from RasmusWL/certificate-modeling
...
Python/JS/Ruby: Ignore common words (like certain) as sensitive data source
2022-06-23 12:04:58 +02:00
Mathias Vorreiter Pedersen
9b587843ff
Merge pull request #9669 from rdmarsh2/rdmarsh2/swift/dataflow-lambda-flow
...
Swift: implement LambdaCall in dataflow library
2022-06-23 10:38:45 +01:00
yoff
1e20cca913
Merge branch 'main' of https://github.com/github/codeql into python-dataflow/flow-summaries-from-scratch
2022-06-23 09:14:02 +00:00
yoff
140dc1a61e
merge in main
2022-06-23 09:05:32 +00:00
yoff
8bf60301da
python: we have hidden isParameterOf
...
but now allow a clear alternative
2022-06-23 08:57:50 +00:00
yoff
fe0c5d8ee5
python: make ArgumentNode publicly usable
...
- add `getCall`
2022-06-23 08:48:55 +00:00
yoff
b22de69ab2
python: update qldoc now predicates may be empty
2022-06-23 08:41:28 +00:00
yoff
cedf9ef538
python: make DataFlowCall "publicly usable"
...
- add `getCallable`, `getArg` and `getNode`
- these are `none` for summary calls
- revert "external" uses (they had been changed to `DataFlowSourceCall`)
2022-06-23 08:32:23 +00:00
Tamas Vajk
cf18a9a04b
Fix bad join order in Shadowing::shadows
...
Fixes the bad join order in `Shadowing::shadows`:
Tuple counts for Shadowing::shadows#f4fb89a3#ffff@c4b8a90j:
182915 ~0% {2} r1 = Variable::LocalVariableDecl::getCallable#dispred#f0820431#ff AND NOT Shadowing::shadows#f4fb89a3#ffff#antijoin_rhs(Lhs.0, Lhs.1)
182915 ~0% {3} r2 = JOIN r1 WITH localvars ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Rhs.2
182915 ~3% {4} r3 = JOIN r2 WITH Member::Member::getDeclaringType#dispred#f0820431#bf ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0, Lhs.2
182833 ~0% {4} r4 = JOIN r3 WITH classes ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.0
182833 ~3% {5} r5 = JOIN r4 WITH Element::Element::getName#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.0, Lhs.1, Lhs.3, Rhs.1
183352620 ~5% {5} r6 = JOIN r5 WITH Member::Field::getType#dispred#f0820431#bf_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.3, Lhs.1, Lhs.2, Lhs.4
40529 ~0% {5} r7 = JOIN r6 WITH Member::Field::getDeclaringType#dispred#f0820431#fb ON FIRST 2 OUTPUT Lhs.0, Lhs.4, Lhs.2, Lhs.3, Lhs.1
678 ~4% {4} r8 = JOIN r7 WITH Element::Element::getName#dispred#f0820431#ff ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.0
670 ~4% {4} r9 = r8 AND NOT Member::Field::isStatic#dispred#f0820431#b(Lhs.3)
670 ~3% {4} r10 = SCAN r9 OUTPUT In.0, In.2, In.3, In.1
return r10
After the fix:
Tuple counts for Shadowing::shadows#f4fb89a3#ffff@95ca976v:
182915 ~0% {2} r1 = Variable::LocalVariableDecl::getCallable#dispred#f0820431#ff AND NOT Shadowing::shadows#f4fb89a3#ffff#antijoin_rhs(Lhs.0, Lhs.1)
182915 ~0% {3} r2 = JOIN r1 WITH localvars ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Rhs.2
182915 ~0% {4} r3 = JOIN r2 WITH Member::Member::getDeclaringType#dispred#f0820431#bf ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2, Rhs.1
182915 ~7% {5} r4 = JOIN r3 WITH Element::Element::getName#dispred#f0820431#ff ON FIRST 1 OUTPUT Lhs.3, Rhs.1, Lhs.2, Lhs.0, Lhs.1
678 ~4% {4} r5 = JOIN r4 WITH Shadowing::getField#f4fb89a3#ffff ON FIRST 3 OUTPUT Lhs.3, Lhs.4, Lhs.0, Rhs.3
670 ~4% {4} r6 = r5 AND NOT Member::Field::isStatic#dispred#f0820431#b(Lhs.3)
670 ~3% {4} r7 = SCAN r6 OUTPUT In.0, In.2, In.3, In.1
return r7
2022-06-23 10:30:39 +02:00
Tamas Vajk
e65a046235
Fix test file after rebase
2022-06-23 09:51:48 +02:00
Tamas Vajk
579bfc22f3
Fix performance change in SecurityFlag
2022-06-23 08:46:33 +02:00
Tamas Vajk
79ec998636
Fix DB change compatibility to backwards
2022-06-23 08:45:11 +02:00
Tamas Vajk
7dad2f7fcb
Fix DB upgrade properties
2022-06-23 08:45:11 +02:00
Tamas Vajk
074b90ea1a
Add change note
2022-06-23 08:45:11 +02:00
Tamas Vajk
053ca2e940
Update DB stats file
2022-06-23 08:45:11 +02:00
Tamas Vajk
e03b48f293
Add DB upgrade folder
2022-06-23 08:45:11 +02:00
Tamas Vajk
dabc956dbf
Unify loop break/continue statement handling between java and kotlin
2022-06-23 08:45:11 +02:00
AlexDenisov
decb136471
Update swift/extractor/SwiftExtractor.cpp
...
Co-authored-by: Paolo Tranquilli <redsun82@github.com >
2022-06-23 07:23:17 +02:00
thiggy1342
e838b83f5f
attempt to introduce dataflow tracking
2022-06-23 02:21:47 +00:00
Robert Marsh
813a8548d7
C++: accept test changes for globals in data flow
2022-06-22 16:42:42 -04:00
Geoffrey White
07b89b89d7
Swift: Clean up a bit.
2022-06-22 19:35:37 +01:00
Geoffrey White
19026e9ed5
Swift: Work around toString change.
2022-06-22 19:16:09 +01:00
Geoffrey White
da7f49155d
Swift: Use dataflow.
2022-06-22 19:16:09 +01:00
Geoffrey White
28d801fde3
Swift: CWE-135 query sources and sinks.
2022-06-22 19:16:08 +01:00
Robert Marsh
42929a70e8
Swift: implement LambdaCall in dataflow library
2022-06-22 17:30:54 +00:00
Michael Nebel
8899bf7f05
C#: Update tests.
2022-06-22 13:03:23 +02:00
Michael Nebel
0ef97b41c8
C#: Update .NET Runtime models and add sources and sinks.
2022-06-22 13:03:10 +02:00
Rasmus Wriedt Larsen
876ba71d9b
Python/JS/Ruby: Add change-note
2022-06-22 11:14:05 +02:00
Rasmus Wriedt Larsen
2ce4b7b9fc
SensitiveDataHeuristics: sync
2022-06-22 11:05:14 +02:00
Rasmus Wriedt Larsen
4be375521f
Python: Handle _ in sensitive-data-sources
2022-06-22 11:05:14 +02:00
Rasmus Wriedt Larsen
4a844312f4
Python: _ in var name not handled by sensitive-data-sources
2022-06-22 11:05:14 +02:00
Rasmus Wriedt Larsen
5dc2bb717a
Python: ignore common words (certain/concert) as sensitive source
2022-06-22 11:05:05 +02:00
Rasmus Wriedt Larsen
abdcfd55c3
Python: uncertainty is treated as a certificate :O
2022-06-22 10:16:28 +02:00
thiggy1342
995f365568
just check string literal
2022-06-22 02:17:01 +00:00
thiggy1342
c767f241ad
narrow query scope
2022-06-22 02:12:23 +00:00
thiggy1342
f6c4b5c44b
Merge branch 'experimental-manually-check-request-verb' of https://github.com/thiggy1342/codeql into experimental-manually-check-request-verb
2022-06-21 21:27:39 +00:00
thiggy1342
990747cd22
Limit findings to just those called in Controllers
2022-06-21 21:27:18 +00:00
thiggy1342
53729f99c5
restrict findings to just controller classes
2022-06-21 20:28:29 +00:00
thiggy1342
bbe17b3667
Merge branch 'experimental-strong-params' of https://github.com/thiggy1342/codeql into experimental-strong-params
2022-06-21 19:31:18 +00:00
thiggy1342
83b720d730
first draft of weak params query
2022-06-21 19:28:53 +00:00
Brandon Stewart
a2e2dcdfd5
Make ActiveRecordInstanceMethodCall Public
2022-06-21 14:44:52 -04:00
Andrew Eisenberg
1ec838e671
Update docs/codeql/codeql-cli/analyzing-databases-with-the-codeql-cli.rst
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-06-21 09:14:23 -07:00
yoff
dd69100dcd
python: ParameterNode -> SourceParameterNode
2022-06-21 12:55:22 +00:00
yoff
2c2395ffd7
python: ParameterNode is the one used publicly
...
- it contains also synthesized nodes, but getParameter returns none for these.
- hide isParameterOf
2022-06-21 12:38:40 +00:00
Asger F
a1af9c3d7d
Ruby: update predicate docs
2022-06-21 12:44:16 +02:00
Asger F
d15b90e21a
Ruby: Add deprecation
2022-06-21 12:44:16 +02:00
Asger F
9838e2e101
Ruby: Rename getAValueReachingRhs -> getAValueReachingSink
2022-06-21 12:44:16 +02:00
Asger F
7c877c7861
Ruby: Rename getARhs -> asSink
2022-06-21 12:44:16 +02:00
Asger F
2f8086bb57
Ruby: Rename getAUse -> getAValueReachableFromSource
2022-06-21 12:44:16 +02:00
Asger F
573c5c5efe
Ruby: Rename getAnImmediateUse -> asSource
2022-06-21 12:44:16 +02:00
Asger F
f2403e2610
Ruby: port API graph doc comment
2022-06-21 12:44:16 +02:00
Asger F
092a6a01ac
Python: Update member documentation
2022-06-21 12:44:06 +02:00
Asger F
fecbfa6ca3
Python: add deprecation
2022-06-21 12:44:06 +02:00
Asger F
3a669a8d21
Python: getAValueReachingRhs -> getAValueReachingSink
2022-06-21 12:44:06 +02:00
Asger F
b096f9ec72
Python: Rename getAUse -> getAValueReachableFromSource
2022-06-21 12:44:06 +02:00
Asger F
181a53bd03
Python: Rename getAnImmediateUse -> asSource
2022-06-21 12:44:06 +02:00
Asger F
60fde3c031
Python: Rename getARhs -> asSink
2022-06-21 12:44:06 +02:00
Asger F
8f259d4bb6
Python: port API graph doc comment
2022-06-21 12:44:06 +02:00
Erik Krogh Kristensen
73b657ce25
QL: focus alert locations
2022-06-21 12:26:18 +02:00
Robert Marsh
d28c39cd73
C++: update test expectations
2022-06-20 15:56:00 -04:00
Robert Marsh
8b47b838ca
C++: autoformat
2022-06-20 15:56:00 -04:00
Robert Marsh
5a3e546bfe
C++: update test expectations
2022-06-20 15:55:50 -04:00
Robert Marsh
33910a85b9
C++: restrict global variable IR generation
2022-06-20 15:51:44 -04:00
Robert Marsh
7818dafecc
C++: cleanup some implicit this usage
2022-06-20 15:48:30 -04:00
Robert Marsh
54488eb49b
C++: fix global vars accesses in global vars
2022-06-20 15:46:49 -04:00
Robert Marsh
a3f1d61913
C++: test for global var access in a global var
2022-06-20 15:26:28 -04:00
Robert Marsh
048e5d8474
C++: IR data flow through global variables
2022-06-20 15:15:45 -04:00
Robert Marsh
c216176de1
C++: sync and accept new consistency test
2022-06-20 15:15:40 -04:00
Andrew Eisenberg
3547c338ef
Update docs/codeql/codeql-cli/analyzing-databases-with-the-codeql-cli.rst
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-06-20 12:00:43 -07:00
Robert Marsh
f0634140b6
C++: fix inconsistencies from IR global vars
2022-06-20 14:41:10 -04:00
Jeroen Ketema
89d4f84731
C++: Update tests for frontend update
2022-06-20 14:41:09 -04:00
Robert Marsh
e0878d7d3c
C++: Fix IR variable reuse for global var inits
2022-06-20 14:41:02 -04:00
Robert Marsh
767b0cfdfb
Revert "Merge pull request #8933 from MathiasVP/revert-globals"
...
This reverts commit 2517371a37 , reversing
changes made to db856798b9 .
2022-06-20 14:26:10 -04:00
Andrew Eisenberg
9d6b1bf142
Apply suggestions from code review
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-06-20 10:24:56 -07:00
Alex Denisov
42dc6814f0
Swift: extract all output-producing source files, not only primary files
2022-06-20 14:06:54 +02:00
Erik Krogh Kristensen
7d62b9e131
move the pruning for module resolution of TypeExprs
2022-06-20 12:12:57 +02:00
yoff
8a2125353d
Python: fix definition of LocalSourceNode
...
and typo
2022-06-20 08:48:33 +00:00
yoff
94145e9e74
Update python/ql/lib/semmle/python/security/dataflow/TarSlipCustomizations.qll
2022-06-20 10:14:52 +02:00
Harry Maclean
e1dcc207b4
Ruby: Model methods in Rails::Generators::Actions
...
These methods are sinks for command injection.
2022-06-20 13:36:09 +12:00
Harry Maclean
20ff4c4299
Ruby: Model ActiveRecord::Relation#touch_all
2022-06-20 13:36:02 +12:00
Harry Maclean
7dfab371f6
Ruby: Model redirect_back and redirect_back_or_to
...
These are ActionController methods that redirect to the HTTP Referer,
falling back to the given location if there is no Referer.
2022-06-20 13:36:02 +12:00
Harry Maclean
a298f5eb5e
Ruby: Recognise File.atomic_write as a file writer
...
This method is an ActiveSupport extension, but there's no harm in
recognising it universally as any identically-named method is likely to
also be a file writer.
2022-06-20 13:36:02 +12:00
Harry Maclean
0ce14fc4e5
Ruby: Recognise ActionCable logger class
2022-06-20 13:36:02 +12:00
Harry Maclean
4ecd595b73
Remove duplicate import
2022-06-20 13:36:02 +12:00
Erik Krogh Kristensen
6d3808bd89
remove redundant cast
2022-06-19 23:19:01 +02:00
Erik Krogh Kristensen
15f9e084d5
fix spurious resolved predicate expressions
2022-06-19 22:49:02 +02:00
Erik Krogh Kristensen
f8b451a514
get all calls to resolve to a unique predicate (within reason)
2022-06-19 22:38:09 +02:00
Erik Krogh Kristensen
f08f02ed66
use the explicit super type to resolve calls
2022-06-19 20:38:16 +02:00
Erik Krogh Kristensen
115110475d
fix getName() on module instantiations
2022-06-19 20:09:32 +02:00
Erik Krogh Kristensen
26df367a8a
fix some instances of spuriously resolving to multiple predicates
2022-06-19 20:09:31 +02:00
Erik Krogh Kristensen
1856e2b389
fixup the $schema in all .sarif files
2022-06-19 20:09:31 +02:00
Erik Krogh Kristensen
6e2f3e2fcb
merge all .sarif files at the end of the QL-for-QL workflow
2022-06-19 20:09:31 +02:00
Erik Krogh Kristensen
638a886dfe
move create-extractor-pack to a scripts folder
2022-06-19 20:09:31 +02:00
Erik Krogh Kristensen
0391db6787
simplify some code based on review
2022-06-19 20:09:31 +02:00
Erik Krogh Kristensen
7e93416e97
only resolve module types if we know that the TypeExpr could possibly resolve to a module
2022-06-19 20:09:31 +02:00
Erik Krogh Kristensen
a59f0d36f5
run the implicit-this patch on QL-for-QL
2022-06-19 20:09:31 +02:00
Erik Krogh Kristensen
3a4f0299c7
fix typo
2022-06-19 20:09:31 +02:00
thiggy1342
3478e7e910
first draft of weak params query
2022-06-18 20:43:58 +00:00
thiggy1342
0456870136
Merge branch 'main' into experimental-manually-check-request-verb
2022-06-18 15:21:53 -04:00
thiggy1342
ecb2114b7b
replace duplicate post with put
2022-06-18 19:21:17 +00:00
thiggy1342
8b36191023
drop precision to low for now
2022-06-18 18:38:58 +00:00
thiggy1342
059c4d38ad
refine query to use appropriate types
2022-06-18 18:26:45 +00:00
thiggy1342
8aa2602d9e
trying to hone in on eq comparison and include?
2022-06-18 03:09:04 +00:00
Rasmus Wriedt Larsen
f1b0a814e0
Python: Apply suggestions from code review
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2022-06-17 15:04:57 +02:00
Henry Mercer
4733653939
Add a note on how to install dependencies from GHES
2022-06-16 15:08:16 -07:00
Henry Mercer
e4462b7aac
Add a section on authenticating to Container registries
2022-06-16 14:39:37 -07:00
Henry Mercer
5931ea4ab8
Add section on managing packs on GHES
2022-06-16 14:37:34 -07:00
Andrew Eisenberg
b993558987
Update docs to include how to run a pack with path
...
`scope/name@range:path` is a valid way to specify a set of queries.
2022-06-15 10:14:51 -07:00
Rasmus Wriedt Larsen
d6e68258a4
Python: API-graphs: allow class decorators in .getASubclass()
2022-06-15 17:30:34 +02:00
Rasmus Wriedt Larsen
5f32f898d5
Python: API-graphs: test class decorators and subclass
...
A class decorator could change the class definition in any way.
In this specific case, it would be better if we allowed the subclass to
be found with API graphs still.
inspired by
c2250cfb80/tests/auth_tests/test_views.py (L40-L46)
2022-06-15 16:16:34 +02:00
Rasmus Wriedt Larsen
b2c8e0fe8d
Python: Add comment to test
2022-06-15 15:59:54 +02:00
Rasmus Wriedt Larsen
24c9aff2fc
Python: Fix a type-tracking test
2022-06-15 15:58:17 +02:00
Rasmus Lerchedahl Petersen
0608d4d2f9
python: fix alerts
...
Also, remove the `toLowerCase` again,
as I do not know what effect it will have.
2022-06-15 14:18:29 +02:00
Rasmus Lerchedahl Petersen
40b61fa85f
python: fix qldocs and clean-up dead code
2022-06-15 14:07:35 +02:00
Rasmus Lerchedahl Petersen
f4ce382b7d
python: update test expectations
2022-06-15 12:40:14 +02:00
Joe Farebrother
f46dd8cc85
Fix misspellings
2022-06-14 15:34:08 +01:00
Joe Farebrother
a6736a99e4
Apply doc review suggestions -
...
fix typos and capitilisation; reword description.
2022-06-14 14:56:24 +01:00
Joe Farebrother
c71586e1f8
Remove checks for dynamically registered recievers
2022-06-14 14:56:24 +01:00
Joe Farebrother
320c671b73
Adress reveiw comments - make use of existing ql libraries
2022-06-14 14:56:24 +01:00
Joe Farebrother
9d048e78af
Apply suggestions from code review - fix typos/style, make things private
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-06-14 14:56:23 +01:00
Joe Farebrother
d88d216388
Add change note
2022-06-14 14:56:23 +01:00
Joe Farebrother
2fc142f41f
Add security severity
2022-06-14 14:56:23 +01:00
Joe Farebrother
8e2e8cc77f
Add qhelp
2022-06-14 14:56:22 +01:00
Joe Farebrother
4aed1a1e23
Add test cases; fix handling of recievers declared through xml
2022-06-14 14:56:22 +01:00
Joe Farebrother
87f26bf033
Fix typos
2022-06-14 14:56:22 +01:00
Joe Farebrother
1959f49165
Add Improper Intent Verification query
2022-06-14 14:56:21 +01:00
Ian Lynagh
b524fb4f3a
Java: Add a test for cycles in the type hierarchy
2022-06-14 14:08:19 +01:00
Ian Lynagh
304e2926c9
Java: Fix RefType.getAStrictAncestor() in the presence of type hierarchy cycles
2022-06-14 14:08:19 +01:00
Rasmus Lerchedahl Petersen
7b5d9ec7df
python: Straight port of tarslip
2022-06-14 15:01:13 +02:00
Erik Krogh Kristensen
cb0a6936ad
add support for the "exports" property in a package.json
2022-06-14 13:31:47 +02:00
Erik Krogh Kristensen
92d1c84f05
bind the result in JsonValue::getBooleanValue
2022-06-14 13:22:09 +02:00
thiggy1342
6bef71ea2c
tweaks to tests
2022-06-14 02:17:12 +00:00
thiggy1342
7bdec98e6f
draft tests
2022-06-14 02:13:15 +00:00
thiggy1342
c012c235c6
rough draft of check request verb query
2022-06-14 01:45:02 +00:00
ihsinme
9d12f1be53
Update DangerousUseMbtowc.ql
2022-06-02 14:34:38 +03:00
ihsinme
77e4d05ea3
Update test.cpp
2022-06-02 14:33:59 +03:00
ihsinme
872dd0d59f
Update DangerousUseMbtowc.expected
2022-06-02 14:33:06 +03:00
Mathias Vorreiter Pedersen
7c25063f7f
Merge branch 'main' into swift-decls-in-cfg
2022-05-27 17:56:58 +01:00
Mathias Vorreiter Pedersen
df2c1972e9
Swift: Add CFG trees for local declarations and accept test changes.
2022-05-26 09:09:17 +01:00
Mathias Vorreiter Pedersen
b715a6b63b
Swift: Add test containing local declarations.
2022-05-26 09:06:13 +01:00
Tony Torralba
9c941dc7ab
Add Kotlin test for UnsafeAndroidAccess
2022-05-25 10:56:18 +02:00
Tony Torralba
f0b90b391f
Add Kotlin test for CleartextStorageSharedPrefs
2022-05-25 10:56:18 +02:00
Tony Torralba
85fab20086
Add Expr::getUnderlyingExpr predicate
2022-05-25 10:56:18 +02:00
ihsinme
57127a5343
Update cpp/ql/src/experimental/Security/CWE/CWE-125/DangerousUseMbtowc.qhelp
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-05-25 09:38:02 +03:00
yoff
8b9915e372
Python: Let the user help us identifying callbacks
2022-05-23 11:07:47 +00:00
yoff
dac1b6867a
python: Avoid abstract class in public interface
...
use construction from Ruby with `ParameterNodeImpl`
2022-05-16 09:12:06 +00:00
yoff
a7a646960d
python: sync other file
2022-05-16 08:15:16 +00:00
yoff
5794e64940
python: sync file
2022-05-16 08:12:25 +00:00
yoff
2822ed9594
Merge remote-tracking branch 'upstream/main' into python-dataflow/flow-summaries-from-scratch
2022-05-16 08:10:15 +00:00
yoff
0778d90ac1
python: fix implementation of lambdaCreation
...
- still identifying summarized callables by name.
I think ther shoudl perhaps be a `getAUse` next to `getACall`.
- also fix tests, adding a standard taint configuration
2022-05-12 11:35:57 +00:00
yoff
92c4c87058
python: sync file
2022-05-11 12:36:02 +00:00
yoff
4445cf152a
python: various fixes
...
- compilation
- alerts
- some review comments
2022-05-11 12:28:58 +00:00
yoff
f67be52b99
python: fix compilation
...
by making client code use the "new" class.
Really, this part of the split class should have the old name,
to minimise disruptions to clients.
Same goes for the other split classes.
2022-05-10 12:53:13 +00:00
yoff
db008f1939
python: summaries may allowParameterReturnInSelf
2022-05-10 12:48:42 +00:00
yoff
238c578f5a
python: Add LocalSourceParameterNode
...
This can be used when one wants to consider a
(source) parameter node as a local source.
2022-05-10 12:48:42 +00:00
yoff
28b239a9a4
python: add qldoc
2022-05-10 12:48:42 +00:00
yoff
da3634188d
python: variaous fixes
...
- sync summary files
- format files
- fix compilation
2022-05-10 12:48:42 +00:00
yoff
f14ee0e794
python: Flow summaries based on type tracking
...
Two classes have been inserted into the hierarchies:
- `NonLibraryDataFlowCallable` with a method `getACall2`.
This method implements "get a call, not considering flow summaries".
For `NonLibraryDataFlowCallable`s, `getACall` will defer to `getACall2`.
While you could have a synthesised call to such a callable,
it would not correspond to a `CallNode`.
- `NonLibraryDataFlowSourceCall` with methods
`getArg2` and `getCallable2`. These also refer to a call graph that
does not consider flow summaries.
`getArg2` is used to synthesise pre-update nodes for arguments.
`getCallable2` is used in `connects` to compute argument passing.
This is used to define data flow nodes for overflow arguments.
`getACall2` ensures that `LibraryCallableValue::getACall` is not called
when the charpred of `FunctionCall` is evaluated.
2022-05-10 12:48:42 +00:00
Rasmus Lerchedahl Petersen
506efcf051
python: refactor TDataFlowCall
...
- Branch predicates are made simple. In particular, they do not try to detect library calls.
- All branches based on `CallNode`s are gathered into one.
- That branch has been given a class `NonSpecialCall`, which is the new parent of call classes based on `CallNode`s. (Those classes now have more involved charpreds.)
- A new such class, 'LambdaCall` has been split out from `FunctionCall` to allow the latter to replace its
general `CallNode` field with a specific `FunctionValue` one.
- `NonSpecialCall` is not an abstract class, but it has some abstract overrides. Therefor, it is not
considered a resolved call in the test `UnresolvedCalls.qll`.
2022-05-10 12:48:42 +00:00
Rasmus Lerchedahl Petersen
d85844bb89
python: type tracking uses source nodes
2022-05-10 12:48:42 +00:00
Rasmus Lerchedahl Petersen
81ca479ca9
Python: local flow for type tracking
...
summary flow is excluded from the local flow relation used for
typetracking, but included in the one used for global data flow.
2022-05-10 12:48:42 +00:00
Rasmus Lerchedahl Petersen
177dea5307
python: use new syntax for flow summaries
...
also convert to inline tests
2022-05-10 12:48:42 +00:00
Rasmus Lerchedahl Petersen
4024ce4777
python: some summary flows
2022-05-10 12:48:42 +00:00
Rasmus Lerchedahl Petersen
8c263b349f
python: add summary flow steps
2022-05-10 12:48:42 +00:00
Rasmus Lerchedahl Petersen
828db3a392
python: Add summary nodes
...
allowing more `OutNode`s (not restricting to `CallNode`s),
gives more flow in the `classesCallGraph` test
2022-05-10 12:48:42 +00:00
Rasmus Lerchedahl Petersen
80175a9af5
Python: Compiles and mostly pass tests
...
- add flowsummaries shared files
- register in indentical files
- fix initial non-monotonic recursions
- add DataFlowSourceCall
- add resolvedCall
- add SourceParameterNode
failing tests:
- 3/library-tests/with/test.ql
2022-05-10 12:48:42 +00:00
ihsinme
a7c69ba6ab
create new branchihsinme-patch-87 in fork
2022-05-09 13:15:27 +00:00
Erik Krogh Kristensen
4b50c68934
exclude annotation names
2022-03-16 22:59:01 +01:00
Erik Krogh Kristensen
2a196611af
add not as a keyword
2022-03-16 22:59:01 +01:00
Erik Krogh Kristensen
86c8737250
remove string constants from mentioned non-params
2022-03-16 22:59:01 +01:00
Erik Krogh Kristensen
35c3c62f9e
apply suggestions from code review
2022-03-16 22:59:01 +01:00
Erik Krogh Kristensen
daed33f5af
JS: fix more instances of ql/missing-parameter-qldoc
2022-03-16 22:58:28 +01:00
Erik Krogh Kristensen
3762ce2c72
QL: also report missing QLDoc for parameters when no parameters are documented
2022-03-16 22:56:54 +01:00
Erik Krogh Kristensen
f204a41122
QL: fix ql/missing-parameter-qldoc error in QL-for-QL
2022-03-16 22:56:53 +01:00
Erik Krogh Kristensen
53760799fc
sync files
2022-03-16 22:56:53 +01:00
Erik Krogh Kristensen
efba220b45
JS: fix most ql/missing-parameter-qldoc issues
2022-03-16 22:56:52 +01:00
Erik Krogh Kristensen
ecd3aceb07
QL: add test for ql/missing-parameter-qldoc
2022-03-16 22:54:35 +01:00
Erik Krogh Kristensen
af112a011a
QL: Add query detecting suspiciously missing parameters from the QLDoc of a predicate
2022-03-16 22:54:35 +01:00
Erik Krogh Kristensen
8c6022b78a
QL: add query detecting inconsistent deprecations
2022-03-16 22:37:34 +01:00