Rasmus Wriedt Larsen
07ae40206f
Python: Don't allow getParameter(-1) for BoundMethodValue
...
As per discussion in the PR
2020-05-05 11:37:10 +02:00
Rasmus Wriedt Larsen
dfe7c8270b
Python: Clean up trailing whitespace
2020-05-05 09:55:09 +02:00
Rasmus Wriedt Larsen
87d7738b6e
Python: Expand QLDoc for get[Named]ArgumentForCall
2020-05-05 09:54:54 +02:00
Rasmus Wriedt Larsen
061bbb82f5
Python: Restructure getNamedArgumentForCall
...
So it matches the structure of getArgumentForCall -- call.getArgByName first!
2020-05-05 09:00:55 +02:00
Rasmus Wriedt Larsen
838106d49c
Python: Refactor get[Named]ArgumentForCall
...
Also fixed a bug for BoundMethodValue, as highlighted in the expected diff 👍
2020-05-04 20:51:23 +02:00
Rasmus Wriedt Larsen
bc92c26e12
Python: Add BoundMethodValue
2020-05-04 20:51:12 +02:00
Rasmus Wriedt Larsen
e9859ad96d
Python: Fix getArgumentForCall when using keyword arguments
...
Yikes :|
2020-05-04 20:50:56 +02:00
Rasmus Wriedt Larsen
e569d7ae41
Merge branch 'master' into python-parse_qs
2020-04-30 17:05:17 +02:00
Rasmus Wriedt Larsen
e0b4518a3e
Merge branch 'master' into python-improve-file-taint
2020-04-30 11:24:29 +02:00
Taus
de08433bd3
Merge pull request #3212 from RasmusWL/python-fix-tests-filter
...
Python: Fix (some) shortcomings of tests filter
2020-04-27 11:26:35 +02:00
Taus
bcb980b3d5
Merge pull request #3302 from RasmusWL/python-str-taint-add-methods
...
Python: Add taint for string methods
2020-04-24 16:29:11 +02:00
semmle-qlci
4c7a5007d8
Merge pull request #3314 from RasmusWL/python-model-stdlib-http.server
...
Approved by tausbn
2020-04-24 15:27:21 +01:00
Rasmus Wriedt Larsen
2b3025265b
Python: Clean up QLdoc
...
Co-Authored-By: Taus <tausbn@gmail.com >
2020-04-24 14:05:02 +02:00
Rasmus Wriedt Larsen
367ee3e8c4
Python: Modernise security/injection/Path.qll
...
And we're making things a bit more clean since it's not *any* argument of `open()` that is a taint-sink.
2020-04-24 12:03:42 +02:00
Rasmus Wriedt Larsen
67837887c8
Python: Modernise security/injection/Exec.qll
2020-04-24 11:59:05 +02:00
Rasmus Wriedt Larsen
8878884724
Python: Rewrite web/stdlib/Request.qll QLDoc to be more clear
2020-04-24 08:07:23 +02:00
Rasmus Wriedt Larsen
23f3736b67
Python: Simplify CgiFieldStorageFieldKind.getTaintOfAttribute
2020-04-24 08:04:55 +02:00
Taus
1d6b6a48ae
Merge pull request #2924 from BekaValentine/python-objectapi-to-valueapi-wrongnumberargumentsincall
...
Python: ObjectAPI to ValueAPI: WrongNumberArgumentsInCall
2020-04-23 17:56:39 +02:00
Rasmus Wriedt Larsen
06edd076b6
Python: Enable taint when iterating over ExternalFileObject
2020-04-23 14:11:50 +02:00
Rasmus Wriedt Larsen
94ae2febe5
Python: Propagate taint through parse_qsl
2020-04-23 12:14:22 +02:00
Rasmus Wriedt Larsen
86630f1d6c
Python: Handle readline, readlines for ExternalFileObject
2020-04-23 10:40:16 +02:00
Rasmus Wriedt Larsen
c479a77d55
Python: Refactor ExternalFileObject to use field
...
Instead of string matching. This brings it in line with what CollectionKind,
SequenceKind, and DictKind does.
2020-04-23 10:28:29 +02:00
Rebecca Valentine
89752f4b55
Merge branch 'master' into python-objectapi-to-valueapi-wrongnumberargumentsincall
2020-04-22 09:52:33 -07:00
Rasmus Wriedt Larsen
51a9094064
Python: Add sinks for http.server.BaseHTTPRequestHandler
2020-04-22 17:28:27 +02:00
Rasmus Wriedt Larsen
a27431e197
Python: Add module level QLDoc in web/stdlib/Request.qll
2020-04-22 16:22:03 +02:00
Rasmus Wriedt Larsen
6b84137a92
Python: Model cgi.FieldStorage (parsing of submitted forms)
2020-04-22 11:37:47 +02:00
Rasmus Wriedt Larsen
1ecfa2eb55
Merge pull request #3278 from tausbn/python-fix-warnings
...
Python: Fix remaining deprecation warnings.
2020-04-22 11:33:16 +02:00
Rasmus Wriedt Larsen
6eb24011eb
Python: Add docs to web/stdlib/Request.qll
2020-04-22 11:26:50 +02:00
Taus Brock-Nannestad
2fad5e8e32
Python: Remove deprecated TaintFlow and additionalFlowStepVar.
2020-04-22 10:34:00 +02:00
Rasmus Wriedt Larsen
26ed911bb2
Python: Add modeling of http.server.BaseHTTPRequestHandler
2020-04-22 09:52:10 +02:00
Rasmus Wriedt Larsen
30e2592701
Python: Propagate taint through parse_qs
2020-04-22 08:55:35 +02:00
Taus
5af351eacd
Merge pull request #3275 from RasmusWL/python-fix-points-to-deprecations
...
Python: Remove deprecated annotation for old PointsTo::points_to
2020-04-21 18:18:07 +02:00
semmle-qlci
d75d520f35
Merge pull request #3232 from RasmusWL/python-more-deprecated-annotations
...
Approved by BekaValentine
2020-04-21 09:30:27 +01:00
Rasmus Wriedt Larsen
43bc7c6619
Python: Autoformat
...
I'm not particularly happy about this one, but I don't care to fight about it today.
2020-04-20 16:08:53 +02:00
Rasmus Wriedt Larsen
b7145af447
Python: Handle all methods in StringKind.getTaintOfMethodResult
2020-04-20 16:07:30 +02:00
Rasmus Wriedt Larsen
a5d3966cb3
Python: Refactor StringKind.getTaintOfMethodResult
...
no need to match on ControlFlowNodes manually anymore 🎉
2020-04-20 15:01:40 +02:00
Taus
a92d926b56
Merge pull request #3218 from RasmusWL/python-add-missing-override
...
Python: Add missing override to ClassValue.hasAttribute
2020-04-16 14:06:23 +02:00
Taus Brock-Nannestad
2d8770d17c
Python: Fix remaining deprecation warnings.
2020-04-16 14:03:21 +02:00
Rasmus Wriedt Larsen
ab120ed7af
Python: Remove deprecated annotation for old PointsTo::points_to
...
We should only deprecate it when we're ready to deprecate the old refersTo and
all the old Object classes
2020-04-16 09:47:45 +02:00
Rasmus Wriedt Larsen
b179a0bdc2
Python: Add deprecated comment for FinalCustomPointsToFact
2020-04-15 16:59:07 +02:00
Taus
8402e6a2e1
Merge pull request #3243 from BekaValentine/python-objectapi-to-valueapi-incorrectlyspecifiedoverriddenmethod
...
Python: ObjectAPI to ValueAPI: IncorrectlySpecifiedOverriddenMethod
2020-04-14 18:55:42 +02:00
semmle-qlci
52b76b1373
Merge pull request #3233 from RasmusWL/python-use-getAbsolutePath
...
Approved by BekaValentine
2020-04-14 10:43:24 +01:00
Rebecca Valentine
336e48c5c6
Python: ObjectAPI to ValueAPI: IncorrectlySpecifiedOverriddenMethod: Adds preliminary modernization
2020-04-09 14:50:26 -07:00
Rasmus Wriedt Larsen
a2440f0fcd
Python: Modernise semmle/python/dataflow/Files.qll
2020-04-08 16:53:19 +02:00
Rasmus Wriedt Larsen
32c04ad765
Python: Use getAbsolutePath() instead of deprecated getName()
2020-04-08 16:46:33 +02:00
Rasmus Wriedt Larsen
ac3acb9187
Python: Add more deprecated annotations
...
These classes/predicates are not used by anything in our codebase, and is using
deprecated classes/predicates, so I think it's safe to assume they should also
have been marked with the deprecated annotation.
Changes the QL compiler warnings with:
-WARNING: Type Configuration has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/dataflow/TaintTracking.qll:663,50-63)
-WARNING: Type Configuration has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/dataflow/TaintTracking.qll:666,19-32)
-WARNING: Type Configuration has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/dataflow/TaintTracking.qll:671,19-32)
-WARNING: Type Configuration has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/dataflow/TaintTracking.qll:733,16-39)
-WARNING: Type CustomPointsToAttribute has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/types/Extensions.qll:181,28-51)
-WARNING: Type CustomPointsToFact has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/types/Extensions.qll:155,60-78)
-WARNING: Type CustomPointsToFact has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/types/Extensions.qll:159,19-37)
-WARNING: Type CustomPointsToFact has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/types/Extensions.qll:41,33-51)
+WARNING: Type CustomPointsToFact has been deprecated and may be removed in future (/home/rasmus/code/ql/python/ql/src/semmle/python/types/Extensions.qll:41,44-62)
2020-04-08 15:10:35 +02:00
Rasmus Wriedt Larsen
7af5f038ab
Python: Add missing override to ClassValue.hasAttribute
...
I was considering if this was actually something different than
Value.hasAttribute, and the names were just accidentially the same. But after
looking at the definition for Value, I'm happy about marking this as an
override (I did not test whether it was neede though):
```codeql
class Value extends TObject {
...
/** Holds if this value has the attribute `name` */
predicate hasAttribute(string name) { this.(ObjectInternal).hasAttribute(name) }
```
2020-04-07 14:02:53 +02:00
Rasmus Wriedt Larsen
2871eb307a
Python: Fix (some) shortcomings of tests filter
2020-04-07 11:24:06 +02:00
Rebecca Valentine
c1ba1345df
Python: ObjAPI to ValAPI: WrongNumArgsInCall: ObjectAPI.qll: Adds doc for getAnInferredType
2020-04-06 11:03:42 -07:00
Rebecca Valentine
16eedf9ea5
Merge branch 'master' into python-objectapi-to-valueapi-wrongnumberargumentsincall
2020-04-06 10:35:49 -07:00