Rasmus Wriedt Larsen
9195b73d84
Python: Model getpass.getpass as source of passwords
2022-11-22 14:11:52 +01:00
Rasmus Wriedt Larsen
80e71b202a
Python: Cleartext queires: Remove flow from getpass.py
2022-11-22 14:08:00 +01:00
Rasmus Wriedt Larsen
9342e3ba76
Python: Enable new test
...
But look at all those elements from getpass.py implementation :(
2022-11-22 13:59:59 +01:00
Rasmus Wriedt Larsen
e01df3ea7c
Python: Prepare for new test
...
.expected line changes 😠
2022-11-22 13:52:50 +01:00
Rasmus Wriedt Larsen
1b30cf8eca
Merge branch 'main' into call-graph-tests
2022-11-22 13:39:27 +01:00
Porcupiney Hairs
db231a111c
Python : Improve the PAM authentication bypass query
...
The current PAM auth bypass query which was contributed by me a few months back, alert on a vulenrable function but does not check if the function is actually function. This leads to a lot of fasle positives.
With this PR, I add a taint-tracking configuration to check if the username parameter can actually be supplied by an attacker.
This should bring the FP's significantly down.
2022-11-19 01:29:25 +05:30
erik-krogh
618438642a
update expected output of the queries (some sorting changed due to locations being used slightly differently in the shared pack)
2022-11-07 14:31:52 +01:00
erik-krogh
4f11e2d25f
port the Python regex/redos queries to use the shared pack
2022-11-07 14:31:51 +01:00
Rasmus Lerchedahl Petersen
0a7cfad048
python: inline query tests for command injection
...
note how the test file is partially annotated
and those annotations can now be expressed
In this particular test file, absolute line numbers
might have been better than relative ones.
We might remove line numbers altogether,
but should check more querries to see how it looks.
2022-11-02 16:21:59 +01:00
Rasmus Wriedt Larsen
e8fdff7a3b
Python: Expand ExternalAPIs test
...
We never had a showcase of how keyword arguments were handled
2022-10-28 09:38:02 +02:00
erik-krogh
a826dbbdee
fix capitalization in stack-trace-exposure
2022-10-11 13:59:10 +02:00
erik-krogh
4da0508dae
Merge branch 'main' into py-last-msg
2022-10-11 10:49:19 +02:00
Rasmus Wriedt Larsen
4b1f6f0865
Merge pull request #10629 from RasmusWL/fix-flask-source
...
Python: Fix flask request modeling
2022-10-10 09:56:22 +02:00
erik-krogh
6fdfd40880
changes to address reviews
2022-10-07 22:31:00 +02:00
erik-krogh
944ca4a0da
fix some more style-guide violations in the alert-messages
2022-10-07 11:23:34 +02:00
Rasmus Wriedt Larsen
05bca0249c
Python: Expand test for py/flask-debug
...
(I couldn't see one using positional argument)
2022-10-04 20:39:08 +02:00
Rasmus Wriedt Larsen
b01a0ae696
Python: Adjust .expected after flask source change
...
It's really hard to audit that this is all good.. I tried my best with
`icdiff` though -- and there is a problem with
ql/src/experimental/Security/CWE-348/ClientSuppliedIpUsedInSecurityCheck.ql
that needs to be fixed in the next commit
2022-10-03 20:35:49 +02:00
Rasmus Wriedt Larsen
a0fcd4a9bf
Merge pull request #10631 from RasmusWL/cleanup-options-files
...
Python: Remove last `-p ../lib/` in `options` files
2022-10-03 11:09:59 +02:00
Nick Rolfe
ed74e0aad1
JS/Python/Ruby: s/a HTML/an HTML/
2022-09-30 10:37:52 +01:00
Rasmus Wriedt Larsen
ea27f4e20f
Python: Remove last -p ../lib/ in options files
...
These were only needed for points-to.
If they only contained `--max-import-depth`, I've removed the `options`
file entirely.
2022-09-29 18:05:51 +02:00
erik-krogh
7675571daa
fix RegExpEscape::getValue having multiple results for some escapes
2022-09-27 13:25:23 +02:00
Rasmus Wriedt Larsen
8174120916
Python: Model flask.jsonify
2022-09-22 14:43:39 +02:00
Rasmus Wriedt Larsen
078d3d0062
Python: Add stacktrace exposure example
2022-09-22 14:27:49 +02:00
yoff
18a8a3332d
Merge pull request #10494 from RasmusWL/tarslip-test-imports
...
Python: Fix imports for tarslip tests
2022-09-20 20:04:14 +02:00
Rasmus Wriedt Larsen
253d9cf39f
Python: Fix imports for tarslip tests
...
This doesn't change results, but makes the test-code more valid
2022-09-20 17:25:46 +02:00
CodeQL CI
ed4b64b1c4
Merge pull request #10265 from yoff/python/port-UnguardedNextInGenerator
...
Approved by tausbn
2022-09-19 00:50:52 -07:00
Rasmus Wriedt Larsen
5f6e3dcc2e
Python: Revert changes to sensitive data query alert messages
...
This partly reverts the changes from https://github.com/github/codeql/pull/10252
Although consistency is nice, the new messages didn't sound as natural.
New alert message would read
> Insecure hashing algorithm (md5) depends on sensitive data (password). (...)
I'm not sure what it means that a hashing algorithm depends on data. So
for me, the original text below is much easier to understand.
> Sensitive data (password) is used in a hashing algorithm (md5) that is insecure (...)
Same goes for the other sensitive data queries.
2022-09-06 12:01:24 +02:00
Rasmus Lerchedahl Petersen
5fc1bbc8c5
Python: Only alert on Python 2 code
...
since
- Python 3 is ok from 3.7 onwards
- support for Python 3.6 was just dropped
- we do not actually know the minor version of the analysed code
(only of the extractor)
2022-09-05 13:38:14 +02:00
erik-krogh
0de0325c8e
change the alert-message for py/modification-of-default-value
2022-09-05 13:30:56 +02:00
Rasmus Lerchedahl Petersen
a8a042db57
python: remove illegal option
2022-09-03 20:33:48 +02:00
erik-krogh
089ce5a8a4
change alert messages of path queries to use the same template
2022-09-02 14:45:40 +02:00
Rasmus Lerchedahl Petersen
0599e8ac35
python: add version check
...
and attempt to set version for tests
2022-09-01 23:47:07 +02:00
Erik Krogh Kristensen
06afe9c0f4
Merge pull request #9816 from erik-krogh/msgConsis
...
Make alert messages consistent across languages
2022-08-25 15:20:01 +02:00
Ian Lynagh
4cd618f81c
Make *.expected non-executable
2022-08-24 16:51:50 +01:00
erik-krogh
014dcd1454
fixup a Python query, it didn't select something with a location
2022-08-24 16:23:20 +02:00
erik-krogh
1a7d3ee831
update expected output after changing queries
2022-08-23 12:35:32 +02:00
erik-krogh
7e0bd5bde4
update expected output of tests
2022-08-22 21:41:47 +02:00
Erik Krogh Kristensen
f106e064fa
Merge pull request #9422 from erik-krogh/refacReDoS
...
Refactorizations of the ReDoS libraries
2022-08-16 09:32:08 +02:00
Erik Krogh Kristensen
0adb588fe8
Merge pull request #9712 from erik-krogh/badRange
...
JS/RB/PY/Java: add suspicious range query
2022-08-15 13:55:44 +02:00
Erik Krogh Kristensen
49276b1f38
Merge branch 'main' into refacReDoS
2022-08-09 16:18:46 +02:00
Rasmus Wriedt Larsen
3d0c23e441
Python: Accept .expected for TarSlip
...
Changed after merging https://github.com/github/codeql/pull/9579 ,
which improved our handling of `not` for guards.
2022-08-03 09:52:11 +02:00
Erik Krogh Kristensen
ff25451699
rename query to overly-large-range, and rewrite the @description
2022-07-12 16:02:46 +02:00
Erik Krogh Kristensen
a343ceaf8b
add suspicious-regexp-range query
2022-06-28 09:49:27 +02:00
Rasmus Wriedt Larsen
9e154ff4bd
Merge branch 'main' into python/port-tarslip
2022-06-27 14:36:15 +02:00
Erik Krogh Kristensen
13482fc97b
rename ReDoSUtil to NfaUtils, and rename the "performance" folder to "regexp"
2022-06-23 14:36:25 +02:00
Erik Krogh Kristensen
7fb3d81d2f
add further normalization of char classses
2022-06-23 14:36:25 +02:00
Taus
3a328f6a3f
Merge pull request #6570 from yoff/python/broaden-noqa-regex
...
Python: Broaden noqa regex to allow comments
2022-06-17 23:56:39 +02:00
Taus
9bf2eb55ca
Python: Allow whitespace before colon
...
As suggested by @DimitriPapadopolous.
Also fixes the test output to account for the `noqa` annotation (with
added comment) that we're now detecting.
2022-06-16 11:16:58 +02:00
yoff
f14a90ff09
Merge pull request #9200 from tausbn/python-modernise-weak-file-permissions-query
...
Python: Modernise weak file permissions query
2022-06-15 14:37:17 +02:00
yoff
9dbb451f41
Merge pull request #9463 from RasmusWL/req-wo-cert-validation
...
Python: Rewrite `py/request-without-cert-validation`
2022-06-15 13:00:57 +02:00