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 |
|
edvraa
|
a0942e0360
|
JsonConvert
|
2021-07-12 15:23:04 +03: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 |
|
edvraa
|
f4cb6c50c0
|
YamlDotNet
|
2021-07-12 13:25:50 +03:00 |
|
edvraa
|
1e4409f9ed
|
SharpSerializer
|
2021-07-12 13:22:20 +03:00 |
|
edvraa
|
c3ac3ca41c
|
FsPickler
|
2021-07-12 13:20:57 +03: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 |
|
edvraa
|
1682e993bc
|
Merge with Main
|
2021-07-12 11:32:47 +03: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 |
|
edvraa
|
40e8a900de
|
Apply changes from code review
|
2021-07-12 02:08:23 +03:00 |
|
edvraa
|
6393dca22f
|
Apply changes from code review
|
2021-07-12 01:13:41 +03:00 |
|
edvraa
|
3de7b280e4
|
AuthCookie.qll moved to experimental
|
2021-07-12 01:13:40 +03:00 |
|
edvraa
|
02f0d81830
|
delete unused predicate
|
2021-07-12 01:13:40 +03:00 |
|