Skip to content

Commit 8b01bac

Browse files
committed
Python: make sure unsafe deserialization query is using correct sources and that pickle is included in sinks.
1 parent bc19769 commit 8b01bac

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

python/ql/src/Security/CWE-502/UnsafeDeserialization.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ class UnsafeDeserializationConfiguration extends TaintTracking::Configuration {
2828

2929
UnsafeDeserializationConfiguration() { this = "Unsafe deserialization configuration" }
3030

31-
override predicate isSource(TaintTracking::Source source) { source.isSourceOf(any(UntrustedStringKind u)) }
31+
override predicate isSource(TaintTracking::Source source) { source instanceof HttpRequestTaintSource }
3232

3333
override predicate isSink(TaintTracking::Sink sink) { sink instanceof DeserializationSink }
3434

python/ql/src/semmle/python/security/injection/Pickle.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ private FunctionObject pickleLoads() {
2525
}
2626

2727
/** `pickle.loads(untrusted)` vulnerability. */
28-
class UnpicklingNode extends TaintSink {
28+
class UnpicklingNode extends DeserializationSink {
2929

3030
override string toString() { result = "unpickling untrusted data" }
3131

0 commit comments

Comments
 (0)