Arthur Baars
c280bf377a
Merge commit 'refs/pull/10803/merge' of github.com:github/codeql into HEAD
2022-10-15 00:53:14 +02:00
Erik Krogh Kristensen
e4dedf7ce2
Merge 5f826d0eef into ae0c9b76e0
2022-10-15 00:49:15 +02:00
Arthur Baars
ae0c9b76e0
Merge pull request #10843 from aibaars/fix-self
...
Ruby: fix self variables in blocks
2022-10-15 00:48:14 +02:00
Harry Maclean
8cdc9399ad
Merge 0ee082a3af into 2c5129e720
2022-10-14 22:38:23 +01:00
Alex Ford
2c5129e720
Merge pull request #10369 from alexrford/rb/sensitive-get-query
...
Ruby: add `rb/sensitive-get-query` query
2022-10-14 22:34:47 +01:00
Asger F
b88b2f169b
Merge pull request #10836 from asgerf/rb/fix-spurious-singleton-calls
...
Ruby: fix spurious singleton calls
2022-10-14 18:49:51 +02:00
Paolo Tranquilli
ec3dbd8e9d
Merge pull request #10815 from github/redsun82/cmake-generator-prototype
...
Swift: cmake generator for better IDE support
2022-10-14 16:52:00 +02:00
Ian Lynagh
f0eabd4675
Merge pull request #10759 from igfoo/igfoo/numlines2
...
kotlin: Populate numlines
2022-10-14 15:39:40 +01:00
Ian Lynagh
05f70e9c66
Merge pull request #10633 from igfoo/igfoo/ministdlib
...
Kotlin: Add a ministdlib test
2022-10-14 15:22:21 +01:00
Arthur Baars
a8fdda65fb
Ruby: fix self variables in blocks
2022-10-14 16:02:39 +02:00
Asger F
8cb4f230d8
Merge branch 'main' into rb/fix-spurious-singleton-calls
2022-10-14 15:52:38 +02:00
Ian Lynagh
4dcf4f2d2c
Merge pull request #10819 from github/igfoo/kotlin
...
Kotlin: Some windows fixes
2022-10-14 14:28:57 +01:00
Tom Hvitved
407f7072e4
Merge pull request #10829 from hvitved/ruby/call-graph-perf
...
Ruby: Call graph performance improvements
2022-10-14 15:24:27 +02:00
Asger F
1bd3d29409
Ruby: workaround issue with 'def self.method' in a block
2022-10-14 15:07:33 +02:00
erik-krogh
5f826d0eef
fix typo
2022-10-14 14:43:51 +02:00
Asger F
17a246b321
Ruby: more uninteresting test updates
2022-10-14 13:59:52 +02:00
erik-krogh
dfdf8c7869
add change-note
2022-10-14 13:28:36 +02:00
erik-krogh
7c76645157
add model for the core OpenSSL::Digest module
2022-10-14 13:25:34 +02:00
erik-krogh
e2476949b9
add model for the core Digest module
2022-10-14 12:49:37 +02:00
Calum Grant
7c912ea876
Merge pull request #10810 from github/calumgrant/ruby-frameworks
...
Ruby: Update supported languages and frameworks
2022-10-14 11:40:50 +01:00
Harry Maclean
0ee082a3af
Apply suggestions from code review
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2022-10-14 23:35:05 +13:00
Arthur Baars
9ccf5a7798
Merge pull request #10749 from aibaars/run_request
...
Ruby: treat Faraday#run_request as remote source
2022-10-14 12:24:39 +02:00
Asger F
8228730634
Ruby: fix regression for methods in singleton classes
2022-10-14 11:57:35 +02:00
Alex Ford
b29bf82e05
Ruby: fix merge error
2022-10-14 10:51:12 +01:00
Alex Ford
3baad89e57
Merge remote-tracking branch 'origin/main' into rb/sensitive-get-query
2022-10-14 10:50:09 +01:00
Asger F
30f7380f74
Ruby: Add regression test for lost calls
2022-10-14 11:49:55 +02:00
Harry Maclean
d1b8907c71
Ruby: Consider header writes as XSS sinks
2022-10-14 22:42:37 +13:00
Alex Ford
24dad5599a
Ruby: fix SensitiveNode detection relating to class/instance variables
2022-10-14 10:41:46 +01:00
Harry Maclean
2f037877f0
Ruby: Add change note
2022-10-14 22:17:41 +13:00
Harry Maclean
7578b3b014
Ruby: Model ActionDispatch::Response
2022-10-14 22:17:41 +13:00
Harry Maclean
7d23170fb2
Merge pull request #10602 from hmac/hmac/actiondispatch-request
...
Ruby: Model ActionDispatch::Request
2022-10-14 22:17:20 +13:00
Paolo Tranquilli
a20fdad7c3
Swift: update README.md with IDE setup
2022-10-14 11:12:53 +02:00
Paolo Tranquilli
20a1281580
Merge branch 'main' into redsun82/cmake-generator-prototype
2022-10-14 10:58:50 +02:00
Anders Schack-Mulligen
5ce4483a8e
Merge pull request #10795 from aschackmull/java/synth-callable
...
Java: Add support for synthetic callables with flow summaries and model Stream.collect
2022-10-14 10:58:14 +02:00
Paolo Tranquilli
0ae70fda37
Bazel/CMake: make generated inclusion explicit
2022-10-14 10:57:40 +02:00
Rasmus Wriedt Larsen
fb49babc14
Merge pull request #10778 from sylwia-budzynska/python-db-models
...
Python: Add cx_Oracle, phoenixdb, pyodbc models
2022-10-14 10:49:24 +02:00
Alex Ford
36a1b18f5b
Ruby: revert SensitiveDataHeuristics changes
2022-10-14 09:19:41 +01:00
Paolo Tranquilli
7ad3d8776b
Merge branch 'main' into redsun82/cmake-generator-prototype
2022-10-14 10:13:12 +02:00
Paolo Tranquilli
d734ed9839
Bazel/CMake: fix multiple cmake generate targets
2022-10-14 10:12:40 +02:00
Asger F
a06cc30f05
Ruby: fix some more spurious call edges
2022-10-14 10:11:22 +02:00
Asger F
b1dadc224c
Ruby: uninteresting test output update
2022-10-14 10:10:39 +02:00
Asger F
ae71828fc4
Ruby: add more tests for singleton up/down calls
2022-10-14 10:09:59 +02:00
Asger F
789f591de4
Ruby: add another spurious call edge test
2022-10-14 10:09:57 +02:00
Asger F
1476efbe2c
Ruby: restrict to a use of 'self' in singleton methods
2022-10-14 10:09:11 +02:00
Asger F
329ab9156a
Ruby: add test showing spurious call
2022-10-14 10:07:34 +02:00
Paolo Tranquilli
14f2d3995a
Swift: make generate_cmake public
2022-10-14 10:01:10 +02:00
Paolo Tranquilli
3946448e7c
Bazel/CMake: create compilation database by default
...
If on Windows and not in developer mode, the creation of the symbolic
link can be skipped by setting `CREATE_COMPILATION_DATABASE_LINK` to
`OFF`.
2022-10-14 09:58:09 +02:00
Tom Hvitved
81bc6c2d49
Ruby: Call graph performance improvements
2022-10-14 09:47:27 +02:00
Jeroen Ketema
cbc0dacf18
Merge pull request #10823 from jsoref/spelling-swift
...
Spelling swift
2022-10-14 09:36:34 +02:00
Erik Krogh Kristensen
332bc35ff1
Merge pull request #10708 from erik-krogh/kernelSink
...
RB: add a query flagging uses of `Kernel.open()` that are not with a constant string
2022-10-14 09:13:26 +02:00
Paolo Tranquilli
739702b905
Bazel/CMake: make compilation db link symbolic
2022-10-14 08:57:16 +02:00
Paolo Tranquilli
2b47375190
Bazel/CMake: use -iquote
2022-10-14 08:54:15 +02:00
Harry Maclean
e6dc27a7b5
Add content_mime_type, fix env/filtered_env
2022-10-14 19:49:22 +13:00
Harry Maclean
0130e4ba7f
Re-add path methods that are user-controlled
2022-10-14 16:49:15 +13:00
Josh Soref
480f1e24af
spelling: unsupported
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 19:43:27 -04:00
Josh Soref
eaa8ca0752
spelling: parameter
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 19:42:46 -04:00
Josh Soref
6d8074e3c6
spelling: observer
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 19:42:46 -04:00
Josh Soref
9b9b54a905
spelling: implementation
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 19:42:46 -04:00
Josh Soref
50ed25098b
spelling: hierarchy
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 19:42:46 -04:00
Josh Soref
243991fae7
spelling: constants
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 19:42:46 -04:00
Josh Soref
0a508726e0
spelling: canonicalization
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 19:42:46 -04:00
Alex Ford
cda7d84633
Ruby: update rb/sensitive-get-query tests
2022-10-13 22:41:34 +01:00
Alex Ford
3d478a3951
Ruby: clarify qhelp
2022-10-13 22:39:54 +01:00
Alex Ford
9fbd293944
Ruby: avoid making notSensitiveRegexp always flag instance/class variables as not sensitive
2022-10-13 22:38:42 +01:00
Alex Ford
15cab6eed5
Update ruby/ql/src/queries/security/cwe-598/SensitiveGetQuery.qhelp
...
Co-authored-by: Arthur Baars <aibaars@github.com >
2022-10-13 21:43:59 +01:00
Arthur Baars
a327802e43
Merge pull request #10801 from jsoref/spelling-ruby
...
Spelling ruby
2022-10-13 21:05:56 +02:00
sylwia-budzynska
0eb48969a0
Fix typo
2022-10-13 20:02:03 +02:00
Sylwia Budzynska
e291d61bc7
Add oracledb model
2022-10-13 18:08:47 +02:00
Ian Lynagh
7d22bdb7e1
Windows fixes
2022-10-13 16:16:54 +01:00
Josh Soref
d94ebe9a4e
spelling: unknown
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
e1b4476399
spelling: the
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
0999ec3c70
spelling: specifies
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
45d1e3f9b2
spelling: representation
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
9be162a119
spelling: recursion
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
124c5544cf
spelling: predicates
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
eab3e18962
spelling: possibility
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
a37af45f86
spelling: overridable
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
be38e6eddc
spelling: navigation
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
e62dda9c7b
spelling: mutation
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
8078f91b28
spelling: mapping
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
f26b380767
spelling: keyword
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
2648cb0322
spelling: injection
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
52a3e3c2fd
spelling: heuristic
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
d0866c150f
spelling: for
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
f4b32a3042
spelling: excluding
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:41 -04:00
Josh Soref
893c5457a8
spelling: disambiguation
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:56:40 -04:00
Josh Soref
8483c79aef
spelling: continuing
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:52:02 -04:00
Josh Soref
b986c30454
spelling: connection
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:52:01 -04:00
Josh Soref
939dc49a88
spelling: compound
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:52:01 -04:00
Josh Soref
fe7bd81c9a
spelling: captured
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:52:01 -04:00
Josh Soref
72f91c1d29
spelling: ancestors
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:51:27 -04:00
Josh Soref
5d94733078
spelling: ambiguously
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-13 10:51:25 -04:00
sylwia-budzynska
c33dd8fd4b
Merge branch 'main' into python-db-models
2022-10-13 16:48:50 +02:00
Alex Ford
594812640e
Merge pull request #10746 from alexrford/ruby/activejob-deserialize
...
Ruby: Add `ActiveJob::Serializers.deserialize` as a code execution sink
2022-10-13 15:36:45 +01:00
Paolo Tranquilli
81628f595c
Merge branch 'main' into redsun82/cmake-generator-prototype
2022-10-13 15:55:50 +02:00
Arthur Baars
9abd599024
Ruby: treat Faraday#run_request as remote source
2022-10-13 15:44:21 +02:00
Paolo Tranquilli
b8b6b254bb
Swift: cmake generator for better IDE support
...
A cmake generator in bazel is introduced allowing to import the Swift
extractor as a CMake project while keeping Bazel files as the source of
truth for the build.
Using the CMake project:
* requires bazel and clang to be installed and available on the command
line
* does not require a previous bazel build, however
* will require a CMake reconfiguration for changes to generated code
(like changes to the schema)
2022-10-13 15:25:24 +02:00
Anders Schack-Mulligen
ad8f0fc1dd
Java: Address review comments.
2022-10-13 14:55:55 +02:00
Erik Krogh Kristensen
3a1a94b8af
Merge pull request #10798 from erik-krogh/matchCaseReg
...
Rb: add case-when expressions as a sink to rb/polynomial-redos
2022-10-13 13:55:42 +02:00
Arthur Baars
6ea2b87224
Merge pull request #10811 from aibaars/silence-warning
...
Ruby: remove warning
2022-10-13 13:38:25 +02:00
Tom Hvitved
758494b10a
Merge pull request #10790 from hvitved/csharp/avoid-get-a-reachable-read
...
C#: Deprecate `AssignableRead::getAReachableRead`
2022-10-13 13:25:01 +02:00
Tom Hvitved
19e3d7cdb2
Merge pull request #10769 from hvitved/csharp/cil-ssa-data-flow-nodes
...
C#: Include CIL SSA definitions in `DataFlow::Node`
2022-10-13 13:24:44 +02:00
Anders Schack-Mulligen
d79a7e863a
Merge pull request #10806 from aschackmull/dataflow/additional
...
Dataflow: Add additional annotation.
2022-10-13 13:02:48 +02:00
Arthur Baars
16b035600e
Ruby: remove warning
2022-10-13 13:01:06 +02:00
Calum Grant
8305a634fa
Update Ruby frameworks
2022-10-13 11:50:30 +01:00
sylwia-budzynska
fec3ab7e01
Update Frameworks.qll
2022-10-13 12:46:20 +02:00
Calum Grant
7db37d9201
Update supported Ruby version
2022-10-13 11:46:14 +01:00
Sylwia Budzynska
5f737c82a4
Resolve confilct
2022-10-13 12:43:47 +02:00
Alex Ford
a65850e922
Merge pull request #10784 from alexrford/ruby/pathname-existence
...
Ruby: model `Pathname#existence` extension from `ActiveSupport`
2022-10-13 11:38:22 +01:00
Sylwia Budzynska
646c9b559b
Add tests
2022-10-13 12:36:57 +02:00
Sylwia Budzynska
e41d79e37d
Add python cx_oracle, phoenixdb, pyodbc models
2022-10-13 12:36:41 +02:00
erik-krogh
3a3a5aa17c
add case-in as a sink for polynomial-redos
2022-10-13 12:36:07 +02:00
Anders Schack-Mulligen
30a891c2e7
Java: Fix compilation errors.
2022-10-13 11:19:57 +02:00
Anders Schack-Mulligen
51dfb319f5
Java: autoformat
2022-10-13 11:17:44 +02:00
Anders Schack-Mulligen
ac3379657d
Java: qldoc fix and changenote.
2022-10-13 11:17:44 +02:00
Anders Schack-Mulligen
5b8fa3f8f9
Java: Add test for Stream.collect.
2022-10-13 11:17:44 +02:00
Anders Schack-Mulligen
8c7b6d6f20
Java: Add support for synthetic callables with flow summaries and model Stream.collect.
2022-10-13 11:17:44 +02:00
Anders Schack-Mulligen
036724ce8d
Dataflow: Sync.
2022-10-13 11:03:30 +02:00
Anders Schack-Mulligen
c4915b27e7
Dataflow: Add additional annotation.
2022-10-13 11:03:08 +02:00
Tamás Vajk
6c781b5b1a
Merge pull request #10789 from tamasvajk/kotlin-useless-params
...
Kotlin: reduce FPs in useless parameter check for Kotlin code
2022-10-13 09:40:54 +02:00
Harry Maclean
a3c14f7f46
Update test
2022-10-13 13:57:28 +13:00
Harry Maclean
8e55e62b15
Ruby: Add change note
2022-10-13 13:24:16 +13:00
Harry Maclean
4686718630
Ruby: Add kind to Http::Server::RequestInputAccess
...
Like in JS, this describes whether the input came from the request URL,
body, parameters, headers or cookie. Only some of these are relevant for
UrlRedirect and ReflectedXSS queries.
2022-10-13 13:24:16 +13:00
Harry Maclean
9eff4936cf
Ruby: Restrict request methods to user-controlled
2022-10-13 13:24:16 +13:00
Harry Maclean
ad464abde2
Ruby: Model more params accesses
2022-10-13 13:24:16 +13:00
Erik Krogh Kristensen
10aab81f42
Merge pull request #10799 from jsoref/spelling-nfautils
...
ReDoS: Spelling nfautils
2022-10-12 23:09:06 +02:00
Henry Mercer
c3af41b907
Merge pull request #10781 from github/codeql-ci/js/ml-powered-pack-release-0.3.5
...
JS: Bump version numbers of ML-powered packs after 0.3.5 release
2022-10-12 20:20:31 +01:00
Josh Soref
09c8a98761
spelling: representation
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 15:20:26 -04:00
Josh Soref
bb1ce8973a
spelling: repeatable
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 15:20:24 -04:00
Josh Soref
adb8860b9b
spelling: pattern
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 15:20:24 -04:00
Asger F
d28b9af8bd
Merge pull request #10791 from asgerf/rb/rails-render-file
...
Ruby: treat render 'file:' argument as a file system access
2022-10-12 21:18:32 +02:00
Josh Soref
c7ae0728f3
spelling: javascript
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 15:02:00 -04:00
Josh Soref
98b317d1a5
spelling: escape
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 15:02:00 -04:00
Josh Soref
370da943dc
spelling: abcdefghijklmnopqrstuvwxyz
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 15:02:00 -04:00
erik-krogh
66b3fe3425
add case-when expressions as a sink to rb/polynomial-redos
2022-10-12 19:57:01 +02:00
Jeroen Ketema
99b9101455
Merge pull request #10796 from github/nickrolfe/implicit_this
...
C++: use explicit `this`
2022-10-12 18:11:06 +02:00
Nick Rolfe
cfb9277cd7
C++: use explicit this
2022-10-12 16:11:45 +01:00
Alex Ford
0536d4b540
Merge branch 'main' into ruby/activejob-deserialize
2022-10-12 15:04:12 +01:00
Sam Browning
87af5b7d71
Merge pull request #10793 from github/sabrowning1/clarify-codeql-installation-vscode
...
Add clarity to CodeQL extension installation
2022-10-12 09:42:38 -04:00
Edward Minnix III
ce740b47ae
Merge pull request #10637 from egregius313/egregius313/android-misconfigured-contentprovider
...
Android ContentProvider Incomplete Permissions
2022-10-12 09:41:03 -04:00
Chris Smowton
338ce838bf
Merge pull request #10788 from smowton/smowton/feature/kotlin-default-proxy-getter
...
Kotlin: Add Callable.getKotlinParameterDefaultsProxy
2022-10-12 14:16:09 +01:00
Sam Browning
8791a20f0c
Merge branch 'main' into sabrowning1/clarify-codeql-installation-vscode
2022-10-12 08:59:43 -04:00
Michael Nebel
2836c5eaef
Merge pull request #10679 from michaelnebel/csharp/telemetryresults
...
C#/Java: Limit telemetry results.
2022-10-12 14:52:20 +02:00
Sam Browning
af12eedb32
Add clarity to CodeQL extension installation
2022-10-12 08:46:42 -04:00
Ian Lynagh
9dc933cfc8
Kotlin: Fix inherited-callee test
...
We can't define the same classes in Java and Kotlin.
2022-10-12 13:45:21 +01:00
Tom Hvitved
d42c74f1a4
C#: Include CIL SSA definitions in DataFlow::Node
2022-10-12 14:39:30 +02:00
Asger F
7bfb3497eb
Ruby: change note
2022-10-12 14:29:34 +02:00
Nora Dimitrijević
7b90ba6189
Merge pull request #10550 from d10c/cpp/comma-before-misleading-indentation
2022-10-12 14:08:53 +02:00
Tom Hvitved
f49bfa7bcc
C#: Deprecate Assignable(Read)::getAReachableRead
2022-10-12 14:08:46 +02:00
Asger F
83464d48a9
Merge pull request #10773 from asgerf/rb/bugfix-singleton-class-resolution
...
Ruby: bugfix in type-tracking singleton class resolution
2022-10-12 13:45:16 +02:00
Nora Dimitrijević
949d3e13fe
Merge branch 'main' into cpp/comma-before-misleading-indentation
2022-10-12 13:25:22 +02:00
Nora Dimitrijević
695d8c6004
C++: Add Wikipedia references to QHelp
2022-10-12 13:21:24 +02:00
Nora Dimitrijević
93c01371c3
C++: no parens in select message
...
Debatable; see comment thread in PR.
2022-10-12 13:01:37 +02:00
Nora Dimitrijević
b42b88338e
C++: s/put/but/ typo in QHelp
2022-10-12 13:00:42 +02:00
Tamas Vajk
0d6da9ca7f
Exclude serialization constructors from useless parameters check
2022-10-12 12:58:28 +02:00
Nora Dimitrijević
a56770999f
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-10-12 12:54:27 +02:00
Jeroen Ketema
d389a183f0
Merge pull request #10743 from jsoref/spelling
...
Spelling
2022-10-12 12:48:22 +02:00
Tamas Vajk
955336fb22
Kotlin: exclude generated code from useless parameter check
2022-10-12 12:42:56 +02:00
Tamas Vajk
aa9dc3a764
Kotlin: Add test case for useless parameter FP
2022-10-12 12:42:27 +02:00
Chris Smowton
3b49594c20
Kotlin: Add Callable.getKotlinParameterDefaultsProxy
2022-10-12 11:29:55 +01:00
Mathias Vorreiter Pedersen
9eca56cbe2
Merge pull request #10779 from MathiasVP/add-uninitialized-dataflow-predicate-to-ir-dataflow
...
C++: Add `UninitializedNode` to experimental IR dataflow
2022-10-12 11:09:01 +01:00
sylwia-budzynska
7bcd247128
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-10-12 12:08:20 +02:00
Tom Hvitved
9bd25220d4
Merge pull request #10760 from hvitved/ruby/regex-taint-flow-restrict
...
Ruby: Restrict regexp taint flow to `String` summaries
2022-10-12 11:59:08 +02:00
Tamás Vajk
56797c515b
Merge pull request #10776 from tamasvajk/kotlin-missing-override-fix
...
Kotlin/Java: Exclude generated code from `java/missing-override-annotation`
2022-10-12 11:30:20 +02:00
Nick Rolfe
39107047bf
Merge pull request #10735 from github/nickrolfe/actionmailer
...
Ruby: add `ActionMailer#params` as a `RemoteFlowSource`
2022-10-12 10:21:11 +01:00
Tom Hvitved
202549bdd9
Merge pull request #10758 from hvitved/ruby/type-tracking-level-step
...
Type tracking: Split up `levelStep` into `levelStepCall` and `levelStepNoCall`
2022-10-12 10:42:01 +02:00
Josh Soref
c92ce69f48
spelling: when
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
9d6ea28448
spelling: the
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
a8e5a12ec2
spelling: specific
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
b9d8903bdb
spelling: similarly
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
9eac158d7c
spelling: revocation
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
08a79531cf
spelling: response
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
1a14c06008
spelling: receiver
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
061d1ee9fe
spelling: presence
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
71b0613f9a
spelling: parenthesized
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
ba0f34afed
spelling: owasp
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
0919507565
spelling: outside
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:26 -04:00
Josh Soref
7e0bbf1bdb
spelling: optimization
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:25 -04:00
Josh Soref
114653162c
spelling: operator
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:25 -04:00
Josh Soref
c77f685c0c
spelling: operations
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-12 04:40:25 -04:00
Asger F
e55be83645
Ruby: add 'render file:' as file system access
2022-10-12 09:47:04 +02:00
Alex Ford
bf4dac78c5
Ruby: remove some singleton set literals
2022-10-11 21:44:52 +01:00
Alex Ford
d3c8ce3f48
Ruby: ActiveSupport extends Pathname with an existence method that may return itself
2022-10-11 21:35:58 +01:00
Henry Mercer
bfa9765a6d
Merge branch 'main' into codeql-ci/js/ml-powered-pack-release-0.3.5
2022-10-11 19:06:01 +01:00
github-actions[bot]
06bbede92b
JS: Bump version of ML-powered library and query packs to 0.3.6
2022-10-11 17:58:33 +00:00
github-actions[bot]
4e3a6e60b2
JS: Bump patch version of ML-powered library and query packs
2022-10-11 17:48:46 +00:00
Asger F
ed165c6194
Ruby: bugfix in self-resolution in type-tracking
2022-10-11 18:53:20 +02:00
Asger F
a64286b664
Ruby: add test for singleton class instance field
...
incorrect test output
2022-10-11 18:53:20 +02:00
Mathias Vorreiter Pedersen
fc810ddbf4
Merge pull request #10775 from atorralba/atorralba/swift/custom-url-scheme-sources
...
Swift: Add taint sources for custom URL scheme URLs
2022-10-11 16:47:52 +01:00
Tony Torralba
f4d43deec4
Add taint sources for custom URL scheme URLs
2022-10-11 17:19:04 +02:00
Mathias Vorreiter Pedersen
f88aaf37a5
C++: Add 'UninitializedNode' to IR dataflow.
2022-10-11 16:08:06 +01:00
Ed Minnix
80cc3fc518
Reword first sentence of documentation
2022-10-11 11:02:37 -04:00
Edward Minnix III
1f0a48de28
Documentation suggestion
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-10-11 10:59:00 -04:00
Mathias Vorreiter Pedersen
af79139c30
Merge pull request #10772 from atorralba/atorralba/swift/subscriptexpr-taint-step
...
Swift: Add taint step for subscript expressions
2022-10-11 15:45:54 +01:00
Alex Ford
3d08a2954d
Ruby: add rb/unsafe-deserialization sinks for const_get args
2022-10-11 15:45:51 +01:00
Alex Ford
a3f096a6bc
Ruby: rb/unsafe-deserialization test realignment
2022-10-11 15:44:00 +01:00
Nick Rolfe
078c3e9d28
Ruby: create top-level module for ActionMailer
2022-10-11 15:22:42 +01:00
Mathias Vorreiter Pedersen
7ac9c1e832
Merge pull request #10713 from MathiasVP/fix-types-in-ir-dataflow
...
C++: Fix `getType` for experimental IR dataflow
2022-10-11 15:20:49 +01:00
Rasmus Wriedt Larsen
b3f10311b3
Merge pull request #10752 from RasmusWL/pymssql
...
Python: DB Modeling: Add `pymssql` and `executemany` in general
2022-10-11 15:55:04 +02:00
Tamas Vajk
9b2cc6c318
Kotlin/Java: Exclude generated code from java/missing-override-annotation
2022-10-11 15:48:46 +02:00
Tony Torralba
0892a5795d
Add taint step for subscript expressions
2022-10-11 15:33:45 +02:00
Sylwia Budzynska
319923f445
Add python cx_oracle, phoenixdb, pyodbc models
2022-10-11 15:29:57 +02:00
Tamás Vajk
8523d21f8c
Merge pull request #10696 from tamasvajk/kotlin-lateinit
...
Kotlin: Extract `lateinit` modifier
2022-10-11 15:03:10 +02:00
Tamás Vajk
e9835ec07e
Merge pull request #10756 from tamasvajk/kotlin-fix-java-modifier
...
Kotlin: extract `protected` modifier from java class files
2022-10-11 15:02:13 +02:00
Erik Krogh Kristensen
66c2de87b0
Merge pull request #10729 from erik-krogh/py-last-msg
...
Py: fix some more style-guide violations in the alert-messages
2022-10-11 14:48:14 +02:00
Rasmus Wriedt Larsen
ac30cfa5c1
Python: Apply suggestions from code review
2022-10-11 14:05:27 +02:00
erik-krogh
a826dbbdee
fix capitalization in stack-trace-exposure
2022-10-11 13:59:10 +02:00
Tom Hvitved
7171fd1bb2
Update python/ql/lib/semmle/python/dataflow/new/internal/TypeTrackerSpecific.qll
...
Co-authored-by: Taus <tausbn@github.com >
2022-10-11 13:58:51 +02:00
Tom Hvitved
f1c44f72b5
Python: Sync on TypeTracker.qll changes
2022-10-11 13:58:50 +02:00
Tom Hvitved
2e8f46ddd9
Type tracking: Split up levelStep into levelStepNoCall and levelStepCall
...
To reduce non-linear recursion during call graph construction.
2022-10-11 13:58:46 +02:00
Mathias Vorreiter Pedersen
95e798565b
C++: Expand on the comment about missing types in the database. Also rename 'getType0' to 'getTypeImpl' to avoid confusion.
2022-10-11 12:57:51 +01:00
Erik Krogh Kristensen
0883b1782d
Merge pull request #10730 from erik-krogh/ql-last-msg
...
QL: fix some more style-guide violations in the alert-messages
2022-10-11 13:43:21 +02:00
Asger F
02656b16c3
Merge pull request #10685 from asgerf/rb/splat-and-local-field-step
...
Ruby: summarize unary splat operators and add local field step
2022-10-11 13:28:58 +02:00
Ian Lynagh
b31a721929
Kotlin: Remove some noisy diagnostics
2022-10-11 12:20:42 +01:00
Erik Krogh Kristensen
01bc5f7226
Merge pull request #10731 from erik-krogh/rb-last-msg
...
Ruby: fix some more style-guide violations in the alert-messages
2022-10-11 12:16:52 +02:00
Mathias Vorreiter Pedersen
5cfc3fe8df
C++: Use 'DataFlowType' instead of 'Type' for the 'getType' predicate in 'PostUpdateNode'.
2022-10-11 11:00:25 +01:00
Tom Hvitved
878654e0ff
Merge pull request #10763 from hvitved/ruby/move-summarized-callable-from-model
...
Ruby: Move `SummarizedCallableFromModel` into `ModelsAsData.qll`
2022-10-11 11:47:38 +02:00
Tom Hvitved
2b75562037
Ruby: Use DataFlow::Configuration in RegExpConfiguration.qll
2022-10-11 11:39:45 +02:00
erik-krogh
42e1735f2a
update expected output
2022-10-11 11:37:26 +02:00
erik-krogh
8779da8c0b
reintroduce Psych
2022-10-11 11:14:52 +02:00
Erik Krogh Kristensen
7d282c3d75
fix casing in alert-message
...
Co-authored-by: Arthur Baars <aibaars@github.com >
2022-10-11 11:12:59 +02:00
Tom Hvitved
d6df69d481
Merge pull request #10754 from hvitved/dataflow/non-hidden-succ-fast-tc
...
Data flow: Improve `fastTC` bound in `PathNodeImpl::getANonHiddenSuccessor`
2022-10-11 11:12:58 +02:00
Tom Hvitved
53abdb3fb5
Ruby: Move SummarizedCallableFromModel into ModelsAsData.qll
2022-10-11 11:06:35 +02:00
erik-krogh
4da0508dae
Merge branch 'main' into py-last-msg
2022-10-11 10:49:19 +02:00
erik-krogh
cdf9d65e44
bump typos
2022-10-11 10:44:34 +02:00
erik-krogh
f4e928eec4
Merge branch 'main' into ql-last-msg
2022-10-11 10:44:20 +02:00
erik-krogh
9a9d2a6fe1
Merge branch 'main' into rb-last-msg
2022-10-11 10:43:39 +02:00
Josh Soref
704aba8c1c
spelling: necessitates
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 03:59:17 -04:00
Josh Soref
22141e378e
spelling: necessary
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 03:59:17 -04:00
Josh Soref
4e220330a7
spelling: interface
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 03:59:17 -04:00
Josh Soref
8f7e76f0cb
spelling: initialization
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 03:59:08 -04:00
erik-krogh
9fe18e5d73
changes based on review
2022-10-11 09:30:18 +02:00
erik-krogh
186205bd4b
add a test for explicit shell invocations using Kernel.open
2022-10-11 09:23:29 +02:00
erik-krogh
de3b15ebe9
add a query flagging uses of Kernel.open that are not with a constant string
2022-10-11 09:23:29 +02:00
erik-krogh
708f6b51f3
move cwe-078 tests into subfolders
2022-10-11 09:23:29 +02:00
Asger F
b6e07c0cd5
Ruby: block API graph nodes from tracking through self-argument passing
2022-10-11 09:03:52 +02:00
Asger F
125761755a
Ruby: do not generate API graph edges from Attribute contents
...
Models should use Method[x] edges, not attribute edges
2022-10-11 09:03:52 +02:00
Asger F
6daa1c432b
Ruby: update test output
2022-10-11 09:03:51 +02:00
Asger F
38a3476d37
Ruby: add local field step to type tracking
...
fixup local field steps
2022-10-11 09:03:51 +02:00
Asger F
d55925d8d4
Ruby: support splat type-tracking step
2022-10-11 09:03:51 +02:00
Josh Soref
0a4c724b69
spelling: implementation
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
f06c15b86a
spelling: genuinely
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
29da681bbb
spelling: functions
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
86ee8c2d00
spelling: first
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
b5bed9cbf5
spelling: explicitly
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
e8754967ea
spelling: explaining
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
479a4fb4a2
spelling: expectations
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
cbea5ec40c
spelling: executables
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
3b9546f02e
spelling: deserialization
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
c08cfe23e0
spelling: dependencies
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
3e6477f878
spelling: currently
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
e6998d40c3
spelling: cryptographically
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
88408fbd59
spelling: ciphertext
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
9b372f3db4
spelling: characters
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
0581f2fe1c
spelling: can
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
879158a653
spelling: behavior
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
5755159f08
spelling: authentication
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:36 -04:00
Josh Soref
6db36616cd
spelling: arbitrary
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:35 -04:00
Josh Soref
c2a0dbe715
spelling: application
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:35 -04:00
Josh Soref
3358c5f664
spelling: apparent
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:35 -04:00
Josh Soref
b95af76dab
spelling: although
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:35 -04:00
Josh Soref
b1052992fe
spelling: against
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:35 -04:00
Josh Soref
21caa4b03f
spelling: across
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2022-10-11 00:23:35 -04:00
Tom Hvitved
6c2eee3eb8
Ruby: Restrict regexp taint flow to String summaries
2022-10-10 20:58:41 +02:00
Edward Minnix III
b6270ebe52
Apply suggestions from documentation review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-10-10 14:57:14 -04:00
Edward Minnix III
b94b78115e
Style fix.
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-10-10 14:52:17 -04:00
Ian Lynagh
591844f680
Kotlin: Add a numlines test
2022-10-10 19:04:11 +01:00
Ian Lynagh
bca2586903
Kotlin: Populate numfiles
2022-10-10 19:00:05 +01:00
Asger F
9bbbece8a7
Merge pull request #10670 from tyage/property-stringify
...
JS: Improve detection of XSS when JSON.stringify()
2022-10-10 18:16:09 +02:00
Tamas Vajk
f2e2e3bc1d
Kotlin: extract protected modifier from java class files
2022-10-10 18:02:21 +02:00
Tamas Vajk
15aab711c7
Kotlin: Add test showing missing java modifier
2022-10-10 18:01:38 +02:00
Chris Smowton
5756a33604
Merge pull request #10737 from smowton/smowton/fix/type-instance-within-default-value-erasure
...
Kotlin: fix type variable erasure inside default function values
2022-10-10 16:31:07 +01:00
Tamás Vajk
70b8224a8b
Merge pull request #10723 from tamasvajk/kotlin-generated-files
...
Kotlin: Recognize generated files
2022-10-10 16:24:42 +02:00
Asger F
b1a165ee98
JS: Edit change note
2022-10-10 16:08:21 +02:00
Asger F
ecf7ed38e0
JS: Performance tweak
2022-10-10 16:08:21 +02:00
Asger F
67cef92f94
JS: Rewrite to use DataFlow::Node API and restrict context
2022-10-10 16:08:21 +02:00
Chris Smowton
dfdfd39bcc
Merge pull request #10732 from smowton/smowton/fix/kotlin-enum-corresponding-classes
...
Koltin: Extract the corresponding classes of enum entries
2022-10-10 15:04:02 +01:00
Arthur Baars
b597896bf2
Merge pull request #10753 from aibaars/fix-qhelp-job
...
CI: fix qhelp preview
2022-10-10 15:44:17 +02:00
Tom Hvitved
ffb2b1c15e
Data flow: Sync files
2022-10-10 15:39:13 +02:00
Tom Hvitved
85344bfb13
Data flow: Improved fastTC bound in PathNodeImpl::getANonHiddenSuccessor
...
Before
```
[2022-10-10 14:34:54] Evaluated non-recursive predicate __DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorImpl#0#dispred#ff_DataFlowImplForRegExp__#higher_order_body@4bb14aoj in 262ms (size: 2418048).
Evaluated relational algebra for predicate __DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorImpl#0#dispred#ff_DataFlowImplForRegExp__#higher_order_body@4bb14aoj with tuple counts:
4141389 ~75% {1} r1 = SCAN _DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorImpl#0#dispred#ff_DataFlowImplForRegExp#__#shared OUTPUT In.1
return r1
[2022-10-10 14:34:57] Evaluated non-recursive predicate boundedFastTC:DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorIfHidden#0#dispred#ff:__DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorImpl#0#dispred#ff_DataFlowImplForRegExp__#higher_order_body@fb66bb06 in 2754ms (size: 7448123).
[2022-10-10 14:35:09] Evaluated non-recursive predicate DataFlowImplForRegExp#43df744e::PathNodeImpl::getANonHiddenSuccessor#0#dispred#ff@77ff066b in 10892ms (size: 2830055).
Evaluated relational algebra for predicate DataFlowImplForRegExp#43df744e::PathNodeImpl::getANonHiddenSuccessor#0#dispred#ff@77ff066b with tuple counts:
4141389 ~0% {3} r1 = SCAN _DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorImpl#0#dispred#ff_DataFlowImplForRegExp#__#shared OUTPUT In.0, In.1, In.1
2192551 ~4% {3} r2 = r1 AND NOT DataFlowImplForRegExp#43df744e::PathNodeImpl::isHidden#0#dispred#f(Lhs.2)
2192551 ~4% {2} r3 = SCAN r2 OUTPUT In.0, In.2
4141389 ~0% {2} r4 = SCAN _DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorImpl#0#dispred#ff_DataFlowImplForRegExp#__#shared OUTPUT In.1, In.0
147138810 ~0% {3} r5 = JOIN r4 WITH boundedFastTC:DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorIfHidden#0#dispred#ff:__DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorImpl#0#dispred#ff_DataFlowImplForRegExp__#higher_order_body ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Rhs.1
637649 ~3% {3} r6 = r5 AND NOT DataFlowImplForRegExp#43df744e::PathNodeImpl::isHidden#0#dispred#f(Lhs.2)
637649 ~2% {2} r7 = SCAN r6 OUTPUT In.0, In.2
2830200 ~0% {2} r8 = r3 UNION r7
return r8
```
After
```
[2022-10-10 14:59:08] Evaluated non-recursive predicate boundedFastTC:DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorIfHidden#0#dispred#ff_10#higher_order_body:_DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorIfHidden#0#dispred#ff_DataFlowImplForReg__#higher_order_body@98a323ne in 384ms (size: 671076).
[2022-10-10 14:59:09] Evaluated non-recursive predicate DataFlowImplForRegExp#43df744e::PathNodeImpl::getANonHiddenSuccessor0#ff@69f158pf in 222ms (size: 2805795).
Evaluated relational algebra for predicate DataFlowImplForRegExp#43df744e::PathNodeImpl::getANonHiddenSuccessor0#ff@69f158pf with tuple counts:
2155019 ~0% {1} r1 = DataFlowImplForRegExp#43df744e::PathNodeImpl#class#f AND NOT DataFlowImplForRegExp#43df744e::PathNodeImpl::isHidden#0#dispred#f(Lhs.0)
2155019 ~0% {2} r2 = SCAN r1 OUTPUT In.0, In.0
650776 ~0% {2} r3 = boundedFastTC:DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorIfHidden#0#dispred#ff_10#higher_order_body:_DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorIfHidden#0#dispred#ff_DataFlowImplForReg__#higher_order_body AND NOT DataFlowImplForRegExp#43df744e::PathNodeImpl::isHidden#0#dispred#f(Lhs.0)
650776 ~0% {2} r4 = SCAN r3 OUTPUT In.1, In.0
2805795 ~0% {2} r5 = r2 UNION r4
return r5
[2022-10-10 14:59:09] Evaluated non-recursive predicate DataFlowImplForRegExp#43df744e::PathNodeImpl::getANonHiddenSuccessor#0#dispred#ff@5ae9fc5n in 445ms (size: 2830062).
Evaluated relational algebra for predicate DataFlowImplForRegExp#43df744e::PathNodeImpl::getANonHiddenSuccessor#0#dispred#ff@5ae9fc5n with tuple counts:
4141389 ~5% {2} r1 = DataFlowImplForRegExp#43df744e::PathNodeImpl::getASuccessorImpl#0#dispred#ff AND NOT DataFlowImplForRegExp#43df744e::PathNodeImpl::isHidden#0#dispred#f(Lhs.0)
4141389 ~0% {2} r2 = SCAN r1 OUTPUT In.1, In.0
2830200 ~0% {2} r3 = JOIN r2 WITH DataFlowImplForRegExp#43df744e::PathNodeImpl::getANonHiddenSuccessor0#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1
return r3
```
2022-10-10 15:36:58 +02:00
Arthur Baars
f7203bfcb8
CI: fix qhelp preview
...
The command to gather the changed files uses NULL character terminated "lines",
therefore we should supply the `-z` flag to `basename` as well. Otherwise we
end up calling `git grep -l "\n"` which would list all files containing a newline.
2022-10-10 15:27:48 +02:00
Rasmus Wriedt Larsen
13cb4f9241
Merge pull request #10750 from RasmusWL/pyhton-typo
...
Python: Fix typo in qldoc
2022-10-10 15:11:09 +02:00
Erik Krogh Kristensen
8cc52a4b55
Merge pull request #10704 from erik-krogh/rbMeta
...
RB: add some more meta queries for Ruby evaluations
2022-10-10 14:57:37 +02:00
Tamas Vajk
544e2e4107
Remove path based generated file classification
2022-10-10 14:42:15 +02:00
Geoffrey White
fd571538fb
Merge pull request #10706 from geoffw0/vaheuristic
...
C++: Tune cpp/unterminated-variadic-call
2022-10-10 13:39:40 +01:00
Rasmus Wriedt Larsen
dba42d6bb8
Python: Model executemany on PEP-249 DB APIs
...
Note: I kept the modeling using the old approach with type-trackers
instead of `DataFlow::MethodCallNode`.
I would like a meta query for DCA to show sinks before doing this, so I
can be absolutely sure we don't loose out on any important sinks on
this... so will postpone this work to a small one-off task (added to my
todo list).
2022-10-10 14:16:47 +02:00
Rasmus Wriedt Larsen
669f4f38b9
Python: Update QLDocs on PEP249Impl.qll
2022-10-10 14:13:01 +02:00
Rasmus Wriedt Larsen
4ee71ae4a1
Python: Add support for pymssql package
...
I also forgot to mention `PyMySQL` in frameworks.rst
2022-10-10 14:02:40 +02:00
Tom Hvitved
60fe370f2a
Merge pull request #10744 from hvitved/dataflow/has-flow-to-no-fast-tc
...
Data flow: Avoid call to `pathSuccPlus` in `Configuration::hasFlowTo(Expr)`
2022-10-10 14:02:39 +02:00
Tom Hvitved
099251a30a
Merge pull request #10741 from hvitved/ruby/no-full-fast-tc
...
Ruby: Avoid computing full `fastTC` for `AstNode::getParent`
2022-10-10 14:01:56 +02:00
Tamás Vajk
1cf2db1a0b
Merge pull request #10718 from tamasvajk/kotlin-internal-repr
...
Kotlin: ignore properties in `java/internal-representation-exposure` check
2022-10-10 13:58:55 +02:00
Tamás Vajk
87b971c78f
Merge pull request #10728 from tamasvajk/kotlin-missing-override-sam
...
Kotlin: Extract `override` modifier on SAM methods
2022-10-10 13:58:28 +02:00
Tamás Vajk
cd8ac1a835
Merge pull request #10720 from tamasvajk/kotlin-equals-fix
...
Kotlin: Consider `::class` type check in `java/unchecked-cast-in-equals`
2022-10-10 13:58:15 +02:00
Rasmus Wriedt Larsen
b1d33a404c
Python: Sort Frameworks.qll
2022-10-10 13:55:10 +02:00
Rasmus Wriedt Larsen
584ccf1992
Python: clean up Mysql.qll
2022-10-10 13:49:26 +02:00
Rasmus Wriedt Larsen
08d6b2f30a
Python: Fix typo in qldoc
2022-10-10 13:46:18 +02:00
Tom Hvitved
9f2f6ac491
Merge pull request #10745 from hvitved/ruby/cache-library-flow
...
Ruby: Cache use of `DataFlowImplFor(Pathname|HttpClientLibraries)`
2022-10-10 13:08:36 +02:00
erik-krogh
38c17c5d0c
Merge branch 'main' into rbMeta
2022-10-10 12:22:56 +02:00
Geoffrey White
059864587e
C++: Add 'mremap' to whitelist.
2022-10-10 11:00:18 +01:00
Nick Rolfe
e38cfd5f7d
Ruby: add changenote for ActionMailer params
2022-10-10 10:25:19 +01:00
Nick Rolfe
d61f0559a0
Ruby: add ActionMailer#params as a RemoteFlowSource
2022-10-10 10:23:48 +01:00
Rasmus Wriedt Larsen
4b1f6f0865
Merge pull request #10629 from RasmusWL/fix-flask-source
...
Python: Fix flask request modeling
2022-10-10 09:56:22 +02:00
Alex Ford
d0bdbe65ef
Ruby: ActiveJob::Serializers.deserialize changenote
2022-10-09 22:47:52 +01:00
Alex Ford
ee77404006
Ruby: Add ActiveJob::Serializers.deserialize as a code execution sink
2022-10-09 22:28:22 +01:00
Alex Ford
4a39e4aac0
Ruby: Add new test case for rb/code-injection
2022-10-09 22:26:29 +01:00
Alex Ford
c4baf0b8fa
Ruby: add space for test case
2022-10-09 22:16:23 +01:00
Tom Hvitved
efa6b3c0c6
Ruby: Cache uses of DataFlowImplForHttpClientLibraries
2022-10-09 19:59:56 +02:00
Tom Hvitved
9f34bf80fd
Ruby: Cache use of DataFlowImplForPathname
2022-10-09 19:59:05 +02:00
Tom Hvitved
296ec94a2a
Data flow: Sync files
2022-10-09 19:48:45 +02:00
Tom Hvitved
d1c8c40c17
Data flow: Avoid call to pathSuccPlus in Configuration::hasFlowTo(Expr)
2022-10-09 19:48:44 +02:00
Alex Ford
43fec9dfc8
Revert "Ruby: switch rb/sensitive-get-query back to using local flow"
...
This reverts commit fa58c51810 .
2022-10-09 13:06:13 +01:00
Alex Ford
139d3868e5
Merge branch 'main' into rb/sensitive-get-query
2022-10-09 12:26:44 +01:00
Tom Hvitved
02192acd5f
Ruby: Avoid computing full fastTC for AstNode::getParent
...
DIL before
```
/* AST::AstNode */ AST#87953007::Cached::TAstNode result) =
fastTC(AST#a6718388::AstNode::getAChild#0#dispred#ff/2)
.
Synthesis#d9ff06b1::Desugared::getADescendant#0#dispred#ff(/* Synthesis::Desugared */ AST#87953007::Cached::TAstNode this,
/* AST::AstNode */ AST#87953007::Cached::TAstNode result)
:-
(
exists(int arg1,
/* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, this)
),
result = this
);
(
exists(int arg1,
/* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, this)
),
#AST#a6718388::AstNode::getAChild#0#dispredPlus#ff(this, result)
)
.
```
DIL after
```
incremental
Synthesis#d9ff06b1::Desugared::getADescendant#ff(/* Synthesis::Desugared */ AST#87953007::Cached::TAstNode this,
/* AST::AstNode */ AST#87953007::Cached::TAstNode result)
:-
(
exists(int arg1,
/* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, this)
),
result = this
);
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode call_result#2 |
exists(int arg1,
/* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, this)
),
rec Synthesis#d9ff06b1::Desugared::getADescendant#ff(this, call_result#2),
exists(cached dontcare string _ |
AST#a6718388::AstNode::getAChild#1#dispred(call_result#2, _, result)
)
)
| [base_case]
exists(int arg1, /* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, this)
),
result = this
| [delta_order]
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode call_result#2 |
exists(int arg1,
/* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, this)
),
delta previous rec Synthesis#d9ff06b1::Desugared::getADescendant#ff(this,
call_result#2),
project#AST#a6718388::AstNode::getAChild#1#dispred(call_result#2, result)
),
not(
previous rec Synthesis#d9ff06b1::Desugared::getADescendant#ff(this, result)
)
| [delta_order_up_to_500000]
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode call_result#2 |
delta previous rec Synthesis#d9ff06b1::Desugared::getADescendant#ff(this,
call_result#2),
exists(int arg1,
/* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, this)
),
project#AST#a6718388::AstNode::getAChild#1#dispred(call_result#2, result)
),
not(
previous rec Synthesis#d9ff06b1::Desugared::getADescendant#ff(this, result)
)
.
```
2022-10-09 11:12:24 +02:00
Tom Hvitved
d39b0fd3f4
Ruby: Avoid computing full fastTC for AstNode::getParent
...
DIL before
```
/* AST::AstNode */ AST#87953007::Cached::TAstNode result) =
fastTC(AST#a6718388::AstNode::getAChild#0#dispred#ff/2)
.
Synthesis#d9ff06b1::isInDesugaredContext#1#f(/* AST::AstNode */ unique AST#87953007::Cached::TAstNode n)
:-
exists(int arg1, /* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, n)
);
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode call_result#2 |
exists(int arg1,
/* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, call_result#2)
),
#AST#a6718388::AstNode::getAChild#0#dispredPlus#ff(call_result#2, n)
)
.
```
DIL after
```
incremental
Synthesis#d9ff06b1::isInDesugaredContext#1#f(/* AST::AstNode */ unique AST#87953007::Cached::TAstNode n)
:-
exists(int arg1, /* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, n)
);
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode any#expr##2 |
rec Synthesis#d9ff06b1::isInDesugaredContext#1#f(any#expr##2),
exists(cached dontcare string _ |
AST#a6718388::AstNode::getAChild#1#dispred(any#expr##2, _, n)
)
)
| [base_case]
exists(int arg1, /* AST::AstNode */ dontcare AST#87953007::Cached::TAstNode _ |
arg1 = -1, AST#87953007::Cached::getSynthChild#2(_, arg1, n)
)
| [delta_order]
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode any#expr##2 |
delta previous rec Synthesis#d9ff06b1::isInDesugaredContext#1#f(any#expr##2),
project#AST#a6718388::AstNode::getAChild#1#dispred(any#expr##2, n)
),
not(previous rec Synthesis#d9ff06b1::isInDesugaredContext#1#f(n))
.
``
2022-10-09 11:11:48 +02:00
Tom Hvitved
262a74d03d
Ruby: Avoid computing full fastTC for AstNode::getParent
...
DIL before
```
/* AST::AstNode */ AST#87953007::Cached::TAstNode result) =
fastTC(AST#a6718388::AstNode::getAChild#0#dispred#ff/2)
.
Completion#445d5844::mayRaise#1#f(/* Call::Call */ unique AST#87953007::Cached::TAstNode c)
:-
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode call_result#2 |
exists(/* ControlFlowGraphImpl::Trees::BodyStmtTree */ AST#87953007::Cached::TAstNode bst |
(
(
project#Expr#6fb2af19::BodyStmt::getRescue#1#dispred#fff(bst),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst)
);
(
exists(/* Expr::StmtSequence */ dontcare AST#87953007::Cached::TAstNode _ |
Expr#6fb2af19::BodyStmt::getEnsure#0#dispred#ff(bst, _)
),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst)
)
),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst),
project#ControlFlowGraphImpl#288ae92e::Trees::StmtSequenceTree::getBodyChild#2#dispred#ffff(bst,
call_result#2)
),
(
(c = call_result#2, Call#841c84e8::Call#f(c));
(
#AST#a6718388::AstNode::getAChild#0#dispredPlus#ff(call_result#2, c),
Call#841c84e8::Call#f(c)
)
)
)
.
```
DIL after
```
incremental
Completion#445d5844::getARescuableBodyChild#0#f(/* AST::AstNode */ unique AST#87953007::Cached::TAstNode result)
:-
exists(/* ControlFlowGraphImpl::Trees::BodyStmtTree */ AST#87953007::Cached::TAstNode bst |
(
(
exists(dontcare int _,
/* Expr::RescueClause */ dontcare AST#87953007::Cached::TAstNode _1 |
Expr#6fb2af19::BodyStmt::getRescue#1#dispred#fff(bst, _, _1)
),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst)
);
(
exists(/* Expr::StmtSequence */ dontcare AST#87953007::Cached::TAstNode _ |
Expr#6fb2af19::BodyStmt::getEnsure#0#dispred#ff(bst, _)
),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst)
)
),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst),
exists(boolean arg2, dontcare int _ |
arg2 = true,
ControlFlowGraphImpl#288ae92e::Trees::StmtSequenceTree::getBodyChild#2#dispred#ffff(bst,
_,
arg2,
result)
)
);
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode call_result#5 |
rec Completion#445d5844::getARescuableBodyChild#0#f(call_result#5),
exists(cached dontcare string _ |
AST#a6718388::AstNode::getAChild#1#dispred(call_result#5, _, result)
)
)
| [base_case]
exists(/* ControlFlowGraphImpl::Trees::BodyStmtTree */ AST#87953007::Cached::TAstNode bst |
(
(
project#Expr#6fb2af19::BodyStmt::getRescue#1#dispred#fff(bst),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst)
);
(
exists(/* Expr::StmtSequence */ dontcare AST#87953007::Cached::TAstNode _ |
Expr#6fb2af19::BodyStmt::getEnsure#0#dispred#ff(bst, _)
),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst)
)
),
ControlFlowGraphImpl#288ae92e::Trees::BodyStmtTree#class#f(bst),
project#ControlFlowGraphImpl#288ae92e::Trees::StmtSequenceTree::getBodyChild#2#dispred#ffff(bst,
result)
)
| [delta_order]
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode call_result#5 |
delta previous rec Completion#445d5844::getARescuableBodyChild#0#f(call_result#5),
project#AST#a6718388::AstNode::getAChild#1#dispred(call_result#5, result)
),
not(previous rec Completion#445d5844::getARescuableBodyChild#0#f(result))
.
```
2022-10-09 11:10:39 +02:00
Tom Hvitved
d707c526e5
Ruby: Avoid computing full fastTC for AstNode::getParent
...
DIL before
```
/* AST::AstNode */ AST#87953007::Cached::TAstNode result) =
fastTC(Module#fe82a56b::parent#1#ff/2)
.
Module#fe82a56b::enclosingModule#1#ff(/* AST::AstNode */ AST#87953007::Cached::TAstNode node,
/* Module::ModuleBase */ AST#87953007::Cached::TAstNode result)
:-
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode call_result#2 |
Module#2a43f566::ModuleBase#f(result),
project#AST#a6718388::AstNode::getAChild#1#dispred(result, call_result#2),
(
node = call_result#2;
#Module#fe82a56b::parent#1Plus#ff(node, call_result#2)
)
)
.
```
DIL after
```
incremental
Module#fe82a56b::enclosingModule#1#ff(/* AST::AstNode */ AST#87953007::Cached::TAstNode node,
/* Module::ModuleBase */ AST#87953007::Cached::TAstNode result)
:-
(
Module#2a43f566::ModuleBase#f(result),
exists(cached dontcare string _ |
AST#a6718388::AstNode::getAChild#1#dispred(result, _, node)
)
);
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode mid |
Module#2a43f566::ModuleBase#f(result),
rec Module#fe82a56b::enclosingModule#1#ff(mid, result),
not(Module#2a43f566::ModuleBase#f(mid)),
not(Method#8b49e67f::Block#f(mid)),
exists(cached dontcare string _ |
AST#a6718388::AstNode::getAChild#1#dispred(mid, _, node)
)
)
| [base_case]
Module#2a43f566::ModuleBase#f(result),
project#AST#a6718388::AstNode::getAChild#1#dispred(result, node)
| [delta_order]
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode mid |
Module#2a43f566::ModuleBase#f(result),
delta previous rec Module#fe82a56b::enclosingModule#1#ff(mid, result),
not(Module#2a43f566::ModuleBase#f(mid)),
not(Method#8b49e67f::Block#f(mid)),
project#AST#a6718388::AstNode::getAChild#1#dispred(mid, node)
),
not(previous rec Module#fe82a56b::enclosingModule#1#ff(node, result))
| [delta_order_up_to_500000]
exists(/* AST::AstNode */ AST#87953007::Cached::TAstNode mid |
delta previous rec Module#fe82a56b::enclosingModule#1#ff(mid, result),
Module#2a43f566::ModuleBase#f(result),
not(Module#2a43f566::ModuleBase#f(mid)),
not(Method#8b49e67f::Block#f(mid)),
project#AST#a6718388::AstNode::getAChild#1#dispred(mid, node)
),
not(previous rec Module#fe82a56b::enclosingModule#1#ff(node, result))
.
```
2022-10-09 11:10:33 +02:00
erik-krogh
73f88fbdb6
changes based on review
2022-10-07 23:28:44 +02:00
erik-krogh
6fdfd40880
changes to address reviews
2022-10-07 22:31:00 +02:00
Chris Smowton
5cadd3c0e6
Merge pull request #10712 from smowton/smowton/admin/kotlin-allow-single-embeddable-version
...
Kotlin: allow building a single embeddable plugin version
2022-10-07 20:33:06 +01:00
Jami
bb0f2f7d36
Merge pull request #10368 from jcogs33/android-deeplink-analysis
...
Java: Android deeplink analysis
2022-10-07 14:32:05 -04:00
Dave Bartolomeo
5ee7986649
Merge pull request #10736 from github/post-release-prep/codeql-cli-2.11.1
...
Post-release preparation for codeql-cli-2.11.1
2022-10-07 14:23:31 -04:00
Chris Smowton
5dcb70e482
Make method private
2022-10-07 18:10:52 +01:00
Chris Smowton
9c0cdfde6b
Note store_true params default to False not None
2022-10-07 18:02:32 +01:00
Chris Smowton
68967c40bc
Remove whitespace
2022-10-07 17:49:51 +01:00
Chris Smowton
85f92ff80a
Require --single-version with --single-version-embeddable
2022-10-07 17:49:03 +01:00
Chris Smowton
bef4011947
Kotlin: fix type variable erasure inside default function values
...
Previously because extractClassInstance didn't use the declaration stack, we wouldn't notice that it was legal to refer to its type variable in the context of extracting a specialised method <-> method source-decl edge. This led to erasing the types of the source-decl, so that e.g. Map.put(...) would have signature (Object, Object) not (K, V)
as it should.
2022-10-07 17:31:38 +01:00
github-actions[bot]
b8ef9e0ddc
Post-release preparation for codeql-cli-2.11.1
2022-10-07 15:59:45 +00:00
Ian Lynagh
b4510200b4
Merge pull request #10734 from github/smowton/fix/move-overloads-together
...
Kotlin: keep method overloads together
2022-10-07 16:02:38 +01:00
Erik Krogh Kristensen
dd50fe3c10
Merge pull request #10726 from erik-krogh/go-last-msg
...
Go: fix some more style-guide violations in the alert-messages
2022-10-07 16:16:29 +02:00
Chris Smowton
115d4de0e0
Kotlin: keep method overloads together
2022-10-07 13:50:27 +01:00
Nick Rolfe
4d75d885cb
Merge pull request #10733 from github/nickrolfe/deprecated_paramscall_fix
...
Ruby: fix use of deprecated class
2022-10-07 13:45:07 +01:00
Mathias Vorreiter Pedersen
be95b91878
Merge pull request #10725 from erik-krogh/cpp-last-msg
...
C: fix some more style-guide violations in the alert-messages
2022-10-07 13:22:06 +01:00
Nick Rolfe
a6674a5313
Ruby: fix uses of deprecated class name
2022-10-07 13:17:05 +01:00
Erik Krogh Kristensen
e8b9dc2e83
Merge pull request #10724 from erik-krogh/csharp-last-msg
...
C#: fix some more style-guide violations in the alert-messages
2022-10-07 13:48:23 +02:00
erik-krogh
cbeefd418b
add change-note
2022-10-07 13:47:32 +02:00
erik-krogh
10a014f18c
add change-note
2022-10-07 13:46:48 +02:00
erik-krogh
99b7c77abc
add change-note
2022-10-07 13:44:36 +02:00
Tom Hvitved
b065d2d3ab
Merge pull request #10705 from hvitved/ruby/singleton-overrides
...
Ruby: Take overrides into account for singleton methods defined on modules
2022-10-07 13:33:59 +02:00
erik-krogh
1bdc2374e4
fix deprecation warning
2022-10-07 13:33:54 +02:00
Chris Smowton
2df1d63d1c
Extract the corresponding classes of enum entries, where they exist.
2022-10-07 12:23:08 +01:00
erik-krogh
5d9c68c962
remove the taint-steps meta query
2022-10-07 13:21:24 +02:00
Dave Bartolomeo
da43a36a51
Merge pull request #10716 from github/release-prep/2.11.1
...
Release preparation for version 2.11.1
2022-10-07 07:17:04 -04:00
erik-krogh
a0725fba71
fix some more style-guide violations in the alert-messages
2022-10-07 12:01:03 +02:00
Chris Smowton
bb6e575689
Kotlin: allow building a single embeddable plugin version
2022-10-07 10:56:33 +01:00
Chris Smowton
0d98eba604
Merge pull request #10683 from smowton/smowton/feature/kotlin-function-overloads
...
Kotlin: implement $default function synthesis
2022-10-07 10:27:24 +01:00
erik-krogh
f3f3b9417b
fix some more style-guide violations in the alert-messages
2022-10-07 11:24:29 +02:00
erik-krogh
944ca4a0da
fix some more style-guide violations in the alert-messages
2022-10-07 11:23:34 +02:00
Tamas Vajk
26c4216fef
Kotlin: Extract override modifier on SAM methods
2022-10-07 11:23:14 +02:00
Tamas Vajk
9f6240b38c
Kotlin: Add test for missing override modifier on SAM methods
2022-10-07 11:22:15 +02:00
Harry Maclean
75cb0efecb
Merge pull request #10538 from hmac/hmac/actioncontroller-parameters
...
Ruby: Model flow through ActionController::Parameters
2022-10-07 22:21:40 +13:00
erik-krogh
d5c45056bd
fix some more style-guide violations in the alert-messages
2022-10-07 11:21:01 +02:00
erik-krogh
66c9705502
fix some more style-guide violations in the alert-messages
2022-10-07 11:19:46 +02:00
erik-krogh
a30b7120a7
fix some more style-guide violations in the alert-messages
2022-10-07 11:17:39 +02:00
Tony Torralba
5f740a5598
Merge pull request #10715 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-10-07 10:56:47 +02:00
Tom Hvitved
69fc59930f
Ruby: Add ql doc to lookupSingletonMethod
2022-10-07 10:55:30 +02:00
Tamas Vajk
f51c13f0c1
Kotlin: Recognize generated files
2022-10-07 09:32:00 +02:00
Tamas Vajk
51f9314a50
Kotlin: Consider ::class type check in equals
2022-10-07 09:23:01 +02:00
Tamas Vajk
f7f12076df
Kotlin: Add test case for ::class type check in equals
2022-10-07 09:22:10 +02:00
Tamas Vajk
cd64faf635
Kotlin: ignore properties in java/internal-representation-exposure check
2022-10-07 09:13:14 +02:00
Tamas Vajk
e9a304bad0
Kotlin: Add test for exposed internal representation
2022-10-07 09:12:36 +02:00
github-actions[bot]
a02dcdc5e1
Release preparation for version 2.11.1
2022-10-07 02:20:28 +00:00
github-actions[bot]
47c461a241
Add changed framework coverage reports
2022-10-07 00:26:57 +00:00
Mathias Vorreiter Pedersen
10eb548156
Merge pull request #10699 from MathiasVP/swift-mad-summaries
2022-10-06 17:44:35 +01:00
Mathias Vorreiter Pedersen
e147a6032e
C++: Replace 'IRType' with 'Type' in dataflow. This means we're more compatible with the old AST library.
2022-10-06 17:26:56 +01:00
Mathias Vorreiter Pedersen
65a538ed41
C++: Exclude a few more operands from the dataflow graph. These aren't ever used for dataflow, and it should give us a slight speedup.
2022-10-06 17:22:09 +01:00
Mathias Vorreiter Pedersen
3fcb825e7f
C++: Change a few indirectionIndex ranges from '[0 .. n - 1]' to '[1 .. n]'. This simplifies some arithmetic in a few predicates.
2022-10-06 17:21:09 +01:00
Mathias Vorreiter Pedersen
cfbb9e3339
Apply suggestions from code review
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-10-06 17:04:56 +01:00
Mathias Vorreiter Pedersen
7a425ffcc3
Update swift/ql/lib/codeql/swift/elements/type/NominalType.qll
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-10-06 16:59:31 +01:00
Chris Smowton
28fa06ab9c
Merge pull request #10709 from gregxsunday/main
...
add BeegoInput.RequestBody source to Beego framework
2022-10-06 16:04:04 +01:00
Chris Smowton
289843eb83
Remove accidentally duplicated test
...
This was moved to a unit test, but the integration test version was somehow retained.
2022-10-06 16:00:56 +01:00
erik-krogh
c1fae91a1f
have rb/meta/taint-steps print only one for each file, to limit the size of the output
2022-10-06 15:19:11 +02:00
Chris Smowton
812a5e5c74
Autoformat test.go
2022-10-06 14:08:56 +01:00
Chris Smowton
4e161c867e
Rename 2022-10-06-beego- to 2022-10-06-beego-request-body-source.md
2022-10-06 14:01:36 +01:00
Chris Smowton
7d98b74eec
Create 2022-10-06-beego-
2022-10-06 14:00:52 +01:00
Henry Mercer
7a7d164b07
Merge pull request #10698 from github/henrymercer/successfully-extracted-files-tag
...
Tag successfully extracted files queries
2022-10-06 13:21:52 +01:00
Chris Smowton
fcf24f7671
Fix typo
2022-10-06 12:59:43 +01:00
Chris Smowton
1d8547d4c1
Avoid using count(...) = 0
2022-10-06 12:57:56 +01:00
Chris Smowton
0024e54e63
Make method private
2022-10-06 12:55:17 +01:00
Chris Smowton
86e5e4c4bc
Accept test changes
2022-10-06 12:40:04 +01:00
Chris Smowton
020f29a1ab
Add visibility tests
2022-10-06 12:40:03 +01:00
Chris Smowton
764c139e3e
Visibility consistency query: allow $default methods to have package-private (default) visibility
2022-10-06 12:40:03 +01:00
Chris Smowton
34b83f01d0
Fix naming of internal default methods
2022-10-06 12:40:03 +01:00
Chris Smowton
5e182755a5
Fix generated $default method visibilities
2022-10-06 12:40:03 +01:00
Chris Smowton
bec948682d
Fix calls to static methods defined in association with local functions
...
These are a bit weird since they involve static calls to unnamed synthetic class members, but while unwriteable as Java they ought to work as a database description.
2022-10-06 12:40:03 +01:00
Chris Smowton
b79d273de4
When calling a $default method, ensure the real method gets extracted
2022-10-06 12:40:02 +01:00
Chris Smowton
3452dcbced
Fix class type parameter erasure within $default methods
2022-10-06 12:40:02 +01:00
Chris Smowton
be655432d6
Use new terse extraction functions where applicable
2022-10-06 12:40:02 +01:00
Chris Smowton
03c895853b
Clarify test and accept test changes
2022-10-06 12:40:02 +01:00
Chris Smowton
6119670be8
Suppress use of function type parameters in the context of building a $defaults method
...
These methods have erased signatures and no type parameters, so anything that refers to one must itself be erased. For signatures this would be easy, but for potentially deep default expressions these types can occur in various places and need erasing at each occurence.
2022-10-06 12:40:02 +01:00
Chris Smowton
720cf5682b
Exclude enum constructor invocations from defaults handling
...
These seem to provide null arguments even though the constructor doesn't provide defaults, presumably for completion by a later compiler phase.
2022-10-06 12:40:01 +01:00
Chris Smowton
6cc74da004
Defaults function extraction: respect the extract-type-accesses flag
2022-10-06 12:39:57 +01:00
Chris Smowton
34a0a0d080
Implement $default method synthesis
...
This adds methods that fill in default parameters whenever a constructor or method uses default parameter values. I use as similar an approach to the real Kotlin compiler as possible both because this produces the desirable dataflow, and because it should merge cleanly with the same class file seen by the Java extractor, which will see and
extract the signatures of the default methods.
2022-10-06 12:38:55 +01:00
erik-krogh
169965cfb9
make rb/meta/taint-steps into a @kind problem query
2022-10-06 13:28:10 +02:00
gregxsunday
9960d11042
added RequestBody source to Beego framework
2022-10-06 13:23:56 +02:00
Geoffrey White
c6b7bb436d
C++: Make the ql-for-ql checks happy.
2022-10-06 11:25:22 +01:00
Chris Smowton
6f3c9e4403
Split up extractRawMethodAccess
2022-10-06 11:05:27 +01:00
Mathias Vorreiter Pedersen
a856bc8678
Merge pull request #10562 from rdmarsh2/rdmarsh2/cpp/field-off-by-one
...
C++: prototype for off-by-one in array-typed field
2022-10-06 11:04:12 +01:00
Tom Hvitved
48bdf13c89
Ruby: Take overrides into account for singleton methods defined on modules
2022-10-06 11:56:26 +02:00
Mathias Vorreiter Pedersen
0065a5af96
Swift: Accept path-explanation test changes.
2022-10-06 10:30:18 +01:00
Mathias Vorreiter Pedersen
1edd4d855a
Swift: Add an example with flow through a callback function.
2022-10-06 10:30:11 +01:00
Mathias Vorreiter Pedersen
197f036797
Swift: Support local MaD steps in both dataflow and taintflow.
2022-10-06 10:30:04 +01:00
Mathias Vorreiter Pedersen
9d069b32b0
Swift: Create ArgumentNodes and OutNodes for MaD.
2022-10-06 10:29:59 +01:00
Mathias Vorreiter Pedersen
0b6ea703ea
Swift: Create explicit parameter nodes for source parameters and MaD parameters.
2022-10-06 10:29:52 +01:00
Mathias Vorreiter Pedersen
bba70a70fb
Swift: Support selecting fields in Swift MaD.
2022-10-06 10:29:45 +01:00
tyage
ddc8f72ef7
accept test result Xss.qlref
2022-10-06 18:23:10 +09:00
Mathias Vorreiter Pedersen
32d0b58923
C++: Fix qhelp example.
2022-10-06 10:19:53 +01:00
Tom Hvitved
7608276397
Ruby: Add more call graph tests
2022-10-06 10:38:02 +02:00
Anders Schack-Mulligen
5b67ba2939
Merge pull request #10177 from atorralba/atorralba/path-sanitizer
...
Java: Promote `PathSanitizer.qll` from experimental
2022-10-06 10:29:33 +02:00
Anders Schack-Mulligen
cbeff4efc8
Merge pull request #10693 from atorralba/atorralba/fix-guard-bad-magic
...
Java: Fixes bad magic in `Guard::guardControls_v3`
2022-10-06 10:14:48 +02:00
erik-krogh
db056aae1b
add some more meta queries for Ruby evaluations
2022-10-06 10:14:28 +02:00
Geoffrey White
86756538f2
C++: Change note.
2022-10-06 09:14:25 +01:00
Geoffrey White
3f78a244b9
C++: Make the tests use more repetitions.
2022-10-06 09:14:24 +01:00
Geoffrey White
9a365d83cf
C++: Tighten up the heuristic in cpp/unterminated-variadic-call.
2022-10-06 09:14:16 +01:00
Tom Hvitved
0e6735b804
Merge pull request #10691 from hvitved/dataflow/conjunctive-clears
...
Data flow: Take conjunctive `With(out)Contents` into account in `prohibitsUseUseFlow`
2022-10-06 09:03:30 +02:00
Tamas Vajk
0bbc7adca0
Accept test changes
2022-10-06 08:45:57 +02:00
Henry Mercer
d80d39504f
Tag successfully extracted files queries
...
Tag the successfully extracted files queries with
`successfully-extracted-files` to make them easier to identify
programmatically in a language-independent way.
This follows the prior art for lines of code queries, which are tagged
`lines-of-code`.
2022-10-05 19:19:43 +01:00
Asger F
387e57546b
Merge pull request #10650 from asgerf/rb/summarize-more
...
Ruby: more type-tracking steps
2022-10-05 19:16:56 +02:00
Alex Ford
a28d7b64ea
Merge branch 'main' into rb/sensitive-get-query
2022-10-05 15:59:02 +01:00
Alex Ford
fa58c51810
Ruby: switch rb/sensitive-get-query back to using local flow
2022-10-05 15:58:05 +01:00
Tamas Vajk
46fb9865ac
Add lateinit test to print the extracted AST
2022-10-05 16:09:00 +02:00
Chris Smowton
7f8bcf76bf
Merge pull request #10665 from dilanbhalla/dilan-java/guidance-exectainted
...
Java Guidance: ExecTainted.ql (experimental version)
2022-10-05 15:05:10 +01:00
Tom Hvitved
0beea9fd1a
Fix typos
2022-10-05 15:54:52 +02:00
Tamas Vajk
082544e88c
Kotlin: Extract lateinit modifier
2022-10-05 15:25:49 +02:00
Tamas Vajk
61a05c2b6c
Kotlin: add lateinit declarations to modifiers test
2022-10-05 15:25:15 +02:00
Asger F
decd4c93c7
Ruby: update type tracking test
2022-10-05 15:15:52 +02:00
Asger F
c9c36985b2
Ruby: address review comments
2022-10-05 14:59:37 +02:00
Alex Ford
71670a4f75
Ruby: add RequestInputAccess#getKind predicate
2022-10-05 13:38:31 +01:00
Alex Ford
dea53d86c9
Ruby: remove some redundant imports of DataFlow
2022-10-05 13:22:19 +01:00
Alex Ford
f01670f663
Ruby: add a note to a test case
2022-10-05 13:06:49 +01:00
Alex Ford
d64f8c73be
Merge branch 'main' into rb/sensitive-get-query
2022-10-05 12:59:35 +01:00
Alex Ford
084efe062a
Ruby: limit rb/sensitive-get-query to data from query params
2022-10-05 12:57:57 +01:00
Alex Ford
977e8a8a6f
Ruby: add a test case for sensitive data from cookies for rb/sensitive-get-query (should not be flagged)
2022-10-05 12:57:07 +01:00
Tamás Vajk
d0d8ef1236
Merge pull request #10672 from tamasvajk/kotlin-unary-op
...
Kotlin: extract unary plus and minus operators
2022-10-05 13:30:21 +02:00
Arthur Baars
6509c19aad
Merge pull request #10692 from aibaars/fix-splats
...
Ruby: fix CFG and toString for anonymous '*' and '**'
2022-10-05 13:25:29 +02:00
Alex Ford
880fb2b14a
Ruby: split out rb/sensitive-get-query using query/customizations pattern
2022-10-05 11:59:40 +01:00
Tom Hvitved
6f518c1996
Data flow: Sync files
2022-10-05 12:58:29 +02:00
Tom Hvitved
3f0f16afc4
Ruby: Update flow summary for Hash#except
2022-10-05 12:58:29 +02:00
Tom Hvitved
e51c20bfc7
Data flow: Take conjunctive With(out)Contents into account in prohibitsUseUseFlow
2022-10-05 12:58:29 +02:00
Tony Torralba
527425b397
Fixes bad magic in Guard::guardControls_v3
2022-10-05 12:35:33 +02:00
Mathias Vorreiter Pedersen
5984b8db4d
Merge pull request #10682 from MathiasVP/fix-future-bad-join-after-use-use-ir-flow
...
C++: Fix potentially bad join
2022-10-05 11:30:46 +01:00
Nora Dimitrijević
ec2549a38b
Merge branch 'main' into cpp/comma-before-misleading-indentation
2022-10-05 12:02:12 +02:00
Anders Schack-Mulligen
6db0db431f
Java: Add pruning for local taint flow.
2022-10-05 12:02:05 +02:00
Arthur Baars
a080f498be
Ruby: fix CFG and toString for anonymous '*' and '**'
2022-10-05 11:50:37 +02:00
Tom Hvitved
9d23742ed6
Ruby: Add test that illustrates issue with conjunctive WithoutContents
2022-10-05 11:26:23 +02:00
Asger F
ab6e488efe
Python: sync
2022-10-05 11:10:35 +02:00
Asger F
f664a77a02
Ruby: ensure Hash flow works again
2022-10-05 11:07:55 +02:00
Arthur Baars
4ff85d5275
Ruby: add test case
2022-10-05 10:57:53 +02:00
Mathias Vorreiter Pedersen
fcd69a005f
C++: Remove redundant pragma.
2022-10-05 09:56:24 +01:00
Nick Rolfe
525fe12671
Merge pull request #10585 from github/nickrolfe/libxml-xxe
...
Ruby: detect uses of LibXML with entity substitution enabled by default
2022-10-05 09:51:39 +01:00
Asger F
7cf969f9c8
Ruby: remove mention of PairValueContent
2022-10-05 10:32:09 +02:00
Asger F
6f74a52542
Merge branch 'main' into rb/summarize-more
2022-10-05 09:55:23 +02:00
Asger F
8b7ec20573
Merge branch 'main' into rb/summarize-more
2022-10-05 09:43:52 +02:00
Tom Hvitved
1496c4f0e2
Merge pull request #10686 from hvitved/ruby/remove-value-pair-content
...
Ruby: Remove `PairValueContent`
2022-10-05 09:41:14 +02:00
Asger F
93e8434e08
Ruby: fix content restriction in type trackers
2022-10-05 09:36:42 +02:00
Asger F
f5f351e26c
Ruby: make flowsToLoadStoreStep private
2022-10-05 09:35:11 +02:00
Asger F
a9a99c5b18
Ruby: nomagic on unary hasAdjacentTypeCheckedReads
2022-10-05 09:34:36 +02:00
Asger F
4c19d2d71e
Ruby: make getAStaticHashCall private again
2022-10-05 09:32:56 +02:00
Tamás Vajk
ecfbd5edfe
Merge pull request #10674 from tamasvajk/kotlin-implements
...
Kotlin: extract `implInterface`
2022-10-05 09:11:41 +02:00
yoff
ad83fc8a98
Merge pull request #10687 from RasmusWL/flask-debug
...
Python: Rewrite `py/flask-debug` to use API graphs instead of type-trackers
2022-10-05 09:08:41 +02:00
Nora Dimitrijević
d8cfdc5e26
C++: Tag with CWE-1078, CWE-670
2022-10-05 00:04:56 +02:00
Tamás Vajk
d0ea7ea2e3
Merge pull request #10677 from tamasvajk/kotlin-param-modifiers
...
Kotlin: Extract parameter modifiers (`noinline`, `crossinline`)
2022-10-04 21:53:48 +02:00
Tamás Vajk
c45a04a2c8
Merge pull request #10675 from tamasvajk/kotlin-enum-constants
...
Kotlin: extract `isEnumConstant` relation
2022-10-04 21:53:22 +02:00
Tom Hvitved
321c858cd1
Merge pull request #10667 from hvitved/csharp/dotnet-run-tracer-fix2
...
C#: Recognize options to `dotnet run` in tracer when injecting `-p:UseSharedCompilation=false`
2022-10-04 21:43:31 +02:00
Arthur Baars
c1c16e44ee
Merge pull request #10559 from aibaars/cve-2019-3881
...
Ruby: some improvements
2022-10-04 21:24:14 +02:00
Rasmus Wriedt Larsen
2541af6587
Python: Rewrite py/flask-debug
2022-10-04 20:41:18 +02:00
Rasmus Wriedt Larsen
05bca0249c
Python: Expand test for py/flask-debug
...
(I couldn't see one using positional argument)
2022-10-04 20:39:08 +02:00
Tom Hvitved
aae9a58ca3
Ruby: Remove ValuePairContent
2022-10-04 20:10:51 +02:00
Nick Rolfe
d69a658e06
Merge pull request #10673 from github/nickrolfe/no_abstract
...
Ruby: remove public abstract classes for Action{View,Controller}
2022-10-04 17:49:59 +01:00
Mathias Vorreiter Pedersen
4d697cd369
C++: Rephrase QLDoc.
2022-10-04 17:15:08 +01:00
Nick Rolfe
2e80926951
Ruby: fix a couple of references to deprecated names
2022-10-04 16:45:08 +01:00
Mathias Vorreiter Pedersen
32839021f8
C++: Fix join that might blow up in the future.
2022-10-04 16:43:02 +01:00
Nick Rolfe
445241fd95
Ruby: add missing qldoc comment
2022-10-04 16:31:54 +01:00
Nick Rolfe
2315a177fe
Ruby: add changenote for ActionView/Controller class renames
2022-10-04 16:22:11 +01:00
Nick Rolfe
227100d883
Ruby: make old class names available as deprecated aliases
2022-10-04 16:11:43 +01:00
Ed Minnix
3c7f5420db
Update metadata to match CWE-926
2022-10-04 10:48:05 -04:00
Geoffrey White
6380cc82ce
Merge pull request #10681 from geoffw0/classorstruct
...
Swift: Use ClassOrStructDecl
2022-10-04 15:44:28 +01:00
Ed Minnix
f888c4b279
Move files from CWE-276 to CWE-926
2022-10-04 10:40:34 -04:00
Geoffrey White
0ed89fb11a
Swift: Use ClassOrStructDecl.
2022-10-04 15:10:41 +01:00
Geoffrey White
d4742d22a0
Swift: 'Data' should be a struct.
2022-10-04 15:10:41 +01:00
Alex Ford
703829c647
Ruby: use taint tracking for rb/sensitive-get-query
2022-10-04 15:04:41 +01:00
Geoffrey White
e196caa7bd
Merge pull request #10595 from MathiasVP/swift-class-or-struct
...
Swift: Add `ClassOrStructDecl` class
2022-10-04 14:56:53 +01:00
Tamas Vajk
ea0a04a74f
Kotlin: extract unary plus and minus operators
2022-10-04 15:18:35 +02:00
Tamas Vajk
2e72ec748f
Kotlin: add numeric unary operator test cases
2022-10-04 15:18:35 +02:00
Erik Krogh Kristensen
264d74f996
Merge pull request #10676 from erik-krogh/kernelOpenMsg
...
RB: add a link to the source in the alert-message for `rb/kernel-open`
2022-10-04 15:18:15 +02:00
Michael Nebel
52d2dd71c0
Java: Make equivalent fix to the telemetry queries as made for C#.
2022-10-04 15:16:21 +02:00
Michael Nebel
6c6b4ce131
C#: Fix issue with TestLibraries not being excluded in the Telemetry queries and add Moq as a testlibrary.
2022-10-04 14:58:37 +02:00
Ian Lynagh
db673c0355
Merge pull request #10646 from tamasvajk/kotlin-java-kotlin-function-mapping
...
Kotlin: Simplify `kotlinFunctionToJavaEquivalent`
2022-10-04 13:46:22 +01:00
Rasmus Wriedt Larsen
60527dfc17
Python: Fix py/meta/alerts/remote-flow-sources-reach
2022-10-04 14:42:51 +02:00
erik-krogh
dedbe66619
update expected output
2022-10-04 14:16:07 +02:00
Michael Nebel
3455dd5e06
C#: Re-factor telemetry queries to avoid code duplication.
2022-10-04 14:13:50 +02:00
Tamas Vajk
81fffce79b
Kotlin: Extract parameter modifiers (noinline, crossinline)
2022-10-04 14:02:06 +02:00
Michael Nebel
2bbfdcf598
C#: Use api info string ordering and results to avoid multiplicity issues.
2022-10-04 13:51:35 +02:00
Erik Krogh Kristensen
5ba7c13ecd
fix alert-message by adding the link
...
Co-authored-by: Arthur Baars <aibaars@github.com >
2022-10-04 13:50:25 +02:00
erik-krogh
d370b2a51e
simplify the where clause of rb/kernel-open
2022-10-04 13:49:50 +02:00
erik-krogh
bf74481f65
add a link to the source in the alert-message for rb/kernel-open
2022-10-04 13:41:50 +02:00
Tamas Vajk
09051e76cf
Kotlin: extract isEnumConstant relation
2022-10-04 13:30:02 +02:00
Tamas Vajk
876bea653d
Kotlin: Add test case for missing enum constants
2022-10-04 13:29:15 +02:00
Tamas Vajk
d2861361d9
Kotlin: extract implInterface
2022-10-04 13:12:01 +02:00
Tamas Vajk
d50be83f57
Kotlin: add test to distinguish implements vs extends
2022-10-04 13:10:19 +02:00
Arthur Baars
88b5d4da16
Ruby: extend may have multiple arguments
2022-10-04 12:58:50 +02:00
Arthur Baars
ab3a62de3c
Update ruby/ql/lib/codeql/ruby/dataflow/internal/DataFlowPrivate.qll
2022-10-04 12:58:50 +02:00
Tom Hvitved
6e61ef10b8
Ruby: Add another dataflow copy
2022-10-04 12:58:50 +02:00
Tom Hvitved
9d7d6c29f9
Review comments
2022-10-04 12:58:50 +02:00
Tom Hvitved
77c47bc856
Ruby: Add another call graph test
2022-10-04 12:58:49 +02:00
Arthur Baars
44cc6f7350
Ruby: improve tracking of regular expressions
...
There are two flavours of `match?`. If the receiver of `match?` has type String
then the argument to `match?` is a regular expression. However, if the receiver of
`match?` has type Regexp then the argument is the text.
The role of receiver and argument flips depending on the type of the receiver, this
caused a lot of false positives when looking for string-like literals that are
used as a regular expression.
This commit attempts to improve things by trying to determine whether the type of the
receiver is known to be of type Regexp. In such cases we know that the argument
is unlikely to be regular expression.
2022-10-04 12:58:49 +02:00
Arthur Baars
0160c374e4
Ruby: add flow summaries for Object#dup and Kernel#tap
2022-10-04 12:58:49 +02:00
Arthur Baars
5d55daa491
Ruby: use resolveConstantReadAccess instead of trackModuleAccess for 'extend' calls
...
This avoids non-linear recursion at the cost of losing some results.
2022-10-04 12:58:49 +02:00
Arthur Baars
c2b98a4761
Ruby: add support for 'extend' method
2022-10-04 12:58:49 +02:00
Arthur Baars
09bc78eafc
Ruby: local dataflow step for || and &&
2022-10-04 12:58:49 +02:00
Arthur Baars
e95b5468d9
Ruby: use Dataflow for Pathname instead of TypeTracking
2022-10-04 12:58:49 +02:00
Arthur Baars
f9b952f04f
Ruby: Pathname use TypeTracker instead of local flow
2022-10-04 12:58:49 +02:00
Jami Cogswell
25cb3236a2
apply review suggestions
2022-10-04 12:33:24 +02:00
Jami Cogswell
91db1be399
update Intent file
2022-10-04 12:33:24 +02:00
Jami Cogswell
960e9db2fb
add missing expectation to tests
2022-10-04 12:33:24 +02:00
Tony Torralba
1857a5d311
Refactor Intent flow steps
2022-10-04 12:33:24 +02:00
Jami Cogswell
00b0a6bf38
update act tests
2022-10-04 12:33:23 +02:00
Jami Cogswell
834927c50b
update tests
2022-10-04 12:33:23 +02:00
Jami Cogswell
9a7cf7db65
simplify hasName usage
2022-10-04 12:33:23 +02:00
Jami Cogswell
c7e7e24cf8
clean up files
2022-10-04 12:33:23 +02:00
Jami Cogswell
012cfebd7a
resolve merge conflict
2022-10-04 12:33:23 +02:00
Jami Cogswell
da7f27a7f2
add change note
2022-10-04 12:33:23 +02:00
Jami Cogswell
66b3c4687d
resolve merge conflict
2022-10-04 12:33:23 +02:00
Jami Cogswell
0a135a7f21
resolve merge conflict
2022-10-04 12:33:23 +02:00
Jami Cogswell
0f64361065
remove simple query
2022-10-04 12:33:23 +02:00
Jami Cogswell
af812cf407
fix code scanning bot warnings
2022-10-04 12:33:23 +02:00
Jami Cogswell
47fcbdd4b4
resolve merge conflict
2022-10-04 12:33:23 +02:00
Jami Cogswell
d07babe3c5
add initial framework for service and receiver test cases
2022-10-04 12:33:23 +02:00
Jami Cogswell
6cf3898101
add experimental global flow config, and clean-up some code
2022-10-04 12:33:23 +02:00
Jami Cogswell
9947b32446
resolve merge conflict
2022-10-04 12:33:23 +02:00
Jami Cogswell
11ce910c38
resolved merge conflict in FlowSources
2022-10-04 12:33:23 +02:00
Jami Cogswell
7576047214
create simple query and initial experimentation
2022-10-04 12:33:23 +02:00
Nick Rolfe
dd1b302fce
Ruby: revert making inActionViewContext private
2022-10-04 11:29:09 +01:00
Tony Torralba
9db65eae7f
Address review comments
2022-10-04 12:27:01 +02:00
Tony Torralba
b8fa9433be
Fix duplicated test
2022-10-04 12:27:01 +02:00
Tony Torralba
264d6db9d7
Rename AllowListGuard to AllowedPrefixGuard
2022-10-04 12:27:01 +02:00
Tony Torralba
90020b6aab
Make block lists work with substring matching too
...
A block list approach doesn't need to restrict itself to prefix matching
2022-10-04 12:27:01 +02:00
Tony Torralba
69d1895175
Update java/ql/lib/semmle/code/java/security/PathSanitizer.qll
2022-10-04 12:27:01 +02:00
Tony Torralba
6fcaae20e7
Add tests and fix bugs highlighted by them
2022-10-04 12:27:01 +02:00
Tony Torralba
f19eb783be
Generalize file/path taint steps
...
This is needed by PathSanitizer but also helps simplify ZipSlip.ql
2022-10-04 12:27:01 +02:00
Tony Torralba
4e29c39c78
Merge ZipSlip sanitization logic into PathSanitizer.qll
...
Apply code review suggestions regarding weak sanitizers
2022-10-04 12:27:01 +02:00
Tony Torralba
89d905cc03
Add change note
2022-10-04 12:27:01 +02:00
Tony Torralba
08c67fb174
Use PathInjectionSanitizer in relevant queries
2022-10-04 12:27:01 +02:00
Tony Torralba
dff878e531
Apply TaintedPath recent changes to TaintedPathLocal
2022-10-04 12:26:59 +02:00
Tony Torralba
5706e8b377
Improve PathSanitizer
...
Rename PathTraversalSanitizer to PathInjectionSanitizer
2022-10-04 12:26:17 +02:00
Tony Torralba
50ad234694
Move PathSanitizer to the main library
2022-10-04 12:26:17 +02:00
Tony Torralba
d5478a01ab
Merge pull request #10671 from github/revert-10640-atorralba/fix-cartesian-product
...
Java: Revert #10489 and #10640
2022-10-04 12:25:46 +02:00
Chris Smowton
e29be411ef
Merge pull request #9811 from smowton/smowton/feature/kotlin-jvmoverloads-annotation
...
Kotlin: Implement JvmOverloads annotation
2022-10-04 11:21:44 +01:00
Nick Rolfe
a738f1d5cf
Ruby: remove public abstract classes for Action{View,Controller}
2022-10-04 10:53:41 +01:00
Asger F
948594043d
Ruby: share type-tracking test with array test
2022-10-04 11:15:13 +02:00
Asger F
28f4dff1d3
Python: sync
2022-10-04 11:15:11 +02:00
Asger F
b6231e82ec
Ruby: do not treat WithoutElement[0..!] as a type filter
2022-10-04 11:14:31 +02:00
Asger F
3ccc3a2058
Ruby: move special treatment of Hash.[] into Hash.qll
2022-10-04 11:14:31 +02:00
Asger F
94d41b9fa4
Ruby: add hook for adding type-tracking steps
...
fixup docs
fixup docs
fixup TypeTrackingStep
2022-10-04 11:14:31 +02:00
Asger F
96711b2810
Ruby: improve join order in trackInstanceRec
2022-10-04 11:14:31 +02:00
Asger F
6e7aea85ef
Ruby: update benign test output
...
API graph tests only report the shortest path, and a new shortest path has appeared, but the old path is still there, so this is not a regression.
2022-10-04 11:14:31 +02:00
Asger F
c220f4e103
Ruby: prune unusable summaries earlier
...
Ruby: prune more aggressively
2022-10-04 11:14:30 +02:00
Asger F
ff4ce4a151
Ruby: use Element[n..] tokens in inject and reduce
2022-10-04 11:14:30 +02:00
Asger F
fd9c1e4507
Ruby: filter out obvious module 'prepend' calls
2022-10-04 11:14:30 +02:00
Asger F
00e52ad109
Ruby: add type-tracking variant of hash-flow test
...
Ruby: fixup type-tracking hash flow test
Fixup! type-tracking hash flow test result
2022-10-04 11:14:30 +02:00
Asger F
9302271c15
Ruby: Hack special-casing of hash literals
2022-10-04 11:14:30 +02:00
Asger F
bd11946aec
Ruby: support WithoutContent steps in restricted cases
...
fixup ContentFilter
fixup basicWith(out)contentstep
2022-10-04 11:14:28 +02:00
Asger F
323abf45ca
Ruby: Speed up evaluateSummaryComponentStackLocal
2022-10-04 11:12:09 +02:00
Asger F
a7d764d2a7
Ruby: Improve join order when generating edges
2022-10-04 11:12:09 +02:00
Asger F
8c43ab627f
Ruby: go to local source in load-store steps
2022-10-04 11:11:50 +02:00
Tony Torralba
2deb3e5625
Reapply "Java: Fix cartesian product"
...
This reverts commit c1654ce7cc .
2022-10-04 11:11:44 +02:00
Asger F
8b389fe5f9
Ruby: use getACallSimple in more Hash methods
2022-10-04 11:08:46 +02:00
Asger F
74c3886167
Ruby: use getACallSimple in more Array methods
2022-10-04 11:08:46 +02:00
Asger F
c06743afb5
Ruby: update benign test updates
2022-10-04 11:08:46 +02:00
Asger F
f75f27d30e
Ruby: update test
2022-10-04 11:08:46 +02:00
Asger F
5b2d8b0894
Ruby: make Array.each a simple summary
2022-10-04 11:08:46 +02:00
Asger F
fbab0f50f2
Ruby: Evaluate longer summary component stacks
2022-10-04 11:08:46 +02:00
Asger F
0000a7d429
Ruby: Summarize load-store steps in type-tracking
...
fixup to LoadStore
2022-10-04 11:08:44 +02:00
Asger F
a4d4e406c6
Ruby: Summarize level steps in type tracking
2022-10-04 11:06:44 +02:00
Asger F
1c484d80aa
Ruby: add some calls to .each in call graph test
2022-10-04 11:06:44 +02:00
Asger F
ab672ded6a
Ruby: strip trailing whitespace in calls.rb test
2022-10-04 11:06:44 +02:00
tyage
7205903a36
Using implicit this
2022-10-04 18:06:30 +09:00
Chris Smowton
58cb5446c3
Add cross-check to getValueParameterLabel
2022-10-04 10:04:18 +01:00
Tony Torralba
281e49daf7
Revert "Java: Add CompilationUnit.getATypeAvailableBySimpleName()"
...
This reverts commit 431aa2cb79 .
2022-10-04 10:59:45 +02:00
Tony Torralba
01b950f68b
Revert "Java: Rename predicate to getATypeInScope"
...
This reverts commit fd99ae78b3 .
2022-10-04 10:59:43 +02:00
Tony Torralba
df29e05b9f
Revert "Java: Adjust ImpossibleJavadocThrows.ql"
...
This reverts commit c40b6285a2 .
2022-10-04 10:59:39 +02:00
Tom Hvitved
12536578d4
Merge pull request #10664 from hvitved/type-tracking-more-caching
...
Ruby/Python: Cache more type tracking predicates
2022-10-04 10:58:41 +02:00
tyage
f47c02431a
Merge branch 'main' into property-stringify
2022-10-04 09:57:54 +01:00
tyage
6ec2abbd2d
add change note
2022-10-04 17:57:08 +09:00
Tony Torralba
c1654ce7cc
Revert "Java: Fix cartesian product"
2022-10-04 10:56:32 +02:00
tyage
192c1f3d89
make test json.stringify
2022-10-04 17:40:52 +09:00
Mathias Vorreiter Pedersen
2593120300
Merge pull request #10597 from geoffw0/swifttaintsource
...
Swift: URL taint sources
2022-10-04 09:22:27 +01:00
tyage
726cd2ca8a
refactor test
2022-10-04 17:11:37 +09:00
tyage
9df0720da9
refactoring
2022-10-04 17:05:49 +09:00
tyage
2006ae8332
rename file
2022-10-04 17:05:15 +09:00
Tom Hvitved
76abf6fbd6
C#: Add another dotnet run integration test
2022-10-04 09:56:24 +02:00
Tom Hvitved
01830904ff
C#: Recognize options to dotnet run in tracer when injecting -p:UseSharedCompilation=false
2022-10-04 09:54:48 +02:00
Tamas Vajk
2c467376ea
Revert "Only log once the missing java-kotlin method mapping warnings"
...
This reverts commit 7524f3372d .
2022-10-04 08:54:07 +02:00
tyage
8a7f23a8ea
support VarRef
2022-10-04 14:45:39 +09:00
tyage
33d204913c
add test for json stringify xss
2022-10-04 14:45:09 +09:00
Dilan Bhalla
888d756472
Merge branch 'dilan-java/guidance-exectainted' of https://github.com/dilanbhalla/codeql into dilan-java/guidance-exectainted
2022-10-03 14:49:45 -07:00
Dilan Bhalla
536276a82b
Merge branch 'main' of https://github.com/github/codeql into dilan-java/guidance-exectainted
2022-10-03 14:48:50 -07:00
dilanbhalla
35948b097d
Merge branch 'main' into dilan-java/guidance-exectainted
2022-10-03 13:56:05 -07:00
Rasmus Wriedt Larsen
d7be27a1c0
Python: Fix experimental py/ip-address-spoofing
...
I realized the modeling was done in a non-recommended way, so I changed
the modeling. It was very nice that I could use API graphs for the flask
part, and a little sad when I couldn't for Django/Tornado.
2022-10-03 21:19:30 +02:00
Harry Maclean
42a97b26bb
Merge pull request #10316 from hmac/hmac/actionview
...
Ruby: Model ActionView
2022-10-04 08:16:16 +13:00
Rasmus Wriedt Larsen
b01a0ae696
Python: Adjust .expected after flask source change
...
It's really hard to audit that this is all good.. I tried my best with
`icdiff` though -- and there is a problem with
ql/src/experimental/Security/CWE-348/ClientSuppliedIpUsedInSecurityCheck.ql
that needs to be fixed in the next commit
2022-10-03 20:35:49 +02:00
Robert Marsh
98f4caf76f
Merge pull request #10645 from MathiasVP/add-more-range-analysis-tests
...
C++: Port SimpleRangeAnalysis tests to the new range-analysis
2022-10-03 14:34:56 -04:00
Robert Marsh
8d1817bc48
Merge pull request #10635 from MathiasVP/add-heuristic-allocation-class
...
C++: Recognize allocation functions heuristically
2022-10-03 14:34:09 -04:00
Tom Hvitved
e57c3bec63
Sync files
2022-10-03 20:29:39 +02:00
Tom Hvitved
bc3e9339dc
Ruby: Cache more type tracking predicates
2022-10-03 20:29:17 +02:00
Dilan Bhalla
bff2633f8d
java guidance: experimental version of exectainted
2022-10-03 11:18:17 -07:00
Ed Minnix
c6f91500f0
Update query description to better describe issue
2022-10-03 13:12:53 -04:00
Mathias Vorreiter Pedersen
872615bd58
Merge pull request #10536 from karimhamdanali/ecbmode
...
Swift: check for using ECB encryption mode
2022-10-03 17:53:10 +01:00
Ed Minnix
52d519765a
Merge ContentProvider tests into one manifest
...
Merge the read-only, write-only, read-write, and full test cases into
one AndroidManifest.xml file.
Also added the not-exported test case.
2022-10-03 12:16:45 -04:00
Ed Minnix
09077935b1
Added query change note
2022-10-03 11:30:43 -04:00
Edward Minnix III
071f082b64
Add mention of content provider in query description
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-10-03 11:21:33 -04:00
Edward Minnix III
2970e8c76a
Remove redundant documentation
...
Co-authored-by: Jami <57204504+jcogs33@users.noreply.github.com >
2022-10-03 11:21:02 -04:00
Edward Minnix III
cfc0bb595f
Documentation fix for hasIncompletePermissions
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-10-03 11:20:15 -04:00
Ian Lynagh
01fe465bdf
Kotlin: Make MiniStdLib more closely match the real stdlib
2022-10-03 16:16:11 +01:00
Tony Torralba
a589d8f647
Merge pull request #10662 from atorralba/atorralba/fix-stub-generator
...
Java: Fix stub generator
2022-10-03 16:59:10 +02:00
Ed Minnix
28e7049722
Add exported requirement to ContentProvider permissions test
2022-10-03 10:52:42 -04:00
Aditya Sharad
f7d455efc5
Merge pull request #10612 from adityasharad/docs/system-requirements
...
Docs: Add CodeQL system requirements page
2022-10-03 07:50:44 -07:00
Chris Smowton
5e2c607650
PrintAst: reliably sort function overloads
2022-10-03 15:28:55 +01:00
Chris Smowton
d3d3ce843a
Kotlin: Implement JvmOverloads annotation
...
This generates functions that omit parameters with default values, rightmost first, such that Java can achieve a similar experience to Kotlin (which represents calls internally as if the default was supplied explicitly, and/or uses a $default method that supplies the needed arguments).
A complication: combining JvmOverloads with JvmStatic means that both the companion object and the surrounding class get overloads.
2022-10-03 15:28:55 +01:00
Tony Torralba
ba9eb8c73c
Fix stub generator
...
Add line break after all stubbed annotations to avoid malformed code
See https://github.com/github/codeql/pull/8695\#discussion_r985674245
2022-10-03 14:43:58 +02:00
Tamas Vajk
a5172791ed
Code quality improvements
2022-10-03 14:03:16 +02:00
Tom Hvitved
d52d3d7b75
Merge pull request #10644 from hvitved/ruby/prevent-reevaluation
...
Ruby: Prevent reevaluation of expensive predicates
2022-10-03 13:10:39 +02:00
Tony Torralba
9942dfff21
Merge pull request #8695 from atorralba/atorralba/stub-generator-annotation-types
...
Java: Add support for Annotation types stub generation
2022-10-03 12:54:20 +02:00
Karim Ali
d44f6b0f41
fix formatting issue raised by ql-format
2022-10-03 12:18:01 +02:00
Tamas Vajk
90b28f04d8
Accept integration test changes
2022-10-03 12:10:08 +02:00
Tamas Vajk
7524f3372d
Only log once the missing java-kotlin method mapping warnings
2022-10-03 11:55:39 +02:00
Rasmus Wriedt Larsen
a0fcd4a9bf
Merge pull request #10631 from RasmusWL/cleanup-options-files
...
Python: Remove last `-p ../lib/` in `options` files
2022-10-03 11:09:59 +02:00
Tony Torralba
f860ae8c82
Apply review suggestions
2022-10-03 10:38:35 +02:00
Tony Torralba
2036453176
Add stub generation tests
2022-10-03 10:31:14 +02:00
Tony Torralba
0645f62a0d
Use monotonicAggregates to avoid non-monotonic recursions
2022-10-03 10:31:14 +02:00
Tony Torralba
66e6f4d25e
Use empty string as default value for string annotation values
2022-10-03 10:31:14 +02:00
Tony Torralba
8a3ed6bdcf
Apply code review suggestions
2022-10-03 10:31:14 +02:00
Tony Torralba
6f7b7c9efe
If an annotation value is an array, order its elements by index
2022-10-03 10:31:14 +02:00
Tony Torralba
6f1124d7e7
Handle more annotation element value types
2022-10-03 10:31:13 +02:00
Tony Torralba
1ece12efd7
Add annotation element names
2022-10-03 10:31:13 +02:00
Tony Torralba
d4499a10d2
Fix typo
2022-10-03 10:31:13 +02:00
Tony Torralba
ee7507386c
Fix annotation vs interface keyword stubbing
2022-10-03 10:31:13 +02:00
Tony Torralba
eda676df3e
Add support for Annotation types stub generation
2022-10-03 10:31:13 +02:00
Tamas Vajk
ffc7e6b7b6
Extract bit not expression
2022-10-03 10:30:46 +02:00
Tamas Vajk
54b210f176
Extract logical not expression
2022-10-03 10:23:40 +02:00
Tamas Vajk
a2d0b38a6d
Kotlin: extract all binary numeric operators
2022-10-03 09:52:00 +02:00
Erik Krogh Kristensen
3d00a61dac
Merge pull request #10528 from erik-krogh/java-followMsg
...
Java: Update the alert messages to better follow the style guide
2022-10-03 09:49:47 +02:00
Asger F
47e5623b90
Merge pull request #10639 from hvitved/ruby/dataflow/known-element-no-floats-complexs
...
Ruby: Do not attempt to track precise hash indices for floats and complex numbers
2022-10-03 09:23:33 +02:00
Tony Torralba
683cacb8b5
Merge pull request #10640 from atorralba/atorralba/fix-cartesian-product
...
Java: Fix cartesian product
2022-10-03 08:56:47 +02:00
Harry Maclean
eaf6eb009b
Update tests
2022-10-03 17:17:58 +13:00
Harry Maclean
e48665ad9f
Fix doc
2022-10-03 14:13:12 +13:00
Harry Maclean
236b628ee2
Ruby: Constrain parameters flow properly
2022-10-03 14:06:06 +13:00
Harry Maclean
32baf67b07
Fix change note month
2022-10-03 09:46:01 +13:00
Harry Maclean
5c20039e09
Ruby: Slightly improve class name
2022-10-03 09:46:01 +13:00
Harry Maclean
fa1ae26fab
Add change note
2022-10-03 09:46:01 +13:00
Harry Maclean
a5998fbe4d
Ruby: Model ActionController::Parameters
...
Add flow summaries for methods on ActionController::Parameters,
which mostly propagate taint from receiver to return value.
2022-10-03 09:45:59 +13:00
Harry Maclean
ba83b7c6c7
Merge pull request #10599 from hmac/hmac/actioncontroller-datastreaming
...
Ruby: Model send_file
2022-10-03 09:44:05 +13:00
erik-krogh
39ffa558f1
make a few more queries consistent with the other languages
2022-10-02 22:38:25 +02:00
Alex Ford
5c32c8badf
Merge pull request #10560 from alexrford/ruby/yaml-load_file
...
Ruby: treat `Psych` and `YAML` as aliases for rb/unsafe-deserialization
2022-10-02 20:19:10 +01:00
Karim Ali
9e3d5f49c5
add interprocedural cases to the tests
2022-10-02 15:54:39 +02:00
Karim Ali
72ba77d900
Add rule that checks for using the insecure ECB block mode for encryption
2022-10-02 15:53:39 +02:00
Karim Ali
5e189b8c75
update qhelp
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-10-02 15:50:26 +02:00
Karim Ali
677946d19d
update typos to address requested changes
2022-10-02 15:50:26 +02:00
Karim Ali
dbc86b2cd8
update qhelp to adjust for US spelling + improved readability
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-10-02 15:50:26 +02:00
Karim Ali
a23e17a370
fix typo in qhelp
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-10-02 15:50:26 +02:00
Karim Ali
2409ba2c05
update query description
2022-10-02 15:50:26 +02:00
Karim Ali
2080f0dd36
address style violation in generated alerts
2022-10-02 15:50:26 +02:00
Karim Ali
f060f056c2
rename ECBEncryption to please the codeql formatter
2022-10-02 15:50:26 +02:00
Karim Ali
fe024ef91e
change TaintTracking::Configuration to DataFlow::Configuration
2022-10-02 15:50:25 +02:00
Karim Ali
21d5e417d1
add interprocedural cases to the tests
2022-10-02 15:50:25 +02:00
Karim Ali
9576e4c008
update qhelp to include a description for the accompanying example
2022-10-02 15:50:25 +02:00
Karim Ali
746f535ee5
Add rule that checks for using the insecure ECB block mode for encryption
2022-10-02 15:50:25 +02:00
erik-krogh
2f673efc67
autoformat
2022-10-01 13:21:20 +02:00
erik-krogh
129cda00db
get a few more queries in sync with other languages
2022-10-01 11:17:48 +02:00
erik-krogh
acfcc4bfe2
update two more queries to better follow the style-guide
2022-10-01 10:59:59 +02:00
erik-krogh
7d643e41f3
Merge branch 'main' into java-followMsg
2022-10-01 10:48:06 +02:00
Erik Krogh Kristensen
17e6b2af37
Merge pull request #10557 from erik-krogh/csharp-followMsg
...
C#: Update the alert messages to better follow the style guide
2022-10-01 10:47:43 +02:00
Aditya Sharad
fdd71d4647
Docs: Address review feedback on system requirements
2022-09-30 14:11:47 -07:00
erik-krogh
e2fe63f94a
autoformat
2022-09-30 23:11:43 +02:00
Robert Marsh
84f9c9b224
C++: query help for ConstantSizeArrayOffByOne.ql
2022-09-30 15:15:24 -04:00
Robert Marsh
159f11cd28
C++: fill in more query metadata
2022-09-30 15:07:08 -04:00
Robert Marsh
8972176242
C++: autoformat
2022-09-30 14:22:33 -04:00
Tom Hvitved
292bc67125
Merge pull request #10620 from hvitved/ruby/call-graph-protected-methods
...
Ruby: Account for `protected` methods in call graph
2022-09-30 19:31:36 +02:00
Mathias Vorreiter Pedersen
cd65e73ade
C++: Fix database inconsistency issue from ODR violation.
2022-09-30 17:04:23 +01:00
Tamas Vajk
343e45ee0f
Fix kotlinFunctionToJavaEquivalent to ignore nullability
2022-09-30 17:39:42 +02:00
Robert Marsh
8ac8101a75
C++: convert to path-problem
2022-09-30 11:35:02 -04:00
Robert Marsh
423e0bf99a
C++: respond to style comments on PR
2022-09-30 11:27:14 -04:00
Tamas Vajk
e490a854ce
Simplify kotlinFunctionToJavaEquivalent and accept consistency errors
2022-09-30 16:28:26 +02:00
Tamas Vajk
c4487110db
Accept consistency check findings
2022-09-30 16:28:26 +02:00
Tamas Vajk
11de55e3cb
Kotlin: Add consistency query to check missing java equivalent functions
2022-09-30 16:28:26 +02:00
Tom Hvitved
dd7458acc8
Ruby: Add more call graph tests for protected methods
2022-09-30 16:24:34 +02:00
Tom Hvitved
32d002ed60
Merge pull request #10627 from hvitved/ruby/synthesis-reduce-non-linear-rec
...
Ruby: Reduce size of input predicate for non-linear recursion
2022-09-30 15:36:21 +02:00
Mathias Vorreiter Pedersen
56b5010f6b
C++: Convert the SimpleRangeAnalysis test to an InlineExpectationsTest.
2022-09-30 14:23:18 +01:00
Mathias Vorreiter Pedersen
d14b2c2880
C++: Put quotes around expectation comments with spaces.
2022-09-30 14:23:18 +01:00
Mathias Vorreiter Pedersen
c4c7c95db2
C++: Add SimpleRangeAnalysis test file to the new range-analysis library test directory.
2022-09-30 14:23:14 +01:00
Tamás Vajk
5017b21579
Merge pull request #10617 from tamasvajk/kotlin-op-calls
...
Kotlin: extract operator expression when operator is in method call form
2022-09-30 15:19:03 +02:00
Arthur Baars
d54a3059b4
Merge pull request #10642 from github/aibaars-patch-2
...
Run QLHelp preview for all languages
2022-09-30 15:13:48 +02:00
Tom Hvitved
3ec43dbd16
Ruby: Do not attempt to track precise hash indices for floats and complex numbers
2022-09-30 14:57:50 +02:00
Tom Hvitved
dc432c7774
Sync shared files
2022-09-30 14:56:56 +02:00
Tom Hvitved
e5d884a905
Ruby: Cache predicates in ApiGraphModels::ModelOutput
2022-09-30 14:56:55 +02:00
Tom Hvitved
299339f817
Ruby: Expose relevant predicates from internal/Module.qll and make sure they are cached
2022-09-30 14:56:55 +02:00
erik-krogh
318718c428
update expected output
2022-09-30 14:51:41 +02:00
Nora Dimitrijević
28606c561d
C++: Simplify normalizeExpr
...
This has a comparable but different set of FPs as the previous version.
But arguably it's an improvement.
2022-09-30 14:35:54 +02:00
Asger F
6e1914ad01
Merge pull request #10375 from asgerf/rb/summarize-loads-v2
...
Ruby: type-tracking and API edges through simple library callables
2022-09-30 14:25:17 +02:00
Tamas Vajk
121a5645b8
Kotlin: extract operator expression when operator is in method call form
2022-09-30 13:48:53 +02:00
Tamas Vajk
0f9b6d4a8b
Kotlin: Add test cases for operators being called by name
2022-09-30 13:46:57 +02:00
erik-krogh
7098e7b102
change more queries to start with "This "
2022-09-30 13:29:18 +02:00
Nick Rolfe
ef8ec0878a
Merge pull request #10641 from github/nickrolfe/a_an
...
JS/Python/Ruby: s/a HTML/an HTML/
2022-09-30 12:17:15 +01:00
CodeQL CI
b66e5c5aee
Merge pull request #10634 from yoff/python/rewrite-typetrackers
...
Approved by tausbn
2022-09-30 03:55:35 -07:00
Nora Dimitrijević
9a94222dbe
C++: Exclude commas from SwitchStmt.getExpr()
2022-09-30 12:32:03 +02:00
Nora Dimitrijević
4938de9185
C++: Fix docstring per suggestion
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2022-09-30 12:28:18 +02:00
Mathias Vorreiter Pedersen
fa12bd3cdf
C++: Fix spelling.
2022-09-30 11:22:26 +01:00
Arthur Baars
c7b01975c1
Run QLHelp preview for all languages
2022-09-30 12:08:05 +02:00
Tamás Vajk
ee59bdab25
Merge pull request #10624 from tamasvajk/kotlin-java-fn-equivalence-remove
...
Kotlin: find java-kotlin equivalent functions by erased parameter types
2022-09-30 12:00:46 +02:00
Ian Lynagh
9be2ca2f1e
Merge pull request #10630 from igfoo/igfoo/ver0
...
Kotlin: Make newerThan symmetric
2022-09-30 10:52:42 +01:00
Nick Rolfe
ed74e0aad1
JS/Python/Ruby: s/a HTML/an HTML/
2022-09-30 10:37:52 +01:00
Mathias Vorreiter Pedersen
483ff58c39
C++: Replace the giant list of predicate parameters with a module signature.
2022-09-30 10:36:03 +01:00
Henti Smith
476960e699
Merge pull request #10625 from github/henti/ql_jobrunson
...
Added job.getRunsOn
2022-09-30 10:19:14 +01:00
Mathias Vorreiter Pedersen
b0af4cba30
C++: Fix Code Scanning alert.
2022-09-30 10:05:45 +01:00
Mathias Vorreiter Pedersen
6d5de66e6a
C++: Add QLDoc to the parameterized module components in 'Allocation.qll'.
2022-09-30 10:04:57 +01:00
Tony Torralba
585cbe2b95
Fix cartesian product
2022-09-30 10:47:22 +02:00
Erik Krogh Kristensen
06ea829537
Merge pull request #10636 from erik-krogh/fixHardcoded
...
JS: recognize another kind of dummy passwords to fix an FP in hardcoded-credentials
2022-09-30 10:42:01 +02:00
Henti Smith
074fac8f2f
Ran autoformatter on Actions.qll
2022-09-30 09:24:12 +01:00
Michael Nebel
82294c1349
Merge pull request #10622 from michaelnebel/ruby/postupdateassignexpr
...
Ruby: Postupdate notes for assignment expressions.
2022-09-30 10:00:02 +02:00
Michael Nebel
c867f2ba5b
Merge pull request #10594 from michaelnebel/csharp/postupdatenotes
...
C#: Postupdate notes for ternary expressions.
2022-09-30 09:56:21 +02:00
Harry Maclean
4a39bc8f47
Merge pull request #10598 from hmac/hmac/actioncontroller-metal
...
Ruby: Identify ActionController::Metal controllers
2022-09-30 13:07:03 +13:00
Nora Dimitrijević
c37c6a004e
Merge branch 'main' into cpp/comma-before-misleading-indentation
2022-09-30 00:28:33 +02:00
Nora Dimitrijević
818be2765e
C++: Add Change Note
2022-09-30 00:28:12 +02:00
Nora Dimitrijević
6eac4f52d9
C++: Accept Test Output
...
Some tricky FPs are preserved in there.
2022-09-30 00:13:23 +02:00
Nora Dimitrijević
a124dcf436
C++: Update QLDoc
...
Arguably warning, not just recommendation; it may be a logic error.
TODO: What CWE/CVEs should I tag this with?
2022-09-30 00:06:53 +02:00
Nora Dimitrijević
981a9798b8
C++: Update .qhelp with precision disclaimer.
2022-09-29 23:59:22 +02:00
Nora Dimitrijević
68b473377a
C++: Fix QL-on-QL Redundant Cast warning
2022-09-29 23:19:49 +02:00
Nora Dimitrijević
2a046352ce
C++: Simplify
2022-09-29 23:06:17 +02:00
erik-krogh
9f2d7dfb29
update expected output
2022-09-29 22:48:41 +02:00
Ed Minnix
2a2878fc7b
Move text into paragraph tag
2022-09-29 16:33:22 -04:00
Ed Minnix
e3c0e6f52a
Remove location link from alert message
...
Follow the style suggestion from the github-code-scanning bot and remove
provider element from alert link
2022-09-29 16:20:48 -04:00
Ed Minnix
90590429e3
Added change note for ContentProvider query
2022-09-29 16:17:52 -04:00
Robert Marsh
f17b563692
C++: handle interprocedural flows
...
This currently copy-pastes some predicates from InvalidPointerDeref.ql.
Those should be moved to a library file in a followup
2022-09-29 16:09:48 -04:00
Ed Minnix
29e34ac970
ContentProvider Incomplete Permissions Test Cases
2022-09-29 16:07:54 -04:00
erik-krogh
0a5ff1b79a
recognize another kind of dummy passwords to fix an FP in hardcoded-credentials
2022-09-29 21:25:40 +02:00
yoff
8ab5617b51
Merge pull request #10539 from yoff/python/improve-API-graphs
...
Python: add subscript to API graphs
2022-09-29 21:05:22 +02:00
Mathias Vorreiter Pedersen
2a514d60d4
C++: Add 'isBarrierIn' to prevent path duplication.
2022-09-29 19:55:58 +01:00
Mathias Vorreiter Pedersen
d12a76559a
C++: Use the new class in 'cpp/invalid-pointer-deref'.
2022-09-29 19:54:03 +01:00
Mathias Vorreiter Pedersen
a9710453f4
C++: Add class with heuristics to detect allocations.
2022-09-29 19:54:03 +01:00
Ed Minnix
f2bda1525a
Revert "Android ContentProvider.openFile does not check mode initital commit"
...
This reverts commit e37f62bb5e .
The MisconfiguedContentProviderUse.ql file provided a sample query which
will be useful in future checks for CVE-2021-41166, but is not needed
for the current manifest-focused check
2022-09-29 14:43:18 -04:00
Rasmus Lerchedahl Petersen
84ab860600
python: rewrite type tracker for ldap operations
...
There are several other clean ups I would like to do in this file,
but this can wait until we promote the query.
2022-09-29 20:32:19 +02:00
Rasmus Lerchedahl Petersen
0654e39e72
python: rewrite type tracker for compiled regexes
...
we have the option to use `regex.getAValueReachingSink`
rather than `regex.asSink`, but it will likely be used as a
sink for data flow.
2022-09-29 20:30:29 +02:00
James Fletcher
7ffbc738fb
Merge pull request #10632 from jf205/lgtm-updates
...
Remove a mentions of LGTM.com from the README and style guides
2022-09-29 19:29:32 +01:00
Ed Minnix
e72963986f
Moved Android manifest incomplete permission logic into library
2022-09-29 14:06:18 -04:00
Ed Minnix
dedd29e1b3
Incomplete Android content provider permissions documentation
2022-09-29 14:05:18 -04:00
Robert Marsh
99d7512881
C++: tests for constant-size off-by-one query
2022-09-29 13:33:13 -04:00
Ian Lynagh
f1f205555a
Kotlin: Add a ministdlib test
...
This should make it easier to diagnose certain kinds of problems.
2022-09-29 18:19:50 +01:00
Henry Mercer
35e9e7d233
Merge pull request #10613 from github/henrymercer/atm-update-expected-output
...
ATM: Update expected test output
2022-09-29 17:57:51 +01:00
Nora Dimitrijević
891bc342be
C++: Fix another implicit/explicit this FP
2022-09-29 18:42:23 +02:00
James Fletcher
8f6de12785
Merge branch 'main' into lgtm-updates
2022-09-29 17:37:54 +01:00
james
d75b1e399d
remove a few mentions of LGTM.com
2022-09-29 17:29:03 +01:00
Rasmus Wriedt Larsen
ea27f4e20f
Python: Remove last -p ../lib/ in options files
...
These were only needed for points-to.
If they only contained `--max-import-depth`, I've removed the `options`
file entirely.
2022-09-29 18:05:51 +02:00
Ian Lynagh
66a8bc5a96
Kotlin: Make newerThan symmetric
...
"0.0 last-modified 0" and "0.0 last-modified 123" were giving
different comparisons depending on which way round they were.
2022-09-29 16:55:03 +01:00
Rasmus Wriedt Larsen
0cb8e121e9
Python: Fix flask request modeling
...
This takes us part of the way. We still get multiple paths for the same
alert, but that will be fixed in a different PR.
2022-09-29 17:41:21 +02:00
Nora Dimitrijević
28bd591107
C++: Fix explicit this-> FP.
2022-09-29 17:04:11 +02:00
Robert Marsh
447c11cd07
C++: move ConstantSizeArrayOffByOne.ql to CWE-193
2022-09-29 10:56:29 -04:00
Robert Marsh
e46b215c9d
C++: fix metadata and result format
2022-09-29 10:53:29 -04:00
Nora Dimitrijević
29d7c0e21b
C++: Exclude commas in if-conditions.
2022-09-29 16:29:57 +02:00
Robert Marsh
9b03e1c0b1
Merge pull request #10609 from MathiasVP/overrun-write-only-flag-overrunning-write
...
C++: Make `OverrunWriteProductFlow` raise alerts on overflows
2022-09-29 10:03:05 -04:00
Tom Hvitved
a5fbe751f1
Ruby: Reduce size of input predicate for non-linear recursion
...
Before, we would be recursive in all of `MethodCall::getMethodName`:
```
Evaluated named local Synthesis#d9ff06b1::AssignOperationDesugar::SetterAssignOperation::getCallKind#ffff#shared#3@Synthesi in 9803ms on iteration 14 (size: 31006941).
Evaluated relational algebra for predicate Synthesis#d9ff06b1::AssignOperationDesugar::SetterAssignOperation::getCallKind#ffff#shared#3@Synthesi on iteration 14 running pipeline main with tuple counts:
256419 ~1% {2} r1 = SCAN Call#841c84e8::MethodCall::getMethodName#0#dispred#ff#prev_delta OUTPUT In.1, In.0
31006941 ~8% {4} r2 = JOIN r1 WITH Synthesis#d9ff06b1::MethodCallKind#ffff#prev ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Rhs.2, Rhs.3
return r2
```
Now, we have restricted that to only the relevant method names.
2022-09-29 15:59:11 +02:00
Asger F
ed36f1983b
Python: sync TypeTracker.qll
2022-09-29 15:57:09 +02:00
Asger F
ae60b0ae6d
Ruby: ensure pruning works with startInContent
2022-09-29 15:54:51 +02:00
Nora Dimitrijević
64903336f7
C++: Exclude all parenthesized CommaExprs.
2022-09-29 15:49:29 +02:00
Henti Smith
700eaf5e41
Added JobRunson
2022-09-29 14:19:02 +01:00
Mathias Vorreiter Pedersen
4e3b445515
C++: Accept test changes.
2022-09-29 13:35:23 +01:00
Mathias Vorreiter Pedersen
70837dbd93
C++: Use range analysis to properly deduce the initial 'state2' instead of traversing the AST. Also fix state-passing related to negative states.
2022-09-29 13:32:39 +01:00
Mathias Vorreiter Pedersen
6537c817ef
C++: Add more CWE-199 tests that allocates memory based on the result of a SubExpr.
2022-09-29 13:31:34 +01:00
Tamas Vajk
b79c10c419
Kotlin: find java-kotlin equivalent functions by erased parameter types
2022-09-29 14:29:22 +02:00
Tamas Vajk
64c953bee0
Kotlin: add test for not found equivalent of MutableList.remove
2022-09-29 14:24:09 +02:00
Michael Nebel
dd0f19d0b0
Ruby: Update expected test output.
2022-09-29 14:12:20 +02:00
Michael Nebel
999eb19c3d
Ruby: Support postupdate notes for assignment expressions.
2022-09-29 14:12:20 +02:00
Asger F
f1de5a2ffd
Ruby: Restrict summaries and type trackers to relevant contents
2022-09-29 14:10:09 +02:00
Tom Hvitved
1fcd22b0f6
Merge pull request #10621 from hvitved/ruby/fix-bad-join
...
Ruby: Fix bad join-order
2022-09-29 13:56:18 +02:00
Michael Nebel
af4db77046
Ruby: Update expected test output.
2022-09-29 13:54:59 +02:00
Michael Nebel
9ee831a378
Ruby: Add (failing) test case for flow out via assignment expression.
2022-09-29 13:54:32 +02:00
erik-krogh
77eeabe8e5
changed to address review
2022-09-29 13:39:59 +02:00
Nora Dimitrijević
909b36a078
C++: Fix implicit-this FP, uncovered non-funptr FP
2022-09-29 13:14:36 +02:00
erik-krogh
3129f0fc8c
add change-note
2022-09-29 13:02:25 +02:00
Asger F
dc03557aea
Merge branch 'main' into rb/summarize-loads-v2
2022-09-29 12:07:30 +02:00
Tom Hvitved
2bf087677f
Ruby: Fix bad join-order
...
Before
```
Evaluated relational algebra for predicate DataFlowDispatch#36b84300::mayBenefitFromCallContext1#6#ffffff@ba617c9q with tuple counts:
1066626 ~2% {3} r1 = SCAN project#Module#fe82a56b::Cached::lookupMethod#2 OUTPUT In.0, In.0, In.1
931393128 ~0% {4} r2 = JOIN r1 WITH DataFlowDispatch#36b84300::isInstanceLocalMustFlow#3#fff_102#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.2, Lhs.1, Rhs.2
298573 ~0% {6} r3 = JOIN r2 WITH DataFlowDispatch#36b84300::mayBenefitFromCallContext0#5#fffff_14023#join_rhs ON FIRST 2 OUTPUT Rhs.2, Rhs.3, Rhs.4, Lhs.2, Lhs.3, Lhs.1
return r3
```
After
```
Evaluated relational algebra for predicate DataFlowDispatch#36b84300::mayBenefitFromCallContext1#6#ffffff@f68de4dn with tuple counts:
583298 ~1% {5} r1 = SCAN DataFlowDispatch#36b84300::mayBenefitFromCallContext0#5#fffff OUTPUT In.1, In.0, In.2, In.3, In.4
583298 ~1% {5} r2 = JOIN r1 WITH DataFlowPrivate#462ff392::ArgumentNode#class#f ON FIRST 1 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4
442278 ~0% {6} r3 = JOIN r2 WITH DataFlowDispatch#36b84300::isInstanceLocalMustFlow#3#fff ON FIRST 1 OUTPUT Rhs.1, Lhs.4, Lhs.1, Lhs.2, Lhs.3, Rhs.2
298573 ~0% {6} r4 = JOIN r3 WITH project#Module#fe82a56b::Cached::lookupMethod#2 ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.0, Lhs.5, Lhs.1
return r4
```
2022-09-29 12:00:26 +02:00
Tom Hvitved
e9b96c19b8
Ruby: Account for protected methods in call graph
2022-09-29 11:58:04 +02:00
Asger F
296c0a7925
Merge pull request #10603 from asgerf/type-model-api-node
...
Add TypeModel.getAnApiNode
2022-09-29 11:39:09 +02:00
Tom Hvitved
58b7556bdf
Ruby: Add call graph tests for protected methods
2022-09-29 11:37:35 +02:00
Michael Nebel
95488bf133
C#: Update expected test output.
2022-09-29 11:35:35 +02:00
Michael Nebel
903abd0f3e
C#: Exhaustive validation of postupdate notes in conditional expression example.
2022-09-29 11:35:35 +02:00
Michael Nebel
131a6ac492
C#: Update expected test output.
2022-09-29 11:35:35 +02:00
Michael Nebel
e06afb69cc
C#: Support postupdate notes for assignment expressions.
2022-09-29 11:35:35 +02:00
Michael Nebel
9ced3956d6
C#: Add assignment expression example.
2022-09-29 11:35:35 +02:00
Michael Nebel
e1ea1a464d
C#: Update expected test output.
2022-09-29 11:35:35 +02:00
Michael Nebel
3d971d239f
C#: Support postupdate notes for suppress nullable warning expressions.
2022-09-29 11:35:35 +02:00
Michael Nebel
58bf283023
C#: Add suppress nullable warning expressions example.
2022-09-29 11:35:35 +02:00
Michael Nebel
940e925c31
C#: Update expected test output.
2022-09-29 11:35:35 +02:00
Michael Nebel
b24fd13946
C#: Add postupdate note support for switch expressions.
2022-09-29 11:35:35 +02:00
Michael Nebel
d54406d599
C#: Add switch example.
2022-09-29 11:35:35 +02:00
Michael Nebel
65b32b665d
C#: Update test expected output.
2022-09-29 11:35:35 +02:00
Michael Nebel
6b74e433ee
C#: Support postupdate notes for NullCoalescing expressions.
2022-09-29 11:35:35 +02:00
Michael Nebel
11d67744f7
C#: Add NullCoalescing example.
2022-09-29 11:35:35 +02:00
Michael Nebel
2e5fc19e38
C#: Update expected test output.
2022-09-29 11:35:35 +02:00
Michael Nebel
3c6f538d5c
C#: Support Cast expressions to have post update notes.
2022-09-29 11:35:35 +02:00
Michael Nebel
ba4794790e
C#: Add Cast example.
2022-09-29 11:35:35 +02:00
Michael Nebel
d3530b0083
C#: Re-factor nested exists into a single exists.
2022-09-29 11:35:35 +02:00
Michael Nebel
c49a16c840
C#: Update expected test output for the local flow testcases.
2022-09-29 11:35:21 +02:00
tyage
b95566b02a
make json stringify tainted with arg's property
2022-09-29 17:46:09 +09:00
Mathias Vorreiter Pedersen
cda05ed3ea
Merge pull request #10616 from erik-krogh/ql-consistencies
...
QL: adjust the consistency query to not be noisy on parameterised modules
2022-09-29 08:46:49 +01:00
erik-krogh
2046ece2de
adjust the consistency query to not be noisy on parameterised modules
2022-09-29 09:09:23 +02:00
Tamás Vajk
229c95a765
Merge pull request #10607 from tamasvajk/kotlin-fix-nested-class-lookup
...
Kotlin: Fix class/field lookup for Android synthetic classes
2022-09-29 08:36:05 +02:00
Harry Maclean
fa2d84c38c
Merge pull request #10338 from hmac/hmac/ar-model-create
...
Ruby: Treat ActiveRecord::Base.create as a model instantiation
2022-09-29 15:16:21 +13:00
Alex Ford
4ed4d31efd
Delete 2022-09-23-yaml-load-file.md
2022-09-28 21:44:58 +01:00
Harry Maclean
0e5aa97c46
Fix changenote month
2022-09-29 09:24:42 +13:00
Harry Maclean
76cfd44478
Add change note
2022-09-29 09:24:42 +13:00
Harry Maclean
4217a50900
Treat ActiveRecord.create as a model instantiation
2022-09-29 09:24:42 +13:00
Harry Maclean
424f31a24a
Add test for AR Model.create instantiations
...
These currently aren't recognised.
2022-09-29 09:24:42 +13:00
Harry Maclean
63309150e0
Make some space
2022-09-29 09:24:37 +13:00
Harry Maclean
e7d19e849f
Merge pull request #10090 from hmac/hmac/activestorage
...
Ruby: Model Activestorage
2022-09-29 09:16:25 +13:00
Harry Maclean
0ce0ada4df
Merge pull request #10002 from hmac/hmac/protected-methods
...
Ruby: Model protected methods
2022-09-29 08:39:29 +13:00
Nora Dimitrijević
19a9c5d7d3
C++: Identified another real-life FP
2022-09-28 21:19:45 +02:00
Henry Mercer
e3b54efb68
ATM: Update expected test output
...
Update the expected test output given some changes to the JavaScript
libraries which reclassified one of the test endpoints.
2022-09-28 20:00:40 +01:00
Aditya Sharad
c187ae04f4
Docs: Add CodeQL system requirements page
...
Add a table of platform requirements (OS, OS version, CPU architecture).
Add a list of additional language-specific software requirements.
2022-09-28 11:55:53 -07:00
Nora Dimitrijević
96c73bcb19
C++: Fix FP: bad Location for FieldAccess exprs
2022-09-28 20:37:22 +02:00
Nora Dimitrijević
6d5df14547
C++: Remove arguable FPs re: sizeof/decltype
2022-09-28 20:01:14 +02:00
Nora Dimitrijević
592bc18a97
C++: Reduce FPs by excluding all commas in loop heads
...
This leads to a 50% reduction of alerts in MRVA 1000.
2022-09-28 19:38:41 +02:00
github-actions[bot]
67d12cdc7d
JS: Bump patch version of ML-powered library and query packs
2022-09-28 17:14:15 +00:00
Andrew Eisenberg
ffd58861f0
Merge pull request #10459 from github/aeisenberg/update-analyzing-databases
...
Update the analyze databases article
2022-09-28 10:14:08 -07:00
Andrew Eisenberg
e8a0d07217
Update docs/codeql/codeql-cli/analyzing-databases-with-the-codeql-cli.rst
...
Co-authored-by: Ben Ahmady <32935794+subatoi@users.noreply.github.com >
2022-09-28 09:59:22 -07:00
Tom Hvitved
470908f53e
Merge pull request #10606 from hvitved/csharp/unsupported-api-meta-query
...
C#: Add meta query for reporting calls to unsupported library methods
2022-09-28 18:52:07 +02:00
Tom Hvitved
3af3772041
Ruby: Include With(out)Element in isElementBody
2022-09-28 16:51:20 +02:00
Nora Dimitrijević
823b0109f0
C++: Mark FPs that are hard to solve w/o source code
2022-09-28 16:20:13 +02:00
Mathias Vorreiter Pedersen
4ab676774e
C++: Add qhelp to new query.
2022-09-28 15:17:08 +01:00
Mathias Vorreiter Pedersen
769ff5c6f3
C++: Add 'isAdditionalFlowStep' predicates for both configurations in the product dataflow library and use them to fix missing results in the 'cpp/overrun-write' query.
2022-09-28 15:17:04 +01:00
Mathias Vorreiter Pedersen
ccbbb5754e
C++: Use range analysis in 'cpp/overrun-write' and accept test changes.
2022-09-28 15:14:29 +01:00
Mathias Vorreiter Pedersen
51758aa928
C++: Add tests to 'cpp/overrun-write'.
2022-09-28 15:14:29 +01:00
Rasmus Lerchedahl Petersen
a11948bea0
Python: make toString follow member predicate name
2022-09-28 16:13:04 +02:00
Rasmus Lerchedahl Petersen
d122a64e74
Python: do not commit to CfgNode
2022-09-28 16:12:29 +02:00
Nora Dimitrijević
0128b1702e
C++: Fix "LHS-end = RHS-begin" FP
2022-09-28 15:36:01 +02:00
Tom Hvitved
ac85741da8
C#: Add meta query for reporting calls to unsupported library methods
2022-09-28 15:28:00 +02:00
Asger F
76cab235d9
Ruby: reuse argumentPositionMatch
2022-09-28 15:24:48 +02:00
Tamas Vajk
375698f975
Kotlin: Fix field lookup in Android synthetic classes
2022-09-28 15:23:34 +02:00
Asger F
8704ccee77
Ruby: mention TNoContentSet is only used by type-tracking
2022-09-28 15:18:09 +02:00
Nora Dimitrijević
e7c1fadd94
C++: Fix member-call- and C-cast-related FPs
2022-09-28 15:02:22 +02:00
Tamás Vajk
f761e57365
Merge pull request #10591 from tamasvajk/kotlin-unbound-symbol
...
Kotlin: Log error when unbound symbol is found
2022-09-28 14:45:13 +02:00
Michael Nebel
a36bba94f1
C#: Base the getAPostUpdateNote predicate purely on cfg.
2022-09-28 14:35:49 +02:00
Michael Nebel
c07c10a808
C#: Address review comments.
2022-09-28 14:35:09 +02:00
Michael Nebel
2d0a377b7a
C#: Update dataflow consistency queries to cater for non unique post and pre unique update notes for conditional branches.
2022-09-28 14:35:09 +02:00
Michael Nebel
e8fd2bfc78
C#: Update expected test output.
2022-09-28 14:35:09 +02:00
Michael Nebel
e5711380f8
C#: Make postupdate notes for conditional branches.
2022-09-28 14:35:09 +02:00
Michael Nebel
7b6e684eaf
C#: Update test expected output (no new flow is identified).
2022-09-28 14:35:09 +02:00
Michael Nebel
51daae01f1
C#: Add test case.
2022-09-28 14:35:09 +02:00
Tamas Vajk
d3c3f3bed9
Kotlin: Fix class lookup for nested Android synthetic classes
2022-09-28 14:23:39 +02:00
Erik Krogh Kristensen
e0c68c3a27
Merge pull request #10605 from erik-krogh/allow-getURL
...
QL: allow getURL as an acronym
2022-09-28 13:34:48 +02:00
Jami
b448206c19
Merge pull request #10580 from jcogs33/remove-stubs-android
...
Java: remove `stubs/android` directory
2022-09-28 07:23:52 -04:00
erik-krogh
2b316471c5
bump typos to 0.0.2
2022-09-28 13:19:32 +02:00
Anders Schack-Mulligen
b48b5d45ef
Merge pull request #10498 from Marcono1234/marcono1234/compilation-unit-simple-name-type
...
Java: Add `CompilationUnit.getATypeInScope()`
2022-09-28 13:18:29 +02:00
erik-krogh
a10a2c2b01
QL: allow getURL as an acronym
2022-09-28 13:14:48 +02:00
Asger F
65de5d014c
Ruby: add test case
2022-09-28 12:23:58 +02:00
Asger F
24f2a3cdff
Sync ApiGraphModels.qll
2022-09-28 12:17:44 +02:00
Asger F
c8162f80bf
Ruby: add TypeModel.getAnApiNode
2022-09-28 12:17:10 +02:00
Rasmus Lerchedahl Petersen
05102f9007
Python: add change note
2022-09-28 12:06:05 +02:00
Asger F
a48b893ed6
Merge pull request #10588 from asgerf/rb/rbi-instantiated-type
...
Ruby: add RbiInstantiatedType
2022-09-28 11:51:20 +02:00
Joe Farebrother
6cb26d5129
Merge pull request #10241 from joefarebrother/android-webview-dubugging
...
Java: Add query for WebView debugging enabled
2022-09-28 10:50:51 +01:00
Rasmus Lerchedahl Petersen
b1ae3bfdb2
Python: less eager tracking of flow
2022-09-28 11:46:26 +02:00
Asger F
fea47c85f3
Ruby: expand on type-tracking test a bit
2022-09-28 11:40:55 +02:00
Rasmus Lerchedahl Petersen
63ee51a4e2
Python: inline mongoCollectionMethod
2022-09-28 11:40:06 +02:00
yoff
70d47f313e
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-09-28 11:33:00 +02:00
Asger F
971657245d
Ruby: update API graph inline test to match output
2022-09-28 11:17:13 +02:00
Tom Hvitved
99b2df0605
Ruby: Make get(Explicit)VisibilityModifier private
2022-09-28 11:16:13 +02:00
Asger F
ce1c258273
Ruby: Update TypeTracker.expected
2022-09-28 11:15:25 +02:00
Asger F
ee7dea1ab6
Merge branch 'main' into rb/summarize-loads-v2
...
This only fixes superficial conflicts with
https://github.com/github/codeql/pull/10574
semantic conflicts will be addressed in later commits
2022-09-28 11:11:44 +02:00
Tom Hvitved
22946b176f
Merge pull request #10574 from hvitved/ruby/reverse-known-stores
...
Ruby: Fix spurious flow through reverse stores
2022-09-28 11:02:17 +02:00
Asger F
e56630a485
Ruby: add missing qldoc
2022-09-28 10:49:34 +02:00
Asger F
e1dfed0fcb
Ruby: move OptionalContentSet to TypeTrackerSpecific.qll
2022-09-28 10:49:34 +02:00
Asger F
14e384aaa2
Ruby: remove unneeded import
2022-09-28 10:49:34 +02:00
Asger F
ce3665d50e
Ruby: remove unneeded qualified AST import
2022-09-28 10:49:34 +02:00
Asger F
665ee81967
Ruby: revert trackUseNode to idiomatic type-tracking
...
The optimizations done here now seem to backfire and cause more problems than they fix.
2022-09-28 10:49:34 +02:00
Asger F
032847f331
Ruby: inline getContents
2022-09-28 10:49:34 +02:00
Asger F
e09a5e87dd
Ruby: clarify what getAnElement() does
2022-09-28 10:49:34 +02:00
Asger F
588b31d15d
Ruby: fix another typo
2022-09-28 10:49:34 +02:00
Asger F
a7b92295a2
Ruby: fix a typo
2022-09-28 10:49:34 +02:00
Asger F
7dfa58b50d
Remove Content::NoContent
2022-09-28 10:49:34 +02:00
Asger F
9c93ad904f
Python: sync
2022-09-28 10:49:34 +02:00
Asger F
dd23e125e5
Rename TypeTrackerContentSet -> TypeTrackerContent
2022-09-28 10:49:34 +02:00
Asger F
6abf77d40d
Factor comparison into compatibleContents
2022-09-28 10:49:34 +02:00
Asger F
85d0c63ec7
Ruby: store a ContentSet on type tracker instances
2022-09-28 10:49:34 +02:00
Asger F
a5ed3d791b
Ruby: expand test case to reveal mismatching forward/backward flow
2022-09-28 10:49:34 +02:00
Asger F
e47deaffbf
Ruby: More QLDoc police
2022-09-28 10:49:34 +02:00
Asger F
7737e75427
Update some QLDoc comments
2022-09-28 10:49:34 +02:00
Asger F
576e320bf5
Python: sync
2022-09-28 10:49:34 +02:00
Asger F
cbf16579ed
Ruby: tweak pipeline a bit
2022-09-28 10:49:33 +02:00
Asger F
b13b2ce319
Ruby: fix join order when building append relation
2022-09-28 10:49:33 +02:00
Asger F
3498a04b89
Ruby: associate ContentSets with store/load edges in type tracker
2022-09-28 10:49:33 +02:00
Asger F
497258eda5
Ruby: reuse Content type
2022-09-28 10:49:33 +02:00
Asger F
ac1b7eb0b9
Remove SetterMethodCall in MkAttribute
2022-09-28 10:49:33 +02:00
Asger F
a64f7cd146
Ruby: simplify getSetterCallAttributeName
2022-09-28 10:49:33 +02:00
Asger F
a51a540582
Ruby: add content edges to API graph
...
Fixes
2022-09-28 10:49:33 +02:00
Asger F
d5e2b93554
Ruby: add API graph label for content
2022-09-28 10:49:33 +02:00
Asger F
e104b65106
Python: sync TypeTracker.qll and adapt accordingly
...
fixup python
2022-09-28 10:49:33 +02:00
Asger F
cd9cddf45a
Ruby: generate type-tracking steps from simple summary specs
2022-09-28 10:49:33 +02:00
Asger F
f1b99e867c
Ruby: use IPA type for type tracker contents
...
fixup qldoc in OptionalTypeTrckerContent
2022-09-28 10:49:33 +02:00
Asger F
53ef054c53
Ruby: Add getACallSimple and use it for arrays and hashes
2022-09-28 10:49:24 +02:00
Asger F
182d7d38a8
Update ruby/ql/lib/codeql/ruby/experimental/Rbi.qll
...
Co-authored-by: Alex Ford <alexrford@users.noreply.github.com >
2022-09-28 10:36:09 +02:00
Geoffrey White
1fb54ad3e3
Swift: make QLDoc style check happy.
2022-09-28 09:28:48 +01:00
Tamas Vajk
463173eae4
Accept integration test changes
2022-09-28 10:26:58 +02:00
Geoffrey White
9780dffa79
Merge pull request #10596 from geoffw0/swifturl
...
Swift: URL is a struct, not a class
2022-09-28 09:15:29 +01:00
Tamas Vajk
13fb032b1c
Kotlin: Remove unbound symbol owner lookup
2022-09-28 09:47:10 +02:00
Tom Hvitved
92a38b30cf
Data flow: Update documentation on array flow modeling
2022-09-28 09:32:52 +02:00
Harry Maclean
adb8368e07
Add change note
2022-09-28 12:16:12 +13:00
Harry Maclean
24a10aa5ff
Recognise send_file as a FileSystemAccess
...
This method is available in ActionController actions, and sends the file
at the given path to the client.
2022-09-28 12:14:22 +13:00
Harry Maclean
eada74a15c
Add change note
2022-09-28 11:43:31 +13:00
Robert Marsh
82bbe67267
Merge pull request #10593 from MathiasVP/fix-fp-on-cwe-193
...
C++: Fix FPs on `cpp/invalid-pointer-deref`
2022-09-27 17:38:17 -04:00
Jami Cogswell
61e24a888f
remove stubs/android directory and update options files
2022-09-27 14:55:08 -04:00
Tom Hvitved
31806b84ba
Ruby: Add more flow summaries tests
...
The tests highlight the differences between `(With|Without)?Element[1]` and
`(With|Without)?Element[1!]`.
2022-09-27 20:16:31 +02:00
Tom Hvitved
2351c0288a
Ruby: Fix spurious flow through reverse stores
2022-09-27 20:16:31 +02:00
Harry Maclean
28a23209a5
Ruby: Identify ActionController::Metal controllers
...
Subclasses of `ActionController::Metal` are stripped-down controllers.
We want to recognise them as ActionController controllers.
There are some common ActionController methods that are not available in
Metal, but these are not likely to be used anyway as they would throw an
exception, so I don't think there's much harm in including them in the
modelling.
2022-09-28 07:10:09 +13:00
Tom Hvitved
fea1e47daa
Ruby: Add data-flow test for spurious flow through a reverse store
2022-09-27 20:05:35 +02:00
Tom Hvitved
df2b586e7c
Merge pull request #10577 from hvitved/dataflow/get-a-read-content-fan-in
...
Data flow: Fix bad join-order when getAReadContent has large fan-in
2022-09-27 20:04:58 +02:00
Geoffrey White
1248810e35
Swift: Add model for URL.resourceBytes and URL.lines.
2022-09-27 18:58:56 +01:00
Geoffrey White
fa5e03a53d
Swift: Add tests of URL.resourceBytes and URL.lines.
2022-09-27 18:58:56 +01:00
Geoffrey White
69dd2c0eec
Swift: Add a test of taint sources.
2022-09-27 18:58:56 +01:00
Geoffrey White
3ffb2a3ee6
Swift: Fix.
2022-09-27 18:39:03 +01:00
Geoffrey White
286fcb672c
Swift: Additional test results.
2022-09-27 18:31:43 +01:00
Geoffrey White
d2c74913c8
Swift: Repair UnsafeWebViewFetch query via taint summary.
2022-09-27 18:25:32 +01:00
Geoffrey White
13b2b1f304
Swift: Repair CleartextTransmission query.
2022-09-27 18:25:32 +01:00
Geoffrey White
62aa5de781
Swift: URL is a struct not a class.
2022-09-27 18:25:31 +01:00
Mathias Vorreiter Pedersen
485568331a
Swift: Add a class that's the union of struct and class.
2022-09-27 17:52:12 +01:00
Harry Maclean
6e60a6ff2e
Apply suggestions from code review
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2022-09-28 05:51:28 +13:00
Nora Dimitrijević
cacf78838c
C++: Tests (w/ FPs) from MRVA top 1000 run
2022-09-27 18:48:32 +02:00
Jami
56e3334c6d
Merge pull request #10479 from jcogs33/android-service-sources
...
Java: add Android service sources
2022-09-27 12:40:18 -04:00
Andrew Eisenberg
aefd51601c
Re-order query suite descriptions
...
Add a pull quote and apply some suggestions from code review.
2022-09-27 09:22:46 -07:00
Mathias Vorreiter Pedersen
549eca1b17
C++: Fix 'implicit use of this'.
2022-09-27 16:29:30 +01:00
Mathias Vorreiter Pedersen
e4305948ef
C++: Fix FP on CWE-193 by blocking flow through back-edges of phi nodes.
2022-09-27 16:28:03 +01:00
Nick Rolfe
8ca1e1b2d1
Ruby: add changenote for XXE improvements
2022-09-27 16:11:41 +01:00
Jami Cogswell
7e0c61de2c
switch to hasName
2022-09-27 10:45:52 -04:00
Tamas Vajk
847a64c03b
Kotlin: extract call target even if it's unbound
2022-09-27 15:30:38 +02:00
Tony Torralba
be9509ceb9
Merge pull request #9199 from luchua-bc/java/unsafe-url-forward-dispatch-load
...
Java: CWE-552 Query to detect unsafe resource loading in Java Spring applications
2022-09-27 15:27:51 +02:00
Asger F
52b6dd5bec
Ruby: update test expectation
2022-09-27 14:41:59 +02:00
Erik Krogh Kristensen
162edd6883
Merge pull request #10586 from erik-krogh/pyRegFix
...
ReDoS: fix RegExpEscape::getValue having multiple results for some escapes
2022-09-27 14:41:18 +02:00
Erik Krogh Kristensen
b9937269b9
Merge pull request #10584 from erik-krogh/csharp-unqueryable
...
C#: deprecate/delete some unused code
2022-09-27 14:26:59 +02:00
Tom Hvitved
335e1a8233
Address review comments
2022-09-27 13:36:52 +02:00
Tony Torralba
7ff82bbed3
Update java/ql/src/experimental/Security/CWE/CWE-552/UnsafeUrlForward.qll
2022-09-27 13:26:21 +02:00
erik-krogh
7675571daa
fix RegExpEscape::getValue having multiple results for some escapes
2022-09-27 13:25:23 +02:00
Nick Rolfe
bfda08e69c
Ruby: detect uses of libxml with entity substitution enabled by default
...
Including uses of ActiveSupport::XmlMini with the libxml backend
2022-09-27 11:53:43 +01:00
Nick Rolfe
7c30d333ad
Ruby: move XXE tests to subdirectory
2022-09-27 11:53:43 +01:00
Tamás Vajk
9358070ae9
Merge pull request #10506 from tamasvajk/kotlin-enum-type-access
...
Kotlin: Fix type access expressions in enum constructor calls
2022-09-27 12:42:30 +02:00
Tamás Vajk
8a6d56a57d
Merge pull request #10520 from tamasvajk/kotlin-fix-anonymous-object-comment
...
Kotlin: Fix comment extraction for anonymous objects
2022-09-27 12:42:05 +02:00
erik-krogh
ae6dd05249
deprecate unused class in query specific file
2022-09-27 12:40:05 +02:00
erik-krogh
d23b128457
delete unused code in an internal file
2022-09-27 12:31:58 +02:00
Mathias Vorreiter Pedersen
0c79c2836c
Merge pull request #10573 from erik-krogh/cpp-unqueryable
...
C: deprecate/delete some unused code
2022-09-27 10:13:24 +01:00
Asger F
ea4ba27297
Ruby: add RbiInstantiatedType
2022-09-27 10:51:29 +02:00
Anders Schack-Mulligen
9f1bbf2bbd
Merge pull request #10575 from aschackmull/dataflow/cleanup-module
...
Dataflow: Minor visibility cleanup
2022-09-27 10:10:53 +02:00
Harry Maclean
9709aa87fb
Fix changenote month
2022-09-27 15:23:12 +13:00
Harry Maclean
cb8865f3ff
Add missing doc
2022-09-27 11:23:08 +13:00
Harry Maclean
6803d96000
Add change note
2022-09-27 10:43:41 +13:00
Harry Maclean
49572a5218
Remove redundant import
2022-09-27 10:35:39 +13:00
Tom Hvitved
3717cb30eb
Ruby: Fix two join orders
...
`getExplicitVisibilityModifier`
Before
[2022-08-17 09:03:16] (186s) Tuple counts for quick_eval#ff/2@2005f7ku after 113ms:
39910 ~0% {2} r1 = SCAN Method#8b49e67f::Method#ff OUTPUT 0, In.0 'this'
39910 ~0% {2} r2 = STREAM DEDUP r1
135 ~2% {2} r3 = JOIN r2 WITH Call#ee92d596::CallImpl::getArgumentImpl#dispred#fbb_120#join_rhs ON FIRST 2 OUTPUT Rhs.2 'result', Lhs.1 'this'
134 ~0% {2} r4 = JOIN r3 WITH Method#8b49e67f::VisibilityModifier#f ON FIRST 1 OUTPUT Lhs.1 'this', Lhs.0 'result'
39910 ~0% {1} r5 = SCAN Method#8b49e67f::Method#ff OUTPUT In.0 'this'
39910 ~0% {1} r6 = STREAM DEDUP r5
39910 ~0% {2} r7 = JOIN r6 WITH Method#8b49e67f::Method::getName#dispred#ff ON FIRST 1 OUTPUT Lhs.0 'this', Rhs.1
39770 ~1% {3} r8 = JOIN r7 WITH AST#a6718388::AstNode::getEnclosingModule#dispred#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.0 'this', Lhs.1
1859722 ~0% {3} r9 = JOIN r8 WITH project#Method#8b49e67f::isDeclaredIn#fff#2_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.1 'this', Lhs.2
11757 ~0% {4} r10 = JOIN r9 WITH Method#8b49e67f::VisibilityModifier::getMethodArgument#dispred#bf ON FIRST 1 OUTPUT Lhs.2, Lhs.1 'this', Lhs.0 'result', Rhs.1
24206 ~0% {4} r11 = JOIN r10 WITH Constant#54e8b051::ConstantValue::getStringlikeValue#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.3, Rhs.1, Lhs.1 'this', Lhs.2 'result'
292 ~0% {2} r12 = JOIN r11 WITH Expr#6fb2af19::Expr::getConstantValue#dispred#ff ON FIRST 2 OUTPUT Lhs.2 'this', Lhs.3 'result'
426 ~0% {2} r13 = r4 UNION r12
return r13
After
[2022-08-17 09:30:31] (0s) Tuple counts for quick_eval#ff/2@e014fd45 after 5ms:
39910 ~0% {1} r1 = SCAN Method#8b49e67f::Method#ff OUTPUT In.0 'this'
39910 ~0% {1} r2 = STREAM DEDUP r1
134 ~1% {2} r3 = JOIN r2 WITH Method#8b49e67f::VisibilityModifier::getMethodArgument#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.0 'this', Rhs.1 'result'
37225 ~1% {3} r4 = JOIN r2 WITH project#Method#8b49e67f::methodIsDeclaredIn#ffff ON FIRST 1 OUTPUT Rhs.1, Rhs.2, Lhs.0 'this'
382 ~1% {2} r5 = JOIN r4 WITH Method#8b49e67f::modifiesIn#fff_120#join_rhs ON FIRST 2 OUTPUT Lhs.2 'this', Rhs.2 'result'
516 ~0% {2} r6 = r3 UNION r5
return r6
`getVisibilityModifier()`
Before
[2022-08-17 09:16:18] (1s) Tuple counts for quick_eval#ff/2@0e9b6ctl after 52ms:
39910 ~0% {1} r1 = SCAN Method#8b49e67f::Method#ff OUTPUT In.0 'this'
39910 ~0% {1} r2 = STREAM DEDUP r1
424 ~0% {2} r3 = JOIN r2 WITH Method#8b49e67f::Method::getExplicitVisibilityModifier#dispred#ff ON FIRST 1 OUTPUT Lhs.0 'this', Rhs.1 'result'
34953 ~0% {3} r4 = JOIN quick_eval#ff#shared WITH Method#8b49e67f::isDeclaredIn#fff ON FIRST 1 OUTPUT Rhs.1, Rhs.2, Lhs.0 'this'
2338 ~0% {2} r5 = JOIN r4 WITH quick_eval#ff#join_rhs ON FIRST 2 OUTPUT Lhs.2 'this', Rhs.2 'result'
3861 ~0% {1} r6 = SCAN Method#8b49e67f::SingletonMethod#ff OUTPUT In.0 'this'
3861 ~0% {1} r7 = STREAM DEDUP r6
3859 ~6% {2} r8 = JOIN r7 WITH AST#a6718388::AstNode::getEnclosingModule#dispred#ff ON FIRST 1 OUTPUT Lhs.0 'this', Rhs.1
3859 ~6% {2} r9 = JOIN r8 WITH Method#8b49e67f::SingletonMethod#ff ON FIRST 1 OUTPUT Lhs.0 'this', Lhs.1
0 ~0% {3} r10 = JOIN r9 WITH Method#8b49e67f::VisibilityModifier::getMethodArgument#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.1, Lhs.0 'this'
3859 ~0% {3} r11 = JOIN r9 WITH Method#8b49e67f::SingletonMethod::getName#dispred#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.0 'this', Lhs.1
7731 ~0% {3} r12 = JOIN r11 WITH Constant#54e8b051::ConstantValue::getStringlikeValue#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1 'this', Lhs.2
1343055 ~1% {3} r13 = JOIN r12 WITH Expr#6fb2af19::Expr::getConstantValue#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1 'this', Lhs.2
6546 ~2% {3} r14 = JOIN r13 WITH Method#8b49e67f::VisibilityModifier::getMethodArgument#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.2, Lhs.1 'this'
6546 ~2% {3} r15 = r10 UNION r14
120 ~2% {2} r16 = JOIN r15 WITH AST#a6718388::AstNode::getEnclosingModule#dispred#ff ON FIRST 2 OUTPUT Lhs.2 'this', Lhs.0 'result'
2458 ~0% {2} r17 = r5 UNION r16
2882 ~0% {2} r18 = r3 UNION r17
return r18
After
[2022-08-17 09:29:42] (2s) Tuple counts for quick_eval#ff/2@77b18cdg after 5ms:
39910 ~0% {1} r1 = SCAN Method#8b49e67f::Method#ff OUTPUT In.0 'this'
39910 ~0% {1} r2 = STREAM DEDUP r1
516 ~0% {2} r3 = JOIN r2 WITH Method#8b49e67f::Method::getExplicitVisibilityModifier#dispred#ff ON FIRST 1 OUTPUT Lhs.0 'this', Rhs.1 'result'
3861 ~0% {1} r4 = SCAN Method#8b49e67f::SingletonMethod#ff OUTPUT In.0 'this'
3861 ~0% {1} r5 = STREAM DEDUP r4
0 ~0% {2} r6 = JOIN r5 WITH Method#8b49e67f::VisibilityModifier::getMethodArgument#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.0 'this', Rhs.1 'result'
516 ~0% {2} r7 = r3 UNION r6
36845 ~0% {3} r8 = JOIN quick_eval#ff#shared WITH Method#8b49e67f::isDeclaredIn#fff ON FIRST 1 OUTPUT Rhs.1, Rhs.2, Lhs.0 'this'
2421 ~0% {2} r9 = JOIN r8 WITH quick_eval#ff#join_rhs ON FIRST 2 OUTPUT Lhs.2 'this', Rhs.2 'result'
2584 ~0% {3} r10 = JOIN r5 WITH project#Method#8b49e67f::methodIsDeclaredIn#ffff ON FIRST 1 OUTPUT Rhs.1, Rhs.2, Lhs.0 'this'
39 ~0% {2} r11 = JOIN r10 WITH Method#8b49e67f::modifiesIn#fff_120#join_rhs ON FIRST 2 OUTPUT Lhs.2 'this', Rhs.2 'result'
2460 ~1% {2} r12 = r9 UNION r11
2976 ~0% {2} r13 = r7 UNION r12
return r13
2022-09-27 10:29:06 +13:00
Harry Maclean
92715bac3a
Attempt to fix bad join candidates
2022-09-27 10:29:06 +13:00
Harry Maclean
5cdaae7378
Update tests
2022-09-27 10:29:04 +13:00
Harry Maclean
4df7fd248e
Ruby: Ensure explicit modifiers take priority
...
In Ruby, "explicit" visibility modifiers override "implicit" ones. For
example, in the following:
```rb
class C
private
def m1
end
public m2
end
def m3
end
public :m3
end
```
`m1` is private whereas `m2` and `m3` are public.
2022-09-27 10:28:23 +13:00
Harry Maclean
d90257fd50
Add change note
2022-09-27 10:22:54 +13:00
Harry Maclean
bda4cfbe5d
Ruby: Update test
2022-09-27 10:22:53 +13:00
Harry Maclean
79abb36faf
Ruby: Remove MethodModifier
2022-09-27 10:21:06 +13:00
Harry Maclean
97e9eab7fc
Fix QL4QL error
2022-09-27 10:21:06 +13:00
Harry Maclean
d7f40c41c5
Ruby: protected_class_method does not exist
2022-09-27 10:21:06 +13:00
Harry Maclean
5e9196e51c
Ruby: Add test for protected methods
2022-09-27 10:21:04 +13:00
Harry Maclean
494fb4c966
Ruby: Make room for new test cases
2022-09-27 10:18:43 +13:00
Harry Maclean
1d728b234f
Ruby: Add test for protected method visibility
2022-09-27 10:16:09 +13:00
Harry Maclean
58dd521ee9
Ruby: further refactor to method visibility
2022-09-27 10:13:23 +13:00
Harry Maclean
c5f36613da
Ruby: Refactor method visibility modeling
2022-09-27 10:13:21 +13:00
Harry Maclean
3beed54e35
Ruby: Fix imports in test
2022-09-27 10:09:26 +13:00
Harry Maclean
dea5036912
Ruby: Update for Http concept changes
2022-09-27 10:03:17 +13:00
Tom Hvitved
45fc62f16b
Data flow: Sync files
2022-09-26 20:39:48 +02:00
Tom Hvitved
1273db5a22
Data flow: Fix bad join-order when getAReadContent has large fan-in
...
Before (terminated before completion)
```
Evaluated relational algebra for predicate DataFlowImplForHttpClientLibraries#c536b619::store#5#fffff@e5ef07bh with tuple counts:
151500 ~0% {4} r1 = SCAN DataFlowImplCommon#4f8df883::Cached::store#4#ffff OUTPUT In.1, In.0, In.2, In.3
150500 ~0% {5} r2 = JOIN r1 WITH DataFlowImplCommon#4f8df883::Cached::MkTypedContent#fff_20#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2, Lhs.3, Rhs.1
149500 ~0% {5} r3 = JOIN r2 WITH num#DataFlowImplForHttpClientLibraries#c536b619::TNodeNormal#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.3, Lhs.4, Rhs.1
148500 ~0% {5} r4 = JOIN r3 WITH num#DataFlowImplForHttpClientLibraries#c536b619::TNodeNormal#ff ON FIRST 1 OUTPUT Lhs.3, Lhs.1, Lhs.2, Lhs.4, Rhs.1
2003849000 ~0% {5} r5 = JOIN r4 WITH DataFlowPublic#e1781e31::ContentSet::getAReadContent#0#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4
105066500 ~9036% {5} r6 = JOIN r5 WITH project#DataFlowImplForHttpClientLibraries#c536b619::readSet#4#ffff ON FIRST 1 OUTPUT Lhs.3, Lhs.1, Lhs.4, Lhs.2, Rhs.1
return r6
```
After
```
Evaluated relational algebra for predicate DataFlowImplForHttpClientLibraries#c536b619::readProj#2#ff@302620cn with tuple counts:
1461867 ~0% {2} r1 = SCAN DataFlowPrivate#462ff392::Cached::TContent#f OUTPUT In.0, In.0
3549054 ~1% {2} r2 = JOIN r1 WITH DataFlowPublic#e1781e31::ContentSet::getAReadContent#0#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
5772824 ~5% {2} r3 = JOIN r2 WITH project#DataFlowImplForHttpClientLibraries#c536b619::readSet#4#ffff ON FIRST 1 OUTPUT Lhs.1, Rhs.1
return r3
Evaluated relational algebra for predicate DataFlowImplForHttpClientLibraries#c536b619::store#5#fffff@016cd9o1 with tuple counts:
267905 ~0% {4} r1 = SCAN DataFlowImplCommon#4f8df883::Cached::store#4#ffff OUTPUT In.1, In.0, In.2, In.3
267905 ~0% {5} r2 = JOIN r1 WITH DataFlowImplCommon#4f8df883::Cached::MkTypedContent#fff_20#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2, Lhs.3, Rhs.1
267905 ~0% {5} r3 = JOIN r2 WITH num#DataFlowImplForHttpClientLibraries#c536b619::TNodeNormal#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.3, Lhs.4, Rhs.1
267905 ~0% {5} r4 = JOIN r3 WITH num#DataFlowImplForHttpClientLibraries#c536b619::TNodeNormal#ff ON FIRST 1 OUTPUT Lhs.3, Lhs.1, Lhs.2, Lhs.4, Rhs.1
2109240 ~0% {5} r5 = JOIN r4 WITH DataFlowImplForHttpClientLibraries#c536b619::readProj#2#ff ON FIRST 1 OUTPUT Lhs.3, Lhs.1, Lhs.4, Lhs.2, Rhs.1
return r5
```
2022-09-26 20:37:53 +02:00
erik-krogh
0f1a8a6f5b
deleted unused internal code
2022-09-26 20:20:52 +02:00
erik-krogh
b83ca08854
deprecate class documented as deprecated
2022-09-26 20:09:54 +02:00
Tom Hvitved
88baf0883a
Merge pull request #10358 from hvitved/ruby/dataflow/call-ctx
...
Ruby: Context sensitive instance method resolution
2022-09-26 19:55:10 +02:00
Mathias Vorreiter Pedersen
11b2a12392
Merge pull request #10572 from MathiasVP/add-cwe-193-fp
...
C++: Add FP test for `CWE-193`
2022-09-26 17:22:47 +01:00
Michael Nebel
40a75fdd12
Merge pull request #9406 from JarLob/controller
...
Extend aspnetcore controller definition
2022-09-26 16:34:39 +02:00
Anders Schack-Mulligen
1687d08587
Dataflow: Sync.
2022-09-26 16:10:03 +02:00
Anders Schack-Mulligen
17dba00264
Dataflow: Minor visibility cleanup.
2022-09-26 16:09:42 +02:00
Rasmus Lerchedahl Petersen
441fc1bb28
Python: type trackers to API graph
...
base on new subscript in the API graph
There are a few more uses of type tracking
through `SubscriptNode`s, but these start
from an instance given by a data flow node.
2022-09-26 15:05:50 +02:00
Jaroslav Lobačevski
57fcfd5e7d
Apply suggestions from code review
2022-09-26 14:55:29 +02:00
Jaroslav Lobačevski
fa503ec3f2
Create 2022-08-24-aps-net-core-controllers.md
2022-09-26 14:55:29 +02:00
Michael Nebel
37795226a4
C#: Exclude stub implementation in test results.
2022-09-26 14:55:29 +02:00
Michael Nebel
29639a0ad5
C#: ControllerBase should still be considered a controller as we need Redirect methods to be considered sinks.
2022-09-26 14:55:29 +02:00
Michael Nebel
85eee886ac
C#: Auto-format AspNetCore.ql.
2022-09-26 14:55:28 +02:00
Michael Nebel
f2ada3d547
C#: Also use using namespace as a hint to indicate that ASP.NET Core is in scope.
2022-09-26 14:55:28 +02:00
Michael Nebel
a7011e11c4
C#: Minor refactoring to avoid introducing name variable.
2022-09-26 14:55:28 +02:00
Michael Nebel
72429cb9e8
C#: Generic classes should not be considered controllers.
2022-09-26 14:55:28 +02:00
Jaroslav Lobačevski
eed04696a9
Add tests
2022-09-26 14:55:28 +02:00
Octokit
f05d4b8410
failing tests
2022-09-26 14:55:28 +02:00
Octokit
fc10212e68
Add ApiController support
2022-09-26 14:55:28 +02:00
Octokit
c96b938e7d
Controller is public, non-abstract, not generic class
2022-09-26 14:55:28 +02:00
Jaroslav Lobačevski
853a80bdbc
filter out Controller suffixed class in non asp.net projects
2022-09-26 14:55:28 +02:00
Jaroslav Lobačevski
3d281fbb71
fix suffix match
2022-09-26 14:55:28 +02:00
Jaroslav Lobačevski
56055bd76a
Add qldoc comments
2022-09-26 14:55:28 +02:00
Jaroslav Lobačevski
f27b5d5588
Fix code style warnings
2022-09-26 14:55:28 +02:00
Jaroslav Lobačevski
105462a1fc
Extend aspnetcore controller definition
2022-09-26 14:55:27 +02:00
Joe Farebrother
af41f2b903
Remove 'here'.
2022-09-26 13:36:14 +01:00
erik-krogh
326666ac85
update the alert-messages of csharp queries
2022-09-26 14:01:39 +02:00
Rasmus Lerchedahl Petersen
9b1ec03d70
Python: type tracking to API graph
...
using the new subscript node
2022-09-26 13:39:59 +02:00
Rasmus Lerchedahl Petersen
bc963b2386
Python: subscript on API::Node
2022-09-26 13:39:59 +02:00
Rasmus Lerchedahl Petersen
6114d71d3d
Python: subscript on local source nodes
...
and adjust comment on awaited
2022-09-26 13:39:59 +02:00
Rasmus Lerchedahl Petersen
7f610405a0
Python: move code and harmonize comments
2022-09-26 13:39:59 +02:00
Rasmus Lerchedahl Petersen
69640f3c20
Python: refactor awaited
2022-09-26 13:39:59 +02:00
Michael Nebel
0581b91c32
Merge pull request #10554 from michaelnebel/csharp/datetime-sanitizer
...
C#: Consider DateTime as simple type sanitizer.
2022-09-26 13:21:36 +02:00
Mathias Vorreiter Pedersen
1c55bbe2e8
C++: Add FP for CWE-193.
2022-09-26 11:53:03 +01:00
Alex Ford
b018706afd
Ruby: update rb/unsafe-deserialization tests
2022-09-26 11:28:24 +01:00
Alex Ford
06e435fd84
Ruby: remove YAML.load_file arg0 as an unsafe deserialization sink
2022-09-26 11:26:30 +01:00
erik-krogh
46b5bf32f9
update alert-messsages of java queries
2022-09-26 12:15:25 +02:00
Marcono1234
c40b6285a2
Java: Adjust ImpossibleJavadocThrows.ql
2022-09-26 12:08:43 +02:00
Anders Schack-Mulligen
f4ef4342c2
Merge pull request #10558 from aschackmull/java/static-init-vector-perf
...
Java: Improve performance of StaticInitializationVector.
2022-09-26 10:50:49 +02:00
Tom Hvitved
257bcefaf9
Merge pull request #10548 from hvitved/ruby/call-graph-tests
...
Ruby: Add call graph tests for unsupported constructs
2022-09-26 10:47:23 +02:00
Harry Maclean
fa20a476a6
Add test code
2022-09-26 20:56:11 +13:00
Harry Maclean
9f234e9f5a
Ruby: Merge duplicate tests
2022-09-26 20:56:11 +13:00
Harry Maclean
7b9519fe7c
Ruby: Fix import
2022-09-26 20:56:11 +13:00
Harry Maclean
7d3f9580ff
Ruby: QLDoc fix
2022-09-26 20:56:11 +13:00
Harry Maclean
9f99a3ca1f
Ruby: Model sanitize ActionView helper
2022-09-26 20:56:11 +13:00
Harry Maclean
9e625acd3d
Ruby: QLDoc fix
2022-09-26 20:56:11 +13:00
Harry Maclean
1d693d336f
Ruby: Model javascript_include_tag and friends
2022-09-26 20:56:09 +13:00
Harry Maclean
35a05f6dea
Ruby: Add summaries for ActiveSupport::SafeBuffer
2022-09-26 20:55:05 +13:00
Harry Maclean
ed0c85e3af
Ruby: Model ActionView helper XSS sinks
2022-09-26 20:55:04 +13:00
Chris Smowton
f9ba190812
Merge pull request #9830 from smowton/smowton/fix/kotlin-annotation-class-accessors
...
Kotlin: annotation properties should be java.lang.Class not KClass
2022-09-26 08:34:30 +01:00
Chris Smowton
2a2b939078
Lint
2022-09-25 16:48:10 +01:00
Marcono1234
fd99ae78b3
Java: Rename predicate to getATypeInScope
2022-09-25 14:44:16 +02:00
Chris Smowton
f774467892
Kotlin: annotation properties should be java.lang.Class not KClass
...
As documented at https://kotlinlang.org/docs/annotations.html#constructors , annotation properties of type KClass get rewritten when targeting the JVM.
2022-09-25 11:53:50 +01:00
Chris Smowton
a8197b27aa
Merge pull request #10561 from github/henrymercer/go-consistent-query-id
...
Go: Use a consistent query identifier for successfully extracted files
2022-09-24 17:22:56 +01:00
Chris Smowton
9aebe87c67
Merge pull request #10523 from smowton/smowton/admin/jdk18-extractor-test-changes
...
Java: Disable Kotlin element of test re: database inconsistency exposed by JDK18 extractor upgrade
2022-09-24 17:00:10 +01:00
Chris Smowton
8ce176f2dc
Merge pull request #10545 from github/dependabot/github_actions/actions/upload-artifact-3
...
Bump actions/upload-artifact from 2 to 3
2022-09-24 16:57:31 +01:00
Chris Smowton
60f6772f9e
Merge pull request #10542 from github/smowton/fix/kotlin-unit-testing-plugin-version
...
Kotlin unit tests: use best plugin version compatible with environment kotlinc
2022-09-24 16:42:59 +01:00
Erik Krogh Kristensen
c2b5c39436
Merge pull request #10507 from erik-krogh/cpp-followMsg
...
CPP: Make more alert-messages follow the style guide
2022-09-24 17:26:11 +02:00
Jami Cogswell
9b4201f880
update FileService
2022-09-23 22:46:55 -04:00
Jami Cogswell
1e01657577
add onBind to FileService to see if it fixes Java Language Tests failure
2022-09-23 18:59:27 -04:00
Jami Cogswell
9acda05dbd
update Service stub
2022-09-23 18:59:27 -04:00
Jami Cogswell
65f3ae9829
clean up files
2022-09-23 18:59:27 -04:00
Jami Cogswell
7e13610d24
minor qldoc update
2022-09-23 18:59:27 -04:00
Jami Cogswell
24b34cd32f
add a few more tests, and some clean-up
2022-09-23 18:59:27 -04:00
Jami Cogswell
7a96727c59
add tests
2022-09-23 18:59:27 -04:00
Jami Cogswell
367c31bf17
add change note
2022-09-23 18:59:27 -04:00
Jami Cogswell
decba39c09
add service flow sources
2022-09-23 18:59:27 -04:00
Dave Bartolomeo
3bd456e52d
Merge pull request #10565 from github/post-release-prep/codeql-cli-2.11.0
...
Post-release preparation for codeql-cli-2.11.0
2022-09-23 18:13:59 -04:00
Mathias Vorreiter Pedersen
79c0178a7c
Merge pull request #10564 from geoffw0/swiftregression
2022-09-23 22:05:46 +01:00
github-actions[bot]
6cef0af5df
Post-release preparation for codeql-cli-2.11.0
2022-09-23 21:01:40 +00:00
Geoffrey White
ed3d3e4ff0
Swift: fix regression.
2022-09-23 21:01:25 +01:00
Robert Marsh
b93a2b06bf
C++: prototype for off-by-one in array-typed field
2022-09-23 14:38:06 -04:00
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
Alex Ford
d94b196843
Ruby: fix documentation
2022-09-23 16:56:33 +01:00
Mathias Vorreiter Pedersen
73f279d6e7
Merge pull request #10555 from MathiasVP/testcase-for-php-cve
...
C++: Fix missing bounds in range analysis
2022-09-23 16:55:51 +01:00
Robert Marsh
c2dfbd47a3
Merge pull request #10398 from MathiasVP/further-work-on-buffer-over-queries
...
C++: Further work on buffer-overflow queries
2022-09-23 11:06:32 -04:00
Henry Mercer
8f9dafcce9
Go: Use a consistent query identifier for successfully extracted files
...
Update the query identifier for
`Diagnostics/SuccessfullyExtractedFiles.ql` to be consistent with other
languages.
2022-09-23 16:02:36 +01:00
Alex Ford
364bc883ba
Ruby: add YAML.load_file as an unsafe deserialization sink
2022-09-23 15:54:15 +01:00
Ian Lynagh
8c13738199
Merge pull request #10556 from igfoo/igfoo/memo
...
Kotlin: Simplify trapFilePathForDecl
2022-09-23 14:59:20 +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
Stephan Brandauer
33d30a0802
Merge pull request #10018 from github/new-atm-features-rebased
...
New atm features rebased
2022-09-23 15:29:50 +02: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
Michael Nebel
c3c90dd1b4
C#: Add change-note.
2022-09-23 14:56:33 +02:00
erik-krogh
96b46de7c8
update alert-messages based on review feedback
2022-09-23 14:53:54 +02:00
Mathias Vorreiter Pedersen
0a7be0bbb3
Merge pull request #10551 from erik-krogh/swift-followMsg
...
Swift: Add full stop at the end of alert-messages
2022-09-23 13:50:44 +01:00
erik-krogh
edd03020c2
fix the casing in the alert-message of cpp/unclear-array-index-validation
2022-09-23 14:48:01 +02:00
Mathias Vorreiter Pedersen
639aaff9c7
C++: Add more metadata.
2022-09-23 13:47:02 +01:00
erik-krogh
9e4843d53e
update the alert-message of cpp/file-may-not-be-closed based on feedback
2022-09-23 14:46:00 +02:00
erik-krogh
2351884352
update some alert-messages based on review feedback
2022-09-23 14:45:59 +02:00
erik-krogh
a3c051bf96
add change-note
2022-09-23 14:45:59 +02:00
erik-krogh
40bea78186
remove more instances of the alert-loc being repeated as a link
2022-09-23 14:45:59 +02:00
erik-krogh
d55993a37b
autoformat
2022-09-23 14:45:59 +02:00
erik-krogh
33165f4f55
CPP: update expected output
2022-09-23 14:45:59 +02:00
erik-krogh
a30c38f38c
CPP: make more alert messages follow the style-guide
2022-09-23 14:45:59 +02:00
luchua-bc
8effbff817
Remove unused code and update qldoc
2022-09-23 12:43:39 +00:00
Tamás Vajk
43ec5dcc9a
Merge pull request #10549 from tamasvajk/kotlin-fix-local-class-extraction
...
Kotlin: Fix non-nested local class extraction
2022-09-23 14:40:59 +02:00
Anders Schack-Mulligen
dcc3f9e0a2
Java: Improve performance of StaticInitializationVector.
2022-09-23 14:39:32 +02:00
luchua-bc
e33d786745
Add test cases and reduce FPs
2022-09-23 12:31:16 +00:00
luchua-bc
251f67dcf3
Use the new CSV model
2022-09-23 12:31:16 +00:00
luchua-bc
b3572747f0
Simplify test case and minor update to the query
2022-09-23 12:31:15 +00:00
luchua-bc
311c9e4719
Query to detect unsafe resource loading in Java Spring applications
2022-09-23 12:31:15 +00:00
Mathias Vorreiter Pedersen
ce3654c6ec
C++: Make ql-for-ql happy.
2022-09-23 13:07:07 +01:00
Mathias Vorreiter Pedersen
f3212fe01c
C++: Autoformat.
2022-09-23 13:00:22 +01:00
Mathias Vorreiter Pedersen
162ec2884e
C++: Also fix 'OverrunWriteProductFlow.ql'
2022-09-23 12:59:27 +01:00
Ian Lynagh
70dae17d2f
Kotlin: Simplify trapFilePathForDecl
2022-09-23 12:41:41 +01:00
Michael Nebel
342c8764ce
Merge pull request #10433 from michaelnebel/csharp/fix-joinorder-interpretedcallable
...
C#: Fix join order in InterpretedCallable characteristic predicate.
2022-09-23 13:37:49 +02:00
Mathias Vorreiter Pedersen
8056131901
C++: Autoformat.
2022-09-23 12:26:37 +01:00
Mathias Vorreiter Pedersen
494afdde96
C++: Accept test changes.
2022-09-23 12:21:31 +01:00
Mathias Vorreiter Pedersen
ac03242cfc
C++: Add an SSAVariable for pointer-arithmetic expressions in guards.
2022-09-23 12:21:31 +01:00
Michael Nebel
4963835772
Merge pull request #10540 from michaelnebel/csharp/dotnet-run-validate
...
C# Integration test validations for `dotnet run`.
2022-09-23 13:10:06 +02:00
Michael Nebel
9ace52114c
C#: Update expected test output.
2022-09-23 13:06:48 +02:00
Michael Nebel
6d4f1ebcc6
C#: Consider datetime expressions as simple sanitizers.
2022-09-23 13:04:47 +02:00
Michael Nebel
7c74cc6420
C#: Update expected test output - including false positive.
2022-09-23 13:04:04 +02:00
Michael Nebel
e45e06b675
C#: Add LogForging testcase based on ASP.NET.
2022-09-23 13:02:42 +02:00
Michael Nebel
39402b842e
C#: Add ASP.NET Core stubs to LogForging tests.
2022-09-23 12:59:15 +02:00
Michael Nebel
96a46a007f
C#: Use stubs in the CWE-117 LogForging test.
2022-09-23 12:49:12 +02:00
Mathias Vorreiter Pedersen
6d06234048
C++: Add testcase demonstrating missing result for 'cpp/invalid-pointer-deref' query.
2022-09-23 11:41:16 +01:00
erik-krogh
1fe76ecc0a
update expected output
2022-09-23 12:27:06 +02:00
erik-krogh
6c3ed6cd0e
update alert-messages to follow the style-guide
2022-09-23 12:23:40 +02:00
Rasmus Wriedt Larsen
71da217b82
Merge pull request #10535 from RasmusWL/flask-jsonify
...
Python: Model `flask.jsonify`
2022-09-23 12:18:27 +02:00
Nora Dimitrijević
0e9b77e7c3
C++: Initial .qhelp file
2022-09-23 11:46:31 +02:00
Asger F
11ba0f0bbe
Merge pull request #10253 from asgerf/js/type-defs-squashed
...
JS: Add generated typings to SQL models
2022-09-23 11:34:01 +02:00
Tamas Vajk
d6e31af985
Kotlin: Fix non-nested local class extraction
2022-09-23 11:23:21 +02:00
Tamas Vajk
b4eb4ec837
Kotlin: Add test case for top level local class extraction
2022-09-23 11:19:09 +02:00
Michael Nebel
1b25d23531
C#: Align comments and actual test case.
2022-09-23 11:05:29 +02:00
Tom Hvitved
f8d2e0e6a8
Ruby: Improve QL doc for Module::getASubClass
2022-09-23 10:40:38 +02:00
Tom Hvitved
8b424d181a
Merge pull request #10505 from hvitved/dataflow/viable-impl-in-ctx-consistency
...
Data flow: Guard against `viableImplInCallContext` not being a subset of `viableCallable`
2022-09-23 10:38:48 +02:00
Tom Hvitved
fa6da788dc
Ruby: Add call graph test for unsupported constructs
2022-09-23 10:24:43 +02:00
Stephan Brandauer
1bb781ad94
Merge branch 'main' into new-atm-features-rebased
2022-09-23 09:55:29 +02:00
Asger F
d1e19a313b
JS: Update test case to clarify choice of sinks
2022-09-23 09:18:15 +02:00
dependabot[bot]
5aecf0e31d
Bump actions/upload-artifact from 2 to 3
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 2 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2022-09-23 04:05:06 +00:00
github-actions[bot]
f5cf8cffa3
Release preparation for version 2.11.0
2022-09-22 20:14:12 +00:00
Chris Smowton
3fe1550943
Kotlin unit tests: use best plugin version compatible with environment kotlinc
2022-09-22 21:11:47 +01:00
Chris Smowton
cea90d535d
Disable Kotlin element of test library-tests/frameworks/android/widget
...
This is disabled for now because Kotlin doesn't extract java.lang.CharSequence.toString, even though that interface redeclares toString, and JDK18 points a call (syntactically to Editable.toString) that previous JDKs pointed at
Object.toString. This produces a database inconsistency that should be fixed Kotlin-side.
2022-09-22 20:44:37 +01: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
Michael Nebel
faf33efeb8
C#: Improve join ordering further for InterpretedCallable.
2022-09-22 19:10:14 +02:00
Michael Nebel
d4f1fc7900
C#: Add some integration tests for 'dotnet run' and do some minor validation of the output.
2022-09-22 18:42:50 +02:00
Michael Nebel
c978798308
C#: Update test program to print a default message to standard out.
2022-09-22 18:41:46 +02:00
Nora Dimitrijević
dca13f5c89
C++: Initial cpp/comma-before-misleading-indentation
...
MRVA top 1000 run at: https://github.com/github/semmle-code/actions/runs/3106828111
2022-09-22 17:44:18 +02:00
Mathias Vorreiter Pedersen
c4afb3a2b5
Merge branch 'main' into further-work-on-buffer-over-queries
2022-09-22 16:35:52 +01:00
Nora Dimitrijević
f1efc76e8c
C++: Initial commit of cpp/comma-before-missing-indentation
2022-09-22 17:06:04 +02: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
Tom Hvitved
9937ae8ef9
Ruby: Call sensitive instance method resolution
2022-09-22 16:22:31 +02: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
Tom Hvitved
64978b0138
Ruby: Add data-flow test that demonstrates spurious flow
2022-09-22 15:18:42 +02:00
Tom Hvitved
914c711940
C#: Fix broken viableImplInCallContext implementation
2022-09-22 15:01:40 +02:00
Tom Hvitved
f4b82cb2e8
Python: Update expected test output
2022-09-22 15:01:40 +02:00
Tom Hvitved
7a694d5da5
C++: Update expected test output
2022-09-22 15:01:40 +02:00
Tom Hvitved
ad6b870f94
Data flow: Sync files
2022-09-22 15:01:33 +02:00
Rasmus Wriedt Larsen
d3f811cab3
Python: Accept any arg to flask.jsonify
...
Thanks @tausbn 👍
2022-09-22 14:59:06 +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
Rasmus Wriedt Larsen
8174120916
Python: Model flask.jsonify
2022-09-22 14:43:39 +02: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
Rasmus Wriedt Larsen
078d3d0062
Python: Add stacktrace exposure example
2022-09-22 14:27:49 +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
Michael Nebel
3d5767e723
C#: Make sure that dotnet clean also removes the bin and obj folders.
2022-09-22 14:01:53 +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
e4e9a2e1f9
Data flow: Guard against viableImplInCallContext not being a subset ofviableCallable
2022-09-22 13:37:59 +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
James Fletcher
40f77b25d1
remove duplicated anchor to fix failing tests
2022-09-22 11:15:11 +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
a09e27f863
Merge branch 'main' into aeisenberg/update-analyzing-databases
2022-09-21 14:40:27 -07: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
Robert Marsh
32ab636c77
C++: adjust test so size flows from malloc to field
2022-09-21 12:43:44 -04:00
Robert Marsh
fcd0bb13b3
C++: add paths to ArrayAccessProductFlow
2022-09-21 12:37:31 -04:00
Erik Krogh Kristensen
1bdb6b45f8
fix typo
...
Co-authored-by: Taus <tausbn@github.com >
2022-09-21 18:14:00 +02:00
Andrew Eisenberg
260a3004f4
Update docs/codeql/codeql-cli/analyzing-databases-with-the-codeql-cli.rst
2022-09-21 09:04:07 -07: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
Joe Farebrother
2414239e50
Fix qhelp formatting
2022-09-21 16:36:20 +01: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
7607e67d59
Apply suggestions from code review
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-09-21 08:20:54 -07:00
Tamas Vajk
633f99df6c
Kotlin: Fix comment extraction for anonymous objects
2022-09-21 17:15:11 +02:00
Tamas Vajk
7927e1dcd4
Kotlin: Add test case for comment on an anonymous object
2022-09-21 17:12:19 +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
Joe Farebrother
eb3655da1c
Remove type check from the barrier predicate
2022-09-21 13:57:32 +01:00
Joe Farebrother
ed8ec89497
Reword suggestion on using debug flags
2022-09-21 13:57:31 +01:00
Joe Farebrother
44bd038339
Apply docs suggestions from code review
...
Co-authored-by: Ben Ahmady <32935794+subatoi@users.noreply.github.com >
2022-09-21 13:57:31 +01:00
Joe Farebrother
a6a500ade2
Apply suggestions from code review - doc improvements, simplification
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-09-21 13:57:31 +01:00
Joe Farebrother
6014a75e0e
Fix qhelp
2022-09-21 13:57:30 +01:00
Joe Farebrother
eed2df0fb3
Fix qhelp & ql-for-ql errors
2022-09-21 13:57:30 +01:00
Joe Farebrother
414e0b20b3
Add change note
2022-09-21 13:57:30 +01:00
Joe Farebrother
f934554143
Add docs + add an additional case
2022-09-21 13:57:29 +01:00
Joe Farebrother
b3d9d08750
Add tests
2022-09-21 13:57:29 +01:00
Joe Farebrother
d32540469b
Moved existing tests to subdirectory
2022-09-21 13:57:28 +01:00
Joe Farebrother
20b2956322
Add webview debugging query
2022-09-21 13:57:28 +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
Tamas Vajk
01a2d16974
Kotlin: Fix type access expressions in enum constructor calls
2022-09-21 10:32:27 +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
Marcono1234
431aa2cb79
Java: Add CompilationUnit.getATypeAvailableBySimpleName()
...
This predicate is mainly helpful for Javadoc queries and for queries which
check whether the name of an element shadows another type.
2022-09-20 23:15:50 +02: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
Harry Maclean
d9487a07b1
Ruby: Make helper predicate private
2022-09-20 15:55:35 +01:00
Harry Maclean
6d3f87f610
Ruby: Small fixes
2022-09-20 15:55:35 +01:00
Harry Maclean
bc1723c0ee
Fix typos
2022-09-20 15:55:35 +01:00
Harry Maclean
cdc640b544
Revert "Ruby: Allow custom edges in API graph EntryPoints"
...
This reverts commit ab061fb1e1d21877fc817c4c66b48fb2d3650fa8.
2022-09-20 15:55:35 +01:00
Harry Maclean
d5ef853343
Ruby: Remove ActiveStorage entry points
2022-09-20 15:55:35 +01:00
Harry Maclean
54b05e48a9
Ruby: Add change note
2022-09-20 15:55:35 +01:00
Harry Maclean
d68674a660
Ruby: disable problematic MaD path
2022-09-20 15:55:35 +01:00
Harry Maclean
ba5cd08a09
Update ActionController fixture
2022-09-20 15:55:35 +01:00
Harry Maclean
c97fadd7a3
Fix version number.
2022-09-20 15:55:35 +01:00
Harry Maclean
24b582d77a
Add missing QLDoc
2022-09-20 15:55:34 +01:00
Harry Maclean
96a34c3690
QL4QL fix
2022-09-20 15:55:34 +01:00
Harry Maclean
53a34174b9
Model ActiveStorage
2022-09-20 15:55:34 +01:00
Harry Maclean
39a1cf5bd8
Ruby: Allow custom edges in API graph EntryPoints
2022-09-20 15:55:34 +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
Asger F
51618b46a8
Sync ApiGraphModels.qll
2022-09-20 11:47:37 +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
Asger F
2fc5961b10
JS: Restrict where sub path edges are computed
2022-09-20 11:40:17 +02:00
Asger F
2c3d1de2c7
JS: Add change note
2022-09-20 11:40:17 +02:00
Asger F
0ec8c2f035
JS: fix spanner test
2022-09-20 11:40:17 +02:00
Asger F
b545bbb477
JS: Update NodeOfType test
2022-09-20 11:40:17 +02:00
Asger F
baa559e696
JS: Fix a hole in the sequelize-typescript typings
2022-09-20 11:40:17 +02:00
Asger F
47f1d62569
JS: Add generated typings to SQL models
2022-09-20 11:40:16 +02: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
Alex Ford
7720d85c98
Ruby: use camelcase verion of Http module
2022-09-20 08:58:35 +01: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
Alex Ford
be1ac17a60
Merge branch 'main' into rb/sensitive-get-query
2022-09-19 20:57:20 +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
Ed Minnix
e37f62bb5e
Android ContentProvider.openFile does not check mode initital commit
...
Initial commit for work on a query finding instances where the `mode`
parameter of an override of the `openFile` method of the
`android.content.ContentProvider` class
2022-09-19 10:32:02 -04:00
Ed Minnix
00891fa455
Android Manifest Incomplete provider permissions initial commit
...
Initial work on checking provider elements in Android manifests for
complete permissions.
2022-09-19 10:31:02 -04: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
027365c246
Update the analyze databases article
...
This change updates the analyze databases article to clarify examples.
It reorganizes to put packs examples first and rearranges a few
paragraphs.
2022-09-16 14:05:28 -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
Alex Ford
08c8db8937
Ruby: stop rb/sensitive-get-query from considering ID type data as sensitive
2022-09-16 15:40:13 +01:00
Alex Ford
79ad7d293f
Ruby: make SensitiveExpr a dataflow node rather than an Expr
2022-09-16 15:39:16 +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
Michael Nebel
32816fa68f
C#: Improve join in the InterpretedCallable characteristic predicate.
2022-09-15 10:54:27 +02: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
Mathias Vorreiter Pedersen
c7ccff2e20
C++: Accept test changes.
2022-09-13 12:11:22 +01: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
4130616ab1
C++: Use experimental dataflow for the product flow library.
2022-09-13 09:41:03 +01:00
Robert Marsh
ededfaa40b
C++: use-use flow in ArrayAccessProductFlow
2022-09-13 09:39:39 +01:00
Robert Marsh
0fcfe5772f
C++: query-specific model for ffmpeg allocator
2022-09-13 09:39:31 +01:00
Robert Marsh
61017a7997
C++: prevent a bad join order
2022-09-13 09:39:11 +01: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
Alex Ford
0da367f6e5
Ruby: address QL4QL alerts for rb/sensitive-get-query
2022-09-12 08:56:17 +01: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
Alex Ford
f84035a65c
Ruby: add rb/sensitive-get-query query
2022-09-10 17:43:15 +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
Stephan Brandauer
81d02cc963
optimize performance of a helper-predicate
2022-09-01 16:05:36 +02:00
Stephan Brandauer
cdbab187ca
remove unused code
2022-09-01 16:05:36 +02:00
Stephan Brandauer
f59c48ebb9
autoformatter
2022-09-01 16:05:36 +02:00
Stephan Brandauer
caf39592d4
better documentation
2022-09-01 16:05:36 +02:00
Stephan Brandauer
b9cb60c2cb
Review comments
...
Co-authored-by: Henry Mercer <henrymercer@github.com >
2022-09-01 16:05:36 +02:00
Stephan Brandauer
ac097d5f2a
fix now-broken tests
2022-09-01 16:05:35 +02:00
Stephan Brandauer
068a948c05
fix ql-for-ql warnings
2022-09-01 16:05:35 +02:00
Stephan Brandauer
3aa4e29dae
remove obsolete features
2022-09-01 16:05:35 +02:00
Stephan Brandauer
ed75080072
add stringConcatenatedWith feature to help the model learn that string concatenation leaves are usually not sinks
2022-09-01 16:05:35 +02:00
Stephan Brandauer
9468f62620
add assignedToPropName feature to let the model improve number of false positives for XSS query
2022-09-01 16:05:35 +02:00
Stephan Brandauer
db73a62bc2
fix bug in InputArgumentIndex feature
2022-09-01 16:05:34 +02:00
Stephan Brandauer
67500f85ba
performance fixes
2022-09-01 16:05:34 +02:00
Stephan Brandauer
96919eea80
use ? for unknown parameternames
2022-09-01 16:05:34 +02:00
Stephan Brandauer
f8b3c27210
add documentations and rename a feature
2022-09-01 16:05:34 +02:00
Stephan Brandauer
3422bdee92
add functionInterfacesInFile and surroundingFunctionParameters features
2022-09-01 16:05:34 +02:00
Stephan Brandauer
3e860762e7
documentation for calleeImports ATM feature
2022-09-01 16:05:33 +02:00
Stephan Brandauer
93aa279b31
documentation for new feature
2022-09-01 16:05:33 +02:00
Stephan Brandauer
25db666087
ATM: new feature to list all imports in an endpoint's file
2022-09-01 16:05:33 +02:00
Esben Sparre Andreasen
d0faf71113
use proper import instead of inlining
2022-09-01 16:05:33 +02:00
Esben Sparre Andreasen
82069cfb75
remove Input_ArgumentIndexAndAccessPathFromCallee
2022-09-01 16:05:33 +02:00
Esben Sparre Andreasen
095beb3c71
add docstring examples
2022-09-01 16:05:32 +02:00
Esben Sparre Andreasen
548f0286f3
address review comments
2022-09-01 16:05:32 +02:00
Esben Sparre Andreasen
57041aad7c
Apply suggestions from code review
...
Co-authored-by: Henry Mercer <henrymercer@github.com >
2022-09-01 16:05:32 +02:00
Esben Sparre Andreasen
5ac608d503
fix semantic merge conflict
2022-09-01 16:05:32 +02:00
Esben Sparre Andreasen
c95ab031ef
rename new features
2022-09-01 16:05:32 +02:00
Esben Sparre Andreasen
6533260614
add more features
2022-09-01 16:05:31 +02:00
Esben Sparre Andreasen
c4c4d288cb
improve feature documentation
2022-09-01 16:05:31 +02:00
Esben Sparre Andreasen
a8c3cb29ec
improve feature tests with more cases
2022-09-01 16:05:31 +02:00
Esben Sparre Andreasen
86b2b79b43
improve access path strings
2022-09-01 16:05:31 +02:00
Esben Sparre Andreasen
e0870e0b96
support import in getSimpleAccessPath
2022-09-01 16:05:31 +02:00
Esben Sparre Andreasen
e7de6cb4a7
support await in getSimpleAccessPath
2022-09-01 16:05:30 +02:00
Esben Sparre Andreasen
1db2117be4
avoid using new feautes by default
2022-09-01 16:05:30 +02:00
Esben Sparre Andreasen
7c2bfef253
add CompareFeatures.ql
2022-09-01 16:05:30 +02:00
Esben Sparre Andreasen
41b35eaa49
add generic tests for features
2022-09-01 16:05:30 +02:00
Esben Sparre Andreasen
f3cdb12dcf
Document EndpointFeatures.qll
2022-09-01 16:05:30 +02:00
Esben Sparre Andreasen
482d169667
add ParameterAccessPathSimpleFromArgumentTraversal
2022-09-01 16:05:29 +02:00
Esben Sparre Andreasen
dbc89fd9ab
improve getSimpleAccessPath
2022-09-01 16:05:29 +02:00
Esben Sparre Andreasen
0db7c39c34
refactor calleeAccessPath feature to class
2022-09-01 16:05:29 +02:00
Stephan Brandauer
aa41bbb96c
refactor getACallBasedTokenFeature to class-use
2022-09-01 16:05:29 +02:00
Esben Sparre Andreasen
5204346e1f
Add CalleeAccessPathSimpleFromArgumentTraversal
2022-09-01 16:05:28 +02:00
Esben Sparre Andreasen
e1a38bd4d6
refactor EndpointFeatures.ql to use classes
2022-09-01 16:05:28 +02: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
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
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
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
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
Michael Nebel
9cb4e4a61c
C#: Update release note.
2022-08-11 08:57:10 +02: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
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
bf24d7886a
Accept test changes
2022-08-10 18:10:02 +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
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
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
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
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
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
yoff
75ac24a847
Merge branch 'main' into python-dataflow/flow-summaries-from-scratch
2022-08-10 10:57:59 +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
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
Erik Krogh Kristensen
0abbd50ca1
apply changes based on docs review
2022-08-09 13:51:40 +02: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
Shyam Mehta
76cecc170e
Fix documentation
2022-08-03 14:30:17 -04: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
luchua-bc
b69eba9238
Add check for Spring redirect
2022-07-29 01:59:47 +00: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
luchua-bc
1ce31ec32c
Add sinks of servlet dispatcher and filter
2022-07-26 23:05:25 +00:00
Nick Rolfe
6356b20928
Ruby: port js/hardcoded-data-interpreted-as-code
2022-07-26 16:05:22 +01:00
luchua-bc
962069ccff
Add path check in a security context (redirect)
2022-07-22 23:10:52 +00: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
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
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
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
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
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
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
Erik Krogh Kristensen
595875ff98
remove redundant not-equals check
2022-07-13 12:06:12 +02:00
Erik Krogh Kristensen
a4262f8d91
add some more references to the overly-large-range qhelp
2022-07-13 11:20:24 +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
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
97d9fd9846
Update security-validation-disabled.ql
2022-07-05 15:18:56 -07: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
Shyam Mehta
39f885413f
Change log
2022-07-01 11:34:56 -04: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
Shyam Mehta
300a14c35c
Add ESAPI reference
2022-07-01 10:43:59 -04: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
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
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
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
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
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
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
Shyam Mehta
b5ca2c3d9d
Add additional tests from real world query run
2022-06-28 17:32:20 -04: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
Erik Krogh Kristensen
a343ceaf8b
add suspicious-regexp-range query
2022-06-28 09:49:27 +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
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
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
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
yoff
a2851baa9f
python: fix import of "merge moved" file
2022-06-23 12:05:55 +00: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
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
yoff
8a2125353d
Python: fix definition of LocalSourceNode
...
and typo
2022-06-20 08:48:33 +00: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