We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent c94582a commit 2d637e1Copy full SHA for 2d637e1
1 file changed
python/ql/test/query-tests/Security/CWE-022/tarslip.py
@@ -50,3 +50,19 @@ def safemembers(members):
50
51
tar = tarfile.open(unsafe_filename_tar)
52
tar.extractall(members=safemembers(tar))
53
+
54
55
+# Wrong sanitizer (is missing not)
56
+tar = tarfile.open(unsafe_filename_tar)
57
+for entry in tar:
58
+ if os.path.isabs(entry.name) or ".." in entry.name:
59
+ tar.extract(entry, "/tmp/unpack/") # TODO: FN
60
61
62
+# OK Sanitized using not
63
64
65
+ # using `if not (os.path.isabs(entry.name) or ".." in entry.name):`
66
+ # would make the sanitizer work, but for the wrong reasons since out library is a bit broken.
67
+ if not os.path.isabs(entry.name):
68
+ tar.extract(entry, "/tmp/unpack/")
0 commit comments