Mathias Vorreiter Pedersen
c67951682a
C++: Fix two bad join orders in readStep and storeStep. And use a min aggregate to guarentee that a FieldContent's toString has at most one result.
2020-09-04 17:12:30 +02:00
Taus Brock-Nannestad
266365d0b6
Python: Update strange-essaflow test
2020-09-04 16:38:59 +02:00
Taus Brock-Nannestad
260763a748
Python: Update consistency test results
2020-09-04 16:35:49 +02:00
Taus Brock-Nannestad
df1448cfb2
Merge branch 'main' into python-remove-spurious-global-flow
2020-09-04 16:28:03 +02:00
Chris Smowton
56f6e67671
Protobufs: improve comment and code style
...
No functional changes
2020-09-04 15:14:49 +01:00
Chris Smowton
65dc6272d1
Remove prototype tests
...
I don't think we need these when we have the end-to-end taintFlows test.
2020-09-04 15:14:49 +01:00
Chris Smowton
b639b6ec6a
Remove redundant copies of the generated protoc output
2020-09-04 15:14:49 +01:00
Chris Smowton
8058d096d2
Model and test UnmarshalOptions.Unmarshal
...
Support for UnmarshalOptions.UnmarshalState is dropped for now as too hard to model.
2020-09-04 15:14:49 +01:00
Chris Smowton
c2ff2df403
Add test showing false-negative for MarshalState
2020-09-04 15:14:49 +01:00
Chris Smowton
42d6250b8d
Add modern-API variants of tests
2020-09-04 15:14:49 +01:00
Chris Smowton
8682eb9dec
Add tests showing imprecision of our current implementation
2020-09-04 15:14:49 +01:00
Chris Smowton
a832342ecb
Add test for unmarshalling submessages
2020-09-04 15:14:49 +01:00
Chris Smowton
596204f79d
Add (currently-failing) expectations for submessage tainting
2020-09-04 15:14:49 +01:00
Chris Smowton
c9296abe25
Restrict tainting from field-writes to Message types
2020-09-04 15:14:49 +01:00
Chris Smowton
95798590ce
Implement MarshalState method
...
Currently relies on blanket field-write propagation.
2020-09-04 15:14:49 +01:00
Chris Smowton
c34fc3c9ad
Add tests for MarshalAppend and MarshalState
...
The MarshalState test doesn't work yet, because we don't know to read taint from the Message field of the input or write it to the Buf field of the output
2020-09-04 15:14:49 +01:00
Chris Smowton
2ca6157836
Protobuf: support both legacy and modern APIs
2020-09-04 15:14:49 +01:00
Chris Smowton
df0238a352
Fix proto.Clone method
...
This is top-level, not a member.
2020-09-04 15:14:49 +01:00
Chris Smowton
e76c07d77b
Temporarily taint all structs from field writes
...
This should be either refined to just Message types, or else a macro taint step should be added conducting taint from field-write-of-argument to Marshal's result.
On the read-side we're currently fine: the bytes are tainted, so the object is tainted, so the field reads are tainted.
2020-09-04 15:14:49 +01:00
Chris Smowton
19e1dacced
WIP: add more (manual) protobuf models, and a test that checks various taint-flow cases
...
Only some of the cases are currently working.
2020-09-04 15:14:49 +01:00
Sauyon Lee
4ff325aa13
--wip-- [skip ci]
2020-09-04 15:14:49 +01:00
Geoffrey White
156a174cf4
C++: Add explanation.
2020-09-04 14:55:55 +01:00
Geoffrey White
96098c5244
C++: Simplify getConstructedFrom.
2020-09-04 14:52:01 +01:00
Taus
5ffc959e32
Merge pull request #4211 from RasmusWL/python-strange-essaflow
...
Python: Add example of strange DataFlow::jumpStep
2020-09-04 15:47:22 +02:00
Geoffrey White
2472b40b31
C++: Fix test comments.
2020-09-04 14:37:23 +01:00
Geoffrey White
43d8e83258
Merge branch 'main' into taintbits
2020-09-04 14:26:42 +01:00
Rasmus Wriedt Larsen
720e8c432e
Python: Update comment for validTest expectations
2020-09-04 15:08:57 +02:00
Geoffrey White
5d1c2a3689
Merge pull request #4204 from jbj/SimpleRangeAnalysis-NEExpr
...
C++: Support `!= constant` in range analysis
2020-09-04 13:47:59 +01:00
Rasmus Wriedt Larsen
cf57afd102
Python: Add example of strange DataFlow::jumpStep
...
The example code is just copied from command injection tests, that is not too
important. The important part is that `jumpStep` says there is flow from the
import of `os` to `app.route()` :O
2020-09-04 14:39:16 +02:00
Taus
59c7907ee4
Merge pull request #4207 from RasmusWL/python-typetracker-small-fixes
...
Python: Small fixes for TypeTracker
2020-09-04 14:30:10 +02:00
Taus Brock-Nannestad
98266ad5da
Python: Remove implicit uses from essaFlowStep
2020-09-04 14:22:43 +02:00
Erik Krogh Kristensen
f13a4f5771
require that the plugin and sink are in the same toplevel
2020-09-04 13:59:16 +02:00
Rasmus Wriedt Larsen
6aae75799e
Python: Fix import in type tracking test
...
Fixes 7855576a6
2020-09-04 13:36:25 +02:00
CodeQL CI
fd715a5b66
Merge pull request #4179 from RasmusWL/python-tainttracking-ala-go
...
Approved by tausbn, yoff
2020-09-04 12:20:12 +01:00
Erik Krogh Kristensen
d47c852767
autoformat
2020-09-04 12:44:18 +02:00
Jonas Jensen
958f89905d
Merge pull request #4197 from github/aeisenberg/devcontainer-settings
...
Update devcontainer memory settings
2020-09-04 12:42:34 +02:00
Slavomir
095baeb8b6
Remove taint-tracking of booleans and numbers (but keep uintptr)
2020-09-04 12:06:34 +02:00
Max Schaefer
cfc91cc5f1
JavaScript: Drop "feature" terminology.
...
It turned out to be more confusing than helpful, so we're back with plain old API-graph "nodes".
2020-09-04 10:57:21 +01:00
Erik Krogh Kristensen
9ed9ecd333
copied updated dbscheme to upgrade folder
2020-09-04 11:55:39 +02:00
Erik Krogh Kristensen
6e54cf426c
autoformat
2020-09-04 11:55:39 +02:00
Erik Krogh Kristensen
5a159abd75
renamed "interfacedefinition" to "interface_definition"
2020-09-04 11:55:33 +02:00
Erik Krogh Kristensen
3785a10ee8
renamed "classdefinition" to "class_definition"
2020-09-04 11:55:32 +02:00
Erik Krogh Kristensen
5467efe117
renamed "typeassertion" to "type_assertion"
2020-09-04 11:55:31 +02:00
Erik Krogh Kristensen
4af9508506
renamed "importspecifier" to "import_specifier"
2020-09-04 11:55:30 +02:00
Erik Krogh Kristensen
35caaf5c93
renamed "comprehensionblock" to "comprehension_block"
2020-09-04 11:55:30 +02:00
Erik Krogh Kristensen
273ae710b0
renamed "comprehensionexpr" to "comprehension_expr"
2020-09-04 11:55:29 +02:00
Erik Krogh Kristensen
586a823ce7
renamed "exprparent" to "expr_parent"
2020-09-04 11:55:28 +02:00
Erik Krogh Kristensen
b28cbf310e
renamed "typedefinition" to "type_definition"
2020-09-04 11:55:28 +02:00
Erik Krogh Kristensen
bcbd1f045f
renamed "namespacedefinition" to "namespace_definition"
2020-09-04 11:55:27 +02:00
Erik Krogh Kristensen
8c812dcdfb
renamed "exportdeclaration" to "export_declaration"
2020-09-04 11:55:26 +02:00