Andrew Eisenberg
7ccb803dd1
Merge pull request #6375 from github/aeisenberg/pack/python
...
Packaging: Refactor Python into separate library and query packs
2021-08-16 10:59:19 -07:00
Andrew Eisenberg
016eed8e5c
Packaging: Fix more suite references
2021-08-12 16:14:04 -07:00
Andrew Eisenberg
c75f65c493
Packaging: Fix identical-files.json
2021-08-11 19:21:04 -07:00
Andrew Eisenberg
210128e2ae
Packaging: Update csharp libraries from main
2021-08-11 16:33:32 -07:00
Andrew Eisenberg
1e36706f4c
Packaging: Fix libraryPathDependencies for legacy-support packs
...
Adds both *-all and *-queries to all.
2021-08-11 13:24:21 -07:00
Andrew Eisenberg
056f9b9471
Packaging: Update references to moved files
2021-08-11 13:23:50 -07:00
Andrew Eisenberg
8cc2201335
Packaging: Update identical files check
2021-08-11 13:23:50 -07:00
Andrew Eisenberg
3f5f73d730
Packaging: Refactor Python into separate library and query packs
2021-08-11 13:23:50 -07:00
Dave Bartolomeo
411a451798
Packaging: Move one more file into library pack
2021-07-28 11:30:11 -04:00
Dave Bartolomeo
b6f0a5dea9
Packaging: Refactor JavaScript into separate query and library packs
2021-07-28 09:46:24 -04:00
Dave Bartolomeo
7079cecdb0
Packaging: Refactor Java packs into separate query and library packs
2021-07-28 00:32:30 -04:00
Dave Bartolomeo
0a24667567
Packaging: Bump pack versions
2021-07-28 00:20:50 -04:00
Dave Bartolomeo
b12771069a
Packaging: Mark C# library as a library
2021-07-27 16:22:21 -04:00
Dave Bartolomeo
38f892b120
Packaging: Refactor C# into separate library and query packs
2021-07-27 15:51:33 -04:00
Dave Bartolomeo
3e7bb7c296
Packaging C++: Refactor codeql-cpp into separate library and query packs
...
This commit does the following:
- creates a new cpp/ql/lib folder and moves the majority of `.qll` files
from C++ into it.
- updates references to these files from the relevant `.ql` files.
- updates and adds `qlpack.yml` files to create publishable qlpacks
for cpp.
- updates the ``misc/suite-helpers/qlpack.yml` file to make it
publishable
- adds qlpack.lock.yml files for each published pack.
2021-07-27 15:03:53 -04:00
Geoffrey White
7fdac2a792
Merge pull request #6347 from MathiasVP/import-gvn-to-prevent-ir-reevaluation
...
C++: Import 'GVN' in 'Overflow.qll' to prevent IR reevaluation.
2021-07-22 13:37:03 +01:00
Taus
b8a40bb7f1
Merge pull request #6348 from tausbn/python-hotfix-disable-redos-queries
...
Python: Hotfix: Disable ReDoS queries
2021-07-22 13:32:14 +02:00
Taus
bfe42ae146
Python: Update change note
2021-07-22 11:10:08 +00:00
Taus
e9a4114c04
Python: Hotfix: Disable ReDoS queries
2021-07-22 10:58:49 +00:00
Mathias Vorreiter Pedersen
39144ee02b
C++: Import 'GVN' in 'Overflow.qll' to prevent IR reevaluation.
2021-07-22 11:35:16 +02:00
Pavel Avgustinov
2d9600de4a
Merge pull request #6340 from MathiasVP/revert-path-sensitive-stackvariablereachability
...
C++: Revert #6004
2021-07-21 09:17:56 +01:00
Mathias Vorreiter Pedersen
a006a7fb24
Revert "Merge pull request #6004 from MathiasVP/path-sensitive-stack-variable-reachability-analysis"
...
This reverts commit e3e7b00986 , reversing
changes made to 8ccdd4fb9f .
2021-07-20 18:06:49 +02:00
Arthur Baars
43c68eae94
Merge pull request #6324 from github/aibaars/include-diagnostic-summary
...
Code Scanning selectors: Include diagnostic and summary metric queries
2021-07-19 17:16:48 +02:00
Arthur Baars
d960ef2dac
Code Scanning selectors: Include diagnostic and summary metric queries
2021-07-19 17:05:43 +02:00
Anders Schack-Mulligen
0b89f96055
Merge pull request #6318 from Marcono1234/patch-1
...
Java: Fix documentation mistake for `ProtoPom`
2021-07-19 11:25:06 +02:00
Anders Schack-Mulligen
d1f21a854a
Merge pull request #6042 from joefarebrother/spring-http
...
[Java] Model spring `http` package
2021-07-19 11:24:41 +02:00
Taus
12f7921c92
Merge pull request #6304 from RasmusWL/more-snippets
...
Python: Add more snippets
2021-07-19 11:23:24 +02:00
Anders Schack-Mulligen
c32a75a1b3
Merge pull request #6183 from smowton/smowton/feature/javax-json-models
...
Add models of the jakarta/javax.json package
2021-07-19 11:19:21 +02:00
Anders Schack-Mulligen
6de31f8b59
Merge pull request #6317 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2021-07-19 10:45:22 +02:00
Rasmus Wriedt Larsen
c9087b2e1b
Python: Minor fixup to snippet
...
Spotted by @tausbn 🎉
2021-07-19 10:19:23 +02:00
github-actions[bot]
9b7616bea4
Add changed framework coverage reports
2021-07-19 00:07:04 +00:00
Marcono1234
87d6b9ca5a
Java: Fix documentation mistake for ProtoPom
2021-07-18 02:49:43 +02:00
Tom Hvitved
1c68d3f4cd
Merge pull request #6309 from hvitved/csharp/dead-store-of-local-perf
...
C#: Improve performance of `DeadStoreOfLocal.ql`
2021-07-17 10:56:35 +02:00
Tom Hvitved
25706e0812
Merge pull request #6303 from hvitved/csharp/get-qual-name-nomagic
...
C#: Two `pragma` performance fixes
2021-07-17 07:53:35 +02:00
Robert Marsh
e0ff1d949b
Merge pull request #6315 from MathiasVP/fix-off-by-one-in-rem-expr-range-analysis
...
C++: Fix off–by-one in range analysis for `RemExpr`.
2021-07-16 15:22:03 -07:00
Mathias Vorreiter Pedersen
39d9395bc3
C++: Fix off-by-one in range analysis for 'RemExpr'.
2021-07-16 16:35:19 +02:00
Mathias Vorreiter Pedersen
81aa115838
C++: Fix range analysis bug for 'RemExpr'.
2021-07-16 16:28:08 +02:00
Mathias Vorreiter Pedersen
dc2eea59a3
C++: Add buggy testcase with 'RemExpr'.
2021-07-16 16:27:09 +02:00
Anders Schack-Mulligen
68b3c28202
Merge pull request #6310 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2021-07-16 14:10:33 +02:00
CodeQL CI
9aafe8242e
Merge pull request #6271 from erik-krogh/logs
...
Approved by asgerf
2021-07-16 03:49:22 -07:00
Anders Schack-Mulligen
ef9d09692d
Merge pull request #5796 from smowton/smowton/feature/apache-mutable-flow
...
Java: Add synthetic fields; model Commons Lang's MutableObject type
2021-07-16 12:08:26 +02:00
Erik Krogh Kristensen
36de24aecb
use API nodes instead of type-tracking in the pino model
2021-07-16 11:32:32 +02:00
Erik Krogh Kristensen
178d3de824
Merge branch 'main' into logs
2021-07-16 11:21:25 +02:00
CodeQL CI
a02a82caac
Merge pull request #6284 from erik-krogh/qs
...
Approved by asgerf
2021-07-16 02:11:59 -07:00
CodeQL CI
c1d0e52492
Merge pull request #6286 from erik-krogh/mkdirp
...
Approved by asgerf
2021-07-16 02:11:07 -07:00
CodeQL CI
6c2c51a767
Merge pull request #6287 from erik-krogh/react-tooltip
...
Approved by asgerf
2021-07-16 02:10:36 -07:00
CodeQL CI
d4fa1f7d96
Merge pull request #6295 from erik-krogh/sort-keys
...
Approved by asgerf
2021-07-16 02:09:47 -07:00
CodeQL CI
520337577b
Merge pull request #6298 from erik-krogh/ansi-to-html
...
Approved by asgerf
2021-07-16 02:09:03 -07:00
CodeQL CI
f4f8ce0d36
Merge pull request #6294 from erik-krogh/arrify
...
Approved by asgerf
2021-07-16 02:08:19 -07:00
CodeQL CI
8ef57366c4
Merge pull request #6278 from erik-krogh/toUnicodeInAngular
...
Approved by asgerf
2021-07-16 02:07:18 -07:00
Chris Smowton
9cde13bf82
Note spurious results that stem from weak updates to synthetic fields.
2021-07-16 09:44:36 +01:00
Tom Hvitved
45ee21622d
C#: Cache NamedElement::getQualifiedName()
2021-07-16 10:25:07 +02:00
CodeQL CI
b14139f3a0
Merge pull request #6261 from max-schaefer/js/module-constructor
...
Approved by asgerf
2021-07-16 00:28:30 -07:00
Tom Hvitved
8321d5f312
Merge pull request #6293 from hvitved/csharp/ssa/remove-redundant-conjunct
...
C#: Remove redundant conjunct in `ssaDefReachesReadWithinBlock`
2021-07-16 06:15:34 +02:00
github-actions[bot]
e61702c281
Add changed framework coverage reports
2021-07-16 00:07:10 +00:00
Robert Marsh
59855de0ac
Merge pull request #6301 from github/aibaars/drop-opaque-id
...
CPP: drop opaque-id properties
2021-07-15 16:36:11 -07:00
Tom Hvitved
c53502a84a
C#: Improve performance of DeadStoreOfLocal.ql
2021-07-15 22:26:07 +02:00
Rasmus Wriedt Larsen
5e193ee8da
Python: Add more snippets
2021-07-15 18:56:49 +02:00
Geoffrey White
c4322fdcd2
Merge pull request #6231 from ihsinme/ihsinme-patch-277
...
Add query for CWE-758: Reliance on Undefined, Unspecified, or Implementation-Defined Behavior
2021-07-15 15:52:48 +01:00
Joe Farebrother
f7de2e64c5
Fix failing test caused by an imprecission in the stubber
2021-07-15 15:15:37 +01:00
CodeQL CI
d282f6a356
Merge pull request #6218 from tausbn/python-add-typetrackingnode
...
Approved by RasmusWL
2021-07-15 07:04:50 -07:00
Taus
dd03d8102b
Merge pull request #6300 from RasmusWL/redos-tests
...
Python: Fix `py/polynomial-redos`
2021-07-15 15:59:01 +02:00
Chris Smowton
1bbac748fe
Add change note
2021-07-15 14:58:25 +01:00
Chris Smowton
7b984cc2b0
Add models for Apache Commons Lang's Mutable container
2021-07-15 14:58:25 +01:00
Erik Krogh Kristensen
2b6790e914
update expected output
2021-07-15 15:54:51 +02:00
Erik Krogh Kristensen
28b98c1bfa
update expected output
2021-07-15 15:51:01 +02:00
Tom Hvitved
4180528d02
C#: Do not inline getLeafTypeAt
2021-07-15 15:41:16 +02:00
Tom Hvitved
7e4d761aa3
C#: Add nomagic to NamedElement::getQualifiedName()
2021-07-15 15:40:26 +02:00
Chris Smowton
712b0d866e
Merge pull request #6297 from aschackmull/java/query-metadata4
...
Java: More missing metadata.
2021-07-15 14:32:47 +01:00
Arthur Baars
a47002c6d8
Merge pull request #6302 from github/aibaars/drop-spaces
...
C# remove spurious spaces in <code> tag
2021-07-15 14:57:21 +02:00
Arthur Baars
e387d602b2
C# remove spurious spaces in <code> tag
2021-07-15 14:38:01 +02:00
Rasmus Wriedt Larsen
900cbc9a2f
Merge pull request #6265 from tausbn/python-performance-fixes
...
Python: Fix a few performance issues.
2021-07-15 14:19:37 +02:00
Rasmus Wriedt Larsen
a5834c4d78
Python: Fix py/polynomial-redos
2021-07-15 14:16:19 +02:00
Rasmus Wriedt Larsen
76caf43b54
Python: Add tests for py/polynomial-redos
2021-07-15 14:15:44 +02:00
Rasmus Wriedt Larsen
1be0dc0876
Python: Move test for ReDoS
2021-07-15 14:15:24 +02:00
Arthur Baars
d059ec0c93
CPP: drop opaque-id properties
...
The undocumented @opaque-id property takes precendence over the normal @id
property and causes the SARIF output produced by CodeQL to use that ID for
rules.
2021-07-15 14:12:01 +02:00
Erik Krogh Kristensen
ae2fc7171b
add a taint step through the ansi-to-html library
2021-07-15 14:04:16 +02:00
Anders Schack-Mulligen
5b7c2d133f
Merge pull request #6291 from aschackmull/java/csv-synthfield
...
Java: Add support for synthetic fields in csv rows.
2021-07-15 13:43:56 +02:00
Anders Schack-Mulligen
9b2b593cb4
Java: More missing metadata.
2021-07-15 13:41:12 +02:00
Geoffrey White
e3e7b00986
Merge pull request #6004 from MathiasVP/path-sensitive-stack-variable-reachability-analysis
...
C++: Add path-sensitivity to `StackVariableReachability`
2021-07-15 12:34:33 +01:00
Erik Krogh Kristensen
aaa8969537
add sort-keys as a clone call
2021-07-15 13:16:17 +02:00
Erik Krogh Kristensen
d2c74480b9
add taint step through flatten libraries
2021-07-15 12:36:07 +02:00
Erik Krogh Kristensen
77f4d56cd9
add taint step through array-union, array-uniq, and uniq
2021-07-15 12:32:29 +02:00
Anders Schack-Mulligen
8ccdd4fb9f
Merge pull request #6211 from aschackmull/dataflow/refactor-call-context-check
...
Dataflow: Refactor call context check
2021-07-15 12:27:23 +02:00
Tom Hvitved
caf88a2d31
C#: Remove redundant conjunct in ssaDefReachesReadWithinBlock
2021-07-15 12:25:33 +02:00
Anders Schack-Mulligen
7339bd89ba
Java: Add support for synthetic fields in csv rows.
2021-07-15 12:19:34 +02:00
Joe Farebrother
0e8dd9f335
Use generated stubs
2021-07-15 11:03:51 +01:00
Joe Farebrother
e7e432d7fd
Fix incorrect row
2021-07-15 10:39:05 +01:00
Joe Farebrother
f3ab295f0f
Fix up tests
2021-07-15 10:34:21 +01:00
Joe Farebrother
bbc4d4855c
Move tests
2021-07-15 10:34:18 +01:00
Joe Farebrother
51045a83c2
Add change note
2021-07-15 10:33:33 +01:00
Joe Farebrother
df74a142dd
Update for collection flow and add more tests
2021-07-15 10:33:33 +01:00
Joe Farebrother
8f89d748fe
Add spring tests
2021-07-15 10:33:33 +01:00
Joe Farebrother
4be7e94dcc
Add more spring stubs
2021-07-15 10:33:30 +01:00
Joe Farebrother
c1555b36a1
Add additional HTTP flow steps
2021-07-15 10:32:13 +01:00
Joe Farebrother
9b6213dbf0
Convert existing spring http steps to csv
2021-07-15 10:32:10 +01:00
Erik Krogh Kristensen
5ff7d208b7
add taint step through arrify
2021-07-15 11:24:50 +02:00
Erik Krogh Kristensen
e64f29fe8f
add support for Array.prototype.find and polyfills
2021-07-15 11:16:06 +02:00
Erik Krogh Kristensen
f6f63e2811
add model for the array-from polyfill
2021-07-15 10:51:55 +02:00
Anders Schack-Mulligen
d34e748c83
Merge pull request #6290 from aschackmull/java/query-metadata3
...
Java: Add metadata.
2021-07-15 09:59:45 +02:00
Anders Schack-Mulligen
60b3dbd217
Java: Add metadata.
2021-07-15 09:16:56 +02:00
Anders Schack-Mulligen
bf0877c5cb
Merge pull request #6289 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2021-07-15 09:15:51 +02:00
Anders Schack-Mulligen
e18a20fedb
Merge pull request #6285 from smowton/smowton/feature/spring-jdbc-object
...
Add models for org.springframework.jdbc.object
2021-07-15 09:06:56 +02:00
Robert Marsh
4d8e882214
Merge pull request #6186 from geoffw0/formatarg
...
C++: Fix FPs from cpp/wrong-type-format-argument
2021-07-14 17:20:46 -07:00
github-actions[bot]
d6186e8d0f
Add changed framework coverage reports
2021-07-15 00:06:37 +00:00
Erik Krogh Kristensen
22dfe84ee8
add xss sink for react-tooltip
2021-07-14 20:03:50 +02:00
Erik Krogh Kristensen
14b26f2a68
add mkdirp as a sink for tainted-path
2021-07-14 19:32:22 +02:00
Chris Smowton
f2b232f276
Add change note
2021-07-14 17:39:58 +01:00
Chris Smowton
0b2750828e
Add models for org.springframework.jdbc.object
...
Also add tests for the existing Spring JDBC SQL injection sinks in the process
2021-07-14 17:25:00 +01:00
Taus
fb57c5f6f0
Merge pull request #6143 from RasmusWL/concepts-private-import-python
...
Python: Make `import python` private in Concepts.qll
2021-07-14 17:49:06 +02:00
Taus
5c5ee85332
Merge pull request #6122 from RasmusWL/mention-mysqlclient
...
Python: Mention modeling of `mysqlclient` PyPI package
2021-07-14 17:48:40 +02:00
Taus
30d61045d2
Python: Mention nameIndicatesSensitiveData
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2021-07-14 17:33:39 +02:00
Erik Krogh Kristensen
f462c9bb76
add taint through the parseqs library
2021-07-14 17:22:35 +02:00
Erik Krogh Kristensen
bec1818fc7
add taint through the normalize-url library
2021-07-14 17:15:14 +02:00
Erik Krogh Kristensen
86de10e6a1
simplify some implementations in UriLibraries.qll
2021-07-14 17:01:40 +02:00
Erik Krogh Kristensen
193ddfc771
add taint through the qs library
2021-07-14 16:56:51 +02:00
Aditya Sharad
e0a123cbd0
Merge pull request #6257 from github/rneatherway/summary-docs
...
Add docs for summary type queries
2021-07-14 07:54:18 -07:00
Taus
2bb44d49d9
Python: Perform more deduplication
...
This cut the evaluation time on `django` down from 1.2 seconds to ~0.8
seconds (but the impact will likely be greater on bigger projects).
2021-07-14 13:38:05 +00:00
Anders Schack-Mulligen
a0481bda91
Merge pull request #6282 from aschackmull/java/query-metadata2
...
Java: Add missing metadata.
2021-07-14 15:17:27 +02:00
Anders Schack-Mulligen
11fc23ba09
Merge pull request #6030 from smowton/smowton/admin/test-generator
...
Add test-generator script + add generated models for Spring summary steps
2021-07-14 14:44:07 +02:00
Anders Schack-Mulligen
9034b03c7b
Java: Add missing metadata.
2021-07-14 14:40:50 +02:00
Anders Schack-Mulligen
3a3398508c
Merge pull request #5895 from github/sauyon/java/spring
...
Add models for some Spring pseudo-collections
2021-07-14 14:40:24 +02:00
Sauyon Lee
d7bfc2eebf
Remove redundant model lines
2021-07-14 05:05:17 -07:00
Sauyon Lee
671243c15d
Add change note
2021-07-14 05:05:17 -07:00
Sauyon Lee
1f97ac88c8
Fix tests
2021-07-14 05:05:17 -07:00
Sauyon Lee
eaef1c146c
Add generated tests
2021-07-14 05:05:16 -07:00
Sauyon Lee
16931e5de8
Add necessary stubs for Spring
...
Co-Authored-By: smowton <smowton@github.com >
2021-07-14 04:57:56 -07:00
Sauyon Lee
fc7e062deb
Java: Add models for the Spring cache package
2021-07-14 04:57:56 -07:00
Sauyon Lee
d9fb09d132
Java: Add models for the Spring ui package.
2021-07-14 04:57:56 -07:00
Anders Schack-Mulligen
04244b3c45
Merge pull request #5974 from github/sauyon/java/spring-webmultipart
...
Model Spring `web.multipart`
2021-07-14 13:57:24 +02:00
Anders Schack-Mulligen
3c4cd15738
Merge pull request #5505 from joefarebrother/android-sql-convert
...
Java: Convert Android SQL-related flow steps to CSV format
2021-07-14 13:56:55 +02:00
Chris Smowton
e9390cb3eb
Remove superfluous conjunct
2021-07-14 12:42:28 +01:00
Taus
09993406f1
Python: Add explanatory QLDoc comment
2021-07-14 10:42:07 +00:00
Mathias Vorreiter Pedersen
0b21caa9ae
Merge pull request #6280 from MathiasVP/restrict-call-context-relation
...
C++: Potentially improve performance of call-context calculation
2021-07-14 12:15:26 +02:00
Mathias Vorreiter Pedersen
1480ac7c1d
C++: Potentially improve performance by restricting the size of the call-context relation.
2021-07-14 11:23:56 +02:00
Robin Neatherway
c9e642fb06
Merge branch 'main' into rneatherway/summary-docs
2021-07-14 10:13:32 +01:00
Chris Smowton
3ae99b93ca
Merge pull request #6215 from aschackmull/java/fix-csv-subtype-interpretation
...
Java: Fix CSV subtype interpretation
2021-07-14 09:57:21 +01:00
Anders Schack-Mulligen
0ccb213ec5
Dataflow: Sync.
2021-07-14 10:36:09 +02:00
Anders Schack-Mulligen
dbe1ca928b
Dataflow: Simplify call context checks.
2021-07-14 10:36:09 +02:00
Anders Schack-Mulligen
c95e78546c
Dataflow: Refactor
2021-07-14 10:36:09 +02:00
Erik Krogh Kristensen
73491d88da
use the new .toUnicode method in the Angular2 model
2021-07-14 10:19:48 +02:00
CodeQL CI
f6f7020388
Merge pull request #6250 from erik-krogh/python-redos-unicode
...
Approved by RasmusWL
2021-07-14 01:09:26 -07:00
CodeQL CI
436168aa4f
Merge pull request #6267 from erik-krogh/read-pkg
...
Approved by asgerf
2021-07-14 01:01:33 -07:00
ihsinme
4d3666692b
Update cpp/ql/src/experimental/Security/CWE/CWE-758/UndefinedOrImplementationDefinedBehavior.ql
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2021-07-14 10:17:53 +03:00
Anders Schack-Mulligen
8dc1f28c68
Merge pull request #6272 from hvitved/dataflow/flow-summary-impl-cached
...
Data flow: Use cached predicates from DataFlowImplCommon in `FlowSummaryImpl.qll`
2021-07-14 09:12:23 +02:00
Sauyon Lee
51211c0394
Add stubs
2021-07-13 10:29:02 -07:00
Sauyon Lee
c2c7fee8df
Fix tests
2021-07-13 10:29:02 -07:00
Sauyon Lee
b01e6d49fb
Add generated tests
2021-07-13 10:29:01 -07:00
Sauyon Lee
b807757863
Model Spring web.multipart
2021-07-13 10:29:01 -07:00
Robert Marsh
25dd29b24f
Merge pull request #6158 from MathiasVP/call-ctx-for-function-ptr-resolution
...
C++: Resolve function pointer calls using call contexts
2021-07-13 10:00:44 -07:00
Chris Smowton
1044049e72
Simplify getInput
2021-07-13 16:36:26 +01:00
Chris Smowton
98b85a481c
Improve inline-expectation style
2021-07-13 16:36:08 +01:00
Chris Smowton
a11021991a
Improve method documentation
2021-07-13 16:35:44 +01:00
Chris Smowton
b5492056d8
Remove superfluous parens
2021-07-13 16:35:22 +01:00
Chris Smowton
97694bc9a1
Report error even if interpretElement resolves to a non-Callable Element
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2021-07-13 16:16:01 +01:00
CodeQL CI
f9b539e5b9
Merge pull request #6253 from asgerf/js/more-precise-capture-steps
...
Approved by erik-krogh
2021-07-13 07:42:07 -07:00
Erik Krogh Kristensen
086c9c8156
remove redundant getACall()
...
Co-authored-by: Asger F <asgerf@github.com >
2021-07-13 16:32:14 +02:00
Tom Hvitved
7e9d87055d
Data flow: Sync
2021-07-13 16:15:00 +02:00
Tom Hvitved
febebed15e
Data flow: Use cached predicates from DataFlowImplCommon in FlowSummaryImpl.qll
2021-07-13 16:15:00 +02:00
Anders Schack-Mulligen
9388983e41
Java: Add missing stub.
2021-07-13 15:26:37 +02:00
Anders Schack-Mulligen
0f6f020766
Java: Fix models.
2021-07-13 15:23:19 +02:00
Taus
6aec7f2c49
Merge pull request #6264 from RasmusWL/customization-files-for-path-problems
...
Python: Provide proper source/sink customization for most path queries
2021-07-13 15:09:33 +02:00
CodeQL CI
48ec223727
Merge pull request #6212 from asgerf/js/typescript-4.3.5
...
Approved by esbena
2021-07-13 05:45:09 -07:00
CodeQL CI
9d59cba644
Merge pull request #6262 from erik-krogh/slash
...
Approved by asgerf
2021-07-13 05:44:55 -07:00
CodeQL CI
c87fe95d52
Merge pull request #6258 from erik-krogh/case
...
Approved by asgerf
2021-07-13 05:44:49 -07:00
CodeQL CI
b34f444c88
Merge pull request #6254 from erik-krogh/json2csv
...
Approved by asgerf
2021-07-13 05:44:36 -07:00
Rasmus Wriedt Larsen
6f8969a55e
Python: Add change-note
2021-07-13 14:39:44 +02:00
Rasmus Wriedt Larsen
9ed61e7663
Python: Port py/polynomial-redos to use proper source/sink customization
...
I noticed the configuration/customization files are in the `performance`
folder in JS, but I just kept them in place, since that seems correct to
me.
2021-07-13 14:39:44 +02:00
Erik Krogh Kristensen
e13d53f001
support pino logging calls on request objects
2021-07-13 14:32:50 +02:00
Taus
693a479bf6
Merge branch 'main' into python-add-typetrackingnode
2021-07-13 14:13:21 +02:00
Rasmus Wriedt Larsen
cea2f82be9
Python: Port py/path-injection to use proper source/sink customization
2021-07-13 14:09:02 +02:00
Erik Krogh Kristensen
cce15bed1d
add basic support for the pino library
2021-07-13 14:00:01 +02:00
Rasmus Wriedt Larsen
bf214ac3bb
Python: Apply suggestions from code review
...
Co-authored-by: Taus <tausbn@github.com >
2021-07-13 13:41:26 +02:00
Tom Hvitved
cb1b227c87
Merge pull request #6270 from hvitved/csharp/standalone-nuget-restore
...
C#: Skip `dotnet restore` in standalone extraction when `nuget_restore: false` is set
2021-07-13 13:36:40 +02:00
Rasmus Wriedt Larsen
1a59c9b64a
Merge pull request #6204 from tausbn/python-ensmallen-localsourcenode
...
Python: Clean up `LocalSourceNode` charpred
2021-07-13 13:27:38 +02:00
Robin Neatherway
fc38960795
Split up metric information across the doc
2021-07-13 11:25:15 +01:00
Chris Smowton
78fe0f810a
Add models for decode/encodePointer methods
2021-07-13 11:10:46 +01:00
Mathias Vorreiter Pedersen
1ed027e0d1
Merge pull request #6266 from erik-krogh/mootools-doc
...
JS: add missing qldoc in MooTools.qll
2021-07-13 10:39:21 +02:00
Anders Schack-Mulligen
be96647f78
Merge pull request #6256 from hvitved/dataflow/summary-node-type-join-order
...
Data flow: Fix bad join-orders in `summaryNodeType`
2021-07-13 10:24:30 +02:00
Erik Krogh Kristensen
07bc5856db
add the cwd option from read-pkg as sink for path-injection
2021-07-12 23:43:15 +02:00
Erik Krogh Kristensen
cadbdcff0a
add missing qldoc in MooTools.qll
2021-07-12 23:20:51 +02:00
Robert Marsh
61ee4af66c
Merge pull request #6159 from MathiasVP/more-effective-barriers-in-bounded-predicate
...
C++: More effective barriers in the `bounded` predicate for CWE-190
2021-07-12 11:59:37 -07:00
Mathias Vorreiter Pedersen
7da7ec60d9
C++: Inline predicates from 'Bounded.qll'.
2021-07-12 19:09:33 +02:00
Chris Smowton
2bd58d6ba7
Improve header comment
2021-07-12 18:09:23 +01:00
Chris Smowton
cc4401b453
Add models of JsonPointer, JsonMergeDiff and JsonPatchBuilder
2021-07-12 18:08:45 +01:00
Chris Smowton
539859497b
Add models of JsonMergePatch, JsonPatchBuilder and JsonPointer
2021-07-12 17:39:51 +01:00
Robin Neatherway
2c14c982d8
Apply suggestions from code review
...
Co-authored-by: Aditya Sharad <6874315+adityasharad@users.noreply.github.com >
2021-07-12 17:34:52 +01:00
Chris Smowton
6bf931392b
Add missing model of JsonObjectBuilder.remove
2021-07-12 17:13:39 +01:00
Taus
1decf23785
Python: Fix bad join order for sensitive data
...
Not the prettiest of solutions, but it does the job. Basically, we were
calculating (and re-calculating) the same big relation between strings
and regexes and then checking whether the latter matched the former.
This resulted in tuple counts like the following:
```
[2021-07-12 16:09:24] (12s) Tuple counts for SensitiveDataSources::SensitiveDataModeling::SensitiveVariableAssignment#class#ff#shared/4@7489c6:
4918074 ~0% {4} r1 = JOIN SensitiveDataHeuristics::HeuristicNames::maybeSensitiveRegexp#ff WITH Flow::NameNode::getId_dispred#ff CARTESIAN PRODUCT OUTPUT Lhs.0 'arg0', Lhs.1 'arg1', Rhs.0, Rhs.1 'arg3'
2654 ~0% {4} r2 = JOIN r1 WITH PRIMITIVE regexpMatch#bb ON Lhs.3 'arg3',Lhs.1 'arg1'
return r2
```
(The above being just the bit that handles `DefinitionNode` in
`SensitiveVariableAssignment`, and taking 12 seconds to evaluate.)
By applying a bit of manual inlining and magic, this becomes somewhat
more manageable:
```
[2021-07-12 15:59:44] (1s) Tuple counts for SensitiveDataSources::SensitiveDataModeling::sensitiveString#ff/2@8830e2:
27671 ~2% {3} r1 = JOIN SensitiveDataHeuristics::HeuristicNames::maybeSensitiveRegexp#ff WITH SensitiveDataSources::SensitiveDataModeling::sensitiveParameterName#f CARTESIAN PRODUCT OUTPUT Lhs.0 'classification', Lhs.1, Rhs.0
334012 ~2% {3} r2 = JOIN SensitiveDataHeuristics::HeuristicNames::maybeSensitiveRegexp#ff WITH SensitiveDataSources::SensitiveDataModeling::sensitiveName#f CARTESIAN PRODUCT OUTPUT Lhs.0 'classification', Lhs.1, Rhs.0
361683 ~11% {3} r3 = r1 UNION r2
154644 ~0% {3} r4 = JOIN SensitiveDataHeuristics::HeuristicNames::maybeSensitiveRegexp#ff WITH SensitiveDataSources::SensitiveDataModeling::sensitiveFunctionName#f CARTESIAN PRODUCT OUTPUT Lhs.0 'classification', Lhs.1, Rhs.0
149198 ~1% {3} r5 = JOIN SensitiveDataHeuristics::HeuristicNames::maybeSensitiveRegexp#ff WITH SensitiveDataSources::SensitiveDataModeling::sensitiveStrConst#f CARTESIAN PRODUCT OUTPUT Lhs.0 'classification', Lhs.1, Rhs.0
124257 ~5% {3} r6 = JOIN SensitiveDataHeuristics::HeuristicNames::maybeSensitiveRegexp#ff WITH SensitiveDataSources::SensitiveDataModeling::sensitiveAttributeName#f CARTESIAN PRODUCT OUTPUT Lhs.0 'classification', Lhs.1, Rhs.0
273455 ~21% {3} r7 = r5 UNION r6
428099 ~30% {3} r8 = r4 UNION r7
789782 ~78% {3} r9 = r3 UNION r8
1121 ~77% {3} r10 = JOIN r9 WITH PRIMITIVE regexpMatch#bb ON Lhs.2 'result',Lhs.1
1121 ~70% {2} r11 = SCAN r10 OUTPUT In.0 'classification', In.2 'result'
return r11
```
(The above being the total for all the sensitive names we care about,
taking only 1.2 seconds to evaluate.)
Incidentally, you may wonder why this has _fewer_ results than before.
The answer is control flow splitting -- every sensitively-named
`DefinitionNode` would have been matched in isolation previously. By
pre-matching on just the names of these, we can subsequently join
against those names that are known to be sensitive, which is a much
faster operation.
(We also get the benefit of deduplicating the strings that are matched,
before actually performing the match, so if, say, an attribute name and
a variable name are identical, then we'll only match them once.)
We also exclude all docstrings as relevant string constants, as these
presumably don't actually flow anywhere.
2021-07-12 16:10:49 +00:00
Mathias Vorreiter Pedersen
4fc60aedc6
C++: Relax the restrictions on when '%' is a barrier and accept test changes.
2021-07-12 17:39:12 +02:00
Mathias Vorreiter Pedersen
a6f1f8d3b6
C++: Add testcases demonstrating FPs from real code.
2021-07-12 17:39:12 +02:00
Mathias Vorreiter Pedersen
6a11aa7f2a
Merge pull request #6154 from MathiasVP/more-random-sources-in-uncontrolled-arithmetic
...
C++: Add more random sources in `cpp/uncontrolled-arithmetic`
2021-07-12 17:37:44 +02:00
Robin Neatherway
5d849a9f9d
Add docs for summary type queries
2021-07-12 16:26:21 +01:00
Mathias Vorreiter Pedersen
768b3c84c9
C++: Fix a bug that slipped into fd477383b0.
2021-07-12 17:13:21 +02:00
Erik Krogh Kristensen
899e54fbc9
add support for the slash library
2021-07-12 16:36:54 +02:00
Max Schaefer
ce24215dd5
JavaScript: Improve modelling of Module.prototype._compile sink.
2021-07-12 15:32:21 +01:00
Max Schaefer
70c82c83ac
JavaScript: Make ModuleVarNode and ExportsVarNode more easily accessible.
2021-07-12 15:31:40 +01:00
Taus
a73e382dfe
Python: Prevent bad join in hashlib model
...
I'm not entirely sure what triggered this bad join order, but some
combination of the use of abstract classes and the exclusion of `new`
caused this to go really wrong:
```
WeakSensitiveDataHashing.ql-15:Stdlib::Stdlib::HashlibDataPassedToHashClass#class#ffff ......... 15.5s
```
with the following tuple counts:
```
[2021-07-12 13:20:15] (16s) Tuple counts for Stdlib::Stdlib::HashlibDataPassedToHashClass#class#ffff/4@217901:
148810 ~3% {3} r1 = JOIN DataFlowPublic::CallCfgNode#class#ff#shared WITH project#DataFlowPublic::CallCfgNode::getArg_dispred#fff ON FIRST 1 OUTPUT "hashlib", Lhs.1 'node', Lhs.0 'this'
148810 ~4% {3} r2 = JOIN r1 WITH ApiGraphs::API::Impl::MkModuleImport#ff@staged_ext ON FIRST 1 OUTPUT Rhs.1, Lhs.1 'node', Lhs.2 'this'
7589310 ~486% {4} r3 = JOIN r2 WITH ApiGraphs::API::Impl::edge#2#fff@staged_ext ON FIRST 1 OUTPUT Lhs.1 'node', Lhs.2 'this', Rhs.1, InverseAppend("getMember(\"","\")",Rhs.1)
6994070 ~490% {4} r4 = SELECT r3 ON In.3 != "new"
6994070 ~4503% {2} r5 = SCAN r4 OUTPUT In.1 'this', In.0 'node'
22 ~4% {3} r6 = JOIN DataFlowPublic::CallCfgNode#class#ff#shared WITH project#DataFlowPublic::CallCfgNode::getArgByName_dispred#fff ON FIRST 1 OUTPUT "hashlib", Lhs.1 'node', Lhs.0 'this'
22 ~0% {3} r7 = JOIN r6 WITH ApiGraphs::API::Impl::MkModuleImport#ff@staged_ext ON FIRST 1 OUTPUT Rhs.1, Lhs.1 'node', Lhs.2 'this'
1122 ~437% {4} r8 = JOIN r7 WITH ApiGraphs::API::Impl::edge#2#fff@staged_ext ON FIRST 1 OUTPUT Lhs.1 'node', Lhs.2 'this', Rhs.1, InverseAppend("getMember(\"","\")",Rhs.1)
1034 ~460% {4} r9 = SELECT r8 ON In.3 != "new"
1034 ~4549% {2} r10 = SCAN r9 OUTPUT In.1 'this', In.0 'node'
6995104 ~4503% {2} r11 = r5 UNION r10
5213851 ~4683% {3} r12 = JOIN r11 WITH ApiGraphs::API::Node::getACall_dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'hashClass', Lhs.1 'node', Lhs.0 'this'
6478480 ~4646% {6} r13 = JOIN r12 WITH ApiGraphs::API::Impl::edge#2#fff_201#join_rhs ON FIRST 1 OUTPUT "hashlib", Rhs.1, Lhs.1 'node', Lhs.2 'this', Lhs.0 'hashClass', Rhs.2
1410 ~4693% {5} r14 = JOIN r13 WITH ApiGraphs::API::Impl::MkModuleImport#ff@staged_ext ON FIRST 2 OUTPUT Lhs.2 'node', Lhs.3 'this', Lhs.4 'hashClass', Lhs.5, InverseAppend("getMember(\"","\")",Lhs.5)
1222 ~4540% {5} r15 = SELECT r14 ON In.4 'hashName' != "new"
1222 ~4540% {4} r16 = SCAN r15 OUTPUT In.1 'this', In.4 'hashName', In.2 'hashClass', In.0 'node'
```
By factoring out the insides, the biggest iteration now looks like
```
[2021-07-12 14:17:36] (0s) Tuple counts for Stdlib::Stdlib::HashlibDataPassedToHashClass#class#ffff/4@85bb21:
148810 ~0% {2} r1 = JOIN DataFlowPublic::CallCfgNode#class#ff#shared WITH project#DataFlowPublic::CallCfgNode::getArg_dispred#fff ON FIRST 1 OUTPUT Lhs.1 'node', Lhs.0 'this'
148810 ~0% {2} r2 = JOIN r1 WITH Stdlib::Stdlib::hashlibMember#ff#nonempty CARTESIAN PRODUCT OUTPUT Lhs.1 'this', Lhs.0 'node'
22 ~0% {2} r3 = JOIN DataFlowPublic::CallCfgNode#class#ff#shared WITH project#DataFlowPublic::CallCfgNode::getArgByName_dispred#fff ON FIRST 1 OUTPUT Lhs.1 'node', Lhs.0 'this'
22 ~0% {2} r4 = JOIN r3 WITH Stdlib::Stdlib::hashlibMember#ff#nonempty CARTESIAN PRODUCT OUTPUT Lhs.1 'this', Lhs.0 'node'
148832 ~0% {2} r5 = r2 UNION r4
110933 ~2% {3} r6 = JOIN r5 WITH ApiGraphs::API::Node::getACall_dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'hashClass', Lhs.1 'node', Lhs.0 'this'
26 ~0% {4} r7 = JOIN r6 WITH Stdlib::Stdlib::hashlibMember#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.2 'this', Rhs.1 'hashName', Lhs.0 'hashClass', Lhs.1 'node'
return r7
```
(The tuple counts themselves are not directly comparable.)
2021-07-12 14:22:21 +00:00
Rasmus Wriedt Larsen
47f5c977cf
Python: Port py/stack-trace-exposure to use proper source/sink customization
2021-07-12 16:22:10 +02:00
Rasmus Wriedt Larsen
934007c811
Python: Port py/unsafe-deserialization to use proper source/sink customization
2021-07-12 16:22:10 +02:00
Rasmus Wriedt Larsen
7c71223f7f
Python: Port py/url-redirection to use proper source/sink customization
2021-07-12 16:22:10 +02:00
Rasmus Wriedt Larsen
b4c0b1b525
Python: Port py/reflective-xss to use proper source/sink customization
2021-07-12 16:22:10 +02:00
Rasmus Wriedt Larsen
62e4445f45
Python: Port py/command-line-injection to use proper source/sink customization
2021-07-12 16:22:10 +02:00
Rasmus Wriedt Larsen
7f53781ba7
Python: Port py/code-injection to use proper source/sink customization
2021-07-12 16:22:10 +02:00
Rasmus Wriedt Larsen
0be280c608
Python: Port py/sql-injection to use proper source/sink customization
2021-07-12 16:22:10 +02:00
Tom Hvitved
6ba6d9931c
C#: Skip dotnet restore in standalone extraction when nuget_restore: false is set
2021-07-12 15:16:16 +02:00
Mathias Vorreiter Pedersen
be06230b43
Merge branch 'main' into path-sensitive-stack-variable-reachability-analysis
2021-07-12 14:46:44 +02:00
Asger F
d8927e5612
Apply suggestions from code review
...
Co-authored-by: Erik Krogh Kristensen <erik-krogh@github.com >
2021-07-12 14:23:58 +02:00
Erik Krogh Kristensen
c4f5009917
make explicit calls to member predicates
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2021-07-12 14:22:08 +02:00
Erik Krogh Kristensen
d22ebadcf2
add support for many more case changing libraries
2021-07-12 14:09:34 +02:00
Mathias Vorreiter Pedersen
dec747f6f0
Merge branch 'main' into more-random-sources-in-uncontrolled-arithmetic
2021-07-12 13:48:48 +02:00
Erik Krogh Kristensen
a5d1325d3f
add support for the change-case library
2021-07-12 13:37:06 +02:00
Taus
1e79091120
Python: Fix typo
2021-07-12 11:33:52 +00:00
Mathias Vorreiter Pedersen
c47d680d65
Merge pull request #6168 from criemen/fix-warning
...
C++: Fix warning from compile-query.
2021-07-12 12:41:29 +02:00
Tom Hvitved
47d126e681
Data flow: Sync
2021-07-12 12:09:51 +02:00
Tom Hvitved
09daf86e33
Data flow: Fix bad join-orders in summaryNodeType
2021-07-12 12:09:06 +02:00
Taus
32062d83ad
Python: Make deprecation warning more prominent
2021-07-12 10:00:21 +00:00
Taus
200da983d9
Python: Add change note
2021-07-12 09:59:17 +00:00
Mathias Vorreiter Pedersen
04dcef5ec4
C++: Include ComplementExpr as a sanitizer.
2021-07-12 11:53:47 +02:00
Cornelius Riemenschneider
d34f7b941a
C++: Address code review.
2021-07-12 11:43:43 +02:00
Cornelius Riemenschneider
e821b8be99
C++: Fix warning from compile-query.
2021-07-12 11:43:43 +02:00
Mathias Vorreiter Pedersen
d2cc0d3925
C++: Fix annotations.
2021-07-12 11:30:43 +02:00
Erik Krogh Kristensen
bef7e61e76
add support for the fast-json-stringify library
2021-07-12 11:13:01 +02:00
Erik Krogh Kristensen
40aa970db3
add support for the strip-json-comments library
2021-07-12 11:08:50 +02:00
Erik Krogh Kristensen
23c3be6860
add support for the json-cycle library
2021-07-12 11:03:39 +02:00
Asger Feldthaus
5df961c4ed
JS: Add change note
2021-07-12 10:53:41 +02:00
Erik Krogh Kristensen
94cbc4b2c0
add step through the fclone library
2021-07-12 10:51:43 +02:00
Erik Krogh Kristensen
f99a33598f
add support for the safe-stable-stringify library
2021-07-12 10:51:43 +02:00
Erik Krogh Kristensen
d6300bced3
add support for the replicator library
2021-07-12 10:51:43 +02:00
Erik Krogh Kristensen
babf657d9d
add support for the teleport-javascript library
2021-07-12 10:51:43 +02:00
Erik Krogh Kristensen
9261b7f859
add support for the flatted library
2021-07-12 10:51:43 +02:00
Erik Krogh Kristensen
1792c9a611
add taint step through the prettyjson library
2021-07-12 10:51:43 +02:00
Erik Krogh Kristensen
0bfff1eb7e
add support for the json5 library
2021-07-12 10:51:42 +02:00
Erik Krogh Kristensen
cb3bd4901b
add taint step through the json2csv library
2021-07-12 10:51:42 +02:00
Tom Hvitved
db4c8dfd3c
Merge pull request #6208 from hvitved/csharp/query-modules
...
C#: Add `Query` suffix to libraries that should only be imported by queries
2021-07-12 10:26:45 +02:00
Anders Schack-Mulligen
0e913a19aa
Merge pull request #6220 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2021-07-12 09:54:18 +02:00
github-actions[bot]
56419bc74b
Add changed framework coverage reports
2021-07-12 00:06:55 +00:00
Erik Krogh Kristensen
440e4b9a92
enable unicode support in the Python ReDoS query
2021-07-11 21:28:40 +02:00
ihsinme
eedcb0171d
Add files via upload
2021-07-05 11:14:51 +03:00
ihsinme
b10bdf1475
Add files via upload
2021-07-05 11:13:05 +03:00
Tom Hvitved
4de4753c67
C#: Remove Query.qll top-level modules
2021-07-04 09:35:27 +02:00
Tom Hvitved
c812d4e4e8
C#: Add Query suffix to libraries that should only be imported by queries
2021-07-04 09:35:26 +02:00
Taus
a65d40e36f
Merge branch 'main' into python-add-typetrackingnode
2021-07-02 20:55:37 +02:00
Taus
55d822cc56
Python: Add TypeTrackingNode
...
Splits `ModuleVariableNode` away from `LocalSourceNode`, instead
creating a class `TypeTrackingNode` that encapsulates both of these.
This means we no longer have module variable nodes as part of
`LocalSourceNode` (which is good, since they have no "local" aspect to
them), and hence we can have `LocalSourceNode` inherit directly from
`ExprNode` (which makes the API a bit nicer).
Unfortunately these are breaking changes, so we can't actually fulfil
the above two desiderata until the `track` and `backtrack` methods on
`LocalSourceNode` have been fully deprecated. For this reason, we
preserve the present implementation of `LocalSourceNode`, and instead
lay the foundation for switching over in the future, by deprecating
`track` and `backtrack` on `LocalSourceNode`.
2021-07-02 18:00:33 +00:00
CodeQL CI
1d56748eed
Merge pull request #6200 from yoff/pythonJS-make-expbtlib-private
...
Approved by RasmusWL, esbena
2021-07-02 09:09:18 -07:00
Joe Farebrother
4d459f24d9
Fix up tests and update models
2021-07-02 14:46:33 +01:00
Joe Farebrother
fc017b7934
Use ArrayElement of in flow step specifications
2021-07-02 14:46:31 +01:00
Joe Farebrother
15415931ce
Use Argument ranges in CSV rows
2021-07-02 14:46:03 +01:00
Joe Farebrother
5325622813
Convert sql-related flow steps to CSV
2021-07-02 14:46:03 +01:00
Anders Schack-Mulligen
3c6604daa7
Java: Fix subtypes interpretation.
2021-07-02 14:43:56 +02:00
Anders Schack-Mulligen
6813a79423
Java: Add test for override of Map.put highlighting problem.
2021-07-02 14:41:59 +02:00
Anders Schack-Mulligen
55ebbc3e01
Java: Add signature to Map.put.
2021-07-02 14:41:32 +02:00
Geoffrey White
cfbfe924ef
C++: Replace cached with more efficient QL.
2021-07-02 13:03:46 +01:00
CodeQL CI
a25933aa56
Merge pull request #5926 from RasmusWL/small-cleanups
...
Approved by tausbn
2021-07-02 04:59:54 -07:00
Asger Feldthaus
457ce14ca6
JS: Summarize steps into captured variables
2021-07-02 13:42:42 +02:00
Rasmus Wriedt Larsen
3c8c2d1da1
Merge pull request #6209 from yoff/python-add-redos-queryhelp
...
Python: port redos .qhelp from js
2021-07-02 13:42:39 +02:00
Asger Feldthaus
093ff41170
JS: Update tests
2021-07-02 13:31:17 +02:00
Rasmus Wriedt Larsen
81fab487a4
Python: Apply suggestions from code review
...
Co-authored-by: Taus <tausbn@github.com >
2021-07-02 13:27:41 +02:00
Rasmus Wriedt Larsen
22c155687e
Python: Fix code after removing getPostUpdateNode
2021-07-02 13:25:25 +02:00
Rasmus Wriedt Larsen
7a6eee50ff
Revert "Python: Add getPostUpdateNode to DataFlow::Node"
...
This reverts commit 9137f04bd3 .
2021-07-02 13:23:02 +02:00
Rasmus Wriedt Larsen
e56dfe75bd
Python: AttrRef getOjbect/1 -> accesses/2
...
See this thread for discussion:
https://github.com/github/codeql/pull/5926#discussion_r635384981
2021-07-02 13:21:12 +02:00
Asger Feldthaus
ff49aaa684
JS: Do not capture own variables
2021-07-02 13:17:32 +02:00
Asger Feldthaus
8befb03cb9
JS: Add test case with spurious call/return flow
2021-07-02 13:17:32 +02:00
CodeQL CI
38f763dd6a
Merge pull request #6192 from asgerf/js/string-literals-as-source-nodes
...
Approved by esbena
2021-07-02 03:47:20 -07:00
Rasmus Lerchedahl Petersen
6f2642607e
Python: make the import of RedosUtil public
...
This mirrors `SuperlinearBacktracking.qll`
An alternative is to keep it private and import it again
in the query files.
2021-07-02 12:32:04 +02:00
Chris Smowton
6823855e9c
Merge pull request #6203 from smowton/smowton/admin/avoid-config-imports-from-qlls
...
Java: Reduce DataFlow Configuration pollution from Random.qll and JexlInjection.qll
2021-07-02 11:27:27 +01:00
Chris Smowton
ca1bf7791e
Merge pull request #6210 from tamasvajk/fix/large-coverage-comment
...
Fix markdown link in framework coverage PR comment
2021-07-02 11:27:17 +01:00
Rasmus Lerchedahl Petersen
77c329fb0f
Python/JS: Make much more private
2021-07-02 12:13:52 +02:00
Tamás Vajk
4a5fe75d8c
Merge pull request #6207 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2021-07-02 12:00:31 +02:00
Asger Feldthaus
c3b7d85341
JS: Update test output after rebasing
2021-07-02 11:57:45 +02:00
Tamas Vajk
f3f069fed5
Fix markdown link in framework coverage PR comment
2021-07-02 11:56:00 +02:00
Asger Feldthaus
7249d2892a
JS: Add comment to VueTemplateSink class
2021-07-02 11:55:56 +02:00
Asger Feldthaus
0105b829c4
JS: Update test output
2021-07-02 11:55:56 +02:00
Asger Feldthaus
6d9b96f6e8
JS: Dont use getALocalSource() when marking Vue template sinks
2021-07-02 11:55:56 +02:00
Asger Feldthaus
472b41f5e1
JS: Update React to handle string literals being SourceNodes
2021-07-02 11:55:56 +02:00
Asger Feldthaus
39c204ac39
JS: Treat string literals as source nodes
2021-07-02 11:55:56 +02:00
Rasmus Lerchedahl Petersen
1fc9638486
Python: port redos .qhelp from js
2021-07-02 11:36:46 +02:00
Chris Smowton
a51154a8ef
Deduplicate Jexl configuration
2021-07-02 10:02:28 +01:00
Chris Smowton
d022c57903
Add change note
2021-07-02 10:02:28 +01:00
Chris Smowton
bbd3ecb768
Add docs to RandomQuery.qll
2021-07-02 10:02:28 +01:00
Chris Smowton
e661fc08d3
Split Android XSS sink defintions out of XSS.qll
...
This removes one of the routes by which XSS.qll is always in scope, and so its dataflow configuration is too -- however it is still always in scope because JaxWS.qll imports it.
2021-07-02 10:02:25 +01:00
Chris Smowton
747a8e4157
Split up JexlInjection.qll
...
This avoids a DataFlow2::Configuration being in scope for all queries via the import from ExternalFlow.qll
2021-07-02 10:01:51 +01:00
Chris Smowton
643f7dfb87
Split up Random.qll
...
This prevents bringing a dataflow config into scope from utility libraries.
2021-07-02 10:00:49 +01:00
Asger Feldthaus
8177b5747a
JS: Bump TypeScript version to 4.3.5
2021-07-02 10:57:27 +02:00
Anders Schack-Mulligen
80124df78e
Merge pull request #5487 from joefarebrother/sql-sinks
...
Java: Convert SQL sinks to CSV format
2021-07-02 10:51:09 +02:00
CodeQL CI
61ee193dc0
Merge pull request #6197 from asgerf/js/recompose
...
Approved by esbena
2021-07-02 00:58:06 -07:00
Esben Sparre Andreasen
0cf9c95981
Merge pull request #6193 from esbena/esbena/mootools-xss
...
JS: add Mootools XSS sinks
2021-07-02 09:24:56 +02:00
Anders Schack-Mulligen
4e1155cfd2
Merge pull request #6202 from smowton/smowton/admin/cleanup-duplicated-experimental-query
...
Deduplicate shared body of regular and experimental versions of `java/command-line-injection` query.
2021-07-02 09:23:50 +02:00
Anders Schack-Mulligen
f9da044e54
Merge pull request #6185 from aschackmull/java/perf-fix-request-forgery
...
Java: Fix bad magic.
2021-07-02 09:07:07 +02:00
github-actions[bot]
55aff21587
Add changed framework coverage reports
2021-07-02 00:09:02 +00:00
Taus
a9c1d3ba86
Python: Clean up LocalSourceNode charpred
...
This results in the same set of nodes, but is a bit more clear about
the reasons why. For instance, `ModuleVariableNode`s are included
directly, and not in a roundabout way by virtue of not having flow to
them. This should hopefully be a bit more robust as well.
2021-07-01 19:12:18 +00:00
Geoffrey White
41a540e4e0
C++: Make isMicrosoft() faster.
2021-07-01 17:42:02 +01:00
Taus
f151338def
Merge pull request #6198 from RasmusWL/fix-cleartext-logging
...
Python: Some minor fixes to `py/clear-text-logging-sensitive-data`
2021-07-01 18:28:25 +02:00
Chris Smowton
8b7db8a8cc
Merge pull request #5408 from p0wn4j/urlclassloader-webclient-ssrf-sinks
...
Java: Add URLClassLoader, WebClient SSRF sinks
2021-07-01 16:14:22 +01:00
Tamás Vajk
05842dcdb3
Merge pull request #6181 from tamasvajk/feature/test-options-files
...
C#: Start using 'options' files in tests
2021-07-01 17:03:27 +02:00
Taus
336c0662ef
Python: Remove pointless LocalSourceNodes
...
This gets rid of a large number of nodes that seemingly have no impact.
2021-07-01 15:02:31 +00:00
Joe Farebrother
1e82c607ef
Mark failing tests as missing
2021-07-01 15:29:47 +01:00
Tamas Vajk
5e2770339f
Add adjusted expected files
2021-07-01 16:09:11 +02:00
Tamas Vajk
03d1a3e0ad
Trim test files + remove duplicate newlines
2021-07-01 16:09:11 +02:00
Tamas Vajk
4900ecfabe
Manual fixes
2021-07-01 16:09:11 +02:00
Tamas Vajk
c29d11087b
C#: Start using 'options' files in tests
2021-07-01 16:08:47 +02:00
Chris Smowton
e0a7f6e14f
Fix URLClassLoader test
2021-07-01 15:03:38 +01:00
Chris Smowton
d5a9f3d87b
Deduplicate shared body of regular and experimental versions of java/command-line-injection query.
2021-07-01 14:53:56 +01:00
Joe Farebrother
160f3b4312
Remove ArrayElement from sink specifications
2021-07-01 14:41:39 +01:00
Joe Farebrother
4bea33402c
Rename test labels for more clarity
2021-07-01 14:38:20 +01:00
Joe Farebrother
1a06c132be
Use ArrayElement of to handle arargs case in SpringJdbc.qll
2021-07-01 14:38:20 +01:00
Joe Farebrother
29f82fc81f
Use ArrayElementOf in Android sinks
2021-07-01 14:38:19 +01:00
Joe Farebrother
f4a59cc2e3
Convert tainted arrays to arrays of tainted elements in tests
2021-07-01 14:38:19 +01:00
Joe Farebrother
865477d020
Convert android tests to inline expectations
2021-07-01 14:38:19 +01:00
Joe Farebrother
95d8018a43
Include overrides for SQLiteQueryBuilder sinks
2021-07-01 14:38:19 +01:00
Joe Farebrother
0d4f8aedb8
Use Argument ranges in CSV rows
2021-07-01 14:38:19 +01:00
Joe Farebrother
7926d16844
Convert SQL sinks to CSV format
2021-07-01 14:38:19 +01:00
Rasmus Lerchedahl Petersen
eee56e0156
Python/JS: Make most of the new library private
2021-07-01 15:34:06 +02:00
Chris Smowton
44e8dd9ec5
Add change note
2021-07-01 13:36:00 +01:00
Anders Schack-Mulligen
cda5c22f6e
Merge pull request #5590 from github/sauyon/java-spring-errors
...
Add models for Spring validation.Errors
2021-07-01 14:29:49 +02:00
Asger Feldthaus
993cc29275
JS: Autoformat
2021-07-01 14:22:44 +02:00
Anders Schack-Mulligen
37f8794d01
Merge pull request #6165 from edoardopirovano/fix-regression
...
Performance: Improve join order in data flow library
2021-07-01 14:13:18 +02:00
Rasmus Wriedt Larsen
b0309dd321
Python: Limit SensitiveDataSources to prevent _some_ cross-talk
2021-07-01 12:08:12 +02:00
Rasmus Wriedt Larsen
f64e58a21c
Python: Fix a QLDoc for SensitiveDataSources
2021-07-01 12:05:59 +02:00
Rasmus Wriedt Larsen
d7e3ebb15c
Python: Add tests showing sensitive data cross-talk
2021-07-01 12:05:51 +02:00
Esben Sparre Andreasen
85b9003af4
JS: add Mootools XSS sinks
2021-07-01 09:17:27 +02:00
yo-h
d325d2ae81
Merge pull request #6180 from tamasvajk/fix/coverage-report-search-path
...
Upgrade database in coverage report jobs
2021-06-30 21:00:09 -04:00
p0wn4j
0db7496617
Add URLClassLoader and Spring WebClient SSRF sinks
2021-07-01 03:34:14 +04:00
Rasmus Wriedt Larsen
d9e2f504f8
Python: Fix clear text logging sink
...
No need to restrict it to arguments that are calls
2021-06-30 20:31:17 +02:00
Taus
e4af14638b
Merge pull request #6175 from yoff/python-port-ReDoS
...
Python: port ReDoS queries from Javascript
2021-06-30 16:26:07 +02:00
Chris Smowton
753c878f48
Also cover jakarta version of javax.json, and some missed methods
2021-06-30 15:04:15 +01:00
yoff
6a77b890af
Merge pull request #6155 from RasmusWL/port-cleartext-queries
...
Python: Port cleartext queries
2021-06-30 15:52:34 +02:00
Taus
fc71a648c0
Merge pull request #6092 from RasmusWL/markupsafe-modeling
...
Python: Add `MarkupSafe` model
2021-06-30 15:52:10 +02:00
Anders Schack-Mulligen
d8b017e6c0
Merge pull request #6036 from atorralba/atorralba/spring-beans
...
Java: Flow summaries for Spring's Bean Properties classes
2021-06-30 15:41:24 +02:00
Anders Schack-Mulligen
b8b6f05603
Merge pull request #6187 from aschackmull/java/perf-fix-variable-getinit
...
Java: Fix bad join-order.
2021-06-30 15:39:00 +02:00
Rasmus Lerchedahl Petersen
a176e6ac30
Python: comment out temporarily unused predicate
2021-06-30 15:28:31 +02:00
Asger Feldthaus
376efaa46c
JS: Change note
2021-06-30 15:10:52 +02:00
Asger Feldthaus
780453008a
JS: Drive-by fixes in ComposedFunctions.qll
2021-06-30 15:07:59 +02:00
Asger Feldthaus
7e2871bfdf
JS: Propagate React components through recompose HOCs
2021-06-30 15:05:28 +02:00
Rasmus Lerchedahl Petersen
45e30b0c06
Python: comment out temporarily unused predicate
2021-06-30 15:04:37 +02:00
Rasmus Lerchedahl Petersen
c306cee04e
Python: mimic JS file hierarchy
2021-06-30 15:03:22 +02:00
Rasmus Lerchedahl Petersen
651f8abba0
Python: Avoid multiple results for toString
2021-06-30 14:39:49 +02:00
Rasmus Wriedt Larsen
c2708176b1
Python: Support %-style formatting for MarkupSafe
2021-06-30 14:15:41 +02:00
Rasmus Wriedt Larsen
0a4efd0e86
Python: Add %-style formatting tests for MarkupSafe
2021-06-30 14:13:59 +02:00
Rasmus Wriedt Larsen
c84658dff1
Python: Use MethodCallNode for MarkupSafe string-format
2021-06-30 13:58:09 +02:00
Rasmus Wriedt Larsen
d6e8fafdbd
Python: Proper sorting in Frameworks.qll
2021-06-30 13:55:26 +02:00
Rasmus Wriedt Larsen
075953860b
Merge branch 'main' into markupsafe-modeling
2021-06-30 13:55:08 +02:00
Anders Schack-Mulligen
f03d460e95
Java: Fix bad join-order.
2021-06-30 13:42:45 +02:00
Tamas Vajk
dc63f23d6b
Fix review findings
2021-06-30 13:40:36 +02:00
Tamas Vajk
6a35c8c5f4
Upgrade database in coverage report jobs
2021-06-30 13:40:36 +02:00
Tamás Vajk
10a6089739
Merge pull request #6148 from tamasvajk/feature/try-csv-source-models
...
C#: Start using CSV based flow models
2021-06-30 12:58:42 +02:00
Tony Torralba
a3e1b139c3
Fix spring stubs location
2021-06-30 12:56:45 +02:00
Tony Torralba
0bb9e464b2
Merge branch 'main' into atorralba/spring-beans
2021-06-30 12:55:10 +02:00
Rasmus Lerchedahl Petersen
72986e1e28
Python: Add some comments on the booelan sweep
...
pattern
2021-06-30 12:50:36 +02:00
Rasmus Lerchedahl Petersen
4ca0ee87f0
Merge branch 'main' of github.com:github/codeql into python-port-ReDoS
2021-06-30 12:28:54 +02:00
Rasmus Lerchedahl Petersen
52d91917aa
Merge branch 'python-port-ReDoS' of github.com:yoff/codeql into python-port-ReDoS
2021-06-30 12:25:59 +02:00
Rasmus Lerchedahl Petersen
09e71cfdfd
Python: update test expectations
2021-06-30 12:25:29 +02:00
Rasmus Lerchedahl Petersen
6dfbf80494
Python: Disable use of toUnicode
...
until supporting CLI is released
2021-06-30 12:21:52 +02:00
Rasmus Wriedt Larsen
e5d65992b4
Python: Use DefinitionNode instead of Assign
...
Based on https://github.com/github/codeql/pull/6155#discussion_r660964666 :
> Hmm... Would it be better to do this using DefinitionNode instead of
> Assign? The latter is fairly limited in what it can represent, and also
> raises questions of whether this definition is sound with regard to
> control-flow splitting.
2021-06-30 12:08:32 +02:00
yoff
c19522e921
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2021-06-30 11:49:45 +02:00
Tamas Vajk
0946ae2ae9
Fix review findings
2021-06-30 11:39:51 +02:00
Anders Schack-Mulligen
e235e151f1
Java: Fix bad magic.
2021-06-30 11:09:08 +02:00
Geoffrey White
4a8299e5d0
C++: Change note.
2021-06-30 09:21:10 +01:00
Tony Torralba
9d64cadb50
Adapt tests after applying changes from code review
2021-06-30 10:02:03 +02:00
Tony Torralba
b64b8ecec2
Apply suggestions from code review
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2021-06-30 09:52:22 +02:00
Anders Schack-Mulligen
374859efb4
Merge pull request #6156 from smowton/smowton/feature/jax-rs-content-type-sensitivity
...
Jax RS XSS Tests
2021-06-30 09:52:07 +02:00
Tamás Vajk
a0e768bb43
Merge pull request #6172 from tamasvajk/fix/csv-comment-again
...
Fix CSV framework coverage commenter workflow
2021-06-30 09:10:47 +02:00
Tom Hvitved
22dd53f245
Merge pull request #6167 from hvitved/csharp/trap-stack-preprocessor-conditions
...
C#: Add active preprocessor conditions as suffix in all TRAP `.push` instructions
2021-06-30 08:34:47 +02:00
Sauyon Lee
52d1901d6e
Adjust validation models to reflect array parameters
2021-06-29 12:01:24 -07:00
Sauyon Lee
52b24118b3
Add tests for Spring validation.Errors
2021-06-29 12:01:23 -07:00
Geoffrey White
dcc7a6360f
C++: Simplify a bit and remove two noopts that don't seem to make a difference.
2021-06-29 19:05:13 +01:00
Edoardo Pirovano
8354f66c29
Performance: Improve join order in data flow library
2021-06-29 18:23:22 +01:00
Geoffrey White
5bf7e453e6
C++: Tidy up WrongTypeFormatArguments.ql somewhat.
2021-06-29 16:45:47 +01:00
Geoffrey White
6e49891ed9
C++: Accept Microsoft/non-Microsoft format specifiers on the opposite platform.
2021-06-29 16:45:46 +01:00
Chris Smowton
bb5fefa47f
Sync FlowSummaryImpl.qll
2021-06-29 15:59:55 +01:00
Chris Smowton
47ccb19b84
SSV -> CSV everywhere
...
While these are semicolon-delimited, we use CSV as a generic term for delimited values
2021-06-29 15:59:43 +01:00
Chris Smowton
92ab650b7d
Use new interpretSpec/2 predicate where appropriate
2021-06-29 15:59:43 +01:00
Chris Smowton
28ab4c083b
Make interpretSpec/3 private again
2021-06-29 15:59:43 +01:00
Chris Smowton
c94c69415f
Document Content::hasLocationInfo
2021-06-29 15:59:43 +01:00
Chris Smowton
cf7c966ea7
GenerateFlowTestCase: make imports private
2021-06-29 15:59:43 +01:00
Chris Smowton
5a71812001
Adjust import
...
Type Content has moved into DataFlowUtil
2021-06-29 15:59:43 +01:00
Chris Smowton
95b640db20
Resolve missing qldoc errors
...
Document some, make some private, and delete the needless modules surrounding the spring models.
2021-06-29 15:59:43 +01:00
Chris Smowton
036733d3e7
Sync FlowSummaryImpl.qll
2021-06-29 15:59:43 +01:00
Chris Smowton
eda7bb6aa2
Fix: restrict generated test cases to requested rows
2021-06-29 15:59:14 +01:00
Chris Smowton
bd1bd8cf08
Switch to an abstract unit / predicate approach to specifying rows to generate tests for
...
This enables moving this code into the qll file, rather than having to specify a query predicate in the .ql
2021-06-29 15:59:14 +01:00
Chris Smowton
f3868887b8
Test case generator: rework to use a less-invasive ExternalFlow API
...
Some predicate/type names and docs are also improved
2021-06-29 15:59:14 +01:00
Chris Smowton
59725d635b
Test case generator: improve error reporting
...
We now distinguish cases where SSV rows are not in scope at all from those where they don't identify a known type or method, or where input or output specs could not be parsed.
2021-06-29 15:59:14 +01:00
Chris Smowton
dff9c717bc
Fix test case generation when no auxiliary support functions are required
2021-06-29 15:59:14 +01:00
Chris Smowton
c49d5253f0
Revise ExternalFlow and FlowSummaryImpl API used for test generation
2021-06-29 15:59:14 +01:00
Chris Smowton
b1af90991d
Add help text to GenerateFlowTestCase.py
2021-06-29 15:59:14 +01:00
Chris Smowton
5f1a491516
Fix test-generation when a type variable's bound is itself a type variable
...
For example, class G<A, B extends A>
2021-06-29 15:59:14 +01:00
Chris Smowton
e542e71cf5
Fix testing methods with 2-qualifier or deeper input specifications
...
For example, an identity function on lists-of-maps, which might convey MapValue of Element of Argument[0] to MapValue of Element of ReturnValue, requiring `newWithElement(newWithMapValue(source())` on the input side but `getMapValue(getElement(out))` on the output side.
2021-06-29 15:59:13 +01:00
Chris Smowton
0d8124bc95
Document test generator
2021-06-29 15:59:13 +01:00
Chris Smowton
617201930d
Always use source declarations (i.e, raw types) when naming types in tests
2021-06-29 15:59:13 +01:00
Chris Smowton
e8acfec070
Fix formatting of instance variables
2021-06-29 15:59:13 +01:00
Chris Smowton
e2cfc17bfe
Fix output of nested and generic type names, and disambiguate overloads where necessary
2021-06-29 15:59:11 +01:00
Chris Smowton
6d9661f412
Fix open-for-writing statement
2021-06-29 15:58:39 +01:00
Chris Smowton
d6edfd50da
Determine when a model row didn't produce any tests; fix the model specifications revealed defective by this feature.
2021-06-29 15:55:34 +01:00
Chris Smowton
6360e0b7c4
Add flow-through test case generator
2021-06-29 15:55:13 +01:00
Chris Smowton
6fee40cfde
Add flow-through test case generator
2021-06-29 15:55:13 +01:00
Chris Smowton
ba5dc3cdbc
Add models of the javax.json package
2021-06-29 15:21:01 +01:00
Rasmus Wriedt Larsen
94bcda3bae
Python: Highlight problem picking DataFlow::Node for Assign
2021-06-29 15:32:16 +02:00
Sauyon Lee
b76f761e56
Import springvalidation in ExternalFlow.qll
2021-06-29 05:51:58 -07:00
Sauyon Lee
aa0fbce28e
Remove unnecessary code from stubs
2021-06-29 05:51:38 -07:00
Sauyon Lee
92f1c51653
fixup! Add models for Spring validation.Errors
...
Rename SpringErrors to SpringValidation
2021-06-29 05:51:36 -07:00
Sauyon Lee
534ab86900
Add models for Spring validation.Errors
2021-06-29 05:51:21 -07:00
Sauyon Lee
fe2b73ed72
Stub more of Spring
2021-06-29 05:51:19 -07:00
Chris Smowton
d4bb8a70c2
Merge pull request #5976 from github/sauyon/java/spring-util
...
Model Spring `util`
2021-06-29 13:50:12 +01:00
Anders Schack-Mulligen
ad8bef5177
Update java/ql/src/semmle/code/java/frameworks/spring/SpringUtil.qll
2021-06-29 14:08:48 +02:00
Chris Smowton
48d4493146
Fix test indentation
2021-06-29 12:42:20 +01:00
Chris Smowton
9551321592
Fix LinkedMultiValueMap models and make tests more realistic
2021-06-29 12:40:57 +01:00
Chris Smowton
60179ce8f0
Genericise MultiValueMaps; remove non-longer-needed casts
2021-06-29 12:32:22 +01:00
Chris Smowton
916c7c576d
Remove superfluous (Object) casts
2021-06-29 12:28:42 +01:00
Chris Smowton
71f6d59646
Genericise test util functions
2021-06-29 12:27:03 +01:00
Chris Smowton
60126b406f
Clean up test
...
Remove unused import; drop unused util methods and needless casts.
2021-06-29 12:20:47 +01:00
Chris Smowton
d6c4325c13
Import SpringUtil from ExternalFlow.qll
2021-06-29 12:18:30 +01:00
Anders Schack-Mulligen
1bd01a5eee
Update java/ql/test/library-tests/frameworks/spring/util/test.ql
2021-06-29 13:13:09 +02:00
Chris Smowton
3d270bbc50
Drop models for stringifying functions
...
Per default stringification isn't taint-propagating in Java
2021-06-29 12:01:08 +01:00
Chris Smowton
0441098b18
Amend models of MultiValueMap.addAll overloads
2021-06-29 11:58:46 +01:00
Chris Smowton
b202110285
Drop redundant model that can be inherited from java.util.Iterator
2021-06-29 11:47:22 +01:00
Chris Smowton
f67e9ae1cc
Drop tests for protected inner classes
2021-06-29 11:45:59 +01:00
Chris Smowton
5769f4718f
Add missing CollectionUtils model
2021-06-29 11:44:29 +01:00
Chris Smowton
659478cc39
Remove model for protected class
...
Can't be accessed outside the org.springframework.util package.
2021-06-29 11:40:19 +01:00
Chris Smowton
f7a4614f56
Add missing tests for AntPathMatcher's protected methods; fix models accordingly
2021-06-29 11:35:25 +01:00
Rasmus Lerchedahl Petersen
b684434a58
Merge branch 'main' of github.com:github/codeql into python-port-ReDoS
2021-06-29 11:45:21 +02:00
Rasmus Lerchedahl Petersen
e778a65464
Python: Adjust test expectations
...
so we can see the light go green.
But we should perhaps do something about those duplicate results.
2021-06-29 11:29:42 +02:00
Rasmus Lerchedahl Petersen
fbfe415162
Python: Limit test files
2021-06-29 11:18:24 +02:00
Rasmus Lerchedahl Petersen
6f2cdbf59e
Python: Give up on providing values for form feeds
2021-06-29 11:14:27 +02:00
Rasmus Lerchedahl Petersen
ffb8938e52
Python: undo autoformat character mangling
2021-06-29 11:06:17 +02:00
Rasmus Lerchedahl Petersen
135b71b649
Python: Apply performance fix by @hvitved
2021-06-29 11:01:33 +02:00
Chris Smowton
dec0123751
Autoformat
2021-06-29 09:52:24 +01:00
Tom Hvitved
125d435d62
C#: Address review comments
2021-06-29 10:50:45 +02:00
Anders Schack-Mulligen
89cea5cc1a
Merge pull request #6178 from github/yo-h/java-sealed-classes
...
Java: add `permits` relation to dbscheme (sealed classes)
2021-06-29 10:43:37 +02:00
Anders Schack-Mulligen
53823e4a36
Merge pull request #6179 from github/yo-h/java-frameworks-jakarta
...
Java: add `jakarta.*` package to known frameworks
2021-06-29 09:38:55 +02:00
Tamas Vajk
513482b4d5
Adjust code review findings (string escaping)
2021-06-29 08:45:13 +02:00
yo-h
2e8bd621bd
Merge pull request #6164 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2021-06-28 22:04:00 -04:00
yo-h
3c3ecb33a1
Java: add jakarta.* package to known frameworks
2021-06-28 21:49:45 -04:00
yo-h
aa19fe606d
Java: add dbscheme stats for permits relation
2021-06-28 21:18:25 -04:00
github-actions[bot]
991404aefb
Add changed framework coverage reports
2021-06-29 00:10:00 +00:00
yo-h
1f6996002a
Java: add permits relation to dbscheme (sealed classes)
2021-06-28 19:48:39 -04:00
Chris Smowton
dd70f2c87e
Add spurious results now found in JaxXSS.java
2021-06-28 19:24:19 +01:00
Chris Smowton
768a8e78dd
Fixup JaxRs.ql to cope with stubbed MediaType file
...
In a real-world situation this type would be defined in an imported jar, but since here it is defined in a stub the getADeclaredContentType routine can see it is defined as an empty string in the stubbed implementation. Filter these out so the test more closely resembles the real situation.
2021-06-28 19:24:19 +01:00
Chris Smowton
8eaffaff35
Fix test mistakes
2021-06-28 19:24:19 +01:00
Chris Smowton
6b3bc42ef2
Add JAX-RS XSS tests
2021-06-28 19:24:18 +01:00
Chris Smowton
b3c186c513
Convert XSS test to inline expectations
2021-06-28 19:24:18 +01:00
Sauyon Lee
240058be28
fixup! Fix tests for Spring util
...
Apply review comments
2021-06-28 10:53:00 -07:00
Sauyon Lee
4012076c90
fixup! Model spring util
...
Apply review comments
2021-06-28 10:52:58 -07:00
Felicity Chapman
267e36919e
Merge pull request #6153 from github/docs-content-4456-multiple-dbs
...
Add information on multi-db options to the CodeQL CLI docs
2021-06-28 17:38:49 +01:00
Sauyon Lee
bddc88c010
Add stubs for Spring util tests
2021-06-28 08:26:40 -07:00
Sauyon Lee
60db9e1851
Rename springframework-5.2.3 to 5.3.8
2021-06-28 08:26:39 -07:00
Sauyon Lee
fb0e6bfb42
Fix tests for Spring util
2021-06-28 08:26:39 -07:00
Sauyon Lee
739b142209
Generate tests for Spring util
2021-06-28 08:26:38 -07:00
Sauyon Lee
92ebb63b1f
Model Spring AntPath utils
2021-06-28 08:26:38 -07:00
Sauyon Lee
c4e9b1fd8e
Model Spring util
2021-06-28 08:26:37 -07:00
Rasmus Lerchedahl Petersen
c7992f6c6e
Python: add change note
2021-06-28 17:24:37 +02:00
Rasmus Lerchedahl Petersen
40ac91eecd
Python: Add some tests for exponential ReDoS
...
- `KnownCVEs` contain the currently triaged Python CVEs
- `unittest.py` contains some tests constructed by @erik-krogh
- `redos.py` contains a port of `tst.js` from javascript
The expected file has been ported as well with some fixups by @tausbn
2021-06-28 17:04:49 +02:00
Rasmus Lerchedahl Petersen
591b6ef69c
Python: Add ReDoS as identical files from JS
...
The library specific file is `RegExpTreeView`.
The files are recorded as identical via the mapping
in `identical-files.json`.
2021-06-28 17:04:48 +02:00
Rasmus Lerchedahl Petersen
d2eeaff441
JS: Refactor ReDoS to make files sharable
...
the extra ordering conditions in ReDoSUtil will be needed
for the Python implementation.
2021-06-28 17:04:48 +02:00
Rasmus Lerchedahl Petersen
2c27ce7aa5
Python: Make ast viewer see regexes
...
This work is due to @erik-krogh who also
- made corresponding fixes to `RegexTreeView.qll`
- implemented `toUnicode` so it is available on `String`s
2021-06-28 17:04:48 +02:00
Rasmus Lerchedahl Petersen
d953ba8dd4
Python: A parse-tree-view of regular expressions
...
This contains several contributions from @erik-krogh
and also some fixes from @nickrolfe
2021-06-28 17:04:48 +02:00
Rasmus Lerchedahl Petersen
21007d21f4
Python: track if qualifiers allow unbounded
...
repeats. This in preparation for ReDoS
2021-06-28 17:04:48 +02:00
Rasmus Lerchedahl Petersen
74ca1d00b9
Python: More precise regex parsing
2021-06-28 17:04:48 +02:00
Rasmus Lerchedahl Petersen
e5f07cc4d3
Python: inline test of regex components
...
- Added naive implementation of `charRange` so the test can run.
- Made predicates public as needed.
2021-06-28 17:04:48 +02:00
Tony Torralba
8112d723e0
Merge branch 'main' into atorralba/spring-beans
2021-06-28 17:02:31 +02:00
Tony Torralba
393b95cbbe
Remove 'magic' from tests
2021-06-28 17:01:34 +02:00
Tamas Vajk
006303420b
Fix CSV framework coverage commenter workflow
2021-06-28 15:07:13 +02:00
Chris Smowton
ca4c519a2a
Merge pull request #6170 from smowton/smowton/admin/cleanup-exec-tainted-query
...
Change ID and description of cloned query
2021-06-28 13:22:34 +01:00
Felicity Chapman
c4047afc05
Add extra reference to docs.github.com
...
Clarify the existing reference and add one for CodeQL code scanning using GitHub Actions.
2021-06-28 12:30:49 +01:00
Felicity Chapman
b52b158c97
Apply suggestions from code review
...
Co-authored-by: Aditya Sharad <6874315+adityasharad@users.noreply.github.com >
2021-06-28 12:20:20 +01:00
Chris Smowton
3d69868297
Change ID and description of cloned query
...
This should be cleaned up more effectively soon, but this suffices to fix the clashing-id problem.
2021-06-28 12:18:59 +01:00
Tamas Vajk
3b5856907f
Add updated C# framework coverage report
2021-06-28 11:29:46 +02:00
Tamas Vajk
3170781d57
Rework timeseries report to iterate git history only once
2021-06-28 11:29:45 +02:00
Tamas Vajk
1ec1e1cfc8
Adjust framework coverage report generator to include all sources not just remote ones
2021-06-28 11:20:32 +02:00
Tamas Vajk
4524563923
Fix timeseries coverage report to handle multiple languages
2021-06-28 11:20:32 +02:00
Tamas Vajk
a90a86bcbf
Fix flow from Element of Argument[0] for Int32.TryParse(ReadOnlySpan<Char>,...
2021-06-28 11:20:32 +02:00
Tamas Vajk
1d8b19e153
Adjust coverage report generator to allow multiple sink identifiers per CWE
2021-06-28 11:20:32 +02:00
Tamas Vajk
2a75989881
Migrate StringContent sink to CSV format
2021-06-28 11:20:32 +02:00
Tamas Vajk
5aba7142e8
C#: Add framework coverage report
2021-06-28 11:20:32 +02:00
Tamas Vajk
016e8fb2cf
Adjust framework coverage jobs to cover C#
2021-06-28 11:20:32 +02:00
Tamas Vajk
b7a43dccd3
C#: Migrate System.Int32 flow summaries to CSV
2021-06-28 11:20:32 +02:00
Tamas Vajk
a9ccd65fa9
C#: Migrate System.Web.HttpResponse sinks to CSV
2021-06-28 11:20:32 +02:00
Tamas Vajk
45568d5b10
C#: Convert System.Console.Read* local flow source to CSV
2021-06-28 11:20:32 +02:00
Tamas Vajk
9606816c39
Fix missing summarizedCallable case
2021-06-28 11:20:32 +02:00
Tom Hvitved
4f8a103df2
C#: Add active preprocessor conditions as suffix in all TRAP .push instructions
2021-06-28 10:34:42 +02:00
Mathias Vorreiter Pedersen
794d96e52c
C++: Use call context information to perform function-pointer resolution.
2021-06-25 14:45:56 +02:00
Rasmus Wriedt Larsen
9573048ee8
Python: Port py/clear-text-logging-sensitive-data
2021-06-25 14:35:31 +02:00
Rasmus Wriedt Larsen
68cfeb0b5c
Python: Model logging from the logging module
2021-06-25 14:26:35 +02:00
Rasmus Wriedt Larsen
c05e375401
Python: Fix indentation of hashlib modeling
2021-06-25 14:26:35 +02:00
Rasmus Wriedt Larsen
36c9ceb13b
Python: Add Logging concept
2021-06-25 14:26:35 +02:00
Rasmus Wriedt Larsen
a7eb1b3a12
Python: Minor QLDoc fixup
2021-06-25 14:26:35 +02:00
Mathias Vorreiter Pedersen
fd477383b0
C++: Fix join order in 'bbSuccessorEntryReachesLoopInvariant'.
2021-06-25 10:49:33 +02:00
Rasmus Wriedt Larsen
a9469b73d9
Python: Port py/clear-text-storage-sensitive-data
2021-06-24 17:39:08 +02:00
Rasmus Wriedt Larsen
8926b3edc7
Python: Add change-note for CookieWrite
2021-06-24 17:34:43 +02:00
Rasmus Wriedt Larsen
7017beca47
Python: Model CookieWrite for twisted
...
Had to split the call to `request.cookies.append` since inline
expectation tests didn't like the expectation that contained `=` :(
2021-06-24 17:34:43 +02:00
Rasmus Wriedt Larsen
4606444b85
Python: Model CookieWrite for flask
2021-06-24 17:34:43 +02:00
Rasmus Wriedt Larsen
65c526df86
Python: Model CookieWrite for tornado
2021-06-24 17:34:43 +02:00
Rasmus Wriedt Larsen
9340d658a4
Python: Model CookieWrite for django
2021-06-24 17:34:43 +02:00
Rasmus Wriedt Larsen
930ed0a712
Python: Minor django fixup
2021-06-24 17:34:43 +02:00
Rasmus Wriedt Larsen
226425e831
Python: Model CookieWrite for aiohttp
2021-06-24 17:34:43 +02:00
Rasmus Wriedt Larsen
e1af1f11ee
Python: Add HTTP::Server::CookieWrite concept
...
along with tests, but no implementations (to ease reviewing).
---
I've put quite some thinking into what to call our concept for this.
[JS has `CookieDefinition`](581f4ed757/javascript/ql/src/semmle/javascript/frameworks/HTTP.qll (L148-L187) ), but I couldn't find a matching concept in any other languages.
We used to call this [`CookieSet`](f07a7bf8cf/python/ql/src/semmle/python/web/Http.qll (L76) ) (and had a corresponding `CookieGet`).
But for headers, [Go calls this `HeaderWrite`](cd1e14ed09/ql/src/semmle/go/concepts/HTTP.qll (L97-L131) ) and [JS calls this `HeaderDefinition`](581f4ed757/javascript/ql/src/semmle/javascript/frameworks/HTTP.qll (L23-L46) )
I think it would be really cool if we have a naming scheme that means the name for getting the value of a header on a incoming request is obvious. I think `HeaderWrite`/`HeaderRead` fulfils this best. We could go with `HeaderSet`/`HeaderGet`, but they feel a bit too vague to me. For me, I'm so used to talking about def-use, that I would immediately go for `HeaderDefinition` and `HeaderUse`, which could work, but is kinda strange.
So in the end that means I went with `CookieWrite`, since that allows using a consistent naming scheme for the future :)
2021-06-24 17:34:43 +02:00
Mathias Vorreiter Pedersen
a294fb07f5
C++: Add change-note.
2021-06-24 16:01:59 +02:00
Mathias Vorreiter Pedersen
af56c782bf
C++: Add QLDoc.
2021-06-24 15:57:01 +02:00
Mathias Vorreiter Pedersen
38c487abf9
Merge branch 'main' into more-random-sources-in-uncontrolled-arithmetic
2021-06-24 15:56:15 +02:00
Mathias Vorreiter Pedersen
5bfb78b583
C++: Block flow through all bitwise 'and' and 'or' operations. This seems to be a common source of false positives on LGTM.
2021-06-24 15:53:59 +02:00
Mathias Vorreiter Pedersen
e8bba78825
C++: Convert 'cpp/uncontrolled-arithmetic' to use a 'TaintTracking::Configuration'.
2021-06-24 15:51:44 +02:00
Felicity Chapman
4a8b71a245
Make initial changes for multi-db options
2021-06-24 14:44:08 +01:00
Mathias Vorreiter Pedersen
c0ffd9027f
C++: Add more random sources.
2021-06-24 13:40:00 +02:00
Mathias Vorreiter Pedersen
c8c77396fa
C++: Get rid of the trivial 'True' condition. Turns out it's not actually needed.
2021-06-24 09:57:54 +02:00
Mathias Vorreiter Pedersen
656ff4aee9
C++: Add more QLDoc.
2021-06-24 09:57:25 +02:00
Mathias Vorreiter Pedersen
d70ea5f6e0
Update cpp/ql/src/semmle/code/cpp/controlflow/StackVariableReachability.qll
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2021-06-24 09:27:11 +02:00
Mathias Vorreiter Pedersen
2938ad5f8f
C++: Add testcase demonstrating the fix from a8c57ec4aa.
2021-06-23 23:01:49 +02:00
Mathias Vorreiter Pedersen
43bbd4f7ad
C++: Fix join order with 'pragma[noopt]'.
2021-06-23 18:34:04 +02:00
Mathias Vorreiter Pedersen
a8c57ec4aa
C++: Prevent false negatives caused by incorrectly concluding that a loop variant condition refutes itself across loop iterations.
2021-06-23 15:08:16 +02:00
Mathias Vorreiter Pedersen
d308dd2f40
Update cpp/ql/src/semmle/code/cpp/controlflow/StackVariableReachability.qll
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2021-06-23 11:54:56 +02:00
Rasmus Wriedt Larsen
902b450b12
Python: Also model pathlib.Path().open().write()
...
And this transition to type-trackers also helped fix the missing path
through function calls 👍
2021-06-23 10:50:04 +02:00
Rasmus Wriedt Larsen
39ec8701ca
Python: Add FileSystemWriteAccess concept
...
I made `FileSystemWriteAccess` be a subclass of `FileSystemAccess` (like in [JS](64001cc02c/javascript/ql/src/semmle/javascript/Concepts.qll (L68-L74) )), but then I started wondering about how I could give a good result for `getAPathArgument`, and what would a good result even be? The argument to the `open` call, or the object that the `write` method is called on? I can't see how doing either of these enables us to do anything useful...
So I looked closer at how JS uses `FileSystemWriteAccess`:
1. as sink for zip-slip: 7c51dff0f7/javascript/ql/src/semmle/javascript/security/dataflow/ZipSlipCustomizations.qll (L121)
2. as sink for downloading unsafe files (identified through their extension) through non-secure connections: 89ef6ea4eb/javascript/ql/src/semmle/javascript/security/dataflow/InsecureDownloadCustomizations.qll (L134-L150)
3. as sink for writing untrusted data to a local file 93b1e59d62/javascript/ql/src/semmle/javascript/security/dataflow/HttpToFileAccessCustomizations.qll (L43-L46)
for the 2 first sinks, it's important that `getAPathArgument` has a proper result... so that solves the problem, and highlights that it _can_ be important to give proper results for `getAPathArgument` (if possible).
So I'm trying to do best effort for `f = open(...); f.write(...)`, but with this current code we won't always be able to give a result (as highlighted by the tests). It will also be the case that there are multiple `FileSystemAccess` with the same path-argument, which could be a little strange.
overall, I'm not super confident about the way this new concept and implementation turned out, but it also seems like the best I could come up with right now...
The obvious alternative solution is to NOT make `FileSystemWriteAccess` a subclass of `FileSystemAccess`, but I'm not very tempted to go down this path, given the examples of this being useful above, and just the general notion that we should be able to model writes as being a specialized kind of `FileSystemAccess`.
2021-06-23 10:50:04 +02:00
Rasmus Wriedt Larsen
6a6d6fbe92
Python: Add leading space in some inline tests
2021-06-23 10:50:04 +02:00
Rasmus Wriedt Larsen
13609b2888
Python: Move pathlib tests to Python 3 only tests
2021-06-23 10:50:04 +02:00
Rasmus Wriedt Larsen
e2facd0981
Python: Expand cleartext query tests
2021-06-23 10:50:04 +02:00
Rasmus Wriedt Larsen
5506365b0e
Python: Split cleartext tests
2021-06-23 10:50:04 +02:00
Rasmus Wriedt Larsen
c77884b8c4
Python: Apply suggestions from code review
...
Co-authored-by: Jorge <46056498+jorgectf@users.noreply.github.com >
2021-06-23 10:37:06 +02:00
Rasmus Wriedt Larsen
ae841cdd9b
Python: Make import python private in Concepts.qll
...
Just a mistake that we have never caught on to
2021-06-23 10:32:36 +02:00
Rasmus Wriedt Larsen
3b41c2f204
Python: Use new MethodCallNode in TaintTrackingPrivate
2021-06-22 15:12:35 +02:00
Rasmus Wriedt Larsen
0b767bb853
Merge branch 'main' into small-cleanups
2021-06-22 15:01:53 +02:00
Rasmus Wriedt Larsen
a7170bedb6
Python: Mention modeling of mysqlclient PyPI package
...
Just for completeness in terms of what we claim support for.
2021-06-21 15:20:08 +02:00
Rasmus Wriedt Larsen
68f526da1f
Python: Add change-note
2021-06-16 20:09:05 +02:00
Rasmus Wriedt Larsen
498703fc81
Python: Escaping only valid with both input/output defined
...
Problematic part is
```codeql
/** A escape from string format with `markupsafe.Markup` as the format string. */
private class MarkupEscapeFromStringFormat extends MarkupSafeEscape, Markup::StringFormat {
override DataFlow::Node getAnInput() {
result in [this.getArg(_), this.getArgByName(_)] and
not result = Markup::instance()
}
override DataFlow::Node getOutput() { result = this }
}
```
since the char-pred still holds even if `getAnInput` has no results...
I will say that doing it this way feels kinda dirty, and we _could_ fix
this by including the logic in `getAnInput` in the char-pred as well.
But as I see it, that would just lead to a lot of code duplication,
which isn't very nice.
2021-06-16 19:09:00 +02:00
Rasmus Wriedt Larsen
6539df6422
Python: Add ConceptsTest for MarkupSafe
2021-06-16 19:09:00 +02:00
Rasmus Wriedt Larsen
14de3bffb7
Python: Model MarkupSafe PyPI package
...
Since expectation tests had so many changes from ConceptsTest, I'm going
to do the changes for that on in a separate commit. The important part
is the changes to taint-tracking, which is highlighted in this commit.
2021-06-16 19:09:00 +02:00
Rasmus Wriedt Larsen
e1c4b8ca42
Python: Add helper predicates to Escaping kinds
...
The other approach felt a bit too much like specifying magic strings
that you had to get right. (crossing your fingers that no-one writes
`HTML` instead of `html`)
2021-06-16 19:09:00 +02:00
Rasmus Wriedt Larsen
bcef8d19e6
Python: Add Escaping concept
2021-06-16 19:09:00 +02:00
Rasmus Wriedt Larsen
d18b9a2704
Python: Add markupsafe tests
2021-06-16 19:09:00 +02:00
Mathias Vorreiter Pedersen
b2e9fe79a7
C++: Add change-note.
2021-06-15 10:01:45 +02:00
Mathias Vorreiter Pedersen
14a04ee453
C++: Accept more test changes. These all arise because we now transitively pull in 'semmle.code.cpp.Print' when including 'cpp'.
2021-06-14 22:02:46 +02:00
Mathias Vorreiter Pedersen
cc6ae7f8b8
Merge branch 'main' into path-sensitive-stack-variable-reachability-analysis
2021-06-14 22:02:46 +02:00
Mathias Vorreiter Pedersen
714ad105fe
C++: Accept test changes.
2021-06-14 22:02:38 +02:00
Mathias Vorreiter Pedersen
79926788d1
C++: Fix non-monotonic recursion problems in 'StackVariableReachabilityWithReassignment' by using the old StackVariableReachability predicates that don't care about paths.
2021-06-14 22:00:17 +02:00
Mathias Vorreiter Pedersen
c32f72063f
C++: Add path sensitivity to StackVariableReachability.
2021-06-14 21:59:13 +02:00
Rasmus Wriedt Larsen
cc311ac4cd
Python: Re-introduce syntactic handling of str/bytes/unicode (again)
...
This reverts commit 870389addb .
2021-06-14 14:23:12 +02:00
Rasmus Wriedt Larsen
870389addb
Revert "Python: Re-introduce syntactic handling of str/bytes/unicode"
...
This reverts commit c4987e94e0 .
Hoping that our new handling of builtins would solve this problem... but
it did not :|
2021-06-14 14:22:40 +02:00
Rasmus Wriedt Larsen
af13064f6a
Merge branch 'main' into pr/RasmusWL/5926
2021-06-14 14:17:33 +02:00
Tony Torralba
498c2250c7
Add missing QLDoc
2021-06-08 11:25:53 +02:00
Tony Torralba
afab13e7ee
Add missing QLDoc
2021-06-08 11:09:59 +02:00
Tony Torralba
9024788a92
Add change note
2021-06-08 10:42:07 +02:00
Tony Torralba
48b0df4a3e
Add tests, minor bugfixes
2021-06-08 10:35:18 +02:00
Tony Torralba
d77d0c9e10
Added summaries for Spring PropertyValues
2021-06-07 17:35:03 +02:00
Mathias Vorreiter Pedersen
d450aa2ce4
C++: Add some testcases that require path sensitivity.
2021-06-03 18:02:29 +02:00
Rasmus Wriedt Larsen
c4987e94e0
Python: Re-introduce syntactic handling of str/bytes/unicode
...
I don't want to loose results on this, so until type-tracking/API graphs
can handle this, I want to keep our syntactic handling.
2021-05-19 13:00:11 +02:00
Rasmus Wriedt Larsen
aa8b7306a3
Python: Use more API graphs in TaintTrackingPrivate
...
But now we suddenly don't handle the call to `unicode` :O -- at least
not when I run the test locally (using Python 3).
2021-05-19 12:59:58 +02:00
Rasmus Wriedt Larsen
a2e8417c11
Python: Use API graphs in TaintTrackingPrivate
...
Some of this modeling could probably go to the standard lib modeling
file, but this chain of commits is already pretty feature creep :|
2021-05-19 12:39:10 +02:00
Rasmus Wriedt Larsen
53f1d2342d
Python: Small refactor of TaintTrackingPrivate
...
Highlight why we need to import `DataFlowPrivate`
2021-05-19 12:19:18 +02:00
Rasmus Wriedt Larsen
3f5602c048
Python: Refactoring of TaintTrackingPrivate
...
To use all the good new stuff 🎉
2021-05-19 12:13:04 +02:00
Rasmus Wriedt Larsen
b02fb90807
Python: Add getObject(string attrName) to AttrRef
...
Now that I got started adding small things that are nice, I've been
missing this one (that is available on an `AttrNode`).
2021-05-19 12:11:49 +02:00
Rasmus Wriedt Larsen
9137f04bd3
Python: Add getPostUpdateNode to DataFlow::Node
...
as discussed in https://github.com/github/codeql/pull/5864#discussion_r634675940
2021-05-19 11:57:49 +02:00