Rasmus Wriedt Larsen
257f9912dd
Python: Remove one more unnecessary taint test
2023-06-26 12:00:55 +02:00
Rasmus Wriedt Larsen
6cb03190fa
Python: Updates from inline test being parameterized
2023-06-26 11:43:51 +02:00
Rasmus Wriedt Larsen
0121263e03
Merge branch 'main' into python/enable-summaries-from-models
2023-06-26 11:34:12 +02:00
Rasmus Lerchedahl Petersen
86dfc7b66e
python: format
2023-06-23 08:18:06 +02:00
Rasmus Lerchedahl Petersen
2264b119a6
python: more consistent tests
...
- do not test taint flow whne dataflow is established
- test taint of both the collection and the expected element
2023-06-22 11:52:25 +02:00
yoff
0f8ebd1519
Update python/ql/test/experimental/dataflow/model-summaries/model_summaries.py
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2023-06-22 11:31:21 +02:00
Jeroen Ketema
277dbdf410
Merge pull request #13498 from jketema/inline-4
...
Rework more inline expectation tests to use the parameterized module
2023-06-22 10:01:07 +02:00
Rasmus Lerchedahl Petersen
cb2de69f5a
python: consolidate tests
...
also change `Foo` -> `foo`
2023-06-20 16:13:38 +02:00
yoff
579c56c744
Merge pull request #13178 from yoff/python-ruby/track-through-summaries-pm
...
ruby/python: Shared module for typetracking through flow summaries
2023-06-20 11:19:45 +02:00
Rasmus Lerchedahl Petersen
e111a19524
python: split tests into taint and value
...
and add summaries
2023-06-20 10:46:27 +02:00
Jeroen Ketema
dba4460526
Python: Update more inline expectation tests to use the paramterized module
2023-06-20 10:16:15 +02:00
Rasmus Lerchedahl Petersen
229641070f
python: rename summaries
2023-06-18 22:01:47 +02:00
Rasmus Lerchedahl Petersen
6554e804dd
python: add test for model summaries
...
(but no summaries yet)
2023-06-18 21:52:49 +02:00
Rasmus Wriedt Larsen
fb6955edf9
Python: Add tests of methods in summaries
2023-06-16 14:43:45 +02:00
Rasmus Lerchedahl Petersen
b7bf750174
python: use updated names in test
2023-06-14 22:23:21 +02:00
Rasmus Lerchedahl Petersen
6521a51d93
python: unique strings in tests
2023-06-14 21:14:50 +02:00
Rasmus Lerchedahl Petersen
4b4b9bf9da
python: add missing summaries
...
For append/add:
The new results in the experimental tar slip query
show that we do not recognize the sanitisers.
2023-06-13 20:22:21 +02:00
Rasmus Lerchedahl Petersen
b72c93ff4f
python: remove remaining explicit taint steps
2023-06-13 20:22:20 +02:00
yoff
1d65284011
Merge pull request #13209 from yoff/python/container-summaries-2
...
python: Container summaries, part 2
2023-06-13 18:17:09 +02:00
Rasmus Wriedt Larsen
2b7fc94aef
Python: Fix validTest.py expectation
2023-06-13 12:11:28 +02:00
yoff
8cae151883
Update python/ql/test/experimental/dataflow/typetracking-summaries/TestSummaries.qll
...
Co-authored-by: Asger F <asgerf@github.com >
2023-06-13 11:22:54 +02:00
Rasmus Lerchedahl Petersen
b709ed47e1
python: add test
2023-06-13 11:20:15 +02:00
Rasmus Lerchedahl Petersen
b294f48dbe
Merge branch 'main' of https://github.com/github/codeql into python-ruby/track-through-summaries-pm
2023-06-09 14:16:34 +02:00
Jeroen Ketema
8f599faf85
Python: Rewrite inline expectation tests to use parameterized module
2023-06-09 10:42:29 +02:00
Jeroen Ketema
7b17b92aca
Fix typo in spelling of expectation
2023-06-02 10:36:11 +02:00
Rasmus Lerchedahl Petersen
2daa9577bb
ruby/python: implement shared module
...
ruby:
- create new shared file `SummaryTypeTracker.qll`
- move much logic into the module
- instantiate the module
- remove old logic, now provided by module
python:
- clone shared file
- instantiate module
- use (some of the) steps provided by the module
2023-05-30 13:31:24 +02:00
Rasmus Lerchedahl Petersen
47b2d48da2
python: add tests
...
- add `getACallSimple` to `SummarizedCallable`
(by adding it to `LibraryCallable`)
2023-05-30 13:16:04 +02:00
Rasmus Lerchedahl Petersen
9cb83fcdc9
python: add summaries for
...
copy, pop, get, getitem, setdefault
Also add read steps to taint tracking.
Reading from a tainted collection can be done in two situations:
1. There is an acces path
In this case a read step (possibly from a flow summary)
gives rise to a taint step.
2. There is no access path
In this case an explicit taint step (possibly via a flow
summary) should exist.
2023-05-26 14:04:15 +02:00
Rasmus Lerchedahl Petersen
144df9a39e
python: remove explicit dataflow steps
2023-05-26 13:24:22 +02:00
Rasmus Lerchedahl Petersen
8d4f9447b1
python: remove explicit steps
...
copy, pop, get, popitem
2023-05-26 13:22:54 +02:00
Rasmus Wriedt Larsen
a057365b7e
Python: Accept .expected changes
2023-05-22 11:54:50 +02:00
Rasmus Wriedt Larsen
44d806507d
Merge branch 'main' into python-UBV
2023-05-22 11:53:56 +02:00
Rasmus Lerchedahl Petersen
5d68473d12
python: elide nodes without location from basic
2023-05-16 14:38:51 +02:00
Rasmus Lerchedahl Petersen
5b4f98d6c4
python: Add summaries for container constructors
...
Also:
- turn on flow summaries for taint
- do not restrict node type
(as now we need summary nodes)
2023-05-16 14:38:51 +02:00
Rasmus Lerchedahl Petersen
145eaf3947
python: remove steps for container constructors
2023-05-16 10:35:10 +02:00
Rasmus Lerchedahl Petersen
81adf5aad4
python: remember to adjust annotation
2023-05-12 14:28:41 +02:00
Rasmus Lerchedahl Petersen
1b848bb510
python: fix tests
2023-05-12 13:51:50 +02:00
yoff
6a5fc3c1b1
Update python/ql/test/experimental/dataflow/tainttracking/defaultAdditionalTaintStep/test_collections.py
2023-05-12 13:06:08 +02:00
yoff
62b60f490c
Apply suggestions from code review
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2023-05-12 12:54:17 +02:00
Rasmus Lerchedahl Petersen
0a9515dbcd
python: add tests for built-in collections
...
- constructors: list, tuple, set, dict
- methods:
- general: copy, pop
- list: append
- set: add
- dict: keys, values, items, get, popitem
- functions: sorted, reversed, iter, next
2023-05-10 18:10:05 +02:00
yoff
9cc7cdef4c
Merge branch 'main' into python/update-taint-debug
2023-05-10 10:26:19 +02:00
yoff
25899c15c9
Merge pull request #13098 from hvitved/python/update-consistency-expected
...
Python: Update expected test output
2023-05-10 08:58:27 +02:00
Tom Hvitved
4d84f92e8c
Python: Update expected test output
2023-05-10 08:15:15 +02:00
yoff
4849f43d16
Merge branch 'main' into python/update-taint-debug
2023-05-09 21:35:56 +02:00
Rasmus Lerchedahl Petersen
30d3c3e8cd
python: fix warnings
...
- rename `Conf` -> `Config`
- comment out unused code
- rearrange code so it is easy to see how to swap comments
- autoformat
2023-05-09 15:01:31 +02:00
yoff
1a57f81aca
Merge pull request #12537 from yoff/python/captured-variables-for-typetracking
...
Python: Captured variables for type tracking and the API graph
2023-05-09 12:34:22 +02:00
Mathias Vorreiter Pedersen
09ba9a74ce
Merge pull request #12959 from MathiasVP/identity-consistency-check
...
DataFlow: Add an "identity-step" consistency check
2023-05-05 10:03:20 +01:00
yoff
42090b55fa
Merge branch 'main' into python/captured-variables-for-typetracking
2023-05-04 13:52:23 +02:00
Kasper Svendsen
d9f29a85d6
Python: Enable implicit this warnings
2023-05-04 10:16:52 +02:00
Mathias Vorreiter Pedersen
77001a070b
Merge branch 'main' into identity-consistency-check
2023-05-03 22:01:06 +01:00