Tom Hvitved
|
6208071575
|
Merge pull request #10874 from hvitved/ruby/fix-test-syntax-error
Ruby: Fix syntax error in a test
|
2022-10-18 19:28:17 +02:00 |
|
Tom Hvitved
|
61b9065135
|
Ruby: Fix syntax error in a test
|
2022-10-18 16:49:32 +02:00 |
|
Arthur Baars
|
14f150c1f3
|
Merge pull request #10872 from aibaars/set-output
CI: update actions/cache to v3
|
2022-10-18 15:09:29 +02:00 |
|
Arthur Baars
|
f56e155080
|
CI: update actions/cache to v3
|
2022-10-18 14:07:52 +02:00 |
|
Tom Hvitved
|
19bcd287cb
|
Merge pull request #10867 from hvitved/ruby/orm-tracking-redundant-additional-step
Ruby: Remove redundant additional flow step from `OrmTracking::Configuration`
|
2022-10-18 10:03:51 +02:00 |
|
Tom Hvitved
|
d362296f1c
|
Merge pull request #10864 from hvitved/ruby/get-a-barrier-node-join-fix
Ruby: Fix bad join-order in `BarrierGuard::getABarrierNode`
|
2022-10-18 10:03:02 +02:00 |
|
Tom Hvitved
|
1266d248ed
|
Ruby: Remove redundant additional flow step from OrmTracking::Configuration
|
2022-10-18 09:33:29 +02:00 |
|
Tom Hvitved
|
6c765a95ff
|
Ruby: Fix bad join-order in BarrierGuard::getABarrierNode
Before
```
Evaluated relational algebra for predicate XSS#e59174e9::Shared::Sanitizer#class#f@6c9d334e with tuple counts:
0 ~0% {1} r1 = JOIN ActionView#3462bac2::RailsHtmlEscaping#f WITH project#DataFlowPublic#e1781e31::CallNode::getArgument#1#dispred#fff#3 ON FIRST 1 OUTPUT Lhs.0
554860 ~0% {2} r2 = JOIN SsaImpl#ff97b16a::Cached::getARead#1#ff_10#join_rhs WITH DataFlowPrivate#462ff392::Cached::TExprNode#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1
1 ~0% {1} r3 = JOIN r2 WITH DataFlowPublic#e1781e31::BarrierGuard#BarrierGuards#2462899b::stringConstArrayInclusionCall#::getAMaybeGuardedCapturedDef#0#f ON FIRST 1 OUTPUT Lhs.1
1 ~0% {1} r4 = r1 UNION r3
7 ~0% {1} r5 = JOIN r2 WITH DataFlowPublic#e1781e31::BarrierGuard#BarrierGuards#2462899b::stringConstCompare#::getAMaybeGuardedCapturedDef#0#f ON FIRST 1 OUTPUT Lhs.1
3045081 ~1% {3} r6 = JOIN DataFlowPrivate#462ff392::Cached::TExprNode#ff_10#join_rhs WITH DataFlowPrivate#462ff392::Cached::TExprNode#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Rhs.1
3045081 ~1% {3} r7 = JOIN r6 WITH ControlFlowGraph#46cebcbd::CfgNode::getBasicBlock#0#dispred#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
554860 ~1% {3} r8 = JOIN r7 WITH SsaImpl#ff97b16a::Cached::getARead#1#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
1462917146 ~0% {3} r9 = JOIN r8 WITH SsaImpl#ff97b16a::Cached::getARead#1#ff ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
5082692 ~1% {4} r10 = JOIN r9 WITH DataFlowPublic#e1781e31::guardControlsBlock#3#fff_102#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.2, Rhs.2, Lhs.1
33 ~0% {1} r11 = JOIN r10 WITH BarrierGuards#2462899b::stringConstArrayInclusionCall#3#fff ON FIRST 3 OUTPUT Lhs.3
57 ~0% {1} r12 = JOIN r10 WITH BarrierGuards#2462899b::stringConstCompare#3#fff ON FIRST 3 OUTPUT Lhs.3
90 ~0% {1} r13 = r11 UNION r12
97 ~0% {1} r14 = r5 UNION r13
98 ~0% {1} r15 = r4 UNION r14
return r15
```
After
```
[2022-10-17 20:35:01] Evaluated non-recursive predicate XSS#e59174e9::Shared::Sanitizer#class#f@487a64ar in 65ms (size: 98).
Evaluated relational algebra for predicate XSS#e59174e9::Shared::Sanitizer#class#f@487a64ar with tuple counts:
0 ~0% {1} r1 = JOIN ActionView#3462bac2::RailsHtmlEscaping#f WITH project#DataFlowPublic#e1781e31::CallNode::getArgument#1#dispred#fff#3 ON FIRST 1 OUTPUT Lhs.0
33 ~0% {1} r2 = JOIN DataFlowPublic#e1781e31::BarrierGuard#BarrierGuards#2462899b::stringConstArrayInclusionCall#::guardChecksSsaDef#3#fff WITH DataFlowPublic#e1781e31::BarrierGuard#BarrierGuards#2462899b::stringConstArrayInclusionCall#::guardControlsSsaDef#4#ffff ON FIRST 3 OUTPUT Rhs.3
33 ~0% {1} r3 = r1 UNION r2
57 ~1% {1} r4 = JOIN DataFlowPublic#e1781e31::BarrierGuard#BarrierGuards#2462899b::stringConstCompare#::guardChecksSsaDef#3#fff WITH DataFlowPublic#e1781e31::BarrierGuard#BarrierGuards#2462899b::stringConstArrayInclusionCall#::guardControlsSsaDef#4#ffff ON FIRST 3 OUTPUT Rhs.3
554860 ~0% {2} r5 = JOIN SsaImpl#ff97b16a::Cached::getARead#1#ff_10#join_rhs WITH DataFlowPrivate#462ff392::Cached::TExprNode#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1
1 ~0% {1} r6 = JOIN r5 WITH DataFlowPublic#e1781e31::BarrierGuard#BarrierGuards#2462899b::stringConstArrayInclusionCall#::getAMaybeGuardedCapturedDef#0#f ON FIRST 1 OUTPUT Lhs.1
7 ~0% {1} r7 = JOIN r5 WITH DataFlowPublic#e1781e31::BarrierGuard#BarrierGuards#2462899b::stringConstCompare#::getAMaybeGuardedCapturedDef#0#f ON FIRST 1 OUTPUT Lhs.1
8 ~0% {1} r8 = r6 UNION r7
65 ~2% {1} r9 = r4 UNION r8
98 ~1% {1} r10 = r3 UNION r9
return r10
```
|
2022-10-17 20:39:30 +02:00 |
|
Arthur Baars
|
f7ff2cdc0d
|
Merge branch 'main' into actiondispatch-response
|
2022-10-17 13:22:17 +02:00 |
|
Erik Krogh Kristensen
|
122d188f1d
|
Merge pull request #10832 from erik-krogh/passRb
RB: add model for the `Digest` and `OpenSSL::Digest` modules
|
2022-10-17 10:02:33 +02:00 |
|
erik-krogh
|
191efdf6e0
|
replace getMethod("new").getReturn() with getInstance()
|
2022-10-17 09:35:44 +02:00 |
|
Anders Schack-Mulligen
|
6ef5fac239
|
Merge pull request #10814 from aschackmull/dataflow/synth-global
Dataflow: Add support for synthetic global fields in MaD.
|
2022-10-17 08:34:26 +02:00 |
|
Harry Maclean
|
aa6c433529
|
Ruby: Update test fixture
This change is due to a8fdda65fb.
|
2022-10-17 09:44:32 +13:00 |
|
Harry Maclean
|
eddb8493d8
|
Apply suggestions from code review
Co-authored-by: Nick Rolfe <nickrolfe@github.com>
|
2022-10-17 09:34:44 +13:00 |
|
Harry Maclean
|
0e6322d673
|
Ruby: Restrict XSS header sinks
Not all header writes are relevant to XSS. Restrict these to just
content-type and access-control-allow-origin.
|
2022-10-17 09:34:44 +13:00 |
|
Harry Maclean
|
8ae86cf443
|
Ruby: Consider header writes as XSS sinks
|
2022-10-17 08:17:37 +13:00 |
|
Harry Maclean
|
545222d1e9
|
Ruby: Add change note
|
2022-10-17 08:17:37 +13:00 |
|
Harry Maclean
|
73ca595b56
|
Ruby: Model ActionDispatch::Response
|
2022-10-17 08:17:37 +13:00 |
|
Arthur Baars
|
ae0c9b76e0
|
Merge pull request #10843 from aibaars/fix-self
Ruby: fix self variables in blocks
|
2022-10-15 00:48:14 +02:00 |
|
Alex Ford
|
2c5129e720
|
Merge pull request #10369 from alexrford/rb/sensitive-get-query
Ruby: add `rb/sensitive-get-query` query
|
2022-10-14 22:34:47 +01:00 |
|
Arthur Baars
|
a8fdda65fb
|
Ruby: fix self variables in blocks
|
2022-10-14 16:02:39 +02:00 |
|
Asger F
|
8cb4f230d8
|
Merge branch 'main' into rb/fix-spurious-singleton-calls
|
2022-10-14 15:52:38 +02:00 |
|
Tom Hvitved
|
407f7072e4
|
Merge pull request #10829 from hvitved/ruby/call-graph-perf
Ruby: Call graph performance improvements
|
2022-10-14 15:24:27 +02:00 |
|
Asger F
|
1bd3d29409
|
Ruby: workaround issue with 'def self.method' in a block
|
2022-10-14 15:07:33 +02:00 |
|
erik-krogh
|
5f826d0eef
|
fix typo
|
2022-10-14 14:43:51 +02:00 |
|
Asger F
|
17a246b321
|
Ruby: more uninteresting test updates
|
2022-10-14 13:59:52 +02:00 |
|
erik-krogh
|
dfdf8c7869
|
add change-note
|
2022-10-14 13:28:36 +02:00 |
|
erik-krogh
|
7c76645157
|
add model for the core OpenSSL::Digest module
|
2022-10-14 13:25:34 +02:00 |
|
erik-krogh
|
e2476949b9
|
add model for the core Digest module
|
2022-10-14 12:49:37 +02:00 |
|
Arthur Baars
|
9ccf5a7798
|
Merge pull request #10749 from aibaars/run_request
Ruby: treat Faraday#run_request as remote source
|
2022-10-14 12:24:39 +02:00 |
|
Asger F
|
8228730634
|
Ruby: fix regression for methods in singleton classes
|
2022-10-14 11:57:35 +02:00 |
|
Alex Ford
|
b29bf82e05
|
Ruby: fix merge error
|
2022-10-14 10:51:12 +01:00 |
|
Alex Ford
|
3baad89e57
|
Merge remote-tracking branch 'origin/main' into rb/sensitive-get-query
|
2022-10-14 10:50:09 +01:00 |
|
Asger F
|
30f7380f74
|
Ruby: Add regression test for lost calls
|
2022-10-14 11:49:55 +02:00 |
|
Alex Ford
|
24dad5599a
|
Ruby: fix SensitiveNode detection relating to class/instance variables
|
2022-10-14 10:41:46 +01:00 |
|
Harry Maclean
|
7d23170fb2
|
Merge pull request #10602 from hmac/hmac/actiondispatch-request
Ruby: Model ActionDispatch::Request
|
2022-10-14 22:17:20 +13:00 |
|
Alex Ford
|
36a1b18f5b
|
Ruby: revert SensitiveDataHeuristics changes
|
2022-10-14 09:19:41 +01:00 |
|
Asger F
|
a06cc30f05
|
Ruby: fix some more spurious call edges
|
2022-10-14 10:11:22 +02:00 |
|
Asger F
|
b1dadc224c
|
Ruby: uninteresting test output update
|
2022-10-14 10:10:39 +02:00 |
|
Asger F
|
ae71828fc4
|
Ruby: add more tests for singleton up/down calls
|
2022-10-14 10:09:59 +02:00 |
|
Asger F
|
789f591de4
|
Ruby: add another spurious call edge test
|
2022-10-14 10:09:57 +02:00 |
|
Asger F
|
1476efbe2c
|
Ruby: restrict to a use of 'self' in singleton methods
|
2022-10-14 10:09:11 +02:00 |
|
Asger F
|
329ab9156a
|
Ruby: add test showing spurious call
|
2022-10-14 10:07:34 +02:00 |
|
Tom Hvitved
|
81bc6c2d49
|
Ruby: Call graph performance improvements
|
2022-10-14 09:47:27 +02:00 |
|
Erik Krogh Kristensen
|
332bc35ff1
|
Merge pull request #10708 from erik-krogh/kernelSink
RB: add a query flagging uses of `Kernel.open()` that are not with a constant string
|
2022-10-14 09:13:26 +02:00 |
|
Harry Maclean
|
e6dc27a7b5
|
Add content_mime_type, fix env/filtered_env
|
2022-10-14 19:49:22 +13:00 |
|
Harry Maclean
|
0130e4ba7f
|
Re-add path methods that are user-controlled
|
2022-10-14 16:49:15 +13:00 |
|
Alex Ford
|
cda7d84633
|
Ruby: update rb/sensitive-get-query tests
|
2022-10-13 22:41:34 +01:00 |
|
Alex Ford
|
3d478a3951
|
Ruby: clarify qhelp
|
2022-10-13 22:39:54 +01:00 |
|
Alex Ford
|
9fbd293944
|
Ruby: avoid making notSensitiveRegexp always flag instance/class variables as not sensitive
|
2022-10-13 22:38:42 +01:00 |
|