Arthur Baars
42ca3f319b
Merge pull request #8397 from github/release-prep/2.8.3
...
Release preparation for version 2.8.3
2022-03-11 08:08:01 +01:00
Jeroen Ketema
007e33ad46
Fix C++ changelog heading and itemization
2022-03-10 23:11:07 +01:00
github-actions[bot]
6b194bc55f
Release preparation for version 2.8.3
2022-03-10 19:43:58 +00:00
Tom Hvitved
208851cb91
Merge pull request #7084 from hvitved/ruby/self-flow
...
Ruby: Cleanup flow through `self`
2022-03-10 10:50:24 +01:00
Tom Hvitved
5b974582e3
Merge pull request #8322 from hvitved/csharp/remove-odasa-legacy
...
C#: Remove legacy `odasa` support
2022-03-10 10:34:33 +01:00
Tom Hvitved
37f5db5baa
Ruby: Reduce captureFlow(In|Out)
...
When there is flow in/out of a block through a captured variable, we can restrict
the calls that give rise to the flow to the method calls to which the blocks
belong.
2022-03-10 10:21:51 +01:00
Mathias Vorreiter Pedersen
dfb20f7721
Merge pull request #8368 from MathiasVP/add-must-flow-lib
...
C++: Factor must-flow predicates out of two queries
2022-03-09 17:07:23 +00:00
Taus
7b877fb317
Merge pull request #8336 from tausbn/python-fix-a-bunch-of-ql-warnings
...
Python: Fix a bunch of QL warnings
2022-03-09 16:31:28 +01:00
Mathias Vorreiter Pedersen
17cec52af8
Merge pull request #8385 from erik-krogh/orderByConst
...
QL: add query detecting ordering by a constant
2022-03-09 14:18:35 +00:00
Michael Nebel
fbe8f75903
Merge pull request #8038 from michaelnebel/csharp/gvn-cfecomparison
...
C#: Refactor Structural Comparison for Control Flow Elements.
2022-03-09 13:36:42 +01:00
Tom Hvitved
aa1284aa03
Ruby: Cache two more data flow predicates
2022-03-09 13:17:14 +01:00
Tom Hvitved
1e1b2e284d
Ruby: Cleanup flow through self
2022-03-09 13:17:11 +01:00
Michael Nebel
d0cb984f9e
Merge pull request #6 from hvitved/csharp/gvn-cfecomparison
...
C#: Code review suggestions
2022-03-09 12:11:23 +01:00
Tom Hvitved
c51ddd0d35
C#: Code review suggestions
2022-03-09 10:50:53 +01:00
Tom Hvitved
275902d558
Merge pull request #8373 from hvitved/ruby/regex-multiples-parse-fix
...
Ruby: Fix incorrect parsing of ranges
2022-03-09 10:30:01 +01:00
Tom Hvitved
7f0fa15fbc
Address review comment
2022-03-09 09:19:37 +01:00
Tom Hvitved
e4247e4ef6
C#: Add change note
2022-03-09 09:19:37 +01:00
Tom Hvitved
c463dc9d1a
C#: Remove legacy odasa support
...
The following environment variables are no longer supported:
```
ODASA_BUILD_ERROR_DIR
ODASA_CSHARP_LAYOUT
ODASA_SNAPSHOT
SEMMLE_DIST
SEMMLE_EXTRACTOR_OPTIONS
SEMMLE_PLATFORM_TOOLS
SEMMLE_PRESERVE_SYMLINKS
SOURCE_ARCHIVE
TRAP_FOLDER
```
2022-03-09 09:19:37 +01:00
Tom Hvitved
f5fbf50d7d
Ruby: Fix incorrect parsing of ranges
2022-03-08 19:53:17 +01:00
Tom Hvitved
89c3d0535a
Ruby: Add regex test that outputs all RegExpTerms
2022-03-08 19:53:17 +01:00
Tom Hvitved
073302f196
Ruby: Add another regex consistency test
2022-03-08 19:53:17 +01:00
Tom Hvitved
a70ed71c01
Merge pull request #8370 from hvitved/ruby/regex-group-name-off-by-one
...
Ruby: Fix off-by-one error in `getGroupName`
2022-03-08 19:52:32 +01:00
Tom Hvitved
5f48cc06bb
Ruby: Fix off-by-one error in getGroupName
2022-03-08 15:59:47 +01:00
Tom Hvitved
6dd126b6e3
Ruby: Add regex group tests
2022-03-08 15:59:28 +01:00
Mathias Vorreiter Pedersen
d8bad778ed
C++: Fix QLDoc
2022-03-08 14:38:39 +00:00
Tom Hvitved
86121164c5
Merge pull request #8364 from hvitved/ruby/fix-regex-parse
...
Ruby: Fix regex parsing of `/[|]/`
2022-03-08 15:26:29 +01:00
Taus
063a8bbc43
Python: Apply suggestions from code review
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2022-03-08 15:20:35 +01:00
Michael Nebel
ec75bbc748
Merge pull request #8203 from michaelnebel/csharp/extractor-option-buildless
...
C#: Refactoring - Move some of the standalone extractor code to the Standalone project.
2022-03-08 14:32:59 +01:00
Mathias Vorreiter Pedersen
69417e150a
C++: Address review comments.
2022-03-08 13:15:02 +00:00
Mathias Vorreiter Pedersen
1bf430529b
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/MustFlow.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-03-08 13:07:17 +00:00
Mathias Vorreiter Pedersen
edf629f5aa
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/MustFlow.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-03-08 13:07:09 +00:00
Mathias Vorreiter Pedersen
bfa0714577
Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/MustFlow.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-03-08 13:06:53 +00:00
Mathias Vorreiter Pedersen
9e7b0925c6
Merge pull request #8366 from jketema/code-duplication-deprecated
...
C++: Mark everything in CodeDuplication.qll as deprecated
2022-03-08 12:47:50 +00:00
Jeroen Ketema
3877598c12
C++: Remove cpp/duplicated-lines-in-files which was deprecated over a year ago
2022-03-08 12:58:19 +01:00
Mathias Vorreiter Pedersen
7106fe35aa
C++: Accept test changes. This is just a change in the names of the path nodes. These names are actually better as they don't refer to the name of IR instructions.
2022-03-08 11:40:56 +00:00
Mathias Vorreiter Pedersen
8c5b3368e1
C++: Make the two must-flow queries use the new must-flow library
2022-03-08 11:40:56 +00:00
Mathias Vorreiter Pedersen
ee9c0dcb83
C++: Add library for must-flow.
2022-03-08 11:40:56 +00:00
Jeroen Ketema
b039b91fd8
C++: Add change note
2022-03-08 12:36:11 +01:00
Jeroen Ketema
df1e810f13
C++: Remove duplicate code queries that were deprecated over a year ago
2022-03-08 12:28:41 +01:00
Jeroen Ketema
d2e2866276
C++: Also deprecate TDuplicationOrSimilarity
2022-03-08 12:26:07 +01:00
Jeroen Ketema
55351ce835
Update cpp/ql/src/external/CodeDuplication.qll
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2022-03-08 11:57:05 +01:00
Jeroen Ketema
2e73e35747
Update cpp/ql/src/external/CodeDuplication.qll
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2022-03-08 11:56:55 +01:00
Jeroen Ketema
81783e828e
C++: Mark everything in CodeDuplication.qll as deprecated
...
Although we earlier added a comment to the classes in noting that
they are deprecated, we did not properly mark the classes as actually
being deprecated.
All predicates - except for 3 - depend on the classes being functional,
which they no longer are, so mark those a deprecated as well. The three
remaining predicates (`FunctionDeclarationEntry`, `numberOfSourceMethods`,
and `whitelistedLineForDuplication`) seem to be helpers, and are likely
not used when the library is not used, so mark those as deprecated as
well.
2022-03-08 11:38:01 +01:00
Erik Krogh Kristensen
4734f1916e
Merge pull request #7598 from erik-krogh/fieldOnlyUsedInCharPred
...
QL: field only used in charPred
2022-03-08 11:25:57 +01:00
Rasmus Wriedt Larsen
cbe3964a87
Merge pull request #8275 from haby0/py/add-ssrf-sinks
...
Python: Add Server-side Request Forgery sinks
2022-03-08 11:06:52 +01:00
Tom Hvitved
3bc8d0878f
Ruby: Add regex consistency queries
2022-03-08 10:10:14 +01:00
Tom Hvitved
6d4eecff14
Ruby: Fix regex parsing of /[|]/
2022-03-08 09:52:06 +01:00
Tom Hvitved
a7442b7a2b
Ruby: Add regex test case for /[|]/
2022-03-08 09:51:39 +01:00
Taus
5a8ba6a7af
Python: Fix use of singleton set
2022-03-07 18:59:49 +00:00
Taus
d2603884ca
Python: Fix a bunch of class QLDoc
2022-03-07 18:59:49 +00:00
Taus
af7f532212
Python: Fix up a bunch of function QLDoc
2022-03-07 18:59:49 +00:00
Tom Hvitved
6aad8d6897
Merge pull request #8302 from aibaars/type-tracking-smallstep
...
Ruby: TypeTracker: add smallstep for functions that return their arguments
2022-03-07 17:26:45 +01:00
Mathias Vorreiter Pedersen
c7d624d314
Merge pull request #8247 from ihsinme/ihsinme-patch-80
...
CPP: Add query for CWE-190: Integer Overflow or Wraparound when using transform after operation
2022-03-07 11:00:29 +00:00
Geoffrey White
e7dca435a9
Merge pull request #6950 from ihsinme/ihsinme-patch-078
...
CPP: Add query for CWE-200 Exposure of Sensitive Information to an Unauthorized Actor
2022-03-07 10:55:29 +00:00
Arthur Baars
200a965fda
Update expected output
2022-03-07 11:51:54 +01:00
Arthur Baars
95027e746c
Ruby: TypeTracker: add smallstep for functions that return their arguments
2022-03-07 11:51:54 +01:00
Tom Hvitved
9c4c35141a
Ruby: Update type tracker test
2022-03-07 11:51:54 +01:00
Tom Hvitved
64b458b166
Merge pull request #8319 from hvitved/csharp/recursive-qltest-extraction-change-note
...
C#: Add change note about recursive `codeql test run` extraction
2022-03-07 11:43:11 +01:00
Tom Hvitved
c1db0a9429
Merge pull request #8317 from hvitved/typetracker/jump-step
...
Ruby/Python: Clear call contexts after jump steps in type tracking
2022-03-07 11:38:51 +01:00
Tom Bolton
173f45f316
Merge pull request #8334 from github/tombolton/add-mapping-query
...
JS: Add query that maps queries to sink type
2022-03-07 10:35:37 +00:00
Mathias Vorreiter Pedersen
027c8247ae
Merge pull request #8310 from jketema/update-stats
...
C++: Update the DB scheme stats file
2022-03-07 09:11:53 +00:00
Tony Torralba
08ce128d64
Merge pull request #8325 from JLLeitschuh/feat/JLL/improve_compile_time_constant
...
[Java] Add CharacterLiteral to CompileTimeConstantExpr.getStringValue
2022-03-07 09:32:59 +01:00
haby0
7e6666bc63
Merge branch 'main' into py/add-ssrf-sinks
2022-03-07 12:09:14 +08:00
Erik Krogh Kristensen
9c759a987e
QL: add query detecting ordering by a constant
2022-03-06 17:02:19 +01:00
Tiferet Gazit
bbc712fdb3
Merge pull request #8297 from erik-krogh/atmPerf
...
JS: Fix ATM timeout on NodeJS
2022-03-04 10:41:35 -08:00
Mathias Vorreiter Pedersen
624795cbbf
Merge pull request #8059 from rdmarsh2/rdmarsh2/cpp/insufficient-key-strength
...
C++: new query for insufficient key strength
2022-03-04 17:11:44 +00:00
Robert Marsh
280fdbfc1b
C++: accept test output from perf improvement
...
The last commit removed some source nodes from the dataflow graph, which
changed the test expectations slightly. No result changes occurred.
2022-03-04 11:39:10 -05:00
Taus
b35718e0d5
Python: Remove uses of getAQlClass
2022-03-04 15:39:27 +00:00
Jonathan Leitschuh
38897f2ec1
Fixup tests from code review changes
2022-03-04 09:33:51 -05:00
Jonathan Leitschuh
17b6e66814
Apply suggestions from code review
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
2022-03-04 09:29:57 -05:00
ihsinme
5c801392d1
Merge pull request #2 from geoffw0/fix_tests
...
Fix tests.
2022-03-04 15:41:41 +03:00
Arthur Baars
71e393c6e1
Merge pull request #8330 from aibaars/cache-regExpSource
...
Ruby: cache regExpSource/1 instead of isInterpretedAsRegExp
2022-03-04 13:38:11 +01:00
Taus
095f27f294
Python: Remove deprecated annotations
2022-03-04 12:30:26 +00:00
Geoffrey White
17cd4d86f1
Fix tests.
2022-03-04 12:27:48 +00:00
Taus
20710616c5
Python: Fix "use set literal" warnings
2022-03-04 12:26:36 +00:00
Geoffrey White
1cb104418f
Update ExposureSensitiveInformationUnauthorizedActor.expected
...
Fix test.
2022-03-04 12:25:22 +00:00
Geoffrey White
a34a61c16f
Update ExposureSensitiveInformationUnauthorizedActor.expected
...
Fix test.
2022-03-04 12:25:05 +00:00
Taus
821de636af
Python: Remove redundant inline casts
...
These are all implied by the return type of the other side of the
equality.
2022-03-04 12:21:31 +00:00
Taus
74f0bdfc79
Python: Fix "unused disjunct" warnings
...
For the most part, these boil down to "some global property holds, and
so this relation contains all instances of class `X`". The fix is to
explicitly build the cartesian product (which we were already building
implicitly anyway) by adding `and exists(var)` to the disjunct that did
not mention `var`.
Note that these cartesian products are always with singletons on one
side, and so should be unproblematic.
2022-03-04 12:14:57 +00:00
Mathias Vorreiter Pedersen
9a91e66714
Merge pull request #8321 from MathiasVP/improve-using-expired-address-query
...
C++: More TPs from `cpp/using-expired-stack-address`
2022-03-04 12:07:55 +00:00
tombolton
2ffa6771ff
replace endpoint type name with encoding in mapping query
2022-03-04 11:00:31 +00:00
Rasmus Wriedt Larsen
3f48916e95
Merge pull request #7915 from yoff/python/promote-xpath-injection
...
Python: promote XPath injection query
2022-03-04 11:59:39 +01:00
Rasmus Wriedt Larsen
f620e2599d
Merge branch 'main' into py/add-ssrf-sinks
2022-03-04 11:50:12 +01:00
Rasmus Wriedt Larsen
e47f726e74
Python: Add change-note
2022-03-04 11:48:17 +01:00
Rasmus Wriedt Larsen
d86284bf32
Python: Update frameworks.rst
2022-03-04 11:48:06 +01:00
Rasmus Wriedt Larsen
75bc532d10
Python: Avoid toString usage :O
2022-03-04 11:41:22 +01:00
Rasmus Wriedt Larsen
866e615689
Python: Add PyPI links in qldocs
2022-03-04 11:40:03 +01:00
Rasmus Wriedt Larsen
02a97b08bb
Python: Move urllib and urllib2 to be part of stdlib modeling
2022-03-04 11:31:47 +01:00
Rasmus Wriedt Larsen
c65839bb77
Python: improve urllib3 modeling
2022-03-04 11:25:14 +01:00
Rasmus Wriedt Larsen
7d6d8be179
Python: Fix httpx modeling
2022-03-04 11:07:51 +01:00
Rasmus Wriedt Larsen
56901ea841
Python: Make new SSRF sink modules private
2022-03-04 11:04:18 +01:00
Rasmus Wriedt Larsen
40feb1fb8d
Python: SPURIOUS results for httpx
2022-03-04 11:03:32 +01:00
yoff
d0a393e8d1
Update python/ql/test/library-tests/frameworks/stdlib/XPathExecution.py
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-03-04 10:56:53 +01:00
yoff
c514282d4a
Merge pull request #8255 from tausbn/python-nomagic-pattern-getcase
...
Python: Prevent magic/inlining in `getCase`
2022-03-04 10:53:20 +01:00
Tom Hvitved
c49ed559d6
Update csharp/ql/lib/change-notes/2022-03-03-recursive-qltest-extraction.md
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2022-03-04 10:49:42 +01:00
Arthur Baars
cd5c71e85e
Ruby: cache regExpSource/1 instead of isInterpretedAsRegExp
2022-03-04 10:15:22 +01:00
Jonathan Leitschuh
04cd0dbfe9
[Java] Add CharacterLiteral to CompileTimeConstantExpr.getStringValue
2022-03-03 18:08:17 -05:00
ihsinme
467136c173
Create ExposureSensitiveInformationUnauthorizedActor.expected
2022-03-04 00:02:44 +03:00
ihsinme
77bc26681d
Create ExposureSensitiveInformationUnauthorizedActor.expected
2022-03-04 00:02:26 +03:00
Harry Maclean
1181779c10
Merge pull request #7920 from github/hmac/string-flow-summaries
...
Ruby: Add String flow summaries
2022-03-04 09:09:19 +13:00
Robert Marsh
60532e631e
C++: fix missing paren
2022-03-03 14:45:43 -05:00
ihsinme
5d1dee24d4
Create ExposureSensitiveInformationUnauthorizedActor.qlref
2022-03-03 20:04:54 +03:00
ihsinme
7b3546ea30
Create ExposureSensitiveInformationUnauthorizedActor.qlref
2022-03-03 20:04:17 +03:00
ihsinme
625f74e9be
Rename cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/semmle/tests/test2.cpp to cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/test3/test.cpp
2022-03-03 20:01:24 +03:00
ihsinme
8eec20644f
Rename cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/semmle/tests/test1.cpp to cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/test2/test.cpp
2022-03-03 20:00:54 +03:00
ihsinme
6e951f74ed
Rename cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/semmle/tests/test.cpp to cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/test1/test.cpp
2022-03-03 20:00:18 +03:00
ihsinme
9c04bd12f5
Update and rename cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/semmle/tests/ExposureSensitiveInformationUnauthorizedActor.expected to cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/test1/ExposureSensitiveInformationUnauthorizedActor.expected
2022-03-03 19:59:36 +03:00
ihsinme
e1c1f80f28
Rename cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/semmle/tests/ExposureSensitiveInformationUnauthorizedActor.qlref to cpp/ql/test/experimental/query-tests/Security/CWE/CWE-200/test1/ExposureSensitiveInformationUnauthorizedActor.qlref
2022-03-03 19:58:16 +03:00
ihsinme
b32be69e0a
Update DangerousUseOfTransformationAfterOperation.expected
2022-03-03 19:55:30 +03:00
Arthur Baars
b79d08523c
Merge pull request #8293 from aibaars/regex-pattern-source
...
Ruby: parse more string literals as regular expressions
2022-03-03 17:35:40 +01:00
Arthur Baars
22b0697371
Update ruby/ql/lib/codeql/ruby/security/performance/ParseRegExp.qll
...
Co-authored-by: Alex Ford <alexrford@users.noreply.github.com >
2022-03-03 17:13:19 +01:00
tombolton
bd9e845aea
update column names and remove encoding value
2022-03-03 15:59:10 +00:00
tombolton
f1f1526237
add query-sink mapping query
2022-03-03 15:20:06 +00:00
Mathias Vorreiter Pedersen
bf10456bf5
C++: Add a path explanation to the 'cpp/using-expired-stack-address' query.
2022-03-03 13:55:00 +00:00
Mathias Vorreiter Pedersen
9df923a7c8
C++: Catch more true positives by stepping into calls in the 'cpp/using-expired-stack-address' query.
2022-03-03 13:53:09 +00:00
Tom Hvitved
0c2551079a
C#: Add change note about recursive codeql test run extraction
2022-03-03 14:32:55 +01:00
Tom Hvitved
9d6d479fba
Add missing QL doc
2022-03-03 14:17:41 +01:00
Tom Hvitved
ba6ff88d05
Sync files
2022-03-03 12:30:50 +01:00
Tom Hvitved
b23ab8089a
Ruby: Clear call contexts after jump steps in type tracking
2022-03-03 12:29:47 +01:00
Jeroen Ketema
f80372b837
C++: Update the DB scheme stats file
2022-03-03 09:02:37 +01:00
Jeroen Ketema
3fc2f2f3dc
Merge pull request #8309 from jketema/taint-join-order
...
C++: Fix join order in the IR dataflow library
2022-03-03 09:00:42 +01:00
Jeroen Ketema
2fd950caad
C++: Fix join order in the IR dataflow library
...
Not having this fixed caused problems when updating the database
scheme stats file.
2022-03-03 07:42:52 +01:00
Harry Maclean
4a43731b83
Ruby: Use SimpleSummarizedCallable
...
This simplifies some String flow summaries.
2022-03-03 10:49:44 +13:00
Robert Marsh
9fb94d85b4
C++: performance tweaks for InsufficientKeySize
2022-03-02 15:59:42 -05:00
Arthur Baars
692fc4cb02
Update ruby/ql/lib/change-notes/2022-02-28-regex-string-literals.md
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2022-03-02 21:13:23 +01:00
Rasmus Lerchedahl Petersen
6946ae931a
python: missed a spot..
2022-03-02 17:12:48 +01:00
Michael Nebel
b39f383d45
Merge pull request #8230 from michaelnebel/csharp/autobuilder-buildless
...
C#: Buildless extractor option.
2022-03-02 15:53:02 +01:00
Michael Nebel
938902dc89
C#: Include example fragment in the release note on, how to invoke the extractor with the optional parameter.
2022-03-02 14:28:25 +01:00
Michael Nebel
fc89888c74
C#: Add pattern that only accepts 'true' and 'false' as the buildless option.
2022-03-02 14:28:21 +01:00
Michael Nebel
c5ddf6110f
C#: Address review comments (change description to use true/false instead of yes/no).
2022-03-02 14:27:45 +01:00
Michael Nebel
8d9999a8c4
C#: Change note describing the buildless extractor option.
2022-03-02 14:25:11 +01:00
Michael Nebel
3859b62554
C#: Autobuilder should use standalone in case buildless options is provided.
2022-03-02 14:25:11 +01:00
Michael Nebel
c973693bee
C#: Introduce buildless extractor option.
2022-03-02 14:25:06 +01:00
Michael Nebel
fff42501fc
Merge pull request #8167 from michaelnebel/csharp/extractor-option-compress
...
C# Extractor Option for specifying compression.
2022-03-02 14:22:52 +01:00
Michael Nebel
23fbfbc3b7
C#: Performance optimization of the GVN implementation.
2022-03-02 13:48:33 +01:00
Michael Nebel
a0a2cde6fa
C#: Update relase note to include example fragment on, how to invoke the extractor with the optional parameter.
2022-03-02 13:17:20 +01:00
Rasmus Lerchedahl Petersen
143e9ee954
Merge branch 'main' of github.com:github/codeql into python/promote-xpath-injection
2022-03-02 13:14:08 +01:00
Rasmus Lerchedahl Petersen
ee45e79948
python: Create XML modulein Concepts
...
to prepare for XXE and other XML related modelling
2022-03-02 13:10:23 +01:00
Rasmus Lerchedahl Petersen
80be767a7a
python: implement stdlib xpath support
2022-03-02 12:59:34 +01:00
Rasmus Lerchedahl Petersen
06e0f140c5
python: add tests for stdlib xpath
2022-03-02 12:58:37 +01:00
Mathias Vorreiter Pedersen
3681a1b736
Merge pull request #7933 from geoffw0/cwe497
...
C++: Improve cpp/system-data-exposure
2022-03-02 10:18:01 +00:00
Mathias Vorreiter Pedersen
71cd507f89
Merge pull request #8298 from MathiasVP/filter-bad-conversions-in-cpp-gvn
...
C++: Fix `GVN` performance on more invalid IR
2022-03-02 10:14:19 +00:00
Michael Nebel
53b2eac8c5
C#: Remove (symmetric) duplicates from the test output.
2022-03-02 09:44:51 +01:00
Michael Nebel
38f04e5585
C#: Flatten the the Gvn type.
2022-03-02 09:44:51 +01:00
Michael Nebel
6b4dea780f
C#: Introduce caching of the Gvn related types and the toGvn predicate.
2022-03-02 09:44:51 +01:00
Michael Nebel
796a18043b
C#: Add testcase for GVN printing.
2022-03-02 09:44:51 +01:00
Michael Nebel
7e25b141ca
C#: Add test cases for finding structurally equivalent control flow elements.
2022-03-02 09:44:51 +01:00
Michael Nebel
52952e98bf
C#: Example source code with structurally same expressions and statements.
2022-03-02 09:44:51 +01:00
Michael Nebel
4499551ca4
C#: Add a verbatim copy of the structural comparison for internal use only.
2022-03-02 09:44:51 +01:00
Michael Nebel
16270cf57f
C#: Add configuration class to allow defining a candidate pairs of control flow predicates, where we want to look for structural equality.
2022-03-02 09:44:51 +01:00
Michael Nebel
87cb92a434
C#: Add predicates for restricting the Gvn type and the relation between control flow elements and global value numbers.
2022-03-02 09:44:51 +01:00
Michael Nebel
8bd12b23e2
C#: Add type(s) for representing global value numbers.
2022-03-02 09:44:51 +01:00
Michael Nebel
cc5d56547c
C#: Add type Global value number kinds for control flow elements.
2022-03-02 09:44:51 +01:00
Michael Nebel
8179e247bf
C#: Delete the existing structural comparison implementation.
2022-03-02 09:44:51 +01:00
ihsinme
9e76260f1d
Update DangerousUseOfTransformationAfterOperation.ql
2022-03-02 10:38:57 +03:00
ihsinme
f5267ba8c6
Update DangerousUseOfTransformationAfterOperation.qhelp
2022-03-02 10:24:40 +03:00
Harry Maclean
37dac186a8
Ruby: String.try_convert isn't value-preserving
...
`String.try_convert` can convert arbitrary objects to strings, which
obviously isn't value-preserving.
2022-03-02 13:31:59 +13:00
Arthur Baars
169f65526e
Merge pull request #8292 from aibaars/api-graphs-private
...
Ruby: ApiGraphs: use private imports
2022-03-02 00:35:46 +01:00
Taus
8460ab4f31
Merge pull request #7549 from hvitved/python/points-to-perf
2022-03-01 23:05:10 +01:00
Mathias Vorreiter Pedersen
155502cfdb
C#/C++: Sync identical files.
2022-03-01 16:56:49 +00:00
Mathias Vorreiter Pedersen
4acae4a2d1
C++: Remove redundant conjunct.
2022-03-01 16:56:25 +00:00
Geoffrey White
2962b125af
Merge branch 'main' into cwe497
2022-03-01 16:19:28 +00:00
Paolo Tranquilli
c81f2661a3
Merge pull request #8300 from redsun82/check-qhelp
...
check-qhelp: call super init in IncludeHandler
2022-03-01 17:07:28 +01:00
Paolo Tranquilli
ef4d1de9c3
check-qhelp: call super init in IncludeHandler
...
`xml.sax.ContentHandler` has a non-trivial `__init__`. While this is
probably harmless, it does not hurt to fix this.
2022-03-01 16:50:55 +01:00
Rasmus Lerchedahl Petersen
f55d7d627e
python: model XPathEvaluator
2022-03-01 14:40:13 +01:00
Rasmus Lerchedahl Petersen
3bb17be389
python: add concept and library tests
2022-03-01 14:39:28 +01:00
Tom Hvitved
92fa0071bd
Update python/ql/lib/semmle/python/pointsto/MRO.qll
...
Co-authored-by: Taus <tausbn@github.com >
2022-03-01 14:16:49 +01:00
Arthur Baars
ea8187c771
Ruby: .github/workflows/ruby-qltest.yml: turn off fail-fast
2022-03-01 13:30:56 +01:00
Arthur Baars
b2745d44f2
Ruby: update ReDoS.expected
2022-03-01 13:30:56 +01:00
Arthur Baars
61fa3ba314
Add change note
2022-03-01 13:30:56 +01:00
Arthur Baars
a51f17e0ed
Ruby: introduce RegExpPatternSource
2022-03-01 13:30:51 +01:00
Arthur Baars
1240c11c4b
Ruby: parse some string literals as regex
...
In addition to regex literals, also parse normal string literals
as regular expressions if they somehow "flow" into a method call
that is known to interpret string values as regular expressions.
2022-03-01 13:26:51 +01:00
Geoffrey White
5402b02fd7
Merge branch 'main' into cwe497
2022-03-01 11:58:24 +00:00
Mathias Vorreiter Pedersen
52dbf2c787
C#/C++: Sync identical files.
2022-03-01 11:50:50 +00:00
Mathias Vorreiter Pedersen
b6faa207a4
C++: Remove redundant cast.
2022-03-01 11:50:44 +00:00
Mathias Vorreiter Pedersen
93bd380838
C#/C++: Sync identical files.
2022-03-01 11:37:19 +00:00
Mathias Vorreiter Pedersen
6b324fb781
C++: Filter out InheritanceConversionInstructions with multiple base or derived classes when doing global value numbering.
2022-03-01 11:34:41 +00:00
Michael Nebel
8312fc6895
C#: Use groups and rename to trap.compression instead. Various changes to description to align with Ruby.
2022-03-01 12:01:44 +01:00
Tamás Vajk
94cb5c2be4
Merge pull request #8296 from github/post-release-prep/codeql-cli-2.8.2
...
Post-release preparation for codeql-cli-2.8.2
2022-03-01 11:57:36 +01:00
Rasmus Wriedt Larsen
eece2222ba
Merge pull request #8252 from github/RasmusWL/debugging-dataflow-improvements
...
Docs: Mention `hasPartialFlowRev` and performance problem
2022-03-01 11:27:57 +01:00
Erik Krogh Kristensen
dfc74d728b
fix duplicate words in qldoc
2022-03-01 11:22:58 +01:00
Erik Krogh Kristensen
1b5c7392f0
restrict the size of the getASubexpressionWithinQuery predicate, and remove double-recursion
2022-03-01 11:18:42 +01:00
Erik Krogh Kristensen
bdd07de7ed
improve performance of getTestFile by finding possible test files first
2022-03-01 11:18:22 +01:00
Erik Krogh Kristensen
51482e4fcf
Merge pull request #8295 from erik-krogh/ts46
...
JS: Add support for TypeScript 4.6
2022-03-01 11:09:02 +01:00
Michael Nebel
7522a2d248
Merge pull request #7832 from aschackmull/java/modelgen
...
Java: Simplify model generator query using flow state.
2022-03-01 10:57:07 +01:00
Rasmus Lerchedahl Petersen
ce3ee65f47
python: remove getTree for now
2022-03-01 10:49:21 +01:00
Rasmus Wriedt Larsen
f3f2c3183e
Docs: Apply suggestions from code review
...
Co-authored-by: James Fletcher <42464962+jf205@users.noreply.github.com >
2022-03-01 10:45:24 +01:00
Mathias Vorreiter Pedersen
1f01d8014e
Merge pull request #8225 from jketema/ir-structured-bindings-translation
...
C++: Update the IR translation for structured bindings
2022-03-01 09:43:35 +00:00
yoff
853857bd7e
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-03-01 10:26:29 +01:00
ihsinme
be11e4fc2d
Apply suggestions from code review
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-03-01 12:25:57 +03:00
github-actions[bot]
980f822983
Post-release preparation for codeql-cli-2.8.2
2022-03-01 09:24:30 +00:00
Arthur Baars
7e6ef7ac74
Ruby: ApiGraphs: use private imports
2022-03-01 10:24:19 +01:00
Erik Krogh Kristensen
4c58f9781b
add support for TypeScript 4.6
2022-03-01 09:56:21 +01:00
Mathias Vorreiter Pedersen
3719353338
Merge pull request #8172 from github/redsun82/pre-commit
...
add pre-commit configuration
2022-03-01 08:54:54 +00:00
Erik Krogh Kristensen
2b7c819135
fix extension of change-note
2022-03-01 09:54:19 +01:00
Michael Nebel
7bde1cbfb3
Java: Add case for Synthetic Fields in isRelevantTaintStep.
2022-03-01 09:15:01 +01:00
ihsinme
bc22b9b208
Update test.cpp
2022-03-01 09:43:15 +03:00
ihsinme
c6083a6f95
Apply suggestions from code review
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2022-03-01 09:37:57 +03:00
Jeroen Ketema
0c2cfa1307
C++: Add comment on the existence of reference types
2022-02-28 19:14:54 +01:00
Arthur Baars
5ce6b847d1
Merge pull request #8166 from aibaars/regex-char-sequence-1
...
Ruby/Python: regex parser: group sequences of 'normal' characters
2022-02-28 17:47:53 +01:00
Tamás Vajk
d3e36038a0
Merge pull request #8152 from tamasvajk/fix/useless-dynamic-cast
...
C# Exclude dynamic casts from useless casts check
2022-02-28 17:00:28 +01:00
Michael Nebel
24640c3670
Java: Make a testcase for wrappers of sources.
2022-02-28 16:57:36 +01:00
Michael Nebel
66fe0e74b5
Java: Don't require that the source is directly within the TargetApi itself (in that case wrappers get excluded).
2022-02-28 16:48:23 +01:00
Michael Nebel
4a0b2b64b3
Java: Explicitly tie ReturnNode to TargetApi before calling returnNodeAsOutput.
2022-02-28 16:48:23 +01:00
Tom Hvitved
44949b6353
Java: Add bindingset to returnNodeAsOutput
2022-02-28 16:48:23 +01:00
Anders Schack-Mulligen
908cc40c9f
Java: Fix bug in model flow sanitizer.
2022-02-28 16:48:23 +01:00
Anders Schack-Mulligen
16a5ccddea
Java: Simplify model generator query using flow state.
2022-02-28 16:48:23 +01:00
yoff
d953382df9
Merge pull request #7807 from RasmusWL/dataflow-improvements
...
Python: Dataflow improvements
2022-02-28 16:24:00 +01:00
Jeroen Ketema
497991b6b1
C++: Improve change note
2022-02-28 16:08:23 +01:00
Tom Hvitved
5cba505514
Merge pull request #8284 from hvitved/csharp/move-csharp9-standalone-tests
...
C#: Move C# 9 standalone tests
2022-02-28 15:15:47 +01:00
Tamas Vajk
efb876192f
Add change note
2022-02-28 14:58:59 +01:00
Tamas Vajk
4748d2c6e2
C# Exclude dynamic casts from useless casts check
2022-02-28 14:58:59 +01:00
Ian Lynagh
1e62b485a5
Merge pull request #8241 from igfoo/igfoo/stats4
...
Java: Update stats and make some performance tweaks
2022-02-28 12:58:06 +00:00
Tom Hvitved
4ecd843c05
C#: Move C# 9 standalone tests
2022-02-28 13:43:20 +01:00
haby0
be40b54b9f
add test
2022-02-28 20:34:58 +08:00
Geoffrey White
2b0d473072
C++: Remove this query from exclude-slow-queries.yml.
2022-02-28 12:18:11 +00:00
Rasmus Wriedt Larsen
0e0f159891
Python: Use Python 3 for investigation tests
...
Apparently there are minor differences with `test-6-max-import-depth-2`
where under Python 2 `isfile_no_problem.py` still works as before
2022-02-28 11:33:31 +01:00
Rasmus Wriedt Larsen
01d426dc58
Python: Replace rest of from testlib import *
...
I think we should write our tests in a way that puts points-to in the
best condition to resolve calls. Although this specific change did not
change much, it should help set us up for success in the future 👍
2022-02-28 10:58:44 +01:00
Rasmus Wriedt Larsen
ead0b658d2
Python: Fix fieldflow tests by increasing max-import-depth
2022-02-28 10:58:44 +01:00
Rasmus Wriedt Larsen
a0d1cea490
Python: Add investigation of field-flow problem
...
TL;DR; we used a too low value for `--max-import-depth` :(
2022-02-28 10:58:44 +01:00
haby0
b23e28a1e6
add Server-side Request Forgery sinks
2022-02-28 15:24:02 +08:00
Jeroen Ketema
e40c51cc83
C++: Add documentation for TranslatedStructuredBindingVariableAccess
2022-02-27 21:13:48 +01:00
Jeroen Ketema
0a4d8132e6
C++: Consistently use getUnspecifiedType in structured binding IR translation
2022-02-27 21:13:48 +01:00
Jeroen Ketema
4ffbc2d148
C++: Ensure we use lvalue reference types for structured bindings
...
This also adds a test for rvalue reference uses in the tuple
structured binding case.
2022-02-27 21:13:48 +01:00
Jeroen Ketema
074577b539
C++: Refactor IR structured binding tuple test
2022-02-27 21:13:48 +01:00
Jeroen Ketema
edaabf8fdf
C++: Add structured bindings IR change note
2022-02-27 21:13:48 +01:00
Jeroen Ketema
6515e77c0e
C++: Generate additional loads for non-reference structured bindings
2022-02-27 21:13:48 +01:00
Jeroen Ketema
eebfbc12a0
C++: Add structured bindings struct as data member test case
2022-02-27 21:13:48 +01:00
Jeroen Ketema
5814349fd8
C++: Give names in structured binding declarations correct IR types
2022-02-27 21:13:48 +01:00
Jeroen Ketema
73f0366dc6
C++: Add typedef'ed reference structured binding test
2022-02-27 21:13:48 +01:00
Jeroen Ketema
91659af4d4
C++: Add array data member structured binding test
2022-02-27 21:13:48 +01:00
Jeroen Ketema
ec05942693
C++: Use unnamed_local_variable in array structured binding test
2022-02-27 21:13:48 +01:00
Jeroen Ketema
437a85dec7
C++: Add pointer related structured binding tests
2022-02-27 21:13:48 +01:00
Chris Smowton
958fd9b3ea
Merge pull request #7867 from ahmed532009/timing-attacks
...
Java: Timing attacks while comparing the headers value
2022-02-25 21:55:13 +00:00
Chris Smowton
f981fee37d
Adjust test expectation
2022-02-25 20:05:06 +00:00
Chris Smowton
ff5d680837
Add missing substitution description
2022-02-25 19:12:25 +00:00
Ian Lynagh
0bf1370cd5
Java: Autoformat QL
2022-02-25 19:08:08 +00:00
Alexander Eyers-Taylor
d38cd4a0d7
Merge pull request #8156 from alexet/alexet/expression-pragma-doc
...
QLSpeciifcation: Add documentation for expression pragmas
2022-02-25 18:59:49 +00:00
Arthur Baars
0c23f5815f
Add change note
2022-02-25 18:43:43 +01:00
Arthur Baars
5044f89105
Ruby/Python re-introduce normalCharacterSequence
2022-02-25 18:43:43 +01:00
Chris Smowton
8fbd8c52dd
Fix test expectations
2022-02-25 17:35:52 +00:00
Chris Smowton
ff303db034
Autoformat and fix qhelp
2022-02-25 17:33:08 +00:00
Chris Smowton
303927c9c9
Fix qhelp
2022-02-25 17:33:08 +00:00
Chris Smowton
e02a3d0ddd
Rename qlref file
2022-02-25 17:33:08 +00:00
Ahmed Farid
3a2d514b18
Create ComparingValueOfSensetiveHeader.qlref
2022-02-25 17:33:08 +00:00
Ahmed Farid
0d278f6d61
Create Test.java
2022-02-25 17:33:08 +00:00
Ahmed Farid
1bc5fe13eb
Update and rename java/ql/test/experimental/query-tests/security/CWE-208/TimingAttackAgainstHeader.expected to java/ql/test/experimental/query-tests/security/CWE-208/TimingAttackAgainstHeader/TimingAttackAgainstHeader.expected
2022-02-25 17:33:08 +00:00
Ahmed Farid
63133f7e8b
Update TimingAttackAgainstHeader.expected
2022-02-25 17:33:08 +00:00
Ahmed Farid
f2457dafb5
Create TimingAttackAgainstHeader.expected
2022-02-25 17:33:08 +00:00
Ahmed Farid
35abc3f9a3
Update and rename ComparingValueOfSensetiveHeader.java to Test.java
2022-02-25 17:33:08 +00:00
Chris Smowton
091227982c
Delete unnecessary test files
2022-02-25 17:33:08 +00:00
Ahmed Farid
899b8d03b2
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:07 +00:00
Ahmed Farid
308f86f66f
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:07 +00:00
Ahmed Farid
2eee6b4f69
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:07 +00:00
Ahmed Farid
7859288040
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:07 +00:00
Ahmed Farid
d83444cb18
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:07 +00:00
Ahmed Farid
e79c0eaa71
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:07 +00:00
Ahmed Farid
36cf1010f8
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:07 +00:00
Ahmed Farid
8e6f76d47a
Update TimingAttackAgainstHeader.qhelp
2022-02-25 17:33:07 +00:00
Ahmed Farid
fa8af6bf70
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:07 +00:00
Ahmed Farid
19d0e1f4a7
Create ComparingValueOfSensetiveHeader.qlref
2022-02-25 17:33:07 +00:00
Ahmed Farid
f96e47db09
Update ComparingValueOfSensetiveHeader.java
2022-02-25 17:33:07 +00:00
Ahmed Farid
09e054ace6
Update ComparingValueOfSensetiveHeader.java
2022-02-25 17:33:07 +00:00
Ahmed Farid
f758ed0d85
Update ComparingValueOfSensetiveHeader.java
2022-02-25 17:33:07 +00:00
ahmed532009
4a9ee5826d
Update TimingAttackAgainstHeader.qhelp
2022-02-25 17:33:07 +00:00
ahmed532009
6da9bc593f
Rename csrfComparison.java to ComparingValueOfSensetiveHeader.java
2022-02-25 17:33:07 +00:00
ahmed532009
a0a1c587e5
Create ComparingValueOfSensetiveHeader.java
2022-02-25 17:33:07 +00:00
ahmed532009
aa488e532f
Update csrfComparison.java
2022-02-25 17:33:07 +00:00
Chris Smowton
333130b2a4
Abbreviate isSink
2022-02-25 17:33:07 +00:00
Chris Smowton
80a2b388bf
Update TimingAttackAgainstHeader.qhelp
2022-02-25 17:33:07 +00:00
ahmed532009
fa81f43694
Update TimingAttackAgainstHeader.qhelp
2022-02-25 17:33:06 +00:00
ahmed532009
39e07cbc9c
Update and rename UnsafecsrfComparison.java to csrfComparison.java
2022-02-25 17:33:06 +00:00
ahmed532009
c6c67b907b
Update TimingAttackAgainstHeader.qhelp
2022-02-25 17:33:06 +00:00
ahmed532009
98b06d35af
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:06 +00:00
ahmed532009
bf95e59b24
Update TimingAttackAgainstHeader.qhelp
2022-02-25 17:33:06 +00:00
ahmed532009
ab6a7bb3d8
Update TimingAttackAgainstHeader.ql
2022-02-25 17:33:06 +00:00
root
49feeb1c36
Timing attacks while comparing the headers value
2022-02-25 17:33:06 +00:00
Alexander Eyers-Taylor
6b9ccd6e91
QLSpec: Apply suggestions from code review
...
Co-authored-by: Jonas Jensen <jbj@github.com >
2022-02-25 15:34:43 +00:00
Rasmus Wriedt Larsen
f988e1f0d8
Python: Improve field-flow by removing import *
...
Since that apparently impacts call graph resolution with points-to :O
Also interesting that global flow was only not working for those cases
because of the tricky ifs... still need to 100% figure out how those ifs
are messing up the analysis :|
2022-02-25 16:01:08 +01:00
Rasmus Wriedt Larsen
999af15bd5
Python: Show unresolved calls for field-flow tests
2022-02-25 15:58:07 +01:00
Taus
622b32692b
Python: Prevent magic/inlining in getCase
...
This is a simplified version of
https://github.com/github/codeql/pull/8028
consisting of just the `nomagic` fix.
2022-02-25 14:32:59 +00:00
yoff
8b926f6859
Merge pull request #7873 from RasmusWL/fix-attribute-taint
...
Python: Fix attribute taint
2022-02-25 15:02:24 +01:00
Rasmus Wriedt Larsen
2d0034c40d
Python: Replicate global field-flow failures
2022-02-25 14:14:00 +01:00
Asger F
a8bfebaeb6
Merge pull request #8149 from asgerf/shared/use-shared-access-path-syntax
...
Shared: use shared access path syntax to parse arguments in CSV rows
2022-02-25 14:04:18 +01:00
CodeQL CI
0f125d1e8a
Merge pull request #8234 from asgerf/ruby/meta-queries
...
Approved by nickrolfe
2022-02-25 12:46:15 +00:00
Rasmus Wriedt Larsen
faaa63a73c
Python: Ensure no cross-talk in global tests
...
By giving all variables unique names
I also added a comment with the function name from the normal tests, so
its' easily visible what these tests are testing
2022-02-25 13:41:51 +01:00
Rasmus Wriedt Larsen
0642610ee9
Python: Global flow works when in own file???
...
This is very suspicious
2022-02-25 13:36:00 +01:00
Rasmus Wriedt Larsen
d83a9ef8d3
Python: Fix global field-flow for validTest.py
2022-02-25 13:35:43 +01:00
yoff
e1c2f46092
Merge pull request #8200 from RasmusWL/debug-partial-flow-snippet
...
Python: Add `debug partial flow` snippet
2022-02-25 12:41:12 +01:00
Arthur Baars
9d9abaf1f9
Apply suggestions from code review
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2022-02-25 12:27:20 +01:00
Pierre
f047707ef3
Merge pull request #8251 from github/turbo-java-17-python-310
...
Update supported Java and Python versions
2022-02-25 12:19:01 +01:00
Chris Smowton
011248e686
Merge pull request #7774 from smowton/smowton/admin/test-annotation-inheritence
...
Add test checking that inheritence is noticed even with annotations present
2022-02-25 11:15:21 +00:00
Rasmus Wriedt Larsen
49dbb8cae7
Docs: Mention hasPartialFlowRev and performance problem
...
The things that I mentioned in https://github.com/github/codeql/pull/6502#issuecomment-901087620 that never got into the document 😳
2022-02-25 11:22:20 +01:00
Pierre
9e27675554
Update supported Java and Python versions
2022-02-25 11:12:01 +01:00
Mathias Vorreiter Pedersen
dfd30e46b0
Merge pull request #8227 from geoffw0/319improve
...
C++: Promote cpp/non-https-url
2022-02-25 08:48:44 +00:00
ihsinme
ffdca61f9a
Add files via upload
2022-02-25 11:20:23 +03:00
ihsinme
74f8145970
Add files via upload
2022-02-25 11:18:38 +03:00
ihsinme
3d1f4d5499
Merge pull request #1 from github/main
...
up to head
2022-02-25 11:04:55 +03:00
Robert Marsh
a60fe9f4b8
C++: exclude 0 earlier in InsufficientKeySize
2022-02-24 14:26:37 -05:00
Tamás Vajk
17fbbdba34
Merge pull request #8233 from github/release-prep/2.8.2
...
Release preparation for version 2.8.2
2022-02-24 20:07:55 +01:00
Chris Smowton
b1c98ae3c2
Add further test directly examining signature of method with problematic parameter types
2022-02-24 17:39:11 +00:00
Chris Smowton
379f2438a6
Add test checking that inheritence is noticed even with annotations present
2022-02-24 17:39:11 +00:00
Geoffrey White
899ae90ba4
C++: Add GVN.
2022-02-24 17:22:37 +00:00
Mathias Vorreiter Pedersen
ab3cad749c
Merge pull request #8173 from MathiasVP/add-using-expired-stack-address-query
...
C++: Add another `CWE-825` query
2022-02-24 17:18:35 +00:00
Geoffrey White
0bb9a95563
C++: Extend tests.
2022-02-24 17:15:29 +00:00
Tom Bolton
8dfc0d25d1
Merge pull request #8232 from github/tombolton/use-updated-counting-query
...
Add new xss queries to result counting query
2022-02-24 16:38:53 +00:00
Jeroen Ketema
0c788d7352
C++: Remove redundant empty line
2022-02-24 17:31:10 +01:00
Jeroen Ketema
b933a58215
C++: Replace Deprecated Queries by Deprecated Classes
...
This is more accurate for the only change in the list.
2022-02-24 16:48:23 +01:00
Michael Nebel
3e898a1b09
C#: Use generic TryParse method instead.
2022-02-24 16:18:42 +01:00
Tamas Vajk
0d16a7e38d
Fix formatting of C# change logs
2022-02-24 16:06:54 +01:00
github-actions[bot]
20fe22c8c8
Release preparation for version 2.8.2
2022-02-24 14:57:08 +00:00
Rasmus Wriedt Larsen
abe4d8da62
Python: Accept global field-flow inconsistencies
...
Yikes
2022-02-24 15:07:18 +01:00
Rasmus Wriedt Larsen
94d23f3817
Python: Also do all field-flow tests in global scope
...
Notice that these tests don't pass, to show how they differ in the next
commit!
2022-02-24 15:06:40 +01:00
Erik Krogh Kristensen
844815a032
Merge pull request #8231 from erik-krogh/fix-ql-for-ql-in-ql-for-ql
...
QL: fix ql-for-ql errors inside ql-for-ql
2022-02-24 15:01:45 +01:00
Erik Krogh Kristensen
ea1503ce2c
fix ql-for-ql errors inside ql-for-ql
2022-02-24 14:41:27 +01:00
tombolton
d80ef6566d
add new xss queries to result counting query
2022-02-24 13:31:40 +00:00
Paolo Tranquilli
d2ed5c47f9
fix typo
2022-02-24 14:28:21 +01:00
Tamás Vajk
83aaeca751
Merge pull request #8228 from tamasvajk/fix/change-notes-0.0.9
...
Fix 0.0.9 change note to match concatenated change log
2022-02-24 14:04:31 +01:00
Michael Nebel
62dc23f6a5
C#: Move the StandaloneAnalyser to the Standalone project.
2022-02-24 13:51:43 +01:00
Michael Nebel
efab3bfa89
C#: Make an extractor class in the standalone project with some of the specifics for the standalone extractor.
2022-02-24 13:51:43 +01:00
Michael Nebel
d2c872079b
C#: Move ExitCode enum out of Extractor class.
2022-02-24 13:51:42 +01:00
Michael Nebel
b0c62c8a10
C#: Refactor functionality to run standalone extractor into own method.
2022-02-24 13:51:42 +01:00
Michael Nebel
d947861690
C#: Minor refactoring.
2022-02-24 13:51:42 +01:00
Chris Smowton
4973224de7
Merge pull request #8216 from github/smowton/fix/creating-codeql-databases-docs-typo
...
Fix typo
2022-02-24 12:24:32 +00:00
Rasmus Wriedt Larsen
2da4b39844
Python: Add global field-flow tests
...
I thought it was interesting that it did not propagate flow to the uses
inside the functions :O
2022-02-24 13:15:48 +01:00
Geoffrey White
6c40cda68d
C++: Pragmatic solution to include more sinks (plus autoformat changes).
2022-02-24 12:10:34 +00:00
Tamas Vajk
a8c2d87897
Fix 0.0.9 change note to match concatenated change log
2022-02-24 12:51:10 +01:00
Mathias Vorreiter Pedersen
e4af34253a
C++: Actually fix incorrect annotation
2022-02-24 11:06:57 +00:00
Paolo Tranquilli
01a37e5165
fix check-qhelp.py again
2022-02-24 11:56:47 +01:00
Geoffrey White
e3493e32e0
C++: Change note.
2022-02-24 10:54:09 +00:00
Geoffrey White
fc8ebdaeb2
C++: Increase the query to precision high.
2022-02-24 10:54:09 +00:00
Geoffrey White
c16302be13
C++: Fix the FP.
2022-02-24 10:54:08 +00:00
Paolo Tranquilli
11c1b6a8a3
fix typo in .pre-commit-config.yaml
2022-02-24 11:46:19 +01:00
Paolo Tranquilli
4020464c2d
fix check-qhelp.py
...
It turns out checking changes on `.inc.qhelp` files is a bit trickier,
as we need to first find which `qhelp` files use them. The previous
iteration of this script was working under the assumption that
`.inc.qhelp` files were only included from the current or a parent
path, but this turns out to be wrong.
This time around, if we are asked to check one or more `.inc.qhelp`
files we build an include map from all `qhelp` files and run the help
generator on the `qhelp` files actually including them.
2022-02-24 11:40:46 +01:00
Paolo Tranquilli
9667315d49
pre-commit: add qhelp check
...
Also the instructions on customizing `pre-commit`'s behaviour have been
updated to use the `--config` option.
2022-02-24 10:55:53 +01:00
Mathias Vorreiter Pedersen
ef5f16ddd3
Merge branch 'main' into add-using-expired-stack-address-query
2022-02-24 08:41:27 +00:00
Harry Maclean
fc351fbd64
Ruby: Remove value-flow for name-matched summaries
...
String summaries that are identified by name only should not specify
value-preserving flow as this can cause spurious flow in cases where
they are applied to different but identically-named methods.
2022-02-24 16:15:15 +13:00
Harry Maclean
07369916b0
Ruby: Remove bad flow to/from block arguments
...
In these cases there is no block argument to the method call.
2022-02-24 14:44:59 +13:00
Erik Krogh Kristensen
e13b2df86f
Merge pull request #8185 from erik-krogh/amdImp
...
JS: recognize modules imported by AMD imports as library inputs
2022-02-23 20:21:45 +01:00
Geoffrey White
326dfa5bc2
C++: Add test cases.
2022-02-23 18:37:58 +00:00
Chris Smowton
3167a67e65
Fix typo
2022-02-23 18:19:11 +00:00
Chris Smowton
01db73bfc7
Merge pull request #5935 from porcupineyhairs/javaSstiNew
...
Java : Add SSTI query
2022-02-23 17:30:02 +00:00
Mathias Vorreiter Pedersen
8900f6c043
C++: Add comment about ir re-evaluation.
2022-02-23 17:12:05 +00:00
Mathias Vorreiter Pedersen
033edc24f4
C++: Respond to review comments.
2022-02-23 16:23:49 +00:00
Mathias Vorreiter Pedersen
fd83f3a999
Merge pull request #8209 from jketema/ir-structured-bindings-tests
...
C++: Add IR structured binding tests
2022-02-23 16:09:40 +00:00
Chris Smowton
7b425a80bc
Note path query expectations
2022-02-23 16:02:54 +00:00
Rasmus Wriedt Larsen
aeba497832
Merge pull request #7735 from yoff/python/promote-log-injection
...
Python: promote log injection
2022-02-23 16:21:12 +01:00
Jeroen Ketema
99dd049c1b
Add IR test for tuple structured bindings
2022-02-23 16:15:19 +01:00
Jeroen Ketema
caf0f28547
Add IR test for data member structured bindings
2022-02-23 15:55:19 +01:00
Taus
3ce7d47b5b
Merge pull request #7452 from jorgectf/python_jwt
...
Python: Add Python_JWT to JWT security query
2022-02-23 15:23:20 +01:00
Jeroen Ketema
ec2567b64b
Add IR test for array structured bindings
2022-02-23 15:10:10 +01:00
Chris Smowton
a8fe10f353
Java template injection query: import pathgraph
2022-02-23 13:47:24 +00:00
Asger Feldthaus
f1bfb31403
Shared: fix typo in a comment
2022-02-23 14:13:41 +01:00
Asger Feldthaus
bb9348d77f
Ruby: reject ArrayElement[-n] instead of interpreting it as ArrayElement[?]
2022-02-23 14:13:41 +01:00
Asger Feldthaus
a11c6f0f8e
Ruby: use AccessPathSyntax library
2022-02-23 14:13:40 +01:00
Asger Feldthaus
efec348eb3
Java: use AccessPathSyntax library
2022-02-23 14:13:40 +01:00
Asger Feldthaus
9cff065dca
C#: use AccessPathSyntax library
2022-02-23 14:13:40 +01:00
Asger Feldthaus
5cab737ef1
Shared: sync AccessPathSyntax.qll
2022-02-23 14:13:40 +01:00
Asger Feldthaus
abd4933d6c
Shared: move numeric parsing into AccessPathSyntax.qll
2022-02-23 14:13:37 +01:00
Mathias Vorreiter Pedersen
4b03778938
Update cpp/ql/src/Likely Bugs/Memory Management/UsingExpiredStackAddress.ql
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-02-23 13:10:29 +00:00
Rasmus Wriedt Larsen
b17c769257
Python: Remove accidental "foo" snippet
2022-02-23 13:30:56 +01:00
Rasmus Wriedt Larsen
5626427ea5
Python: Add "debug partial flow" snippet
2022-02-23 13:30:56 +01:00
CodeQL CI
7d55771092
Merge pull request #8150 from asgerf/js/prep-sharing-api-graph-mad
...
Approved by erik-krogh
2022-02-23 11:59:31 +00:00
CodeQL CI
62ee8fce3a
Merge pull request #8186 from asgerf/js/request-forgery-docs-followup
...
Approved by esbena, hubwriter
2022-02-23 11:46:37 +00:00
Stephan Brandauer
a664e02d04
Merge pull request #8014 from kaeluka/js/functionality-from-untrusted-source
...
JS: Functionality from untrusted sources query (CWE-830)
2022-02-23 12:45:31 +01:00
Chris Smowton
50d9945625
Autoformat
2022-02-23 11:41:23 +00:00
Mathias Vorreiter Pedersen
53299d61eb
C++: Add more tests.
2022-02-23 11:38:01 +00:00
Mathias Vorreiter Pedersen
c8f940124f
C++: Respond to review comments.
2022-02-23 11:17:12 +00:00
Chris Smowton
476997a599
Replace more non-breaking spaces
2022-02-23 11:02:17 +00:00
Stephan Brandauer
1ed71e15f3
apply docreview feedback
2022-02-23 11:21:22 +01:00
Michael Nebel
20f71110ef
C#: Add change note for compression extractor option.
2022-02-23 11:02:28 +01:00
Tony Torralba
f011bbc92c
Merge pull request #8055 from luchua-bc/java/unsafe-url-forward-with-shared-lib
...
CWE-552: Switch to the shared PathSanitizer library
2022-02-23 11:00:23 +01:00
Stephan Brandauer
517d6969e1
Merge pull request #8171 from kaeluka/js/update-atm-query-docs-for-nosql-sql-injection
...
update ATM NosqlInjection and SqlInjection query docs
2022-02-23 10:54:37 +01:00
Asger Feldthaus
22ba43fff6
JS: Minor fixup in the client-side request forgery qhelp
2022-02-23 10:54:26 +01:00
Erik Krogh Kristensen
203212657e
recognize modules imported by AMD imports as library inputs
2022-02-23 10:39:45 +01:00
Mathias Vorreiter Pedersen
8b7214621b
Update cpp/ql/src/Likely Bugs/Memory Management/UsingExpiredStackAddress.qhelp
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-02-23 09:38:30 +00:00
Mathias Vorreiter Pedersen
8e0f354c2c
Update cpp/ql/src/Likely Bugs/Memory Management/UsingExpiredStackAddress.cpp
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-02-23 09:38:06 +00:00
Mathias Vorreiter Pedersen
862ebefbad
Update cpp/ql/src/Likely Bugs/Memory Management/UsingExpiredStackAddress.ql
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-02-23 09:33:58 +00:00
Mathias Vorreiter Pedersen
dda85bf234
Update cpp/ql/src/Likely Bugs/Memory Management/UsingExpiredStackAddress.ql
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-02-23 09:33:52 +00:00
Stephan Brandauer
c17d8b145a
Merge pull request #8054 from asgerf/js/split-request-forgery
...
JS: split request forgery query into server-side and client-side variants
2022-02-23 10:27:16 +01:00
Michael Nebel
837b91b31e
C#: Make TrapCompression setter private.
2022-02-23 10:12:56 +01:00
Michael Nebel
68b85900b7
C#: Remove old way of providing compression parameter.
2022-02-23 09:39:13 +01:00
Michael Nebel
a04aa1f05d
C#: Add unit test(s).
2022-02-23 09:39:13 +01:00
Michael Nebel
6176b64907
C#: Add support to the extractor for getting the compression extractor option.
2022-02-23 09:39:13 +01:00
Michael Nebel
bca479c2f3
C#: Add extractor option 'compression'.
2022-02-23 09:39:13 +01:00
Mathias Vorreiter Pedersen
31a204a5d9
Merge pull request #8174 from jketema/hinding-cleanup
...
C++: Simplify `cpp/declaration-hides-variable`
2022-02-23 08:27:59 +00:00
Esben Sparre Andreasen
58e0d54744
Merge pull request #8168 from github/esbena/hapi-reflected-xss
...
JS: model hapi handler returns as reflected-xss sinks
2022-02-23 08:53:15 +01:00
jorgectf
4aa1c0a11e
Update .expected
2022-02-23 00:55:39 +01:00
Jeroen Ketema
423d325204
C++: Simplify cpp/declaration-hides-variable
...
The check for `(unnamed local variable)` is no longer needed, because these
variables are now identified as being compiler generated.
2022-02-22 23:04:48 +01:00
Robert Marsh
a37f746dff
C++: fix FP and add paths in InsufficientKeySize
2022-02-22 15:38:50 -05:00
Erik Krogh Kristensen
73f2e89f3e
Merge pull request #8165 from erik-krogh/protoWrite
...
JS: support more property writes in js/prototype-pollution-utility
2022-02-22 21:30:22 +01:00
jorgectf
7c108c7892
Polish test
2022-02-22 20:57:20 +01:00
Jorge
0216798cb9
Apply suggestions from code review
...
Co-authored-by: Taus <tausbn@github.com >
2022-02-22 20:55:51 +01:00
Mathias Vorreiter Pedersen
ea35f56212
C++: Add a query for detecting uses of expired stack pointers that escaped through global variables.
2022-02-22 19:12:08 +00:00
Porcupiney Hairs
c81d85f321
Include suggestions from review
2022-02-22 23:07:34 +05:30
Erik Krogh Kristensen
b6b93065ff
Merge pull request #8157 from erik-krogh/lodash-clone
...
JS: add lodash.{clone, cloneDeep} as a clone step
2022-02-22 18:12:10 +01:00
Erik Krogh Kristensen
c487bb73a7
Merge pull request #8143 from erik-krogh/pred-ql-style
...
QL: add ql-for-ql query for detecting bad predicate qldoc
2022-02-22 17:49:12 +01:00
Paolo Tranquilli
e15c1f7c45
fix typo in docs/pre-commit-hook-setup.md
2022-02-22 17:47:35 +01:00
Paolo Tranquilli
33cce2b5ac
add pre-commit configuration
...
This enables use of the `pre-commit` framework to run quick pre-commit
checks. In particular this allows to automatically fix:
* trailing white spaces
* absence or multiple newlines at the end of files
* QL code formatting
* file sync
More could be added in the future: anything that can be checked fast
can be added in the configuration (for example well-formedness of
`qldoc` files).
This is a purely opt-in feature. Instructions for enabling it and
possibly configuring its behaviour are in `pre-commit-hook-setup.md`.
2022-02-22 17:40:07 +01:00
Jeroen Ketema
aecc17c49b
Merge pull request #7928 from jketema/structured-bindings-db-scheme
...
C++: Add table that identifies C++ structured bindings
2022-02-22 17:34:26 +01:00
Stephan Brandauer
6a9186cdef
update ATM NosqlInjection and SqlInjection query docs
2022-02-22 16:56:18 +01:00
Arthur Baars
69ed121ecb
Ruby/Python: regex parser: group sequences of 'normal' characters
2022-02-22 16:15:33 +01:00
Geoffrey White
31d214d5ee
Merge pull request #8170 from geoffw0/typos
...
C++: Fix Spelling Typos.
2022-02-22 15:09:50 +00:00
Mathias Vorreiter Pedersen
894992d403
Merge pull request #8169 from MathiasVP/fix-spelling-in-post-dominance-frontier
...
C++/C#: Fix spelling of 'postDominanceFrontier'
2022-02-22 14:54:39 +00:00
Geoffrey White
4908eaf5ec
C++: Typos.
2022-02-22 14:33:11 +00:00
Ian Lynagh
691473bd6e
Java: Add a changenote
2022-02-22 14:07:31 +00:00
Mathias Vorreiter Pedersen
b6740ed4a1
C++/C#: Fix spelling of 'postDominanceFrontier'.
2022-02-22 13:48:13 +00:00
Asger Feldthaus
5390faeb8a
Ruby: add query for measuring call graph
2022-02-22 14:42:05 +01:00
Asger Feldthaus
c7c97d5bbb
Ruby: add queries for measuring taint sources and sinks
2022-02-22 14:29:47 +01:00
Esben Sparre Andreasen
2c527f7b35
model hapi handler returns as reflected-xss sinks
2022-02-22 14:12:01 +01:00
Erik Krogh Kristensen
517e17d422
support more property writes in js/prototype-pollution-utility, and generalize ObjectDefinePropertyAsPropWrite
2022-02-22 13:23:34 +01:00
Pierre
5ee96121fc
Merge pull request #8162 from github/turbo-no-glibc-no
...
Docs: Add note about muslc incompatibility
2022-02-22 13:06:28 +01:00
Henry Mercer
4f7604f0dd
Merge pull request #8151 from github/henrymercer/separate-atm-model-pack
2022-02-22 11:47:35 +00:00
Pierre
1d81f90260
Update docs/codeql/codeql-cli/getting-started-with-the-codeql-cli.rst
...
Co-authored-by: hubwriter <hubwriter@github.com >
2022-02-22 12:47:31 +01:00
Erik Krogh Kristensen
08c703f605
exclude private predicates
2022-02-22 12:34:16 +01:00
Stephan Brandauer
2278e7f6e6
CWE 830 polish error messages
2022-02-22 11:41:54 +01:00
Stephan Brandauer
82330391c3
CWE-830 add support for setting attributes via setAttribute method
2022-02-22 11:41:54 +01:00
Stephan Brandauer
d80cd1aeb5
CWE 830 test where both branches in a ternary are unsafe
2022-02-22 11:41:53 +01:00
Stephan Brandauer
2934aa1a3a
rewrite docs, improve error messages, etc
2022-02-22 11:41:53 +01:00
Stephan Brandauer
d2335b65d5
stylistic improvements after review
2022-02-22 11:41:53 +01:00
Stephan Brandauer
9aec4437e2
polish qhelp for CWE-830 and add test file
2022-02-22 11:41:53 +01:00
Stephan Brandauer
44d86569ac
remove illegal chars from comments
2022-02-22 11:41:53 +01:00
Stephan Brandauer
fd77e27ed9
replace taint tracking by type tracking and merge remaining queries for CWE-830
2022-02-22 11:41:53 +01:00
Stephan Brandauer
8cafa6d562
improve error message in CWE-830
2022-02-22 11:41:53 +01:00
Stephan Brandauer
780fa97869
always require integrity checking for certain CDNs
2022-02-22 11:41:53 +01:00
Stephan Brandauer
83764df4f5
rename tests for CW-830 to clarify responsibilities
2022-02-22 11:41:52 +01:00
Stephan Brandauer
8d397fea09
JS: query to find dynamic creations of DOM elements that use untrusted sources
2022-02-22 11:41:52 +01:00
Stephan Brandauer
b35c70994f
permit http urls to 127.0.0.1 and others
2022-02-22 11:41:52 +01:00
Stephan Brandauer
dd2b779a3c
add CWE 830 link to references
2022-02-22 11:41:52 +01:00
Stephan Brandauer
b170422c22
add changenotes for functionality from untrusted source query
2022-02-22 11:41:52 +01:00
Stephan Brandauer
6722c17bb0
JS: Functionality from untrusted sources query (CWE-830)
2022-02-22 11:41:52 +01:00
Erik Krogh Kristensen
8ff2992b56
have each case on a separate line
2022-02-22 11:40:26 +01:00
Erik Krogh Kristensen
addb27c80e
deduplicate "%"
...
Co-authored-by: Stephan Brandauer <kaeluka@github.com >
2022-02-22 11:34:59 +01:00
Pierre
8b7f899883
Update getting-started-with-the-codeql-cli.rst
2022-02-22 11:34:49 +01:00
Pierre
6f936942fa
Add note about non-glibc systems
2022-02-22 11:29:51 +01:00
Porcuiney Hairs
e536628a66
Java : Add SSTI query
2022-02-22 15:57:53 +05:30
Asger Feldthaus
1be47db2e6
JS: Factor out more JS-specific code
2022-02-22 09:51:56 +01:00
Asger Feldthaus
2d509eb345
JS: Make Impl.qll determine the location of AccessPathSyntax.qll
2022-02-22 09:51:52 +01:00
Asger Feldthaus
42a3d8c689
JS: Treat Member[x] as a language-specific token
...
In Ruby it is ambiguous whether Member[foo] means x.foo or x::foo
2022-02-22 09:51:52 +01:00
Asger Feldthaus
acf95d6178
JS: Move summary resolution into JS-specific code
2022-02-22 09:51:52 +01:00
Asger Feldthaus
ab1642dd3f
JS: Rename {Shared,Impl} -> ApiGraphModels{,Specific}
2022-02-22 09:51:48 +01:00
Harry Maclean
07c70adde5
Ruby: Update CleartextLogging fixture
...
The flow summary for `String#sub` leads to two new results in this test.
They are duplicates of existing results, because the query is quite
liberal in what it considers a source.
```ruby
password = "abc"
password_masked = password.sub(/./, "x")
Logger.new(STDOUT).info password_masked
```
In the example above, the query considers lines 1 and 2 to both be
sources, with a sink at line 3. Previously there was no flow from line 1
to line 3 because of the missing flow summary for `String#sub`, and
therefore there was just one result. Now we have the flow summary, there
are two results.
Line 2 is considered a source because it is an assignment to a variable
that contains the term "password". I'm not sure how to adjust the query
to avoid these duplicates, so I'm leaving them in for now.
2022-02-22 16:58:41 +13:00
Harry Maclean
340288e0d4
Ruby: Update summary access paths for dot syntax
2022-02-22 16:41:16 +13:00
Harry Maclean
d180a55b3a
Ruby: Fix value/taint flow in String summaries
2022-02-22 16:41:16 +13:00
Harry Maclean
f07ae35b87
Ruby: Fix bug with String flow summaries
...
Split summaries for methods with optional block parmaters into separate
classes. Also model the `exclusive` argument to `String#upto`.
2022-02-22 16:41:16 +13:00
Harry Maclean
379de5581d
Ruby: Disable summaries that clash with Array
...
Some String methods are named identically to Array methods, and this
leads to overlapping flow summaries. These adversely affect the original
Array flow summaries.
2022-02-22 16:41:15 +13:00
Harry Maclean
fef46e1ee4
Ruby: Add flow summaries for String methods
2022-02-22 16:41:15 +13:00
Erik Krogh Kristensen
e8df6a14ca
add lodash.{clone, cloneDeep} as a clone step
2022-02-21 22:27:29 +01:00
alexet
7ea8577e23
QLSpec: Fix underline length
2022-02-21 19:25:44 +00:00
alexet
121b3f6fbf
QLSpec:Allow setliterals withing inrange terms
2022-02-21 18:57:29 +00:00
alexet
5473162f23
QLSpec: Add documentation for expression pragmas
2022-02-21 18:55:56 +00:00
alexet
e2bc03c147
QLSpec: Consistency in primary expression order.
2022-02-21 18:53:53 +00:00
Henry Mercer
e42f759f6b
Merge pull request #8153 from github/henrymercer/atm-add-cwe-tags
...
JS: Add CWE tags for ML-powered queries
2022-02-21 17:24:02 +00:00
Ian Lynagh
7ce9b160d0
Java: Performance tweaks
2022-02-21 17:05:00 +00:00
Henry Mercer
5a3daa9e3f
JS: Add CWE tags for ML-powered queries
...
- Cross-site scripting: CWE-79
- Path injection: CWE-22, CWE-23, CWE-36, CWE-73, CWE-99
- NoSQL injection: CWE-943
- SQL injection: CWE-89
2022-02-21 16:18:33 +00:00
Henry Mercer
02cce623a6
JS: Install pack dependencies in ML CI jobs
2022-02-21 16:10:15 +00:00
Henry Mercer
a89882c14e
JS: Update lockfiles for ML-powered queries packs
2022-02-21 16:03:05 +00:00
Asger Feldthaus
8194c041cc
JS: Merge sources to one class
2022-02-21 16:26:02 +01:00
Asger F
00ed72ed83
Apply suggestions from code review
...
Co-authored-by: Erik Krogh Kristensen <erik-krogh@github.com >
2022-02-21 16:24:50 +01:00
Tamas Vajk
422c2d5ccb
C#: Add dynamic casts to useless upcast test
2022-02-21 16:10:00 +01:00
Henry Mercer
25f6ac3ec4
JS: Remove ML model pack from default workspace
...
We only want to put the checked out version of the model pack to test a
custom model.
Given that the repo doesn't contain any models by default, most users
won't want the local checkout of the model pack to override the one
downloaded from the package registry.
2022-02-21 15:06:30 +00:00
Henry Mercer
6fb9895367
JS: Separate the ML-powered queries model into its own pack
...
This allows users to more easily get started with development. Running
`codeql pack install` from the `-queries` pack will now install the ML
model.
2022-02-21 15:05:57 +00:00
Tom Bolton
0108642464
Merge pull request #8148 from github/tombolton/modify-counting-query
...
Update counting query to match end-to-end results
2022-02-21 15:02:43 +00:00
tombolton
e02319be9f
add end to end predicate to result counting query
2022-02-21 14:35:58 +00:00
Erik Krogh Kristensen
1407b49a8f
fix some instances of ql/pred-doc-style for JS
2022-02-21 15:02:21 +01:00
Erik Krogh Kristensen
11bbd872f3
add ql-for-ql query for detecting bad predicate qldoc
2022-02-21 15:02:15 +01:00
Rasmus Wriedt Larsen
d2cd77aefb
Merge branch 'main' into dataflow-improvements
2022-02-21 14:49:40 +01:00
Asger F
02c4966109
Merge pull request #7878 from asgerf/dot-separated-access-paths
...
Shared: Switch to dot-separated access paths in summary specs
2022-02-21 13:29:09 +01:00
Alex Ford
9196b64d6e
Merge pull request #8138 from github/ruby/file-write
...
Ruby: Implement `FileSystemWriteAccess` concept
2022-02-21 10:13:27 +00:00
Alex Ford
746290d903
Merge pull request #7713 from github/ruby/clear-text-logging
...
Ruby: Add `rb/clear-text-logging-sensitive-data` query
2022-02-21 10:12:33 +00:00
Jeroen Ketema
fc91c82777
Add change note
2022-02-21 10:48:46 +01:00
Jeroen Ketema
e05af1e1d1
Use underlyingElement in isStructuredBinding
...
Accodring to the documentation in `Element.qll`, `underlyingElement` is
supposed to be used here and not `unresolveElement`.
2022-02-21 10:46:29 +01:00
Esben Sparre Andreasen
1d437dd722
Merge pull request #8043 from github/esbena/sharpen-hardcoded-credentials
...
JS: Sharpen hardcoded credentials
2022-02-21 10:02:58 +01:00
Rasmus Wriedt Larsen
b59ab7f5f3
Merge branch 'main' into python/promote-log-injection
2022-02-21 09:59:31 +01:00
Erik Krogh Kristensen
5f9bd7a4a1
Merge pull request #7984 from erik-krogh/fix-ql-for-ql-js
...
JS: fix most ql-for-ql warnings
2022-02-21 09:15:06 +01:00
Asger Feldthaus
7848fcec80
Shared: sync AccessPathSyntax.qll
2022-02-21 08:21:53 +01:00
Asger Feldthaus
d7f07167ac
Shared: Remove getLastToken again
2022-02-21 08:21:53 +01:00
Asger Feldthaus
2c2a82a070
Shared: allow spaces between arguments in a token
2022-02-21 08:21:53 +01:00
Asger Feldthaus
55ac5cb012
Shared: auto format
2022-02-21 08:21:53 +01:00
Asger Feldthaus
4985fbb526
Shared: update getSummaryCsv and related test output
2022-02-21 08:21:53 +01:00
Asger Feldthaus
dcc523a2b7
Shared: auto format
2022-02-21 08:21:53 +01:00
Asger Feldthaus
7fcbdbeada
Shared: sync AccessPathSyntax.qll and FlowSummaryImpl.qll
2022-02-21 08:21:52 +01:00
Asger Feldthaus
d911e0abf8
Shared: use getToken instead of getLastToken
2022-02-21 08:21:52 +01:00
Asger Feldthaus
c4304a980d
Shared: add explicit this
2022-02-21 08:21:52 +01:00
Asger Feldthaus
dc6a13242b
Shared: update comment in AccessPathSyntax.qll
2022-02-21 08:21:52 +01:00
Asger Feldthaus
2907d53e17
Shared: sync AccessPathSyntax.qll and FlowSummaryImpl.qll
2022-02-21 08:21:52 +01:00
Asger Feldthaus
be63cf7049
Shared: fix qldoc and move getRawToken to top-level
2022-02-21 08:21:52 +01:00
Asger Feldthaus
c189df2341
Revert "JS: Add support for " of " syntax to help during transition"
...
This reverts commit 9bf522b3048c3b11f7e6d734ed797a613614a095.
2022-02-21 08:21:51 +01:00
Asger Feldthaus
57bf0b1432
Ruby: remove support for legacy syntax
2022-02-21 08:21:51 +01:00
Asger Feldthaus
e3605eed44
Ruby: update CSV rows to dot-separated syntax
2022-02-21 08:21:50 +01:00
Asger Feldthaus
7005d53a67
Ruby: manually rewrite DigSummary access path
2022-02-21 08:16:55 +01:00
Asger Feldthaus
6dbeb81f36
Ruby: use AccessPathSyntax.qll to parse input/output summary specs
2022-02-21 08:16:55 +01:00
Asger Feldthaus
0af9e8aa58
C#: remove support for legacy syntax
2022-02-21 08:16:55 +01:00
Asger Feldthaus
6bb15dcc27
C#: update CSV rows to dot-separated syntax
2022-02-21 08:16:55 +01:00
Asger Feldthaus
dffa1d1558
C#: use AccessPathSyntax.qll to parse input/output summary specs
2022-02-21 08:16:55 +01:00
Asger Feldthaus
affdbe9955
Java: remove support for legacy syntax
2022-02-21 08:16:55 +01:00
Asger Feldthaus
a121b73181
Java: update CSV rows to dot-separated syntax
2022-02-21 08:16:55 +01:00
Asger Feldthaus
7f808710ec
Java: update model generator
2022-02-21 08:16:54 +01:00
Asger Feldthaus
753c557dbe
Java: use AccessPathSyntax.qll to parse input/output summary specs
2022-02-21 08:16:54 +01:00
Asger Feldthaus
53935db6c6
JS: Add support for " of " syntax to help during transition
2022-02-21 08:16:54 +01:00
Asger Feldthaus
30254686d8
JS: Move ".."-parsing trick into AccessPathSyntax.qll
2022-02-21 08:16:54 +01:00
Asger Feldthaus
7c2cff3227
JS: Factor out AccessPathSyntax.qll
2022-02-21 08:16:54 +01:00
Asger Feldthaus
e2cbf47b16
JS: Fix accidental recursion
2022-02-21 08:16:53 +01:00
Harry Maclean
e4f801bea8
Merge pull request #7886 from github/hmac/split-ruby-std-library
...
Ruby: split standard library models into multiple files
2022-02-21 13:39:43 +13:00
Harry Maclean
9a60c7e4ac
Ruby: Update filename in test fixture
2022-02-21 09:43:36 +13:00
Alex Ford
6b8537c4e0
Ruby: FileSystemWriteAccess changenote
2022-02-20 20:14:01 +00:00
Alex Ford
baabe66551
Ruby: update Files.ql tests for write accesses
2022-02-20 19:28:12 +00:00
Alex Ford
12ce3d4784
Ruby: Implement FileSystemWriteAccess for IO/File API
2022-02-20 19:27:11 +00:00
Alex Ford
4f0174e89a
Ruby: add FileSystemWriteAccess concept
2022-02-20 19:26:54 +00:00
Rasmus Wriedt Larsen
9d81fd3b95
Python: Improve sanitizer/guards tests
...
Based on review conversation
2022-02-18 14:12:41 +01:00
Rasmus Wriedt Larsen
7aa559f4aa
Python: Restore dataflow consistency queries
2022-02-18 13:47:29 +01:00
Rasmus Wriedt Larsen
c5b6fb37b7
Python: Clean up NormalDataflowTest.qll
2022-02-18 13:47:29 +01:00
Rasmus Wriedt Larsen
67ca14876a
Python: Apply suggestions from code review
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2022-02-18 13:47:07 +01:00
Alex Ford
dd383f942f
Merge remote-tracking branch 'origin/main' into ruby/clear-text-logging
2022-02-17 15:32:31 +00:00
Alex Ford
33f4fffe16
Ruby: Simplify sub!/gsub! sanitizers for cleartext logging query
2022-02-17 13:10:44 +00:00
Jeroen Ketema
d4832b48c6
C++: Update DB scheme stats
2022-02-17 11:48:42 +01:00
Jeroen Ketema
e2bc4c88e4
C++: Expose is_structured_binding as a member of Variable
2022-02-17 11:44:08 +01:00
Jeroen Ketema
f875d722b0
C++: Add DB upgrade and downgrade scripts
2022-02-17 11:44:08 +01:00
Jeroen Ketema
f358f8f265
C++: Add DB relation identifying structured bindings
2022-02-17 11:44:08 +01:00
Asger Feldthaus
69995d5750
Shared: rephrase request forgery name and description
2022-02-17 09:07:08 +01:00
Asger Feldthaus
51442ddf47
JS: Add change note
2022-02-17 09:07:08 +01:00
Asger Feldthaus
3496ae131b
JS: Factor out <recommendation> part of qhelp
2022-02-17 09:07:08 +01:00
Harry Maclean
bfd2c14555
Ruby: Add shim StandardLibrary.qll
...
This file re-exports everything it used to define, marking each as
deprecated to warn users that they should import `Core` or `Stdlib`
instead.
2022-02-17 20:44:04 +13:00
Harry Maclean
459f949c24
Ruby: fix old import in ActiveSupport
...
codeql.ruby.frameworks.StandardLibrary is deprecated
2022-02-17 20:44:04 +13:00
Harry Maclean
9fff2cfcff
Ruby: Add missing documentation
2022-02-17 20:44:04 +13:00
Harry Maclean
546bfcb8ea
Ruby: split tests to match stdlib changes
2022-02-17 20:44:04 +13:00
Harry Maclean
eb4f333c25
Ruby: Move UnknownMethodCall to ast/Call.qll
2022-02-17 20:44:04 +13:00
Harry Maclean
a397c65d36
Ruby: Split standard library modeling
...
Split the classes modeling various standard library concepts into a
structured group of multiple files.
Things that are part of the core language live in framworks/core and
standard libraries (that aren't part of core) live in frameworks/stdlib.
This mirrors the structure followed by the Ruby docs
(https://docs.ruby-lang.org/en/3.1/ ).
Tests are split in a followup commit.
2022-02-17 20:44:04 +13:00
Robert Marsh
103796dfa8
C++: respond to PR comments on InsufficientKeySize
2022-02-16 14:58:29 -05:00
Robert Marsh
cfd9c9d137
C++: Update doc for `getMinimumKeySize
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2022-02-16 14:53:09 -05:00
Ian Lynagh
a448db11b5
Merge pull request #8052 from igfoo/igfoo/descendent
...
Spelling: Use "descendant" rather than "descendent" for consistency
2022-02-16 18:03:52 +00:00
Robert Marsh
3637078a26
C++: change note for insufficient key size
2022-02-16 12:43:39 -05:00
Asger Feldthaus
8ac0ec8dfc
JS: Write help for ClientSideRequestForgery
2022-02-16 18:33:31 +01:00
Robert Marsh
d3665f935e
C++: add sample code for InsufficientKeySize.qhelp
2022-02-16 12:30:41 -05:00
luchua-bc
f136ea0f6f
Switch to the shared PathSanitizer library
2022-02-16 16:06:28 +00:00
Nick Rolfe
26e7f3273b
Merge pull request #8044 from github/nickrolfe/db_upgrade_script
...
Language-agnostic document on db up-/downgrades
2022-02-16 15:02:04 +00:00
Nick Rolfe
6d02ea7870
doc: remove unneeded --search-path flag
2022-02-16 14:51:12 +00:00
Ian Lynagh
b16e4c0247
Spelling: Use "descendant" rather than "descendent" for consistency
...
$ git grep -i descendant | wc -l
170
2022-02-16 14:26:02 +00:00
Nick Rolfe
54b56c44e6
doc: avoid using Posix-specific search-path separator
2022-02-16 12:42:58 +00:00
Asger Feldthaus
91c64152d2
JS: Rephrase the qhelp for SSRF query
2022-02-16 13:35:01 +01:00
Asger Feldthaus
cf66d01e80
JS: Add consistency test
2022-02-16 13:35:01 +01:00
Asger Feldthaus
3103cfd925
JS: Rename to tests to clientSide.js and serverSide.js
2022-02-16 13:35:01 +01:00
Asger Feldthaus
3fbc3a4d70
JS: Add ClientSideRequestForgery to RequestForgery test
2022-02-16 13:35:01 +01:00
Asger Feldthaus
260638c68b
JS: Add ClientSideRequestForgery and split request-forgery results between the two
2022-02-16 13:35:01 +01:00
Esben Sparre Andreasen
f08a140505
update tests for password patterns
2022-02-16 13:22:19 +01:00
Nick Rolfe
17450a5b27
Python/Ruby: rm old prepare-db-upgrade.sh files
2022-02-16 12:21:52 +00:00
Ian Lynagh
83bba47fdb
Java: Update stats
2022-02-16 12:06:18 +00:00
Nick Rolfe
549436fc86
doc: typo
2022-02-16 12:00:35 +00:00
Nick Rolfe
26b2012024
Move Ruby doc on db upgrades to common docs dir
...
And explain downgrades
2022-02-16 11:35:52 +00:00
Nick Rolfe
ee5068d843
Python/Ruby: forward to generic prepare-db-upgrade.sh
2022-02-16 11:03:28 +00:00
Tony Torralba
111aabb707
Merge pull request #7712 from luchua-bc/java/file-path-injection
...
Java: CWE-073 File path injection with the JFinal framework
2022-02-16 12:01:34 +01:00
Jeroen Ketema
3170670f67
Merge pull request #8041 from jketema/prepare-db-upgrade-script
...
Add version of `prepare-db-upgrade.sh` supporting multiple languages
2022-02-16 11:45:34 +01:00
Jeroen Ketema
671528b483
Find qldir by using the location of prepare-db-upgrade.sh
2022-02-16 11:35:15 +01:00
Jeroen Ketema
8ad0d8ea69
Factor out creating upgrade.properties into a function
2022-02-16 10:54:12 +01:00
Jeroen Ketema
b27dd6ca72
Simplify check_hash_valid
2022-02-16 10:53:39 +01:00
Jeroen Ketema
f558ac5b07
Make --lang a required script argument
2022-02-16 10:18:55 +01:00
Esben Sparre Andreasen
816d79692b
ignore deliberately hardcoded password strings
2022-02-16 09:47:01 +01:00
Esben Sparre Andreasen
78744a0182
add additional tests
2022-02-16 09:44:56 +01:00
Esben Sparre Andreasen
e67c09f9ab
change example passwords in test
2022-02-16 08:56:00 +01:00
Arthur Baars
ebb87c4b36
Merge pull request #7975 from github/post-release-prep/codeql-cli-2.8.1
...
Post-release preparation for codeql-cli-2.8.1
2022-02-15 20:17:35 +01:00
Geoffrey White
703f18b82f
C++: Better deduplication.
2022-02-15 17:52:27 +00:00
Jeroen Ketema
1209bbd9b4
Add version of prepare-db-upgrade.sh supporting multiple languages
2022-02-15 18:39:21 +01:00
luchua-bc
40bf093d34
Move shared code to the lib folder and update qldoc
2022-02-15 17:28:13 +00:00
Tony Torralba
5f0ab522f3
Merge pull request #7988 from Marcono1234/marcono1234/sealed-types-predicates
...
Java: Add predicates for sealed classes
2022-02-15 15:11:56 +01:00
yo-h
cfcb06cad9
Merge pull request #8035 from tamasvajk/feature/hardcoded-cred-medium-prec
...
C#: Downgrade hardcoded credentials queries to medium precision
2022-02-15 08:09:27 -05:00
Chris Smowton
2f82a46528
Elaborate change note
2022-02-15 12:56:57 +00:00
luchua-bc
fd533f2ba8
Remove the same callable constraint
2022-02-15 12:44:23 +00:00
Mathias Vorreiter Pedersen
c48e49650a
Merge pull request #8039 from jketema/downgrades
...
C++: Add initial DB scheme and qlpack file to downgrades directory
2022-02-15 11:30:33 +00:00
Jeroen Ketema
d59422be41
Add qlpack file to downgrades directory
2022-02-15 12:18:46 +01:00
Jeroen Ketema
0bcb5cb380
Add initial cpp DB scheme to downgrades directory
2022-02-15 11:59:46 +01:00
Mathias Vorreiter Pedersen
38e44924e7
Merge pull request #8036 from jketema/remove-legacy-relations-2
...
C++: Remove some unused legacy relations from the DB scheme - Take 2
2022-02-15 10:56:25 +00:00
Jeroen Ketema
3b2584a5d1
Add change note
2022-02-15 11:18:44 +01:00
Jeroen Ketema
9d7784e12d
C++: Add DB downgrade script
2022-02-15 11:18:44 +01:00
Jeroen Ketema
f791c63780
C++: Add DB upgrade script
2022-02-15 11:18:44 +01:00
Jeroen Ketema
68fd953d9b
C++: Mark classes depending on removed relations as deprecated
...
Also ensure they no longer depend on the removed relations.
2022-02-15 11:18:36 +01:00
Rasmus Wriedt Larsen
62d4bb50a5
Python: Autoformat
...
Trailing whitespace is a bit too easy with the ```suggestions through
the UI :|
2022-02-15 10:38:52 +01:00
Tony Torralba
bfa14fa066
Merge pull request #7823 from JLLeitschuh/improve/JLL/combined_http_headers
...
Java: Add HTTP Request Splitting to Netty Query
2022-02-15 10:24:36 +01:00
Rasmus Wriedt Larsen
5a90214ece
Merge pull request #7783 from yoff/python/promote-ldap-injection
...
Python: promote LDAP injection query
2022-02-15 10:24:18 +01:00
Jeroen Ketema
bf6ca7a7be
C++: Remove some unused legacy relations from the DB scheme
2022-02-15 10:16:35 +01:00
Tamas Vajk
0c667fa544
Move change note from lib to src folder
2022-02-15 09:58:12 +01:00
Tamas Vajk
c386ab5e51
Add change note
2022-02-15 09:55:18 +01:00
CodeQL CI
8f8621f82c
Merge pull request #8022 from asgerf/js/url-parse-qs
...
Approved by esbena
2022-02-15 09:34:21 +01:00
Tamas Vajk
e8bf94faf9
C#: Downgrade hardcoded credentials queries to medium precision
2022-02-15 09:34:20 +01:00
Marcono1234
a496b1d1a1
Java: Add predicates for sealed classes
2022-02-14 21:04:38 +01:00
Robert Marsh
0e50c4b186
C++: Add openssl low-level API
2022-02-14 14:47:55 -05:00
Chris Smowton
0bf6c83ef2
Merge pull request #4388 from JLLeitschuh/feat/JLL/java/CWE-200_temp_directory_local_information_disclosure
...
Java: CWE-200: Temp directory local information disclosure vulnerability
2022-02-14 18:58:44 +00:00
Chris Smowton
fd4dc95d84
Merge pull request #6443 from artem-smotrakov/ignored-hostname-verifier
...
Java: An experimental query for ignored hostname verification
2022-02-14 18:56:27 +00:00
yoff
de5b3a272d
Merge pull request #7660 from RasmusWL/deprecate-old-modeling
...
Python: Deprecate old points-to based modeling
2022-02-14 19:48:03 +01:00
Chris Smowton
f2bc5849ce
format
2022-02-14 17:00:14 +00:00
Nick Rolfe
9c79a171ae
Merge pull request #8017 from github/nickrolfe/csharp_externalData
...
C#: add externalData back to dbscheme
2022-02-14 16:54:32 +00:00
Jonathan Leitschuh
2048aed0a9
Review feedback and improve temp dir vulnerable/safe code sugestion
2022-02-14 11:29:16 -05:00
Chris Smowton
a62eae5a1e
Remove redundant conditions from HostnameVerificationCall.isIgnored
2022-02-14 16:26:41 +00:00
Jonathan Leitschuh
76964d58f2
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-02-14 11:04:31 -05:00
Jonathan Leitschuh
bb580ddbab
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-02-14 11:02:05 -05:00
Jonathan Leitschuh
7dee22a130
Fix implicit 'this' usage
2022-02-14 11:00:41 -05:00
luchua-bc
2b5982fd9d
Remove specified value step from additional taint step
2022-02-14 15:42:54 +00:00
yoff
3a995ec1b1
Update python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-14 16:08:44 +01:00
yoff
62598c0fd1
Update python/ql/lib/semmle/python/security/dataflow/LogInjectionCustomizations.qll
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-14 16:07:40 +01:00
yoff
86786d3368
Update docs/codeql/support/reusables/frameworks.rst
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-14 16:05:59 +01:00
Asger Feldthaus
8b55a24e7c
JS: Add url-parse.qs as an alias for the querystringify library
2022-02-14 15:29:50 +01:00
luchua-bc
35a924292b
Model value passing between a setter and a getter call as a value step
2022-02-14 14:08:55 +00:00
Asger Feldthaus
f7108506f2
JS: Raise precision tag of js/request-forgery
2022-02-14 14:20:41 +01:00
Nick Rolfe
2633f9d02e
C#: delete externalData.rel in downgrade script
2022-02-14 12:25:32 +00:00
Nick Rolfe
6e7f5f8c12
C#: add DB upgrade and downgrade scripts
2022-02-14 12:16:39 +00:00
Nick Rolfe
d43a62a09f
C#: add externalData back to dbscheme
...
That table is still used, and is populated by the CSV extractor.
2022-02-14 12:09:00 +00:00
Rasmus Lerchedahl Petersen
d1200d0cd5
python: fix change-note formatting
2022-02-14 12:22:29 +01:00
Rasmus Lerchedahl Petersen
84447e4710
python: more detailed alert message
2022-02-14 11:55:07 +01:00
Rasmus Lerchedahl Petersen
bd14adefa0
python: add apologetic comment
2022-02-14 11:37:46 +01:00
Mathias Vorreiter Pedersen
9b8d85903c
Merge pull request #8011 from MathiasVP/revert-remove-legacy-tables
...
Revert "Merge pull request #7982 from jketema/remove-legacy-relations"
2022-02-14 10:32:01 +00:00
Mathias Vorreiter Pedersen
bc24b03d31
Merge pull request #8012 from erik-krogh/db-in-upgrade
...
QL: allow raw db types in upgrade/downgrade scripts
2022-02-14 10:24:55 +00:00
Erik Krogh Kristensen
8c7bf69a87
allow raw db types in upgrade/downgrade scripts without adding a warning for it
2022-02-14 10:40:07 +01:00
Mathias Vorreiter Pedersen
ab7850c581
Revert "Merge pull request #7982 from jketema/remove-legacy-relations"
...
This reverts commit 2b6d57d85b , reversing
changes made to 9b4dbb9dd8 .
2022-02-14 09:11:56 +00:00
Mathias Vorreiter Pedersen
2b6d57d85b
Merge pull request #7982 from jketema/remove-legacy-relations
2022-02-14 07:59:19 +00:00
Artem Smotrakov
48604cd7b3
Better HostnameVerificationCall.isIgnored()
2022-02-12 15:52:16 +00:00
Artem Smotrakov
36e565d673
Use classes from semmle.code.java.security.Encryption
2022-02-12 15:31:35 +00:00
Artem Smotrakov
651e43dee6
Clarify what verifier is
2022-02-12 12:24:48 +00:00
luchua-bc
78630f25dd
Match attribute name to reduce FP
2022-02-11 23:53:31 +00:00
Chuan-kai Lin
9b4dbb9dd8
Merge pull request #7895 from github/cklin/upgrades-initial-dbscheme
...
Upgrade scripts testing: set initial dbschemes
2022-02-11 11:06:12 -08:00
Andrew Eisenberg
0f3d780935
Merge pull request #7946 from github/aeisenberg/check-change-not
...
Workflows: Augment workflow to ensure failure with invalid change notes
2022-02-11 09:25:14 -08:00
Jeroen Ketema
7f4913d61f
Add change notes
2022-02-11 18:15:33 +01:00
Jeroen Ketema
9d7aa176f3
C++: Mark classes depending on removed relations as deprecated
...
Also ensure they no longer depend on the removed relations.
2022-02-11 18:04:17 +01:00
Nick Rolfe
b3048eed21
Merge pull request #7979 from github/nickrolfe/charp
...
C#: fix misspellings of 'csharp'
2022-02-11 16:57:59 +00:00
Erik Krogh Kristensen
a1c5724be7
fix most ql-for-ql warnings in JS
2022-02-11 17:57:37 +01:00
Andrew Eisenberg
5092493160
Update .github/workflows/validate-change-notes.yml
2022-02-11 08:41:20 -08:00
Geoffrey White
c4d9c1d9e7
C++: Reduce result duplication.
2022-02-11 16:03:38 +00:00
Jeroen Ketema
5205db9e17
C++: Add DB downgrade script
2022-02-11 16:36:21 +01:00
Jeroen Ketema
3033f3f89c
C++: Add DB upgrade script
2022-02-11 16:35:51 +01:00
Jeroen Ketema
94d3d63704
C++: Remove some unused legacy relations from the DB scheme
2022-02-11 16:35:08 +01:00
Erik Krogh Kristensen
360cf0ff17
Merge pull request #7981 from erik-krogh/erik-krogh/key-on-qlpacks
...
QL: add qlpack.yml to the cache key for QL-for-QL query build
2022-02-11 16:19:38 +01:00
Erik Krogh Kristensen
6639bdaf1e
add qlpack.yml to the cache key for QL-for-QL query build
2022-02-11 16:04:39 +01:00
Nick Rolfe
dc2f653496
Merge remote-tracking branch 'origin/main' into nickrolfe/charp
2022-02-11 14:56:15 +00:00
Erik Krogh Kristensen
25f6880809
Merge pull request #7980 from erik-krogh/fix-ql-pack
...
QL: fix pack name for ql-for-ql
2022-02-11 15:53:02 +01:00
Erik Krogh Kristensen
1fa5265a2e
fix pack name for ql-for-ql
2022-02-11 15:44:14 +01:00
Nick Rolfe
164cce7417
C#: fix misspellings of 'csharp'
2022-02-11 14:08:47 +00:00
Erik Krogh Kristensen
25d64a7901
Merge pull request #7930 from erik-krogh/rbApiIpa
...
RB: convert the ruby ApiGraphs to use IPA labels
2022-02-11 14:35:39 +01:00
Geoffrey White
00ba76b7e4
C++: Convert to IR taint tracking.
2022-02-11 13:00:42 +00:00
luchua-bc
e3d0e9f083
Update normalized path node
2022-02-11 12:38:05 +00:00
Arthur Baars
678645ba57
Merge pull request #7883 from github/aibaars/ruby-cross
...
Ruby: add configuration for 'cross'
2022-02-11 13:15:34 +01:00
Arthur Baars
525c685584
Ruby: add configuration for 'cross'
2022-02-11 12:50:33 +01:00
Taus
d7f30de5b0
Merge pull request #7874 from RasmusWL/set-store-step
...
Python: Fix setStoreStep to use `SetElementContent`
2022-02-11 12:50:02 +01:00
Arthur Baars
a85b2093d6
Merge pull request #7969 from github/doc-remove-filter-queries
...
Docs: remove mention of 'filter queries'
2022-02-11 12:48:34 +01:00
github-actions[bot]
21bf29353f
Post-release preparation for codeql-cli-2.8.1
2022-02-11 11:07:31 +00:00
Taus
327e0dad72
Merge pull request #7674 from erik-krogh/dbTypeInNonLib
...
QL: Use of db-type outside language core.
2022-02-11 12:00:14 +01:00
Arthur Baars
47eb96d223
Docs: remove mention of 'filter queries'
2022-02-11 11:45:34 +01:00
Erik Krogh Kristensen
5a39708cf7
move TLabel to the Impl module and cache it
2022-02-11 10:54:45 +01:00
Erik Krogh Kristensen
36e02ae9ac
Merge pull request #7912 from erik-krogh/moarApi
...
JS: convert more type-trackers to API-graphs
2022-02-11 10:32:45 +01:00
Erik Krogh Kristensen
daa96cc218
change some docstrings based on review, and make fields private
2022-02-11 10:25:54 +01:00
Tom Hvitved
0f60401919
Merge pull request #2513 from hvitved/csharp/null-maybe-capture
...
C#: Remove FPs from `cs/dereferenced-value-may-be-null`
2022-02-11 10:21:15 +01:00
Erik Krogh Kristensen
6ae4652ce9
make the Impl module private again
2022-02-11 10:17:24 +01:00
Arthur Baars
74ed89409c
Merge pull request #7948 from github/release-prep/2.8.1
...
Release preparation for version 2.8.1
2022-02-11 10:13:34 +01:00
Erik Krogh Kristensen
3791b159fb
Merge pull request #7892 from erik-krogh/nanSan
...
JS: Add a `isNaN` sanitizer, and use it in queries that already had a typeof check
2022-02-11 10:13:06 +01:00
Erik Krogh Kristensen
2ffd79d451
Merge pull request #7921 from erik-krogh/snapdragon
...
JS: add model for the snapdragon library
2022-02-11 10:10:55 +01:00
Arthur Baars
58a2597c3a
C++: move change note lines to correct query pack
2022-02-11 09:52:36 +01:00
Tom Hvitved
987b11c362
Merge pull request #7926 from hvitved/csharp/brotli
...
C#: Use Brotli instead of Gzip
2022-02-11 09:29:04 +01:00
Tamás Vajk
c5d917eb72
Improve formatting of 0.0.9 release notes
2022-02-11 09:19:43 +01:00
Esben Sparre Andreasen
a4447ce372
Update javascript/ql/lib/semmle/javascript/frameworks/Snapdragon.qll
2022-02-11 08:20:02 +01:00
luchua-bc
12c53baba4
Simplify the query
2022-02-11 01:05:06 +00:00
Harry Maclean
017183e7f3
Merge pull request #7919 from github/hmac/open-uri
...
Ruby: recognise additional form for OpenURI
2022-02-11 14:03:26 +13:00
Andrew Eisenberg
cba9e0b267
Fix paths in check-change-note
...
Library pack changes were being ignored.
2022-02-10 14:36:23 -08:00
github-actions[bot]
f25fc70b7c
Release preparation for version 2.8.1
2022-02-10 22:08:24 +00:00
Andrew Eisenberg
9441ea940c
Workflows: Augment workflow to ensure failure with invalid change notes
2022-02-10 13:52:54 -08:00
Erik Krogh Kristensen
f41bc64e30
add change-note
2022-02-10 22:41:35 +01:00
Arthur Baars
c9f898745c
Merge pull request #7943 from github/aibaars/cpp-move-note
...
C++: move change note
2022-02-10 22:32:31 +01:00
Arthur Baars
6cba49abe3
C++: move change note
2022-02-10 22:13:54 +01:00
Arthur Baars
1fb3cbfeee
Merge pull request #7940 from github/aibaars/js-move-note
...
Javascript: move change note
2022-02-10 21:20:06 +01:00
Arthur Baars
61ba896343
Javascript: move change note
2022-02-10 20:58:49 +01:00
Robert Marsh
dbe4770c7d
C++: add initial insufficient key size query
2022-02-10 14:53:40 -05:00
Tom Hvitved
2b2196d638
Merge pull request #7927 from github/hvitved-patch-1
...
Add C# 10 and .NET 6 to `versions-compilers.rst`
2022-02-10 20:43:33 +01:00
Erik Krogh Kristensen
eb56a5aef3
support more patterns that recognize valid numbers
2022-02-10 19:50:35 +01:00
Artem Smotrakov
0ba229a64b
Apply suggestions from code review (typos/formatting)
...
Co-authored-by: Tony Torralba <atorralba@users.noreply.github.com >
Co-authored-by: Chris Smowton <smowton@github.com >
2022-02-10 18:37:12 +00:00
Alex Ford
d55ba2542a
Ruby: fix an alert
2022-02-10 18:35:22 +00:00
Geoffrey White
85d03fdbfd
C++: Change note.
2022-02-10 18:05:41 +00:00
Erik Krogh Kristensen
02ed1ca392
add missing qldoc
2022-02-10 18:06:53 +01:00
yoff
a2532a86ea
Merge pull request #7894 from tausbn/python-normalise-prefixes
...
Python: Normalise string prefixes
2022-02-10 17:57:11 +01:00
Erik Krogh Kristensen
9739929795
convert the ruby ApiGraphs to use IPA labels
2022-02-10 17:54:19 +01:00
Alex Ford
bc53570a25
Ruby: fewer mappings from dataflow nodes to ast nodes
2022-02-10 15:58:31 +00:00
Alex Ford
7c1bd9a533
Ruby: add a test case for cleartext logging that uses NonCleartextPasswordFlow
2022-02-10 15:50:56 +00:00
Alex Ford
83a3808bbe
Ruby: avoid marking mutator methods as being safe (i.e. not returning sensitive data)
2022-02-10 15:50:56 +00:00
Alex Ford
b46e4ccd71
Ruby: drop SanitizerIn from ClearTextLoggingQuery
2022-02-10 15:50:56 +00:00
Alex Ford
7b4af39315
Ruby: track masked variables potentially containing sensitive data more accurately
2022-02-10 15:50:56 +00:00
Alex Ford
59ab384825
Ruby: rb/clear-text-logging-sensitive-data - match on CFG nodes rather than AST nodes
2022-02-10 15:50:56 +00:00
Jonathan Leitschuh
eee521e6ce
Fix test failure for TempDirLocalInformationDisclosure
2022-02-10 10:40:40 -05:00
Tom Hvitved
a3d631f2df
Add C# 10 and .NET 6 to versions-compilers.rst
2022-02-10 15:45:00 +01:00
Tom Hvitved
1c66444a61
C#: Use Brotli instead of Gzip
2022-02-10 14:30:24 +01:00
Felicity Chapman
efed21b99a
Merge pull request #7885 from Marcono1234/marcono1234/extractor-doc-improvements
...
Fix and improve Extractor options documentation formatting
2022-02-10 12:59:45 +00:00
CodeQL CI
9ebbd9efa1
Merge pull request #7591 from asgerf/js/mysql-sinks
...
Approved by esbena
2022-02-10 12:50:36 +00:00
Felicity Chapman
5ec1fc11f9
Apply suggestions from code review
2022-02-10 12:41:37 +00:00
CodeQL CI
a57ee019c2
Merge pull request #7819 from asgerf/asgerf/ruby-def-nodes
...
Approved by hvitved
2022-02-10 12:37:34 +00:00
Taus Brock-Nannestad
be323bafaf
Merge remote-tracking branch 'upstream/main' into python-normalise-prefixes
2022-02-10 12:55:49 +01:00
CodeQL CI
1a91a79b5b
Merge pull request #5841 from erik-krogh/libCode
...
Approved by esbena, ethanpalm
2022-02-10 11:36:45 +00:00
Mathias Vorreiter Pedersen
d05dbb285c
Merge pull request #7841 from jketema/structured-bindings-fix
...
C++: Update C++ variable hiding test
2022-02-10 11:29:38 +00:00
Geoffrey White
b0c2a144cc
C++: Remove no longer relevant tests.
2022-02-10 11:11:31 +00:00
Geoffrey White
20ad92a82e
C++: Filter noisiest sources.
2022-02-10 11:11:30 +00:00
Geoffrey White
7b5b2fdcd1
C++: Modernize cpp/system-data-exposure as a path-problem using IR taint, RemoteFlowSinkFunction.
2022-02-10 11:11:26 +00:00
Geoffrey White
5490809bcf
C++: Expand tests.
2022-02-10 10:43:21 +00:00
Erik Krogh Kristensen
d55920ad27
add model for the snapdragon library
2022-02-10 11:32:59 +01:00
Jeroen Ketema
46821fe136
Update C++ variable hiding test
...
Structured bindings are now handled better, so the false negative
related to structured bindings is now a true positive.
2022-02-10 10:58:32 +01:00
Tom Hvitved
58d90c7f8d
Python: More points-to performance improvements
2022-02-10 10:29:30 +01:00
Tom Hvitved
7fd8d6dd30
Address review comments
2022-02-10 10:29:30 +01:00
Tom Hvitved
2de892bfd8
Python: Points-to performance improvements
2022-02-10 10:29:30 +01:00
Erik Krogh Kristensen
12d31d750a
convert more type-trackers to API-graphs
2022-02-10 09:54:52 +01:00
Stephan Brandauer
a73cdf3527
Merge pull request #7911 from kaeluka/javascript/add-getFlowLabel-to-PathNode
...
JS: add a getFlowLabel method to the PathNode class
2022-02-10 09:10:08 +01:00
Jonathan Leitschuh
bafcce17d4
Apply suggestions from code review
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-02-09 22:14:17 -05:00
Harry Maclean
d966ca8466
Ruby: recognise additional form for OpenURI
2022-02-10 15:42:15 +13:00
luchua-bc
ce03aeb4d9
Fixed an issue related to normalized path
2022-02-09 23:19:40 +00:00
Rasmus Wriedt Larsen
94f9656e8e
Python: Solve deprecation warnings for old experimental queries
2022-02-10 00:09:43 +01:00
Harry Maclean
f30222256f
Merge pull request #7061 from github/hmac/actiondispatch
...
Ruby: Rails route resolution
2022-02-10 09:46:36 +13:00
Ethan Palm
2f7f9d9032
Move explanation of example above sample code
2022-02-09 10:45:24 -08:00
Jonathan Leitschuh
ded8d64301
Remove CAPC and add CWE-93
2022-02-09 12:31:53 -05:00
Jonathan Leitschuh
03fdee3767
Cleanup Netty Response Splitting Query
2022-02-09 12:28:11 -05:00
Jonathan Leitschuh
8ffe878722
Apply suggestions from code review
...
Co-authored-by: Matt Pollard <mattpollard@users.noreply.github.com >
2022-02-09 12:28:11 -05:00
Jonathan Leitschuh
c732cb7759
Add HTTP Request Splitting to Netty Query
2022-02-09 12:28:10 -05:00
Stephan Brandauer
3e88d46e0f
add a getFlowLabel method to the PathNode class
2022-02-09 17:28:25 +01:00
Jonathan Leitschuh
49a73673b6
Fix FP from mkdirs call on exact temp directory
2022-02-09 11:04:23 -05:00
Tamás Vajk
6483a92587
Merge pull request #7865 from github/post-release-prep/codeql-cli-2.8.0
...
Post-release preparation for codeql-cli-2.8.0
2022-02-09 16:42:38 +01:00
Jonathan Leitschuh
787e3dac31
Update java/ql/src/Security/CWE/CWE-200/TempDirLocalInformationDisclosure.ql
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-02-09 10:07:56 -05:00
Tom Hvitved
c695388c29
Merge pull request #7891 from hvitved/ruby/dataflow/hide-ssa-nodes
...
Ruby: Hide more SSA nodes from data-flow path explanations
2022-02-09 15:56:15 +01:00
Tom Hvitved
0bd8411cb6
Ruby: Hide more SSA nodes from data-flow path explanations
2022-02-09 15:31:10 +01:00
Rasmus Lerchedahl Petersen
aa010e420b
python: update qhelp
2022-02-09 15:27:39 +01:00
Rasmus Lerchedahl Petersen
75a2f92ce4
pthon: add change note
2022-02-09 15:23:36 +01:00
Mathias Vorreiter Pedersen
336c25d929
Merge pull request #7913 from RasmusWL/ql-qlpacks
...
QL: Streamline qlpacks
2022-02-09 13:37:19 +00:00
Rasmus Lerchedahl Petersen
313f9f056c
python: switch to using concepts
2022-02-09 14:36:48 +01:00
Rasmus Lerchedahl Petersen
17aa2898f9
python: model (xpathEval from) libxml2
2022-02-09 14:25:43 +01:00
Rasmus Lerchedahl Petersen
e8649d8947
python: model (etree from) lxml
2022-02-09 14:15:17 +01:00
Rasmus Wriedt Larsen
1f50624cf4
QL: Streamline qlpacks
...
So they follow the same format as the other languages.
`git grep codeql-ql` in the ql/ subfolder does not yield any results
now.
2022-02-09 14:08:36 +01:00
Rasmus Wriedt Larsen
9d5e8d5bd8
Merge pull request #7842 from RasmusWL/consistency-queires
...
Misc: Streamline `consistency-queries/qlpack.yml`
2022-02-09 13:42:18 +01:00
Nick Rolfe
1eba8277ee
Merge pull request #7614 from github/nickrolfe/array_flow_summaries
...
Ruby: add more Array/Enumerable flow summaries
2022-02-09 09:57:59 +00:00
Harry Maclean
f276904fa9
Ruby: Add nomagic pragma to helper
2022-02-09 22:38:35 +13:00
Michael Nebel
ff369f2a36
Merge pull request #7846 from michaelnebel/csharp/deconstruction
...
C# 10: Tuple deconstruction.
2022-02-09 10:08:16 +01:00
Mathias Vorreiter Pedersen
bbbb5268ce
Merge pull request #7881 from geoffw0/clrtxtperf
...
CPP: Fix performance for cpp/cleartext-transmission
2022-02-09 09:03:44 +00:00
Erik Krogh Kristensen
5340530cb7
use the number guard in existing queries that contained typeof checks
2022-02-09 09:51:57 +01:00
Erik Krogh Kristensen
d6721ec574
implement a isNaN guard for unsafe-shell-command-construction
2022-02-09 09:51:57 +01:00
Tom Hvitved
9440a45015
Merge branch 'main' into post-release-prep/codeql-cli-2.8.0
2022-02-09 09:40:33 +01:00
yoff
f21ac04285
Update python/ql/lib/semmle/python/frameworks/Stdlib.qll
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-09 09:22:31 +01:00
luchua-bc
4609227e76
Use data model for request/session attribute operations
2022-02-09 03:24:46 +00:00
jorgectf
3ccac4ed8a
Update .expected
2022-02-08 23:59:36 +01:00
Jonathan Leitschuh
7f46640176
Consider calls to setReadable(false, false) then setReadable(true, true) to be safe
2022-02-08 17:57:10 -05:00
jorgectf
c6d8b97871
Make verifyCall() a private predicate
2022-02-08 23:37:17 +01:00
jorgectf
7b51b91d13
Improve test
2022-02-08 23:33:43 +01:00
jorgectf
ed60d16367
Refactor the way to check the verifying call
2022-02-08 23:33:30 +01:00
Jorge
f1fab98ea2
Merge branch 'github:main' into python_jwt
2022-02-08 23:12:58 +01:00
Taus Brock-Nannestad
54ae744b2c
Python: Also update Python 2 file
2022-02-08 22:08:53 +01:00
Harry Maclean
3206384884
Merge pull request #7824 from github/hmac/constantize
2022-02-09 08:30:21 +13:00
Chuan-kai Lin
a7f1ee574c
Upgrade scripts testing: set initial dbschemes
...
This commit sets initial dbschemes for cpp, csharp, java, javascript, and
python so that automated testing for upgrade scripts would also cover legacy
upgrades.
2022-02-08 11:11:41 -08:00
Tom Hvitved
b2419d60bd
Merge pull request #7090 from hvitved/ruby/perf
...
Ruby: Cache more predicates
2022-02-08 20:02:33 +01:00
Chris Smowton
143d64c92c
Merge pull request #7879 from github/smowton/admin/getting-started-mention-codeql-go-deps
...
Docs: Note codeql-go needs an install step before use
2022-02-08 18:07:26 +00:00
Alex Ford
81ed5d0ff7
Ruby: comment and node description fixes
...
Co-authored-by: Harry Maclean <hmac@github.com >
2022-02-08 18:03:29 +00:00
Taus Brock-Nannestad
6ea8986daa
Python: Normalise string prefixes
2022-02-08 16:48:17 +01:00
Erik Krogh Kristensen
4bbb7ad320
Merge pull request #7876 from erik-krogh/zipRelative
...
JS: recognize more startswith sanitizers for path-injection queries
2022-02-08 15:22:39 +01:00
Nick Rolfe
ade7921079
Merge pull request #7890 from github/nickrolfe/unique_node
...
Ruby/QL: add `unique` annotation on `node` column
2022-02-08 13:15:17 +00:00
Tom Hvitved
984e01ecf0
C#: Remove FPs from cs/dereferenced-value-may-be-null
...
Apply a conservative approach by filtering out results for accesses to
captured nullable values, when there is an (implicit) call to the capturing
callable which is `null`-guarded. For example:
```
bool M(int? i, IEnumerable<int> @is)
{
if (i.HasValue)
return @is.Any(j => j == i.Value); // GOOD
return false;
}
```
2022-02-08 14:01:57 +01:00
Tom Hvitved
7948d965a0
C#: Add nullness tests for captured variables
2022-02-08 13:52:29 +01:00
Tom Hvitved
3b5267eca5
Ruby: Cache DataFlow::Node::{toString,getLocation}
2022-02-08 13:03:42 +01:00
Tom Hvitved
f337459a4a
Ruby: Cache capturedEntryWrite
2022-02-08 13:03:42 +01:00
Tom Hvitved
b041bc03d1
Ruby: Cache ConditionBlock::(immediately)Controls
2022-02-08 13:03:41 +01:00
Tom Hvitved
4037d1ff96
Ruby: Cache ErbDirective::getAChildStmt
2022-02-08 13:03:41 +01:00
Tom Hvitved
4c5f32ba4a
Ruby: Cache exprNodeReturnedFrom
2022-02-08 13:03:31 +01:00
Tom Hvitved
45412fa17f
Cache hasLocalSource
2022-02-08 13:03:27 +01:00
Chris Smowton
a6596ea7ce
Fix test requirements, formatting
2022-02-08 12:01:32 +00:00
Rasmus Lerchedahl Petersen
3f36ccba92
python: add name to concept
2022-02-08 12:40:13 +01:00
Rasmus Lerchedahl Petersen
8665fe4817
python: add concept for XPath construction
...
also small fixup in `SqlConstruction`
2022-02-08 12:31:37 +01:00
Erik Krogh Kristensen
28ba78cb76
add explicit this
2022-02-08 12:20:21 +01:00
Rasmus Wriedt Larsen
3e01816f0c
Python: Add change-note
2022-02-08 12:03:40 +01:00
Rasmus Lerchedahl Petersen
7d287f1698
python: add concept for xpath execution
2022-02-08 11:46:28 +01:00
Rasmus Lerchedahl Petersen
103b5761f3
python: remove superfluous configuration
...
this also removes duplicated nodes and edges
in the path results
2022-02-08 11:34:11 +01:00
Michael Nebel
c04e344192
Merge pull request #7749 from michaelnebel/csharp/lambda-improvements
...
C# 10 - Lambda improvements.
2022-02-08 11:28:55 +01:00
Benjamin Muskalla
b62df5a9ad
Merge pull request #7872 from bmuskalla/fixCoverageCollection
...
Collect framework coverage on demand
2022-02-08 11:27:48 +01:00
Rasmus Lerchedahl Petersen
a9cfc60ea1
python: move supporting libraries
...
and update reference in query
2022-02-08 11:27:45 +01:00
Henry Mercer
eff0ca01b1
Merge pull request #7417 from github/henrymercer/java/update-telemetry-query-metadata
...
Java: Start running telemetry queries on Code Scanning
2022-02-08 10:26:30 +00:00
Rasmus Lerchedahl Petersen
88efcff818
python: move query
...
and update reference in query test
2022-02-08 11:24:09 +01:00
Chris Smowton
79654592d9
Apply suggestions from code review
2022-02-08 10:23:46 +00:00
Rasmus Lerchedahl Petersen
e51ba6f421
python: rename test directory
2022-02-08 11:20:10 +01:00
Rasmus Lerchedahl Petersen
e52dca0a35
python: move tests
2022-02-08 11:19:28 +01:00
Benjamin Muskalla
ff8a96b96d
Rename framework coverage query
...
Move it to the other summary queries, update all references.
2022-02-08 11:14:03 +01:00
Rasmus Wriedt Larsen
a8edd44a3c
Python: Update .expected
2022-02-08 11:12:34 +01:00
Benjamin Muskalla
85a8efab63
Update .github/workflows/csv-coverage-metrics.yml
...
Co-authored-by: Henry Mercer <henry.mercer@me.com >
2022-02-08 11:07:56 +01:00
Benjamin Muskalla
6e3d2a2046
Update misc/suite-helpers/security-and-quality-selectors.yml
...
Co-authored-by: Henry Mercer <henry.mercer@me.com >
2022-02-08 11:07:35 +01:00
Benjamin Muskalla
fb91821882
Update misc/suite-helpers/security-extended-selectors.yml
...
Co-authored-by: Henry Mercer <henry.mercer@me.com >
2022-02-08 11:06:51 +01:00
Benjamin Muskalla
94c517efd6
Update misc/suite-helpers/code-scanning-selectors.yml
...
Co-authored-by: Henry Mercer <henry.mercer@me.com >
2022-02-08 11:06:35 +01:00
Benjamin Muskalla
284c397883
Update misc/suite-helpers/lgtm-selectors.yml
...
Co-authored-by: Henry Mercer <henry.mercer@me.com >
2022-02-08 11:06:30 +01:00
Benjamin Muskalla
e7823a78ef
Update .github/workflows/csv-coverage-metrics.yml
...
Co-authored-by: Henry Mercer <henry.mercer@me.com >
2022-02-08 11:06:21 +01:00
Nick Rolfe
fa16ff9ffc
QL for QL: make node column unique
2022-02-08 09:59:11 +00:00
Nick Rolfe
8881031d0a
Ruby: add upgrade/downgrade scripts
2022-02-08 09:57:55 +00:00
Nick Rolfe
2037368f62
Ruby: make node column unique
2022-02-08 09:55:34 +00:00
Nick Rolfe
dbe2951aec
Merge pull request #7880 from github/nickrolfe/locations_column_ql
...
QL for QL: sync changes from Ruby
2022-02-08 09:53:06 +00:00
CodeQL CI
db8ffb5ba9
Merge pull request #7870 from erik-krogh/nodeReExport
...
Approved by esbena
2022-02-08 09:44:25 +00:00
Erik Krogh Kristensen
d73b2effa0
rename maybeGetJoinArg maybeGetPathSuffix
2022-02-08 10:42:06 +01:00
Asger Feldthaus
862c3b9752
Ruby: autoformat
2022-02-08 10:22:15 +01:00
Asger Feldthaus
2b36703bfb
Ruby: add def= tags to API graph test
2022-02-08 10:20:25 +01:00
Geoffrey White
6005f3d2d4
C++: Add pragma[noinline].
2022-02-08 09:13:51 +00:00
Asger Feldthaus
66b1c86402
Ruby: update qldoc for def predicate
2022-02-08 10:00:14 +01:00
Asger Feldthaus
9ac526be89
Ruby: change binding for getParameter/getKeywordParameter
2022-02-08 09:36:05 +01:00
Asger Feldthaus
073493bb2e
Ruby: fix qldoc for getMethod
2022-02-08 09:28:07 +01:00
luchua-bc
ff4826d203
Correct the data model and update qldoc
2022-02-08 04:02:27 +00:00
Erik Krogh Kristensen
cc3f9bf2a8
fix performance issue by inlining a simpler version of getASourceProp
2022-02-08 00:22:01 +01:00
Erik Krogh Kristensen
aa95dd4ec7
fix typo
...
Co-authored-by: Esben Sparre Andreasen <esbena@github.com >
2022-02-08 00:19:40 +01:00
Harry Maclean
3031b39dc1
Ruby: prevent bad join in ActionController.qll
2022-02-08 12:10:23 +13:00
Marcono1234
d0547cdbfd
Fix and improve Extractor options documentation formatting
2022-02-07 21:05:14 +01:00
Jonathan Leitschuh
c4112e6d4c
Post refactor fixiup
2022-02-07 15:02:13 -05:00
Chris Smowton
de38638db6
Combine CWE-200 queries
2022-02-07 14:22:36 -05:00
Rasmus Wriedt Larsen
eb109828c0
Merge pull request #7252 from museljh/feature/cwe-338
...
Python: CWE-338 insecureRandomness
2022-02-07 19:30:06 +01:00
Nick Rolfe
073d325750
QL for QL: update dbscheme stats
2022-02-07 17:54:35 +00:00
Nick Rolfe
3ee109731a
QL for QL: sync changes from Ruby
...
In particular, update the dbscheme to put location columns in a single
table.
2022-02-07 17:44:40 +00:00
Nick Rolfe
9217d0e1b9
Merge pull request #7875 from github/nickrolfe/locations_column
...
Ruby: put AST node locations in a single table
2022-02-07 17:43:33 +00:00
Geoffrey White
6727069893
C++: Autoformat.
2022-02-07 17:33:11 +00:00
Geoffrey White
d1b6871314
C++: Restrict type.
2022-02-07 17:32:52 +00:00
Geoffrey White
005dfdffdb
C++: Speed up cpp/cleartext-transmission ('Encrypted' class).
2022-02-07 17:19:25 +00:00
Chris Smowton
27b9e1c01b
Docs: Note codeql-go needs an install step before use
2022-02-07 16:11:42 +00:00
Erik Krogh Kristensen
b59c7911a3
update locations of expected output
2022-02-07 15:23:26 +01:00
Erik Krogh Kristensen
ca5f91e587
recognize more startswith sanitizers for path-injection queries
2022-02-07 14:19:13 +01:00
Michael Nebel
f21e084628
C#: Fix issue in naming of class in test file.
2022-02-07 14:15:59 +01:00
Michael Nebel
f5fc15e74d
C#: Add some testcases to cover mixed assignment and declarations in tuples.
2022-02-07 14:11:31 +01:00
Michael Nebel
0cf4b3fbcc
C#: Added dataflow testcases for tuple mixed initialization and assignment.
2022-02-07 14:11:31 +01:00
Michael Nebel
bcf732a7cb
C#: Re-factor tuple tests to use the default value flow configuration.
2022-02-07 14:11:31 +01:00
Michael Nebel
f478bf5b9b
Merge pull request #7809 from michaelnebel/csharp/test-pattern-match-flow
...
C#: Add flow test cases for undetected value flow, when making variable bindings in pattern matching.
2022-02-07 14:05:50 +01:00
Nick Rolfe
881776a2ac
Ruby: delete commented-out code
2022-02-07 12:50:06 +00:00
Nick Rolfe
e049f08c24
Ruby: update dbscheme stats
2022-02-07 12:42:34 +00:00
Erik Krogh Kristensen
6f28cb9201
lower the precision of js/unsafe-code-construction
2022-02-07 13:35:29 +01:00
Erik Krogh Kristensen
06f9924194
add change note
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
896d2bad0e
update expected output now that JSON.stringify() is seen as a sanitizer
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
d1d4ebb3b5
add values written to the global scope as exports
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
91b03f56ad
move .qll files from src to lib
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
eb133f59f6
update qhelp to focus on properly documenting potentially unsafe library functions
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
a9f7756788
reuse utility predicate
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
681179dcbb
add comment about parameters named "code"
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
53315e6ab6
ignore sources named "code"
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
59cc099008
add missing qldoc
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
d77c28f6a7
add qhelp for unsafe-code-construction
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
d790f3ccbb
add test for unsafe-code-construction query
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
198a464346
add js/unsafe-code-construction query
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
955ad8c458
add JSON.stringify as a code-injection sanitizer
2022-02-07 13:34:18 +01:00
Erik Krogh Kristensen
68a5c1f5b5
add code-injection sink for calls to node
2022-02-07 13:34:18 +01:00
Rasmus Wriedt Larsen
62702d0ca9
Python: Fix setStoreStep to use SetElementContent
2022-02-07 13:18:36 +01:00
Nick Rolfe
b3b2bba618
Ruby: make some generated predicates final
2022-02-07 12:17:50 +00:00
Rasmus Wriedt Larsen
b276b2d48c
Python: Clean up taint steps for attributes
2022-02-07 13:12:31 +01:00
Rasmus Wriedt Larsen
59160eeb24
Python: Add test showing taint for attr store
...
In `x.arg = TAINTED_STRING` there is a store step to the attribute `arg`
of `x`. In our taint modeling, we allow _any_ store step with the code
below. This means that we also say there is a taint-step directly from
`TAINTED_STRING` to `x` :|
```codeql
// construction by literal
// TODO: Not limiting the content argument here feels like a BIG hack, but we currently get nothing for free :|
DataFlowPrivate::storeStep(nodeFrom, _, nodeTo)
```
2022-02-07 13:12:28 +01:00
Nick Rolfe
b43cc23277
Ruby: add db downgrade script
2022-02-07 12:10:36 +00:00
Nick Rolfe
e8855c3718
Ruby: add db upgrade script
2022-02-07 12:10:36 +00:00
Nick Rolfe
388d361ec3
Ruby: put AST node locations in a single table
2022-02-07 12:10:36 +00:00
Michael Nebel
99f89f1fe2
C#: Update db stats file.
2022-02-07 12:57:10 +01:00
Mathias Vorreiter Pedersen
55e69d421c
Merge pull request #7849 from Yonah125/main
...
C/C++: Useless Test : verification of "Fully converted" Type
2022-02-07 11:46:51 +00:00
Benjamin Muskalla
2f94356899
Run daily
2022-02-07 12:12:29 +01:00
Benjamin Muskalla
bd417769ce
Add workflow to upload metrics
2022-02-07 12:08:18 +01:00
Benjamin Muskalla
a1432c47dc
Exclude framework coverage query from suites
...
We don't want to run this query on any database but rather
in a specific setup. Exclude from suites by default.
2022-02-07 12:08:18 +01:00
Benjamin Muskalla
9af50f5216
Turn framework coverage into metric query
2022-02-07 12:08:18 +01:00
Jeroen Ketema
1f2865c7cc
Merge pull request #7798 from jketema/missing-open-arg
...
C++: Add query for missing mode argument in `open`/`openat` calls
2022-02-07 12:01:44 +01:00
BACK Yonah
61dc9ef12e
C/C++: AutoFormat fix
2022-02-07 11:41:17 +01:00
Rasmus Wriedt Larsen
32cd7d6fa7
Add groups to all consistency-queries/qlpack.yml
...
as discussed in PR review
2022-02-07 11:15:48 +01:00
Tom Hvitved
dc09e87cb2
Ruby: Use SimpleSummarizedCallable in a few more places
2022-02-07 11:05:32 +01:00
Erik Krogh Kristensen
0584a6acaf
recognize a nodejs re-exports in a loop
2022-02-07 10:12:38 +01:00
Michael Nebel
b2e18ebae1
C#: Lambda improvements change note.
2022-02-07 09:22:46 +01:00
Michael Nebel
782d6da754
C#: Support for lambda expression explicit return types and lambda attributes.
2022-02-07 09:19:47 +01:00
github-actions[bot]
b4ab86c020
Post-release preparation for codeql-cli-2.8.0
2022-02-06 23:34:07 +00:00
Arthur Baars
ac03fab986
Merge pull request #7753 from aibaars/ruby-3.1
...
Ruby 3.1 features
2022-02-06 21:06:16 +01:00
Artem Smotrakov
f53b2fcc62
Updated IgnoredHostnameVerification.ql to cover more uses of HostnameVerifier.verify()
2022-02-06 11:23:20 +00:00
Jonathan Leitschuh
1f47ea5164
Update to new change note format
2022-02-04 17:16:12 -05:00
Jonathan Leitschuh
0268dd9f0a
Add file creation sanitizer
2022-02-04 17:10:27 -05:00
Jonathan Leitschuh
9299c7996d
Add information disclosure test fix suggestions
2022-02-04 17:10:27 -05:00
Jonathan Leitschuh
0a621c2801
Fix the formatting in TempDirLocalInformationDisclosureFromMethodCall
2022-02-04 17:10:27 -05:00
Jonathan Leitschuh
79db76dcf8
Fix test failures TempDirLocalInformationDisclosureFromSystemProperty
2022-02-04 17:10:27 -05:00
Jonathan Leitschuh
d5c9af31b2
Fixup documentation/code from PR feedback
2022-02-04 17:10:26 -05:00
Jonathan Leitschuh
f7a4aac525
Apply suggestions from code review
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-02-04 17:10:26 -05:00
Jonathan Leitschuh
a4b5573f53
Apply suggestions from code review
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-02-04 17:10:26 -05:00
Jonathan Leitschuh
a8d25b63ac
Apply suggestions from code review
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-02-04 17:10:26 -05:00
Chris Smowton
e795823d97
Autoformat TempDirUtils.qll
2022-02-04 17:10:26 -05:00
Jonathan Leitschuh
7e514e9ef9
Add QLdoc and fix Compiler Errors in Tests
2022-02-04 17:10:26 -05:00
Jonathan Leitschuh
cb30385684
Update java/ql/src/Security/CWE/CWE-200/TempDirUtils.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2022-02-04 17:10:26 -05:00
Jonathan Leitschuh
df716cbaa0
Revert changes to MethodAccessSystemGetProperty
2022-02-04 17:10:25 -05:00
Jonathan Leitschuh
66831989b7
Add QLdoc to TempDirUtils
2022-02-04 17:10:25 -05:00
Jonathan Leitschuh
7e55c92eb4
Apply suggestions from code review
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2022-02-04 17:10:25 -05:00
Jonathan Leitschuh
c19f52cd04
Add release notes for "Temporary Directory Local information disclosure"
2022-02-04 17:10:25 -05:00
Jonathan Leitschuh
f6067d28f9
Fix file names and formatting from PR feedback
2022-02-04 17:10:25 -05:00
Jonathan Leitschuh
41b5011b81
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-02-04 17:10:25 -05:00
Jonathan Leitschuh
7929faedc0
Apply suggestions from code review
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2022-02-04 17:10:25 -05:00
Jonathan Leitschuh
f910fd4719
Remove path flow tracking in 'TempDirLocalInformationDisclosureFromMethodCall'
2022-02-04 17:10:25 -05:00
Jonathan Leitschuh
e4c017e888
Apply suggestions from code review
...
Co-authored-by: Arthur Baars <aibaars@github.com >
2022-02-04 17:10:24 -05:00
Jonathan Leitschuh
13fed0e9b6
Temp Dir Info Disclosure: Final pass and add documentation
2022-02-04 17:10:24 -05:00
Jonathan Leitschuh
bc12e994b0
Add java.nio.file.Files API checks
2022-02-04 17:10:24 -05:00
Jonathan Leitschuh
ecad7534ae
Add mkdirs check
2022-02-04 17:10:24 -05:00
Jonathan Leitschuh
cf0ed81575
Add TempDir taint tracking for Files.write
2022-02-04 17:10:24 -05:00
Jonathan Leitschuh
3a15678b1e
Java: CWE-200: Temp directory local information disclosure vulnerability
2022-02-04 17:10:23 -05:00
Erik Krogh Kristensen
ab2d3a7ca0
Merge pull request #7828 from Naman-ntc/main
...
JS: Adding model for `.get` function of `Map` in Unvalidated Dynamic Method Call
2022-02-04 20:19:02 +01:00
Erik Krogh Kristensen
f00d723c49
Merge pull request #7843 from erik-krogh/CVE-2021-23484
...
JS: add file sources from `jszip` to `js/zip-slip`
2022-02-04 20:17:43 +01:00
BACK Yonah
21fdc53d62
C/C++: Using UnspecifiedType instead of Type
2022-02-04 19:12:15 +01:00
Nick Rolfe
9744cf2457
Ruby: apply suggested simplification from review
2022-02-04 17:14:47 +00:00
Nick Rolfe
aaff3226c9
Ruby: prefer ...isInt(x) over x = ...getInt()
2022-02-04 17:10:22 +00:00
BACK Yonah
b2ca25abef
Merge branch 'main' of https://github.com/github/codeql
2022-02-04 18:09:19 +01:00
BACK Yonah
f4a1d1d5e6
C/C++: Useless Test Fully converted verification
2022-02-04 18:05:03 +01:00
Nick Rolfe
45962f1cad
Ruby: make this unique for each method
...
Even when summaries are shared in a single class.
2022-02-04 17:03:55 +00:00
BACK Yonah
34320cb57b
C/C++: Useless Test Fully converted verification
2022-02-04 18:03:29 +01:00
Ian Wright
6c3daf49f9
Merge pull request #7785 from github/z80coder/impose-length-restriction
...
Restrict AST nodes according to string length
2022-02-04 16:35:04 +00:00
Nick Rolfe
7a9ddc28bf
Ruby: address some more feedback on array flow summaries
2022-02-04 16:33:27 +00:00
Henry Mercer
bb1e89d261
Merge pull request #7848 from github/henrymercer/js-ml-powered-codeowners
...
JS: Add codeowners for ML-powered queries
2022-02-04 16:08:56 +00:00
Michael Nebel
6ee30843bb
C#: Add lambda attributes test cases.
2022-02-04 16:54:49 +01:00
Henry Mercer
22ef35e13a
JS: Add codeowners for ML-powered queries
...
Create a new reviewers team @github/codeql-ml-powered-queries-reviewers
for reviewing ML-powered queries and the associated CodeQL libraries.
2022-02-04 15:49:44 +00:00
Ian Wright
be5e8dae05
Update javascript/ql/experimental/adaptivethreatmodeling/lib/experimental/adaptivethreatmodeling/FunctionBodyFeatures.qll
...
Co-authored-by: Henry Mercer <henrymercer@github.com >
2022-02-04 15:41:50 +00:00
Michael Nebel
7b3ba3cb96
C#: Modify database schema to allow lambda expression to be attributable and extract the lambda expression attributes.
2022-02-04 16:34:58 +01:00
Michael Nebel
f412d49ba4
C#: Add some examples lambdas with different kind of attributes and update existing testcases.
2022-02-04 16:34:58 +01:00
Michael Nebel
bb3f9cea3a
C#: Update test cases(s) expected output.
2022-02-04 16:34:58 +01:00
Michael Nebel
7520948ec4
C#: Add test case for finding lambdas with explicit return types.
2022-02-04 16:34:58 +01:00
Michael Nebel
83a5ef4961
C#: Examples of lambda expressions with explicit return types.
2022-02-04 16:34:58 +01:00
Michael Nebel
25019dbaa0
C#: Add support QL library support for lambda explicit return types.
2022-02-04 16:34:58 +01:00
Michael Nebel
eb8c226749
C#: Add support for explicit return types in the extractor.
2022-02-04 16:34:58 +01:00
Michael Nebel
ae62704d3a
C#: Add table for explicit return type in lambda expressions.
2022-02-04 16:34:57 +01:00
Michael Nebel
ccb727e3ca
C#: Test cases that shows that lambdas can be naturally (implicitly) typed and that the type is indistinguishable from the equivalent explicitly typed declaration.
2022-02-04 16:34:57 +01:00
Michael Nebel
a67033034a
C#: Example of naturally typed lambda.
2022-02-04 16:34:57 +01:00
Ian Wright
e57a0e0e2f
Update javascript/ql/experimental/adaptivethreatmodeling/lib/experimental/adaptivethreatmodeling/FunctionBodyFeatures.qll
...
Co-authored-by: Henry Mercer <henrymercer@github.com >
2022-02-04 15:21:56 +00:00
Ian Wright
b38335a6c2
add QL comment; inline a predicate; restore a comment
2022-02-04 15:21:09 +00:00
Nick Rolfe
ed00f2b0d2
Ruby: address some feedback on array flow summaries
2022-02-04 13:40:39 +00:00
Erik Krogh Kristensen
edcb3ba902
add file sources from jszip to js/zip-slip
2022-02-04 14:39:49 +01:00
Tom Hvitved
693aa69abd
Update csharp/ql/consistency-queries/qlpack.yml
2022-02-04 14:38:25 +01:00
yoff
182c62f5c3
Merge pull request #7838 from tausbn/python-fix-charset-performance-problem
...
Python: Fix performance issue in `charSet`
2022-02-04 14:18:13 +01:00
Michael Nebel
567768134f
Merge pull request #7792 from michaelnebel/csharp/attributes
...
C#: Attribute kind and return value attributes.
2022-02-04 14:10:51 +01:00
Taus
67be20f368
Python: Remove implied inequalities
...
Also gets rid of `inner_end`, since we're already doing `end - 1 = ...`
in the other fix (and so this is more consistent).
2022-02-04 12:46:06 +00:00
Benjamin Muskalla
eee03ebe3b
Merge pull request #7767 from bmuskalla/regenerateModelScript
...
Java: Regenerate framework models automatically
2022-02-04 13:29:46 +01:00
Naman Jain
009c95774e
update expected files
2022-02-04 12:28:17 +00:00
Michael Nebel
6487b546dc
C#: Update TargetFramework testcases expected files as well, as these also uses the string representation of the attributes.
2022-02-04 13:05:08 +01:00
Nick Rolfe
161d766ba9
Ruby: address review comments on array_flow.rb
2022-02-04 11:59:59 +00:00
Michael Nebel
ade119f4a8
C#: Add flow test cases for undetected value flow, when making variable bindinds in pattern matching.
2022-02-04 12:57:58 +01:00
Jeroen Ketema
b967eaf25d
Add documentation for parseHex
2022-02-04 12:35:13 +01:00
Rasmus Wriedt Larsen
c817ba5718
Python: Add consistency-queries/qlpack.yml
...
But no queries yet
2022-02-04 12:08:54 +01:00
Rasmus Wriedt Larsen
0bcfc4b657
Ruby: Update consistency-queries/qlpack.yml
...
I'm not sure whether this means the consistency queries were run using
the 0.0.1 release of the `codeql/ruby-all` qlpack, but using `"*"` at
least ensures that it is always using the version from the CodeQL repo.
2022-02-04 12:06:50 +01:00
Rasmus Wriedt Larsen
580d7d9df0
QL: Update consistency-queries/qlpack.yml
2022-02-04 12:06:50 +01:00
Rasmus Wriedt Larsen
1db4bdc607
C#: Update consistency-queries/qlpack.yml
2022-02-04 12:06:50 +01:00
Rasmus Wriedt Larsen
2220d3cc47
Misc: Allow */ql/consistency-queries/qlpack.yml
2022-02-04 12:06:50 +01:00
Rasmus Wriedt Larsen
2e788ea86e
Python: Accept deprecation warnings for old tests
2022-02-04 12:02:09 +01:00
Rasmus Wriedt Larsen
438a01e911
Python: Deprecate old bottle points-to extension
2022-02-04 12:02:09 +01:00
Rasmus Wriedt Larsen
c9e36aaf72
Python: Fix deprecated deprecated
2022-02-04 12:02:09 +01:00
Rasmus Wriedt Larsen
9ec531f040
Python: Add deprecation change-note
2022-02-04 12:02:09 +01:00
Rasmus Wriedt Larsen
84fdd8a739
Python: Add non-deprecated httpVerb to Concepts
2022-02-04 12:02:09 +01:00
Rasmus Wriedt Larsen
5a032d6f84
Python: deprecate old taint-tracking related predicates
2022-02-04 12:02:08 +01:00
Rasmus Wriedt Larsen
dba6b60c80
Python: Deprecate old library modeling
2022-02-04 12:02:08 +01:00
Rasmus Wriedt Larsen
a40fdf7a7c
Python: Deprecate old web modeling
2022-02-04 12:02:08 +01:00
Rasmus Wriedt Larsen
14a1aa0c11
Python: Add change-note
...
I went with `minorAnalysis` instead of `majorAnalysis`, since I don't
think the impact of this change will be major (but that's just my gut
feeling).
2022-02-04 12:00:49 +01:00
Rasmus Wriedt Larsen
b2ce0fcb72
Python: Add post-update nodes to args of unresolved calls
...
Besides solving the problem with `setattr`, it also solved some old
problems with json library modeling (yay).
2022-02-04 11:51:53 +01:00
Michael Nebel
f365477996
C#: Address review comments and update test output.
2022-02-04 11:48:12 +01:00
Benjamin Muskalla
bc5753cb20
Fix path expression
2022-02-04 11:43:18 +01:00
Naman Jain
5e1ca3154f
Update javascript/ql/test/query-tests/Security/CWE-754/UnvalidatedDynamicMethodCallGood3.js
...
Co-authored-by: Erik Krogh Kristensen <erik-krogh@github.com >
2022-02-04 16:13:05 +05:30
Naman Jain
5121414a53
Update javascript/ql/test/query-tests/Security/CWE-754/UnvalidatedDynamicMethodCallGood4.js
...
Co-authored-by: Erik Krogh Kristensen <erik-krogh@github.com >
2022-02-04 16:12:58 +05:30
Rasmus Wriedt Larsen
e9b496ba73
Merge pull request #7831 from RasmusWL/printast-remove-regexp
...
Python: Remove `RegExpTerm` from PrintAST
2022-02-04 11:38:58 +01:00
Asger Feldthaus
0a0d9583b4
Ruby: rephase comment for MkDef
2022-02-04 11:37:54 +01:00
Mathias Vorreiter Pedersen
2e2913b921
Merge pull request #7839 from rdmarsh2/rdmarsh2/ir-initializer-inheritance-fix
...
C++: fix IR generation for constructor base inits when no constructor is present.
2022-02-04 10:32:57 +00:00
Asger Feldthaus
0189e8abb4
Ruby: autoformat
2022-02-04 11:32:31 +01:00
Benjamin Muskalla
fcaead4004
Enable debugging action
2022-02-04 11:29:36 +01:00
Benjamin Muskalla
b747391c74
Improve error handling and refactor base path
2022-02-04 11:26:19 +01:00
Asger Feldthaus
87c62db781
Ruby: disable test line not currently working
2022-02-04 11:20:42 +01:00
Asger Feldthaus
75b72361ce
Ruby: add toString and locations to the new node types
2022-02-04 11:20:42 +01:00
Asger Feldthaus
7373a503f6
Ruby: Populate ArgumentPosition based on keyword arguments
2022-02-04 11:20:42 +01:00
Asger Feldthaus
5e350a0270
Ruby: Derive edge labels from {Argument,Parameter}Position
2022-02-04 11:20:42 +01:00
Asger Feldthaus
040e56623c
Ruby: add getAValueReachingRhs
2022-02-04 11:20:42 +01:00
Asger Feldthaus
17dd5cd581
Ruby: remove a stray TODO
2022-02-04 11:20:42 +01:00
Asger Feldthaus
d2e381aa79
Ruby: more def-node tests
2022-02-04 11:20:41 +01:00
Asger Feldthaus
32e0f42969
Ruby: refactor Return(x) to Method(x).return
2022-02-04 11:20:39 +01:00
Asger Feldthaus
55b5f19b92
Ruby: Add def-nodes to API graphs
2022-02-04 11:06:35 +01:00
Asger Feldthaus
9c17a5ce99
Ruby: replace "instance" label with a call to new
2022-02-04 11:03:25 +01:00
Asger Feldthaus
5858732da1
Ruby: change useStep signature
2022-02-04 11:01:04 +01:00
Asger Feldthaus
e6fdd4d34a
Ruby: Make hasLocalSource private/cached
2022-02-04 11:01:03 +01:00
Asger Feldthaus
9a496e647f
Ruby: Drive-by fix type-tracking through params with default values
2022-02-04 11:01:03 +01:00
Esben Sparre Andreasen
d08c0f7852
Merge pull request #7817 from github/esbena-patch-7
...
Document and format event-stream-orig.js
2022-02-04 10:26:30 +01:00
Jeroen Ketema
9f4e261625
Set precision of cpp/open-call-with-mode-argument to high
2022-02-04 10:01:25 +01:00
Jeroen Ketema
ef2a70e00c
Limit open/openat target to global/std scope
2022-02-04 09:51:10 +01:00
Mathias Vorreiter Pedersen
bc17df55ee
Merge pull request #7830 from MathiasVP/fix-ir-reevaluation-in-return-stack-allocated-memory
...
C++: Fix re-evaluation in `cpp/return-stack-allocated-memory`
2022-02-04 08:32:40 +00:00
Esben Sparre Andreasen
72b5edc144
Document and format event-stream-orig.js
...
Some anti-virus products (rightfully) flag this event-stream-orig.js as a malicious file.
This change does two things:
- neutralises the file such that the code can not be run accidentally
- documents the purpose of the file
2022-02-04 09:27:47 +01:00
Harry Maclean
ab7fd89653
Merge pull request #7663 from github/hmac/api-graph-subclass
...
Ruby: Add basic subclassing support to API Graphs
2022-02-04 10:19:07 +13:00
Harry Maclean
e328c6222a
Merge pull request #7797 from github/hmac/pin-rust
...
Ruby: Pin Rust to 1.54
2022-02-04 10:18:46 +13:00
Taus
22aa4c9379
Python: Fix performance issue in charSet
...
Observed on `mozilla/bugbug` on the 2.8.0 CLI branch, we had the
following line in the timing report:
```
FullServerSideRequestForgery.ql-17:regex::RegexString::charSet_dispred#fff#antijoin_rhs ............... 1m13s
```
Inspecting the logs, we see the following join:
```
(644s) Tuple counts for regex::RegexString::charSet_dispred#fff#antijoin_rhs/5@f295d1bk after 1m13s:
1 ~0% {1} r1 = CONSTANT(unique string)["]"]
2389 ~4% {3} r2 = JOIN r1 WITH regex::RegexString::nonEscapedCharAt_dispred#fff_201#join_rhs ON FIRST 1 OUTPUT Rhs.1 'arg0', Rhs.2 'arg1', (Rhs.2 'arg1' + 1)
668873 ~0% {6} r3 = JOIN r2 WITH regex::RegexString::char_set_start_dispred#fff ON FIRST 1 OUTPUT Lhs.0 'arg0', "]", Lhs.1 'arg1', Lhs.2 'arg2', Rhs.1 'arg3', Rhs.2 'arg4'
537501371 ~4% {7} r4 = JOIN r3 WITH regex::RegexString::nonEscapedCharAt_dispred#fff_021#join_rhs ON FIRST 2 OUTPUT Lhs.0 'arg0', Lhs.2 'arg1', Lhs.3 'arg2', Lhs.4 'arg3', Lhs.5 'arg4', "]", Rhs.2
269085087 ~0% {7} r5 = SELECT r4 ON In.6 > In.4 'arg4'
89583155 ~3% {7} r6 = SELECT r5 ON In.6 < In.1 'arg1'
89583155 ~26634% {5} r7 = SCAN r6 OUTPUT In.0 'arg0', In.1 'arg1', In.2 'arg2', In.3 'arg3', In.4 'arg4'
return r7
```
Now, this is problematic not just because of the large intermediary join
but also because of the large number of tuples being materialised at the
end. The culprit in this case turns out to be this bit of `charSet`:
```
not exists(int mid | this.nonEscapedCharAt(mid) = "]" | mid > inner_start and mid < inner_end)
```
Rewriting this to instead look for the minimum index at which a `]`
appears resulted in a much nicer join.
I also fixed up a similar issue surrounding the `\N` unicode escape.
Not that I think this will necessarily be relevant, but the `min`-based
solution is more robust either way.
2022-02-03 20:42:04 +00:00
Robert Marsh
8544cff1c4
Merge pull request #7836 from geoffw0/clrtxt9
...
C++: Fix more FPs in cpp/cleartext-transmission
2022-02-03 15:18:55 -05:00
Chuan-kai Lin
c8bc5cfa75
Merge pull request #7825 from github/cklin/python-downgrade-scripts
...
Python: adjust downgrade script location and format
2022-02-03 11:40:07 -08:00
Michael Nebel
32756cd442
C#: Update stats after the change in the attributes relation.
2022-02-03 20:00:33 +01:00
Robert Marsh
55cbff7614
C++: fix for constructor init without constructor
2022-02-03 13:44:02 -05:00
Harry Maclean
912842623d
Simplify cache key
2022-02-04 07:41:29 +13:00
Robert Marsh
836c47abb3
C++: test for constructor init without constructor
2022-02-03 13:34:05 -05:00
Geoffrey White
8031c3f699
Merge branch 'main' into clrtxt9
2022-02-03 17:01:59 +00:00
Geoffrey White
02b1774d7f
C++: Switch from GVN to localFlow.
2022-02-03 16:00:26 +00:00
Tom Hvitved
ef227a4721
Merge pull request #7784 from hvitved/csharp/dotnet6
...
C#: Use .NET 6
2022-02-03 16:42:26 +01:00
Geoffrey White
3cfd1b5052
C++: More test cases.
2022-02-03 15:11:59 +00:00
Rasmus Wriedt Larsen
8386b36217
Python: Apply suggestions from code review
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2022-02-03 15:00:04 +01:00
Geoffrey White
3b844f701e
C++:Change note.
2022-02-03 13:58:38 +00:00
Rasmus Wriedt Larsen
5cd08b8e8c
Python: Ignore .isAbsent() from ClassCall
...
This means that DataFlowCall is only for resolvable calls, which might not seem
like a big thing in itself, but enables the next commit to actually work :P
2022-02-03 14:58:30 +01:00
Rasmus Wriedt Larsen
a5c2341204
Python: Add simple test of DataFlowCall
...
Notice the strange thing with treating `mypkg.foo(42)` as a ClassCall,
but completely ignoring `mypkg.subpkg.bar(43)` -- due to having the two
`ClassValue`s:
- `Missing module attribute mypkg.foo`
- `Missing module attribute mypkg.subpkg`
But not `Missing module attribute mypkg.subpkg` with the current import
structure.
2022-02-03 14:58:30 +01:00
Rasmus Wriedt Larsen
48aa07d67a
Python: Handle SyntheticPreUpdateNode in PrintNode
2022-02-03 14:58:30 +01:00
Rasmus Wriedt Larsen
49b5d60229
Python: Use AttrRead/AttrWrite for attr read/store steps
...
Note that this doesn't actually add the desired flow from setattr, due
to missing post-update note. This will be fixed in later commit.
2022-02-03 14:58:30 +01:00
Rasmus Wriedt Larsen
5774459dfb
Python: restrict AttrRead with AttrNode.isLoad()
2022-02-03 14:58:23 +01:00
Rasmus Wriedt Larsen
cf68148316
Python: Add change-note
2022-02-03 14:29:02 +01:00
Rasmus Wriedt Larsen
e2de0e61ca
Python: Remove RegExpTerm from PrintAST
...
Since this caused bad performance (as we had to evaluate points-to).
Fixes https://github.com/github/codeql/issues/6964
This approach was motivated by the comment on the issue from @tausbn:
> We discussed this internally in the CodeQL Python team, and have
> agreed that the best approach for now is to disable the printing of
> regex ASTs.
I tried to keep our RegExpTerm logic, but doing the fix below did not
work, and still evaluated RegExpTerm :| I guess we will just have to
revert this PR if we want it back
```diff
TRegExpTermNode(RegExpTerm term) {
+ none() and
exists(StrConst str | term.getRootTerm() = getParsedRegExp(str) and shouldPrint(str, _))
}
```
2022-02-03 14:22:14 +01:00
Arthur Baars
6525035f0a
Address comments
2022-02-03 13:47:03 +01:00
Erik Krogh Kristensen
e93c46ad31
Merge pull request #7811 from erik-krogh/pyApiIpa
...
Python: refactor API-graph labels to an IPA type
2022-02-03 12:31:39 +01:00
Mathias Vorreiter Pedersen
58993e2dc6
C++: Fix re-evaluation by importing GVN.
2022-02-03 11:16:14 +00:00
Jeroen Ketema
0b9b6d7b98
Address review comments
2022-02-03 12:09:18 +01:00
Erik Krogh Kristensen
5284bbb6b3
Merge pull request #7821 from erik-krogh/upload-sarif
...
QL: upload sarif as part of the QL-for-QL workflow
2022-02-03 12:05:51 +01:00
Jeroen Ketema
4d03082f16
Ensure that O_CREAT and O_TMPFILE are unique
2022-02-03 11:24:20 +01:00
Henry Mercer
224d7a7ce0
Merge pull request #7801 from github/henrymercer/js-atm-migrate-tests
...
JS: Migrate CodeQL tests for ML-powered queries
2022-02-03 10:17:19 +00:00
Ian Wright
dca03d7b5d
reinstate the AST node limit to minimize change to feature values
2022-02-03 09:45:35 +00:00
Ian Wright
d5ab119039
actually count the number of chars
2022-02-03 09:41:51 +00:00
Jeroen Ketema
e1ca5dd120
Simplify text in change note
2022-02-03 10:36:30 +01:00
Naman Jain
9809d30f00
file renaming and updated expected file
2022-02-03 09:35:17 +00:00
Naman Jain
adc8bf37fe
fixed mistake in examples
2022-02-03 09:29:42 +00:00
Jeroen Ketema
5a2ce225f4
Check that all bits are set when checking for a flag
...
The `O_...` macro definitions somtimes set multiple bits, while
the bits individually represent the values of different `O_...`
macros. This lead to false postives on codebases built against
Musl libc, which defines `O_TMPFILE` as `020200000` and
`O_DIRECTORY` as `0200000`.
2022-02-03 10:29:13 +01:00
Tony Torralba
3c9b332ce0
Merge pull request #7826 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-02-03 09:38:53 +01:00
Tom Hvitved
6bb71f051b
Merge pull request #7791 from hvitved/dataflow/inline-local-flow-star
...
Data flow: Inline `local(Expr|Instruction)?(Flow|Taint)`
2022-02-03 09:02:43 +01:00
Harry Maclean
c65ca8ff86
Model calls to constantize as code executions
...
`constantize` is an ActiveSupport extension to `String` that attempts to
look up a constant with a name matching the receiver.
2022-02-03 15:22:07 +13:00
github-actions[bot]
2a9f98cce0
Add changed framework coverage reports
2022-02-03 00:10:33 +00:00
Harry Maclean
704b58519f
Ruby: Include subclasses in more API calls
...
Change the behaviour of `API::getInstance()` and `API::getReturn()` to
include results on subclasses of the current API node.
2022-02-03 11:35:59 +13:00
Chuan-kai Lin
df91ee6616
Python: adjust downgrade script location and format
2022-02-02 14:23:21 -08:00
Harry Maclean
61cd05cfc5
Ruby: Ensure TRoute and TRouteBlock are private
2022-02-03 10:55:28 +13:00
Harry Maclean
80835a5a19
Ruby: Don't expose abstract class
...
Make ActionDispatch::Route into a private class
ActionDispatch::RouteImpl, defining a new class Route which exposes the
necessary public API from RouteImpl.
Also rename getHTTPMethod to getHttpMethod.
2022-02-03 10:41:30 +13:00
Harry Maclean
a8a7c156d0
via - update tests
2022-02-03 10:40:23 +13:00
Erik Krogh Kristensen
7ef051456a
upload sarif as part of the QL-for-QL workflow
2022-02-02 20:32:22 +01:00
Tom Hvitved
7b5699d058
C#: Update CIL attributes test
2022-02-02 19:25:30 +01:00
Tom Hvitved
2fe65128a0
C#: Update CIL type annotations test
2022-02-02 19:25:30 +01:00
Tom Hvitved
c4ad237a5c
C#: Update expected test output
2022-02-02 19:25:30 +01:00
Tom Hvitved
516bd9f77f
C#: Fix deprecation warnings
2022-02-02 19:25:30 +01:00
Tom Hvitved
09c5212ccc
C#: Account for explicit interface implementations in OperatorSymbol
2022-02-02 19:25:30 +01:00
Tom Hvitved
d7eeb1fec8
C#: Use .NET 6
2022-02-02 19:25:30 +01:00
Henry Mercer
2c17437092
JS: Run ML-powered queries tests on all PRs modifying relevant files
2022-02-02 18:11:25 +00:00
Henry Mercer
a586be956e
JS: Remove versions from packs we don't intend to publish
2022-02-02 18:10:57 +00:00
Geoffrey White
708da8cd62
C++: Increase the query precision to 'high'.
2022-02-02 18:03:25 +00:00
Arthur Baars
a22868ba27
Merge branch 'main' into ruby-3.1
2022-02-02 19:00:03 +01:00
Geoffrey White
4048ba0a1c
C++: Fix false positives around terminal output.
2022-02-02 17:59:28 +00:00
Geoffrey White
39a2ffd438
C++: Fix false positives around 'stdin'.
2022-02-02 17:39:14 +00:00
Arthur Baars
6acf49d4da
Merge pull request #7814 from aibaars/fix-ql-alerts
...
Ruby: fix all QL-QL alerts
2022-02-02 18:25:38 +01:00
Jeroen Ketema
aa4651312e
Fix naming conflicts in cpp/world-writable-file-creation
2022-02-02 17:36:14 +01:00
Jeroen Ketema
f32500306a
Address review comments
2022-02-02 17:24:55 +01:00
Geoffrey White
cc20969bdd
C++: Add test cases based on some remaining real world FPs.
2022-02-02 16:15:59 +00:00
Tony Torralba
4f13bf8941
Merge pull request #6492 from atorralba/atorralba/android-cleartext-storage-database
...
Java: Create new query Cleartext storage of sensitive information in Android databases
2022-02-02 16:23:05 +01:00
Tony Torralba
54e8ea56e8
Apply suggestions from code review
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2022-02-02 15:44:26 +01:00
Jeroen Ketema
0773ab37a5
Use matches to check for 0x prefix
2022-02-02 15:26:46 +01:00
Jeroen Ketema
92d9e51d2a
Extract the value of O_CREAT and O_TMPFILE from the defining macro
...
There are operating systems that define `O_CREAT` with a different
value than Linux, which uses `0x40`. For example, OpenBSD uses `0x0200`.
Hence, we cannot use a hardcoded value.
Also handle `O_TMPFILE` while here.
2022-02-02 15:16:26 +01:00
Mathias Vorreiter Pedersen
1aa32b09be
Merge pull request #7802 from geoffw0/clrtxt8
...
C++: Recognize password struct fields.
2022-02-02 14:10:40 +00:00
Naman Jain
aea7054938
modified query and added tests
2022-02-02 19:39:08 +05:30
Henry Mercer
7018f6ad40
JS: Add missing @id for endpoint types query
2022-02-02 13:15:15 +00:00
Henry Mercer
e6745dc63a
JS: Add Action to run tests for ML-powered queries
2022-02-02 13:15:12 +00:00
Henry Mercer
422919b9d0
JS: Add generated files to .gitattributes
2022-02-02 13:15:04 +00:00
Henry Mercer
fbcb8d6857
JS: Migrate CodeQL tests for ML-powered queries
2022-02-02 13:15:04 +00:00
Arthur Baars
3b05cb621c
Address comment
2022-02-02 14:11:45 +01:00
Arthur Baars
33b97f3e0c
Update synchronized files
2022-02-02 13:30:45 +01:00
Arthur Baars
fdcef6225b
Ruby: fix QL warnings
2022-02-02 13:29:09 +01:00
CodeQL CI
7bb11b837c
Merge pull request #7788 from yoff/python/remove-library-annotation
...
Approved by tausbn
2022-02-02 03:51:00 -08:00
Rasmus Wriedt Larsen
fb6b8eb394
Python: Add simple test of AttrRead/AttrWrite
2022-02-02 11:19:35 +01:00
Rasmus Wriedt Larsen
51bc6dcf7e
Python: Add attributeClearStep
2022-02-02 11:19:35 +01:00
Rasmus Wriedt Larsen
d2b72a7547
Python: Expand fieldflow tests
2022-02-02 11:19:31 +01:00
Tom Hvitved
712418e5f8
Merge pull request #7781 from hvitved/dataflow/summary-stack-bottom-less-nonlinear
...
Data flow: Reduce non-linear recursion in `SummaryComponentStack::bottom`
2022-02-02 10:35:53 +01:00
Benjamin Muskalla
d4c4e75bac
Merge pull request #7268 from bmuskalla/modelDiffAction
...
Java: Produce diffs for model generator changes
2022-02-02 10:30:45 +01:00
Jeroen Ketema
bd859d99bf
Address review comments
2022-02-02 10:09:47 +01:00
Jeroen Ketema
5b8f56dcc6
Add change notes
2022-02-02 10:07:38 +01:00
Michael Nebel
860ded2806
C#: Added change note for return value attributes.
2022-02-02 09:59:09 +01:00
Michael Nebel
62d987f31f
C#: Add upgrade and downgrade scripts.
2022-02-02 09:53:29 +01:00
Rasmus Lerchedahl Petersen
4ad99d9299
python: add missing QlDoc
2022-02-02 09:14:21 +01:00
Rasmus Lerchedahl Petersen
448e0785c2
python: logging.root is not a call
2022-02-02 09:04:16 +01:00
Harry Maclean
5adcdf1cf8
Ruby: Minor refactor
2022-02-02 17:32:11 +13:00
Harry Maclean
8f5380122a
Ruby: Cache ActionDispatch IPA types
2022-02-02 17:31:47 +13:00
Harry Maclean
749dc092ae
Ruby: Attempt to mitigate potential bad join
...
By joining simultaneously on controller class and name.
2022-02-02 17:03:46 +13:00
Harry Maclean
a38bc9fe89
Ruby Fix handling of via: in ActionDispatch
2022-02-02 17:03:27 +13:00
Harry Maclean
856c3d332c
Minor cleanup to ActionDispatch modelling
...
`x.isStringOrSymbol(result)` is slightly terser than
`result = x.getStringOrSymbol()`.
2022-02-02 16:26:20 +13:00
Harry Maclean
47823b5a9a
Handle via: :all in Rails routes
...
ActionDispatch modelling now understands that
match "/foo", to: "foo#bar", via: :all
is equivalent to
match "/foo",
to: "foo#bar",
via: [:get, :post, :put, :patch, :delete]
2022-02-02 16:26:20 +13:00
Harry Maclean
8bdc05ddaf
getValueText -> getConstantValue
2022-02-02 16:26:20 +13:00
Harry Maclean
417287153b
Ruby: QL style fixes
2022-02-02 16:26:20 +13:00
Harry Maclean
e975f92091
Ruby: remove unused predicate
2022-02-02 16:26:20 +13:00
Harry Maclean
3786fbfc7d
Ruby: Rewrite ActionDispatch::underscore
...
This version is much shorter and hopefully performs a bit better.
2022-02-02 16:26:20 +13:00
Harry Maclean
eff2136f52
Ruby: remove unused predicate
2022-02-02 16:26:20 +13:00
Harry Maclean
dead7a8059
Ruby: Make most of ActionDispatch private
...
Any classes/predicates not used externally or in tests are now private.
Also fix some typos.
2022-02-02 16:26:20 +13:00
Harry Maclean
fa28e55645
Add a test for ActionDispatch::underscore
...
This shows how the predicate behaves, as well as a case where it goes
wrong.
2022-02-02 16:26:20 +13:00
Harry Maclean
9c67869875
Remove ActionDispatch::capitalize
...
This predicate isn't used.
2022-02-02 16:26:20 +13:00
Harry Maclean
ad71fdbb24
Add missing documentation to ActionDispatch::Route
2022-02-02 16:26:20 +13:00
Harry Maclean
1766916fc5
Ruby: Document ActionDispatch modelling
2022-02-02 16:26:20 +13:00
Harry Maclean
314683d5fb
Ruby: Improve UrlRedirect query using Rails routes
...
Handlers for non-GET requests aren't vulnerable to URL redirect attacks,
because browsers won't initiate non-GET requests when you click a link.
We can use Rails routing information, if present, to filter out any
handlers for non-GET requests.
2022-02-02 16:26:20 +13:00
Harry Maclean
751d8a7f59
Ruby: Document getACapture
2022-02-02 16:26:20 +13:00
Harry Maclean
870c6d7412
Ruby: Rails route resolution
...
Add `Route` classes which model Rails routing information, typically
defined in a `routes.rb` file. We extract only the most basic
information: HTTP method, path, controller and action. This is enough to
determine whether a given controller method is a route handler, and what
HTTP method it handles, which is useful for, among other things, the URL
redirect query.
2022-02-02 16:26:19 +13:00
Henry Mercer
e622e517d9
Merge pull request #7800 from github/henrymercer/js-atm-add-model-building-pack
...
JS: Add model building pack for ML-powered queries
2022-02-01 20:51:19 +00:00
Harry Maclean
ce0354acb3
Include rust-toolchain.toml in Ruby cache keys
...
This ensures that if we change our Rust version, the caches will be
invalidated.
2022-02-02 08:08:11 +13:00
Harry Maclean
9c32ab7122
rust-toolchain -> rust-toolchain.toml
2022-02-02 08:05:46 +13:00
Harry Maclean
613ecbb418
Ruby: Pin Rust to 1.54
...
Add a rust-toolchain file to the Ruby directory, which instructs Rustup
to install a specific version of Rust (1.54). This will be used in CI,
so any use of language features or dependencies that don't support 1.54
will result in a CI failure.
This should ensure we have a documented minimum supported rust version
and an easy to way to update it in the future (update the rust-toolchain
file).
2022-02-02 08:05:46 +13:00
Geoffrey White
d864af3622
C++: Change note.
2022-02-01 19:00:40 +00:00
Harry Maclean
fb00a6c61b
Merge pull request #7666 from github/hmac/file-open-access
...
Ruby: Add File.open as a FileSystemAccess
2022-02-02 07:32:16 +13:00
liangjinhuang
1dd15fa235
style:auto format
2022-02-02 01:30:54 +08:00
liangjinhuang
976e484c57
style:move all source files under src/experimental & feat:modify source regular matching rules
2022-02-02 01:14:51 +08:00
Henry Mercer
14601316a5
JS: Autoformat
2022-02-01 17:08:21 +00:00
Rasmus Wriedt Larsen
f6215f2300
Python: Refactor field-flow test
2022-02-01 17:59:03 +01:00
Rasmus Wriedt Larsen
cc4fe38fbd
Python: Delete dedicated argumentRouting<N> tests
...
I feel like they don't bring any value anymore, since we have the nice
inline expectation tests. If I'm wrong, happy to revert this commit
though.
2022-02-01 17:51:33 +01:00
Rasmus Wriedt Larsen
54f53c828e
Python: Refactor argumentRoutingTest.ql to be more generic
...
I checked to see that the tests still works. If I deleted the `arg5`
annotation, it got failures:
```diff
diff --git a/python/ql/test/experimental/dataflow/coverage/argumentPassing.py b/python/ql/test/experimental/dataflow/coverage/argumentPassing.py
index e218bdde9b..71816c1e01 100644
--- a/python/ql/test/experimental/dataflow/coverage/argumentPassing.py
+++ b/python/ql/test/experimental/dataflow/coverage/argumentPassing.py
@@ -46,7 +46,7 @@ def argument_passing(
c,
d=arg4, #$ arg4 func=argument_passing
*,
- e=arg5, #$ arg5 func=argument_passing
+ e=arg5,
f,
**g,
):
diff --git a/python/ql/test/experimental/dataflow/coverage/argumentRoutingTest.expected b/python/ql/test/experimental/dataflow/coverage/argumentRoutingTest.expected
index e69de29bb2..22037a40c3 100644
--- a/python/ql/test/experimental/dataflow/coverage/argumentRoutingTest.expected
+++ b/python/ql/test/experimental/dataflow/coverage/argumentRoutingTest.expected
@@ -0,0 +1,2 @@
+| argumentPassing.py:49:7:49:10 | ControlFlowNode for arg5 | Unexpected result: arg5= |
+| argumentPassing.py:49:7:49:10 | ControlFlowNode for arg5 | Unexpected result: func=argument_passing |
```
2022-02-01 17:50:06 +01:00
Rasmus Wriedt Larsen
76f3d74fed
Python: Remove extra whitespace from argumentPassing.py
2022-02-01 17:48:16 +01:00
Rasmus Wriedt Larsen
5ee755db09
Python: Require MISSING: flow annotations for normal data-flow tests
...
I had to rewrite the SINK1-SINK7 definitions, since this new requirement
complained that we had to add this `MISSING: flow` annotation :D
Doing this implementation also revealed that there was a bug, since I
did not compare files when checking for these `MISSING:` annotations. So
fixed that up in the implementation for inline taint tests as well.
(extra whitespace in argumentPassing.py to avoid changing line numbers
for other tests)
2022-02-01 17:46:53 +01:00
Erik Krogh Kristensen
e06f6529f1
refactor API-graph labels to an IPA type
2022-02-01 17:32:08 +01:00
Rasmus Wriedt Larsen
2bc4a60496
Python: Unify normal dataflow test setup
...
I went with NormalDataflowTest to signify that if you don't know what
you're looking for, this is probably the one. I did not want to just
call it DataflowTest, since that becomes a big vague when there are also
`FlowTest.qll` and `MaximalFlowTest.qll` -- I'm open to renaming this
though 👍
2022-02-01 17:31:31 +01:00
Rasmus Wriedt Larsen
41319607a9
Python: Use InlineExpectationsTest for field-flow tests
...
I deleted the old tests, so it's very clear what tests to look for
2022-02-01 17:31:31 +01:00
Rasmus Wriedt Larsen
d6f415bae2
Python: Run match tests if Python 3.10 or newer
...
Also fixes a bug in the tests
2022-02-01 17:31:31 +01:00
liangjinhuang
1885b683f7
style:formatDocument
2022-02-02 00:21:26 +08:00
liangjinhuang
af2e8ff8c6
feat:modify source regular matching rules
2022-02-02 00:10:15 +08:00
Henry Mercer
368839edfc
JS: Fix QLDoc style in ExtractMisclassifiedEndpointFeatures.ql
2022-02-01 15:39:15 +00:00
Arthur Baars
ea901adb3c
Merge pull request #7799 from github/aibaars/fix-ruby-workflows
...
Ruby: use ruby specific cache key
2022-02-01 16:28:14 +01:00
Henry Mercer
db0b4fc463
JS: Add model building pack for ML-powered queries
...
Tests are currently still internal. They will be migrated to
`github/codeql` in a subsequent PR.
2022-02-01 15:03:26 +00:00
Arthur Baars
73d60550ce
QL-QL: fix cache keys
2022-02-01 15:57:59 +01:00
Erik Krogh Kristensen
0f85a52f09
Merge pull request #7773 from erik-krogh/CWE-367
...
JS: add a js/file-system-race query
2022-02-01 15:36:13 +01:00
Rasmus Wriedt Larsen
a4bb0cc5d8
Python: Run tests for fieldflow/test.py
2022-02-01 15:32:07 +01:00
Rasmus Wriedt Larsen
1390f034f3
Python: Delete duplicated tests
...
All the same tests are present in `fieldflow/test.py`
2022-02-01 15:31:30 +01:00
Arthur Baars
6451a71a78
Ruby: use ruby specific cache key
2022-02-01 15:18:09 +01:00
Rasmus Wriedt Larsen
1394b38032
Python: Improve customSanitizer tests
...
Before we didn't show how we treated the value _after_ the check. But we
do actually handle this nicely 💪
2022-02-01 15:09:29 +01:00
Mathias Vorreiter Pedersen
3597d80340
Merge pull request #7787 from Yonah125/main
...
C/C++ : Useless test
2022-02-01 14:01:27 +00:00
Jeroen Ketema
ff1c971100
Add query for missing mode argument in open/openat calls
2022-02-01 14:52:22 +01:00
Rasmus Lerchedahl Petersen
1e2428cb6b
python: create LDAP module in Concepts
2022-02-01 14:39:58 +01:00
Nick Rolfe
5828a61fec
Merge pull request #7795 from github/nickrolfe/graph_test_edge_ordering
...
Ruby/C#: add semmle.order attribute to edges in CFG tests
2022-02-01 13:36:15 +00:00
Rasmus Lerchedahl Petersen
c2cd58edc4
python: rewrite to separate configurations
...
source nodes get duplicated, so perhaps flow states
are actually better for performance?
2022-02-01 14:36:11 +01:00
Erik Krogh Kristensen
a51f892a99
move dot in qhelp
...
Co-authored-by: Esben Sparre Andreasen <esbena@github.com >
2022-02-01 14:34:30 +01:00
Michael Nebel
2c6e35f55e
C#: Add more attribute testcases.
2022-02-01 14:06:45 +01:00
Rasmus Lerchedahl Petersen
7df5c70c6f
python: update frameworks.rst
2022-02-01 13:54:34 +01:00
Rasmus Lerchedahl Petersen
bec8c0daea
python: update change note
2022-02-01 13:39:03 +01:00
Rasmus Lerchedahl Petersen
c587084758
python: use standard InstanceSource construction
2022-02-01 13:31:16 +01:00
Michael Nebel
31a70a17a4
C#: Add attribute tests for delegate types.
2022-02-01 13:29:26 +01:00
Michael Nebel
8ee27be908
C#: Small change in the attribute elements test. We now require that the attribute should be in source code and not the attributable.
2022-02-01 13:29:26 +01:00
Michael Nebel
7d1d2e792c
C#: Add specialized ql classes for each attribute kind and update AST printing.
2022-02-01 13:29:26 +01:00
Michael Nebel
5a6667efc5
C#: Update attribute test cases.
2022-02-01 13:29:26 +01:00
Michael Nebel
c94cdfa79a
C#: Update the extractor to include the kind of the extracted attributes. Furthermore, include method return attributes.
2022-02-01 13:29:26 +01:00
Michael Nebel
e86ac73628
C#: Add attribute kind to the dbscheme for the attribute relation.
2022-02-01 13:29:26 +01:00
Erik Krogh Kristensen
e6c90670e6
Merge pull request #7740 from erik-krogh/CWE-347
...
JS: promote the js/jwt-missing-verification query out of experimental
2022-02-01 13:10:35 +01:00
museljh
012434b152
Update python/ql/src/experimental/Security/CWE-338/InsecureRandomness.ql
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-01 19:00:06 +08:00
museljh
a6002186bd
Update python/ql/src/experimental/Security/CWE-338/InsecureRandomness.ql
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-01 18:59:12 +08:00
Jeroen Ketema
dbac927721
Take into account that the 4th argument of openat may be omitted
...
This matches what is done for `open`.
2022-02-01 11:41:07 +01:00
Rasmus Wriedt Larsen
f7a0b17ed6
Merge pull request #7687 from yoff/python/PathInjection-FlowState
...
python: Rewrite path injection query to use flow state
2022-02-01 11:33:37 +01:00
yoff
b120721942
Update python/ql/src/Security/CWE-090/LdapInjection.ql
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-01 11:02:47 +01:00
Rasmus Lerchedahl Petersen
119a7e4f34
python: provide links for Flask
2022-02-01 10:55:45 +01:00
Rasmus Lerchedahl Petersen
ecea392a08
python: rewrite qhelp overview
...
(combining the Java version and the JS version)
2022-02-01 10:47:18 +01:00
Rasmus Lerchedahl Petersen
26befebfc2
python: drop precision and add severity score
...
Given both the original FP score and our concerns
regarding sanitizers, `@precision medium`, which
is aligned with other languages, feels appropriate.
2022-02-01 10:34:36 +01:00
Rasmus Lerchedahl Petersen
7511b33512
python: "command" -> "log"
2022-02-01 10:23:16 +01:00
yoff
45f0bfd8f0
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-01 10:06:37 +01:00
yoff
c03f89d712
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2022-02-01 10:04:26 +01:00
Mathias Vorreiter Pedersen
a59a9ba82b
C++: Autoformat.
2022-02-01 08:28:53 +00:00
yoff
8df04c58e9
Merge pull request #7793 from tausbn/python-fix-bad-TPythonTuple-join-order
...
Python: Fix bad join order in `TPythonTuple`
2022-01-31 22:39:58 +01:00
Harry Maclean
e5b7478028
Merge pull request #7780 from github/hmac/split-tests
...
Ruby: Split up CI jobs
2022-02-01 09:10:01 +13:00
Nick Rolfe
990e07b986
Ruby/C#: add semmle.order attribute to edges in CFG tests
2022-01-31 20:08:24 +00:00
BACK Yonah
46c1744204
C/C++: getFullyConverted replaced by getConversion*
2022-01-31 18:51:18 +01:00
Taus
4a29095e3b
Python: Fix bad join order in TPythonTuple
...
TL;DR: Something introduced the following bad join order:
```
(227s) Tuple counts for dom#TObject::TPythonTuple#ff/2@i2#8f58670w after 3m46s:
25000 ~0% {2} r1 = SCAN PointsToContext::PointsToContext::appliesToScope_dispred#ff#prev_delta OUTPUT In.1, In.0 'context'
24000 ~1% {2} r2 = JOIN r1 WITH @py_scope#f ON FIRST 1 OUTPUT Lhs.1 'context', Lhs.0
1076876712 ~6% {3} r3 = JOIN r2 WITH Flow::TupleNode#class#f CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0 'context', Lhs.1
870129666 ~0% {3} r4 = JOIN r3 WITH Flow::ControlFlowNode::isLoad_dispred#f ON FIRST 1 OUTPUT Lhs.1 'context', Lhs.2, Lhs.0 'origin'
870129000 ~0% {3} r5 = r4 AND NOT dom#TObject::TPythonTuple#ff#prev(Lhs.2 'origin', Lhs.0 'context')
870129000 ~1% {3} r6 = SCAN r5 OUTPUT In.2 'origin', In.1, In.0 'context'
9000 ~0% {2} r7 = JOIN r6 WITH Flow::ControlFlowNode::getScope_dispred#ff ON FIRST 2 OUTPUT Lhs.0 'origin', Lhs.2 'context'
return r7
```
(...the above being the tuple counts _at the point when I cancelled the
query_!)
Rewriting the code to force a join between `TupleNode#class` and
`getScope` results in the following join orders:
```
(0s) Tuple counts for TObject::scope_loads_tuplenode#ff/2@b3cf0bo5 after 13ms:
37369 ~3% {1} r1 = JOIN Flow::TupleNode#class#f WITH Flow::ControlFlowNode::isLoad_dispred#f ON FIRST 1 OUTPUT Lhs.0 'origin'
37369 ~3% {2} r2 = JOIN r1 WITH Flow::ControlFlowNode::getScope_dispred#ff ON FIRST 1 OUTPUT Rhs.1 's', Lhs.0 'origin'
return r2
```
and
```
(78s) Tuple counts for dom#TObject::TPythonTuple#ff/2@i53#121c440w after 6ms:
34736 ~3% {2} r1 = SCAN PointsToContext::PointsToContext::appliesToScope_dispred#ff#prev_delta OUTPUT In.1, In.0 'context'
7370 ~5% {2} r2 = JOIN r1 WITH TObject::scope_loads_tuplenode#ff ON FIRST 1 OUTPUT Lhs.1 'context', Rhs.1 'origin'
7370 ~5% {2} r3 = r2 AND NOT dom#TObject::TPythonTuple#ff#prev(Lhs.1 'origin', Lhs.0 'context')
7370 ~1% {2} r4 = SCAN r3 OUTPUT In.1 'origin', In.0 'context'
return r4
```
the latter being the largest iteration of `dom#TPythonTuple` throughout
the log.
No other major performance issues were observed.
2022-01-31 16:59:50 +00:00
BACK Yonah
56941dba6b
C/C++ : Fixed select issue in Useless Test
2022-01-31 16:56:12 +01:00
BACK Yonah
ca2ff6f9fb
C/C++: Fixing minor issues in Useless Test query
2022-01-31 16:04:56 +01:00
Tom Hvitved
5503abc73d
Merge pull request #7772 from hvitved/csharp/event-accessor-event-null
...
C#: Guard against `AssociatedSymbol` not being an `IEventSymbol`
2022-01-31 14:52:02 +01:00
Tom Hvitved
f2352d8272
Data flow: Inline local(Expr|Instruction)?(Flow|Taint)
...
Computing a full transitive closure is often bad; by inlining all calls we are
providing more context to the QL optimizer.
2022-01-31 14:33:41 +01:00
Ian Wright
83ecc065ab
restrict size of strings
2022-01-31 12:28:46 +00:00
Michael Nebel
56ac99039f
Merge pull request #7720 from michaelnebel/csharp/extended-prop-patterns
...
C#: Desugar property patterns that uses member access syntax.
2022-01-31 13:24:24 +01:00
Erik Krogh Kristensen
8dcec2e037
apply suggestions from doc review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-01-31 13:17:26 +01:00
Erik Krogh Kristensen
ec1a8cc826
apply suggestions from doc review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-01-31 12:32:12 +01:00
Tom Hvitved
2354281721
C#: Add DB down/upgrade scripts
2022-01-31 11:46:10 +01:00
Tom Hvitved
32e58add7b
C#: Extend compiler_generated to include event accessors
2022-01-31 11:45:23 +01:00
Rasmus Lerchedahl Petersen
9d416664a1
python: modern change note
...
I set the category to newQuery since that is what users will see.
When we have tags, it would be nice to tag it as a query promotion.
2022-01-31 11:27:55 +01:00
Rasmus Lerchedahl Petersen
bf1145ece0
python: Add change note
...
should we have the `lgtm,codescanning` handshake or not?
2022-01-31 11:27:55 +01:00
Rasmus Lerchedahl Petersen
8b5114d10e
python: Add standard customization setup
...
- modernize the sanitizer, but do not make it less specific
2022-01-31 11:27:55 +01:00
Rasmus Lerchedahl Petersen
20d54543fd
python: move log injection out of experimental
...
- move from custom concept `LogOutput` to standard concept `Logging`
- remove `Log.qll` from experimental frameworks
- fold models into standard models (naively for now)
- stdlib:
- make Logger module public
- broaden definition of instance
- add `extra` keyword as possible source
- flak: add app.logger as logger instance
- django: `add django.utils.log.request_logger` as logger instance
(should we add the rest?)
- remove LogOutput from experimental concepts
2022-01-31 11:27:55 +01:00
Rasmus Lerchedahl Petersen
211345c010
python: remove more annotations
2022-01-31 11:20:59 +01:00
Michael Nebel
7cbeffc8a7
C#: Refactor and use new language features.
2022-01-31 09:24:31 +01:00
Rasmus Lerchedahl Petersen
cac3862659
python: remove library annotation
...
to clean up QL warnings.
Should put these in a private module instead?
2022-01-31 08:50:37 +01:00
Rasmus Lerchedahl Petersen
0c3bce1415
python: deprecation
...
I am slightly concerned that the test now generates many more
intermediate results. I suppose that maes the analysis heavy.
Should the new library get a new name instead, so the old code
does not get evaluated?
2022-01-31 08:32:24 +01:00
BACK Yonah
d7313f3a82
C/C++ : Useless test
2022-01-30 14:33:32 +01:00
Mathias Vorreiter Pedersen
bb2feda8fb
Merge pull request #7703 from geoffw0/getslocal
2022-01-28 19:35:15 +00:00
Geoffrey White
8a1b49f816
C++: Recognize password struct fields.
2022-01-28 19:10:46 +00:00
Arthur Baars
abf3ce6223
Ruby: expressions in pin operator ^
2022-01-28 19:47:31 +01:00
Arthur Baars
00fb4d3776
Ruby: Values in Hash literals and keyword arguments can be omitted
2022-01-28 19:47:31 +01:00
Arthur Baars
3e2ca61c01
Ruby: support anonymous block parameters/arguments
2022-01-28 19:47:31 +01:00
Arthur Baars
b9258e78ca
Ruby: non-local variables in variable reference pattern
2022-01-28 19:47:31 +01:00
Arthur Baars
966b8be5f9
Ruby: add downgrade scripts
2022-01-28 19:47:31 +01:00
Arthur Baars
e5eb01ca45
Ruby: add upgrade scripts
2022-01-28 19:47:31 +01:00
Arthur Baars
c85012460a
Ruby: update dbscheme stats
2022-01-28 19:47:31 +01:00
Arthur Baars
c6a36a50c2
Ruby: regenerate dbscheme and library
2022-01-28 19:47:31 +01:00
Arthur Baars
bfbc9fe144
Ruby: update tree-sitter-ruby
2022-01-28 19:47:25 +01:00
Alex Ford
57e958c372
Ruby: missing QLDoc
2022-01-28 17:38:55 +00:00
Alex Ford
269722fa86
Ruby: rb/clear-text-logging-sensitive-data changenote
2022-01-28 17:27:05 +00:00
Alex Ford
7fec2d270b
Ruby: QL format
2022-01-28 17:24:56 +00:00
Alex Ford
186623f878
Ruby: Add CleartextLogging.qhelp
2022-01-28 17:24:56 +00:00
Alex Ford
7ed447842f
Ruby: cleartext logging test output
2022-01-28 17:24:56 +00:00
Alex Ford
4fc9128350
Ruby: cleartext logging - remove an unnecessary abstract class
2022-01-28 17:24:56 +00:00
Alex Ford
91ccd307e8
Ruby: Implement rb/clear-text-logging-sensitive-data
2022-01-28 17:24:56 +00:00
Mathias Vorreiter Pedersen
0f239e315c
Merge pull request #7782 from geoffw0/clrtxt7
...
C++: Fix FPs for cpp/cleartext-storage-file
2022-01-28 17:24:05 +00:00
Geoffrey White
0396a84c3c
C++: Remove empty predicate / extends.
2022-01-28 17:11:38 +00:00
Alex Ford
cfb2d7ffaf
Ruby: add shared SensitiveDataHeuristics.qll
2022-01-28 16:38:58 +00:00
Geoffrey White
af09dd8af1
C++: Fixes to gets models.
2022-01-28 16:04:23 +00:00
Geoffrey White
036e1495b8
Merge branch 'main' into getslocal
2022-01-28 15:58:13 +00:00
Ian Wright
aceeb7324c
restrict AST nodes according to string length
2022-01-28 15:06:10 +00:00
Rasmus Lerchedahl Petersen
68d18ead34
python: add change note
2022-01-28 14:00:07 +01:00
Geoffrey White
a695f02af4
C++: Add change note.
2022-01-28 12:38:27 +00:00
Tom Hvitved
82cceb0a29
C#: Mark event accessors without bodies as compiler generated
2022-01-28 13:11:34 +01:00
Tom Hvitved
682163962a
Data flow: Sync files
2022-01-28 13:01:24 +01:00
Tom Hvitved
4bf07825a1
Data flow: Reduce non-linear recursion in SummaryComponentStack::bottom
...
Before:
```
[2022-01-28 09:45:34] (449s) Tuple counts for FlowSummaryImpl::Public::SummaryComponentStack::bottom_dispred#ff/2@i23#25a5eew4 after 432ms:
0 ~0% {2} r1 = SCAN FlowSummaryImpl::Public::SummaryComponentStack::length#ff#prev_delta OUTPUT In.0 'this', (In.1 - 1)
0 ~0% {2} r2 = JOIN r1 WITH FlowSummaryImpl::Public::SummaryComponentStack::drop#fff#prev ON FIRST 2 OUTPUT Rhs.2, Lhs.0 'this'
0 ~0% {2} r3 = JOIN r2 WITH FlowSummaryImpl::Public::SummaryComponentStack::head_dispred#ff#prev ON FIRST 1 OUTPUT Lhs.1 'this', Rhs.1 'result'
4171589 ~5% {2} r4 = SCAN FlowSummaryImpl::Public::SummaryComponentStack::length#ff#prev OUTPUT In.0 'this', (In.1 - 1)
4171589 ~0% {2} r5 = JOIN r4 WITH FlowSummaryImpl::Public::SummaryComponentStack::drop#fff#prev ON FIRST 2 OUTPUT Rhs.2, Lhs.0 'this'
0 ~0% {2} r6 = JOIN r5 WITH FlowSummaryImpl::Public::SummaryComponentStack::head_dispred#ff#prev_delta ON FIRST 1 OUTPUT Lhs.1 'this', Rhs.1 'result'
62238 ~0% {3} r7 = SCAN FlowSummaryImpl::Public::SummaryComponentStack::drop#fff#prev_delta OUTPUT In.2, In.0 'this', In.1
62238 ~8% {3} r8 = JOIN r7 WITH FlowSummaryImpl::Public::SummaryComponentStack::head_dispred#ff#prev ON FIRST 1 OUTPUT Lhs.1 'this', Lhs.2, Rhs.1 'result'
62238 ~5% {5} r9 = JOIN r8 WITH FlowSummaryImpl::Public::SummaryComponentStack::length#ff#prev ON FIRST 1 OUTPUT Lhs.0 'this', Lhs.1, Lhs.2 'result', Rhs.1, (Rhs.1 - 1)
10373 ~6% {5} r10 = SELECT r9 ON In.4 = In.1
10373 ~0% {2} r11 = SCAN r10 OUTPUT In.0 'this', In.2 'result'
10373 ~0% {2} r12 = r6 UNION r11
10373 ~0% {2} r13 = r3 UNION r12
10373 ~0% {2} r14 = r13 AND NOT FlowSummaryImpl::Public::SummaryComponentStack::bottom_dispred#ff#prev(Lhs.0 'this', Lhs.1 'result')
return r14
```
After:
```
[2022-01-28 09:52:48] (6s) Tuple counts for FlowSummaryImpl::Public::SummaryComponentStack::bottom#ff/2@i21#6243afwv after 5ms:
0 ~0% {2} r1 = JOIN FlowSummaryImpl::Public::SummaryComponentStack::bottom#ff#prev_delta WITH FlowSummaryImpl::Private::TConsSummaryComponentStack#fff#reorder_1_0_2#prev ON FIRST 1 OUTPUT Lhs.1 'result', Rhs.2 'this'
10373 ~3% {2} r2 = SCAN FlowSummaryImpl::Private::TConsSummaryComponentStack#fff#prev_delta OUTPUT In.1, In.2 'this'
10373 ~2% {2} r3 = JOIN r2 WITH FlowSummaryImpl::Public::SummaryComponentStack::bottom#ff#prev ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.1 'this'
10373 ~2% {2} r4 = r1 UNION r3
10373 ~2% {2} r5 = r4 AND NOT FlowSummaryImpl::Public::SummaryComponentStack::bottom#ff#prev(Lhs.1 'this', Lhs.0 'result')
10373 ~0% {2} r6 = SCAN r5 OUTPUT In.1 'this', In.0 'result'
return r6
```
2022-01-28 13:00:04 +01:00
Geoffrey White
b73dc98191
C++: Exclude write to stdout etc.
2022-01-28 11:57:31 +00:00
Tom Hvitved
864b61a804
Merge pull request #7766 from hvitved/csharp/extractor/type-param-constraints
...
C#: Make `TypeParameterConstraints` a `CachedEntity`
2022-01-28 12:39:31 +01:00
Tom Hvitved
28702dff82
Merge pull request #7779 from hvitved/csharp/initial-downgrade-scheme
...
C#: Add initial downgrade DB scheme for use in tests
2022-01-28 12:38:07 +01:00
Nick Rolfe
8248a942ce
Ruby: enable taint checking for array-flow test
2022-01-28 11:33:59 +00:00
Nick Rolfe
c0e1384f4a
Ruby: move Array/Enumerable flow summaries to their own file
2022-01-28 11:33:59 +00:00
Nick Rolfe
6c0eb8beee
Ruby: update array flow summaries to use getConstantValue()
2022-01-28 11:33:59 +00:00
Nick Rolfe
693ff6a904
Ruby: add flow summaries for remaining Array methods
2022-01-28 11:33:59 +00:00
Nick Rolfe
030cfa36da
Ruby: add flow summaries for all remaining Enumerable methods
2022-01-28 11:33:59 +00:00
Erik Krogh Kristensen
7b925604df
update expected output
2022-01-28 12:21:33 +01:00
Nick Rolfe
588e60e230
Merge pull request #7775 from github/nickrolfe/graph_test_ordering
...
Ruby/C#: more stable graph test ordering
2022-01-28 11:16:02 +00:00
Erik Krogh Kristensen
7aa59ca233
Merge pull request #7633 from erik-krogh/CWE-300
...
JS: add js/http-dependency query
2022-01-28 12:10:14 +01:00
Taus
47a57e0c0a
Merge pull request #7635 from github/python/support-match
...
Python/support match
2022-01-28 11:55:46 +01:00
yoff
74d57bbb1a
Update python/ql/lib/semmle/python/dataflow/new/internal/DataFlowPrivate.qll
...
Co-authored-by: Taus <tausbn@github.com >
2022-01-28 11:38:29 +01:00
Arthur Baars
cada7ef1a4
Ruby: add downgrade scripts to prepare-db-upgrade.sh
2022-01-28 11:07:56 +01:00
Rasmus Lerchedahl Petersen
ab43f041c3
python: rename files
2022-01-28 11:00:17 +01:00
Erik Krogh Kristensen
b5198bdaca
apply suggestions from doc review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2022-01-28 10:46:27 +01:00
Erik Krogh Kristensen
bf9bcc9600
add a js/file-system-race query
2022-01-28 09:41:12 +01:00
Erik Krogh Kristensen
179c26da9a
apply suggestions from review
2022-01-28 09:37:46 +01:00
Tony Torralba
f3e034b2be
Merge pull request #7764 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2022-01-28 09:35:54 +01:00
Harry Maclean
0428b8ee20
Split Ruby CI into multiple parallel jobs
...
Run format, compile and db upgrade checks in parallel, along with the
main tests, which run in two parallel halves.
2022-01-28 21:23:34 +13:00
Rasmus Lerchedahl Petersen
4c3c4deb34
python: Move over query and tests
2022-01-28 09:19:11 +01:00
Esben Sparre Andreasen
ee52774e90
Merge pull request #7760 from erik-krogh/CWE-184
...
JS: add CWE-184 to incomplete-scheme-check and bad-tag-filter
2022-01-28 09:18:41 +01:00
Tom Hvitved
ee5495ce65
C#: Add initial downgrade DB scheme for use in tests
2022-01-28 09:05:42 +01:00
Rasmus Lerchedahl Petersen
a026120c52
Python: Move configuration over and refine it
...
The original configuration did not match sinks with sanitizers.
Here it is resolved using flow state,
it could also be done by using two configurations.
2022-01-28 09:00:40 +01:00
Rasmus Lerchedahl Petersen
d539920661
Python: Update list of frameworks
2022-01-28 08:58:30 +01:00
Harry Maclean
b01f81aab3
Use modified getAPath predicate for test
2022-01-28 19:45:52 +13:00
Harry Maclean
a1b0f02e6e
Ruby: Introduce API::getAnImmediateSubclass()
...
class A; end
class B < A; end
class C < B; end
In the example above, `getMember("A").getAnImmediateSubclass()` will
select only uses of B, whereas `getMember("A").getASubclass()` will
select uses of A, B and C. This is usually the behaviour you want.
2022-01-28 16:44:03 +13:00
github-actions[bot]
c6130ea2d4
Add changed framework coverage reports
2022-01-28 00:11:49 +00:00
Dave Bartolomeo
cca74e925f
Merge pull request #7724 from github/aeisenberg/examples-groups
...
Add new groups for examples packs
2022-01-27 12:11:26 -05:00
Rasmus Lerchedahl Petersen
c60df7d69c
Merge branch 'main' of github.com:github/codeql into python/support-match
2022-01-27 16:45:17 +01:00
yoff
4632c14280
Merge pull request #7654 from RasmusWL/remove-old-pointsto-queries
...
Python: Cleanup: Remove old points-to versions of queries
2022-01-27 16:39:01 +01:00
Nick Rolfe
cd5010fe11
C#: sync changes from Ruby to improve ordering of graph test output
2022-01-27 15:34:01 +00:00
Tom Hvitved
b7fb9e8b95
Merge pull request #7768 from hvitved/csharp/extractor-diagnostics-query
...
C#: Add internal extractor diagnostics query
2022-01-27 16:33:32 +01:00
Chris Smowton
17656fc12b
Merge pull request #7771 from Dig2/main
...
Fix typo in CodeQL-query-help-for-JavaScript
2022-01-27 15:03:35 +00:00
Mathias Vorreiter Pedersen
b3f4357dc8
Merge pull request #7742 from geoffw0/clrtxt6
...
C++: Upgrade cpp/cleartext-storage-buffer
2022-01-27 14:40:40 +00:00
Rasmus Lerchedahl Petersen
b93c04bb79
python: Add reverse flow in some patterns
...
Particularly in value and literal patterns.
This is getting a little bit into the guards aspect of matching.
We could similarly add reverse flow in terms of
sub-patterns storing to a sequence pattern,
a flow step from alternatives to an-or-pattern, etc..
It does not seem too likely that sources are embedded in patterns
to begin with, but for secrets perhaps?
It is illustrated by the literal test. The value test still fails.
I believe we miss flow in general from the static attribute.
2022-01-27 15:20:23 +01:00
Tom Hvitved
cdfe239016
C#: Guard against AssociatedSymbol not being an IEventSymbol
...
Apply same logic as for property/indexer accessors to account for cases where
the associated event cannot be determined. I have not been able to reproduce
such cases locally, though we have seen reports of it happening.
2022-01-27 15:14:03 +01:00
Nick Rolfe
6f06263d49
Ruby: add more properties for ordering nodes in graph tests
2022-01-27 13:57:43 +00:00
Dig2
516bed391a
Fix CodeQL-query-help-for-JavaScript typo
2022-01-27 21:33:20 +08:00
Benjamin Muskalla
5c9c83d331
Revert "Enable on my repo"
...
This reverts commit b9c3e6a052 .
2022-01-27 14:24:41 +01:00
Geoffrey White
2e1b09fd75
C++: Modernize flow sources.
2022-01-27 13:19:09 +00:00
Geoffrey White
47528dd8c0
C++: Autoformat.
2022-01-27 12:56:16 +00:00
Tom Hvitved
d9a1046e0e
Merge pull request #7683 from hvitved/ruby/qltest-4-threads
...
Ruby: Use multiple threads in QL test CI job
2022-01-27 13:11:39 +01:00
Benjamin Muskalla
39a853b5e4
Remove unused models
2022-01-27 12:27:37 +01:00
Benjamin Muskalla
1cfb088634
rely on defaults
2022-01-27 12:26:59 +01:00
Benjamin Muskalla
e5acc6b54b
use default sha for pr
2022-01-27 12:26:59 +01:00
Benjamin Muskalla
3646ae0995
Skip diff install if not needed
2022-01-27 12:26:58 +01:00
Geoffrey White
1bf9c19638
C++: Autoformat.
2022-01-27 11:26:18 +00:00
Geoffrey White
f090a3b440
C++: Add to and clarify some taint library QLDoc.
2022-01-27 11:26:00 +00:00
Benjamin Muskalla
10aa7a7982
Better name
2022-01-27 12:02:42 +01:00
Benjamin Muskalla
b9c3e6a052
Enable on my repo
2022-01-27 12:01:47 +01:00
Tom Hvitved
1e39259e26
Merge pull request #7750 from hvitved/ruby/desugar-hash-literals
...
Ruby: Desugar hash literals
2022-01-27 12:01:06 +01:00
Benjamin Muskalla
66b9974dd4
Simplify naming pattern
2022-01-27 12:00:29 +01:00
Geoffrey White
d9a2347178
C++: Switch back to IR taint.
2022-01-27 10:50:22 +00:00
Benjamin Muskalla
4aa0002e97
Rename workflow
2022-01-27 11:43:25 +01:00
Tom Hvitved
e2ae327a74
C#: Add internal extractor diagnostics query
2022-01-27 11:19:31 +01:00
Rasmus Lerchedahl Petersen
cb52ab669e
python: address review comments
...
The comment about `py_scopes` was simply removed
2022-01-27 11:17:00 +01:00
Benjamin Muskalla
c1b5565e4d
Automation to regenerate framework models
2022-01-27 11:15:10 +01:00
yoff
e28669e487
Apply suggestions from code review
...
Co-authored-by: Taus <tausbn@github.com >
2022-01-27 10:31:43 +01:00
Tom Hvitved
f4195219f4
C#: Make TypeParameterConstraints a CachedEntity
2022-01-27 10:19:16 +01:00
Tom Hvitved
280023c45a
Address review comments
2022-01-27 09:44:41 +01:00
Andrew Eisenberg
a7f755cf12
Add new groups for examples packs
...
Also, remove version numbers. Will make it easier to avoid publishing
the examples packs.
2022-01-26 14:49:18 -08:00
Rasmus Lerchedahl Petersen
163c888781
python: port concepts and implementations
2022-01-26 19:05:37 +01:00
Rasmus Lerchedahl Petersen
e6b5833bd6
python: fix typo in qhelp
2022-01-26 19:05:36 +01:00
Erik Krogh Kristensen
e75dc2116f
add CWE-184 to incomplete-scheme-check and bad-tag-filter
2022-01-26 16:13:13 +01:00
Tom Hvitved
dd27ed8392
Ruby: Desugar hash literals
...
```rb
{ a: 1, **splat, b: 2 }
```
becomes
```rb
::Hash.[](a: 1, **splat, b: 2)
```
2022-01-26 13:53:18 +01:00
Tom Hvitved
39436828de
Ruby: Add internal/Literal.qll for internal implementation details
2022-01-26 13:48:26 +01:00
Rasmus Lerchedahl Petersen
47af3a69a5
Merge branch 'main' of github.com:github/codeql into python/support-match
2022-01-26 11:39:46 +01:00
Erik Krogh Kristensen
abd87615ff
update qhelp with suggestions
...
Co-authored-by: Esben Sparre Andreasen <esbena@github.com >
2022-01-26 11:03:05 +01:00
Erik Krogh Kristensen
de633940fe
promote the js/jwt-missing-verification query out of exeprimental
2022-01-26 09:35:54 +01:00
Michael Nebel
f1d5d3af9d
C#: Add change note for extended property patterns.
2022-01-25 15:13:11 +01:00
Michael Nebel
44cc044a3d
C#: Add testcase for extended property patterns (to indicate that they are de-sugared correctly).
2022-01-25 15:13:11 +01:00
Michael Nebel
833e8e4f1d
C#: Add some examples with the extended property pattern syntax.
2022-01-25 15:13:11 +01:00
Michael Nebel
83e7fae578
C#: Desugar property patterns that uses member access syntax.
2022-01-25 15:13:11 +01:00
Geoffrey White
e4a3e9ee23
C++: Change note.
2022-01-25 13:55:01 +00:00
Geoffrey White
340b40e8f3
C++: Modernize cpp/cleartext-storage-buffer.
2022-01-25 13:54:42 +00:00
Harry Maclean
c5904b7410
Add inline tests for API Graph subclassing
2022-01-25 16:41:49 +13:00
Harry Maclean
517f2d0823
Add optional results to InlineExpectationsTest
...
The idea behind optional results is that there may be instances where
each line of source code has many results and you don't want to annotate
all of them, but you still want to ensure that any annotations you do
have are correct.
This change makes that possible by exposing a new predicate
`hasOptionalResult`, which has the same signature as `hasResult`.
Results produced by `hasOptionalResult` will be matched against any
annotations, but the lack of a matching annotation will not cause a
failure.
We will use this in the inline tests for the API edge getASubclass,
because for each API path that uses getASubclass there is always a
shorter path that does not use it, and thus we can't use the normal
shortest-path matching approach that works for other API Graph tests.
2022-01-25 16:41:49 +13:00
Harry Maclean
d0a274c1e8
Use API graph subclassing in GraphQL modelling
...
This simplifies some of the code.
2022-01-25 16:41:24 +13:00
Harry Maclean
5e7a29a979
Ruby: Use API graph subclassing in Rails modelling
...
Now that API graphs have basic subclassing support, we can simplify some
of the ActiveRecord and ActionController code.
2022-01-25 16:40:14 +13:00
Tony Torralba
4f4f531dfc
Add missing QLDoc
2022-01-24 15:13:09 +01:00
Geoffrey White
588447d596
C++: Fix up isParameterDeref.
2022-01-24 11:06:24 +00:00
Harry Maclean
8419daad03
Ruby: Add subclassing support to API Graphs
...
Given the code
class A; end
class B < A; end
class C < A; end
You can find uses of B and C with the expression
API::getTopLevelMember("A").getASubclass()
2022-01-24 12:21:39 +13:00
luchua-bc
27043a09b3
File path injection with the JFinal framework
2022-01-23 18:07:48 +00:00
Geoffrey White
4326e6f706
C++: Split 'gets' model and make it a local source.
2022-01-21 17:29:49 +00:00
Geoffrey White
79735f5ac5
C++: Add test case.
2022-01-21 17:29:48 +00:00
Tony Torralba
4df0f399cd
Move ContentProvider models to the appropriate file
2022-01-21 16:55:43 +01:00
Tony Torralba
c6dd7ddf7a
Fix stub
2022-01-21 16:55:43 +01:00
Tony Torralba
4f253590f1
Fix method name in LocalDatabaseOpenMethodAccess
2022-01-21 16:55:43 +01:00
Tony Torralba
652a1d2dc2
Fix wrongly resolved rebase conflicts
2022-01-21 16:55:43 +01:00
Tony Torralba
5cf664411b
Remove unneeded nonSuspicious values
2022-01-21 16:55:43 +01:00
Tony Torralba
baa1f71a53
Add QLDoc
2022-01-21 16:55:43 +01:00
Tony Torralba
4e4f619ae4
Update java/ql/lib/semmle/code/java/security/CleartextStorageAndroidDatabaseQuery.qll
...
Co-authored-by: Chris Smowton <smowton@github.com >
2022-01-21 16:55:43 +01:00
Tony Torralba
c5ed5fcaac
Apply suggestions from code review
...
Co-authored-by: Ethan Palm <56270045+ethanpalm@users.noreply.github.com >
2022-01-21 16:55:42 +01:00
Tony Torralba
ee84dae164
Fix predicate name
2022-01-21 16:55:42 +01:00
Tony Torralba
16b61f78e6
Fix QLDocs and the qhelp example
2022-01-21 16:55:42 +01:00
Tony Torralba
f0604e2e84
Added query for Cleartext Storage in Android Database
2022-01-21 16:55:42 +01:00
Rasmus Lerchedahl Petersen
9aa4c4a6a7
python: Add missing input
...
also update test expectation
2022-01-21 13:55:33 +01:00
Rasmus Lerchedahl Petersen
41908cbf9f
python: add missing qldoc
2022-01-21 13:55:08 +01:00
Rasmus Lerchedahl Petersen
49d4b1480d
python: Do not remove ChainedConfigs12.qll
...
since it was clearly already used.
Add deprecation message instead.
2022-01-21 12:27:29 +01:00
Rasmus Lerchedahl Petersen
35c9307baa
python: rewrite NoSQLInjection to use flow state
...
This allows a bit more precision. Specifically, we could
require the sanitizer to only affect `ConvertedToDict`.
In practice, most sanitizers woudl probably fail on raw
input also, though.
2022-01-21 12:12:58 +01:00
Tom Hvitved
55f427ca0e
Ruby: Use multiple threads in QL test CI job
2022-01-21 11:46:08 +01:00
Erik Krogh Kristensen
debebb2b8c
rewrite the qhelp for js/insecure-dependency
2022-01-21 10:41:08 +01:00
Rasmus Lerchedahl Petersen
a5bc5373d0
python: Rewrite path injection to use flow state
...
This removes the FP cause by chaining
This PR also removes `ChainedConfigs12.qll`,
as we hope to solve future problems via flow states.
2022-01-21 09:26:48 +01:00
Erik Krogh Kristensen
548fb47603
JS: move ExternalArtifact.qll into lib/ folder to fix ql/db-type-outside-core
2022-01-20 14:00:57 +01:00
Erik Krogh Kristensen
9b69de8588
QL: add query detecting use of db-types outside the lib folder
2022-01-20 14:00:55 +01:00
Erik Krogh Kristensen
6b7d84add7
QL: exclude fields that are uniquely used in call to an IPA constructor
2022-01-20 11:37:08 +01:00
Erik Krogh Kristensen
6e9771fbf6
QL: make FieldAccess::getDeclaration return a FieldDecl
2022-01-20 09:59:45 +01:00
Erik Krogh Kristensen
708c18d4c2
QL: update the name of the consistency query to make code-scanning alerts more clear
2022-01-20 09:41:13 +01:00
Erik Krogh Kristensen
b8f1fb3954
JS: fix ql/field-only-used-in-charpred within JavaScript
2022-01-20 09:41:13 +01:00
Erik Krogh Kristensen
3d3c6875a6
QL: add query detecting fields that are only used within the charpred
2022-01-20 09:41:10 +01:00
Harry Maclean
5dcee6ba27
Ruby: Add File.open as a FileSystemAccess
2022-01-20 21:09:41 +13:00
Rasmus Lerchedahl Petersen
32cbeae05f
python: missing start tag for relation
2022-01-20 08:56:12 +01:00
Rasmus Lerchedahl Petersen
d10ad3bdd4
python: update stats for tables
2022-01-20 08:42:32 +01:00
Rasmus Lerchedahl Petersen
7e9a9e3d9a
python: remove compiler warnings
2022-01-19 18:01:58 +01:00
Rasmus Lerchedahl Petersen
a0e79c1d7a
update stats for types
...
- should still update stats for tables
2022-01-19 16:38:19 +01:00
Rasmus Wriedt Larsen
93b3cd669a
Python: Cleanup: Remove old points-to versions of queries
...
Since we've internally agreed that we've reached the same or better set
of results.
2022-01-19 15:30:12 +01:00
Rasmus Lerchedahl Petersen
db253e8939
python: upgrade and downgrade scripts
2022-01-19 15:22:57 +01:00
Rasmus Lerchedahl Petersen
ef9fb0873f
python: tools for writing upgrades and downgrade
...
adapted from [the ruby instructions](https://github.com/github/codeql/blob/main/ruby/doc/prepare-db-upgrade.md )
2022-01-19 14:29:58 +01:00
Rasmus Lerchedahl Petersen
36e18d5d80
python: dataflow for match
...
- also update `validTest.py`, but commented out for now
otherwise CI will fail until we force it to run with Python 3.10
- added debug utility for dataflow (`dataflowTestPaths.ql`)
2022-01-19 14:29:58 +01:00
Rasmus Lerchedahl Petersen
bb210f4172
pythos: SSA for match
...
- new SSA definition `PatternCaptureDefinition`
- new SSA definition `PatternAliasDefinition`
- implement `hasDefiningNode`
2022-01-19 14:29:58 +01:00
Rasmus Lerchedahl Petersen
de8ecb214f
python: Wrappers for database classes
...
- new syntactic category `Pattern` (in `Patterns.qll`)
- subpatterns available on statments
- new statements `MatchStmt` and `Case`
(`Match` would conflict with the shared ReDoS library)
- new expression `Guard`
- support for pattern lists
2022-01-19 14:29:58 +01:00
Rasmus Lerchedahl Petersen
b17f844f35
python: New generated files
2022-01-19 13:36:32 +01:00
Erik Krogh Kristensen
b7a0b8765e
add js/http-dependency query
2022-01-19 10:05:39 +01:00
Asger Feldthaus
79f799066a
JS: Update test output
2022-01-17 16:27:57 +01:00
Artem Smotrakov
825fe1797a
Fixed another false-positive in CWE-297/IgnoredHostnameVerification.ql
2022-01-16 18:55:49 +00:00
Artem Smotrakov
6dad0e21d9
Ignore wrapped HostnameVerifier.vefify() calls
2022-01-16 18:29:30 +00:00
Artem Smotrakov
dcf251bb93
Fixed typos in IgnoredHostnameVerification.qhelp
2022-01-16 18:27:49 +00:00
Fosstars
2b33265d0f
Added a query for ignored hostname verification
...
- Added IgnoredHostnameVerification.ql
- Added a qhelp file with examples
- Added tests
2022-01-16 18:27:49 +00:00
Artem Smotrakov
f78002bc02
Fixed a false-positive in CWE-297/IgnoredHostnameVerification.ql
2022-01-16 18:25:18 +00:00
Fosstars
e11cb943a6
Added a query for ignored hostname verification
...
- Added IgnoredHostnameVerification.ql
- Added a qhelp file with examples
- Added tests
2022-01-16 18:25:18 +00:00
Asger Feldthaus
708408a458
JS: Recognize "sql" option as a query string
2022-01-13 13:04:41 +01:00
Benjamin Muskalla
426f3117d6
Clarify model names and escape variables
2022-01-11 15:58:21 +01:00
Benjamin Muskalla
49d2fbfb5f
Fixed slug references and PR skips
2022-01-11 11:47:28 +01:00
Henry Mercer
19933262c4
Java: Fix copy/paste error in existing queries
...
Co-authored-by: yo-h <55373593+yo-h@users.noreply.github.com >
2022-01-05 10:50:22 +00:00
jorgectf
1f1b7a54f8
Update .expected
2021-12-19 18:58:43 +01:00
jorgectf
b6bdcd0eb8
Delete redundant exists()
2021-12-19 18:57:22 +01:00
jorgectf
98c8503ebd
Fix test mismatch
2021-12-19 18:35:53 +01:00
jorgectf
f82ed8573e
Model python_jwt.process_jwt
2021-12-19 18:32:14 +01:00
Henry Mercer
5696146179
Java: Convert telemetry queries to summary metrics
...
Use the support for summary metrics with messages that'll be in the next
version of the CodeQL CLI.
2021-12-15 17:59:01 +00:00
liangjinhuang
77b5f422ba
change PasswordFnSink to RandomFnSink
2021-12-11 12:31:20 +08:00
Benjamin Muskalla
557cb0a09e
Add job name
2021-12-06 11:42:03 +01:00
Benjamin Muskalla
657c576186
Skip diffs if same branch
2021-12-06 11:30:14 +01:00
Benjamin Muskalla
38debc0b64
Remove push trigger
2021-12-06 11:21:15 +01:00
liangjinhuang
1102f60f3e
add tests
2021-12-04 00:52:15 +08:00
Benjamin Muskalla
d181ee1701
Shorten workflow name
...
This will show up including the job name anyway
```
Models as Data / model-diff (apache/commons-codec)
```
2021-11-30 12:19:10 +01:00
Benjamin Muskalla
5e69eb491f
Generate diff and archive results
2021-11-30 12:19:10 +01:00
Benjamin Muskalla
734422f384
Generate the models for each variant
2021-11-30 12:19:10 +01:00
Benjamin Muskalla
9672128699
Download database
2021-11-30 12:19:10 +01:00
Benjamin Muskalla
c0a3cd07a5
Add default projects
2021-11-30 12:19:09 +01:00
Benjamin Muskalla
881539c735
Add scaffolding for model diff job
2021-11-30 12:19:09 +01:00
liangjinhuang
d0ac11817e
add insecureRandomness
2021-11-28 20:47:06 +08:00
ihsinme
c916bed853
Update test1.cpp
2021-11-15 16:29:51 +03:00
ihsinme
99740876cb
Add files via upload
2021-11-14 11:28:27 +03:00
ihsinme
8ddfea1dee
Update cpp/ql/src/experimental/Security/CWE/CWE-200/ExposureSensitiveInformationUnauthorizedActor.qhelp
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2021-11-09 09:20:39 +03:00
ihsinme
1c80f26178
Update ExposureSensitiveInformationUnauthorizedActor.ql
2021-10-28 09:50:41 +03:00
ihsinme
04ee78aecf
Apply suggestions from code review
...
thanks
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2021-10-28 09:46:26 +03:00
ihsinme
8a1d271328
Add files via upload
2021-10-25 14:48:19 +03:00
ihsinme
1dacd2ea76
Add files via upload
2021-10-25 14:47:25 +03:00