mirror of
https://github.com/github/codeql.git
synced 2026-04-28 10:15:14 +02:00
Python: Fix results outside DB for CleartextLogging
This commit is contained in:
@@ -57,16 +57,43 @@ module CleartextLogging {
|
||||
/** A piece of data printed, considered as a flow sink. */
|
||||
class PrintedDataAsSink extends Sink {
|
||||
PrintedDataAsSink() {
|
||||
this = API::builtin("print").getACall().getArg(_)
|
||||
or
|
||||
// special handling of writing to `sys.stdout` and `sys.stderr`, which is
|
||||
// essentially the same as printing
|
||||
this =
|
||||
API::moduleImport("sys")
|
||||
.getMember(["stdout", "stderr"])
|
||||
.getMember("write")
|
||||
.getACall()
|
||||
.getArg(0)
|
||||
(
|
||||
this = API::builtin("print").getACall().getArg(_)
|
||||
or
|
||||
// special handling of writing to `sys.stdout` and `sys.stderr`, which is
|
||||
// essentially the same as printing
|
||||
this =
|
||||
API::moduleImport("sys")
|
||||
.getMember(["stdout", "stderr"])
|
||||
.getMember("write")
|
||||
.getACall()
|
||||
.getArg(0)
|
||||
) and
|
||||
// since some of the inner error handling implementation of the logging module is
|
||||
// ```py
|
||||
// sys.stderr.write('Message: %r\n'
|
||||
// 'Arguments: %s\n' % (record.msg,
|
||||
// record.args))
|
||||
// ```
|
||||
// any time we would report flow to such a logging sink, we can ALSO report
|
||||
// the flow to the `record.msg`/`record.args` sinks -- obviously we
|
||||
// don't want that.
|
||||
//
|
||||
// However, simply removing taint edges out of a sink is not a good enough solution,
|
||||
// since we would only flag one of the `logging.info` calls in the following example
|
||||
// due to use-use flow
|
||||
// ```py
|
||||
// logging.info(user_controlled)
|
||||
// logging.info(user_controlled)
|
||||
// ```
|
||||
//
|
||||
// The same approach is used in the command injection query.
|
||||
not exists(Module loggingInit |
|
||||
loggingInit.getName() = "logging.__init__" and
|
||||
this.getScope().getEnclosingModule() = loggingInit and
|
||||
// do allow this call if we're analyzing logging/__init__.py as part of CPython though
|
||||
not exists(loggingInit.getFile().getRelativePath())
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,7 +77,8 @@ module CommandInjection {
|
||||
// https://github.com/python/cpython/blob/fa7ce080175f65d678a7d5756c94f82887fc9803/Lib/os.py#L974
|
||||
// https://github.com/python/cpython/blob/fa7ce080175f65d678a7d5756c94f82887fc9803/Lib/subprocess.py#L341
|
||||
//
|
||||
// The same approach is used in the path-injection and cleartext-storage queries.
|
||||
// The same approach is used in the path-injection, cleartext-storage, and
|
||||
// cleartext-logging queries.
|
||||
not this.getScope().getEnclosingModule().getName() in [
|
||||
"os", "subprocess", "platform", "popen2"
|
||||
]
|
||||
|
||||
@@ -1,111 +1,18 @@
|
||||
edges
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:283:23:283:26 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:310:20:310:23 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:310:20:310:23 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:310:20:310:26 | ControlFlowNode for Subscript |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:310:20:310:26 | ControlFlowNode for Subscript | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:311:21:311:24 | ControlFlowNode for args |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:311:21:311:24 | ControlFlowNode for args | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:311:9:311:12 | [post] ControlFlowNode for self [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:939:22:939:27 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:952:27:952:32 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:952:27:952:32 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1071:20:1071:25 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:952:27:952:32 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1178:20:1178:25 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:989:27:989:32 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1023:59:1023:64 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1022:59:1023:69 | ControlFlowNode for Tuple | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1021:38:1023:70 | ControlFlowNode for BinaryExpr |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1023:59:1023:64 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1023:59:1023:69 | ControlFlowNode for Attribute |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1023:59:1023:69 | ControlFlowNode for Attribute | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1022:59:1023:69 | ControlFlowNode for Tuple |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1071:20:1071:25 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1091:30:1091:35 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1091:30:1091:35 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:989:27:989:32 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1178:20:1178:25 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1187:34:1187:39 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1187:34:1187:39 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1071:20:1071:25 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1424:27:1424:30 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1434:35:1434:38 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1434:35:1434:38 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1565:32:1565:35 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1436:26:1436:29 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1446:34:1446:37 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1446:34:1446:37 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1565:32:1565:35 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1497:32:1497:35 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1512:35:1512:38 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1512:35:1512:38 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1565:32:1565:35 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1550:53:1550:56 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:59:1556:62 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:14:1557:35 | ControlFlowNode for _logRecordFactory() [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1563:16:1563:17 | ControlFlowNode for rv [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:59:1556:62 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:283:23:283:26 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:59:1556:62 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:14:1557:35 | ControlFlowNode for _logRecordFactory() [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1565:32:1565:35 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:66:1587:69 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:18:1588:62 | ControlFlowNode for Attribute() [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1589:21:1589:26 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:66:1587:69 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1550:53:1550:56 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:66:1587:69 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:18:1588:62 | ControlFlowNode for Attribute() [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1589:21:1589:26 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1591:22:1591:27 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1591:22:1591:27 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1599:31:1599:36 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1599:31:1599:36 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1645:28:1645:33 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1645:28:1645:33 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1669:39:1669:44 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1669:39:1669:44 | ControlFlowNode for record [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:939:22:939:27 | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2089:16:2089:19 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2097:21:2097:24 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2097:21:2097:24 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1436:26:1436:29 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2099:17:2099:20 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2107:22:2107:25 | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2107:22:2107:25 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1424:27:1424:30 | ControlFlowNode for args [List element] |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:20:48:20:55 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:20:48:20:55 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:22:58:22:65 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:22:58:22:65 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:23:58:23:65 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:23:58:23:65 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:27:40:27:47 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:27:40:27:47 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:30:58:30:65 | ControlFlowNode for password |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:30:58:30:65 | ControlFlowNode for password |
|
||||
| test.py:20:48:20:55 | ControlFlowNode for password | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2089:16:2089:19 | ControlFlowNode for args [List element] |
|
||||
| test.py:22:58:22:65 | ControlFlowNode for password | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1497:32:1497:35 | ControlFlowNode for args [List element] |
|
||||
| test.py:23:58:23:65 | ControlFlowNode for password | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1436:26:1436:29 | ControlFlowNode for args [List element] |
|
||||
| test.py:27:40:27:47 | ControlFlowNode for password | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1436:26:1436:29 | ControlFlowNode for args [List element] |
|
||||
| test.py:30:58:30:65 | ControlFlowNode for password | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1436:26:1436:29 | ControlFlowNode for args [List element] |
|
||||
| test.py:34:30:34:39 | ControlFlowNode for get_cert() | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2099:17:2099:20 | ControlFlowNode for args [List element] |
|
||||
| test.py:65:14:68:5 | ControlFlowNode for Dict | test.py:69:11:69:31 | ControlFlowNode for Subscript |
|
||||
| test.py:67:21:67:37 | ControlFlowNode for Attribute | test.py:65:14:68:5 | ControlFlowNode for Dict |
|
||||
nodes
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:283:23:283:26 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:310:20:310:23 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:310:20:310:26 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:311:9:311:12 | [post] ControlFlowNode for self [Attribute args] | semmle.label | [post] ControlFlowNode for self [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:311:21:311:24 | ControlFlowNode for args | semmle.label | ControlFlowNode for args |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:939:22:939:27 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:952:27:952:32 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:989:27:989:32 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1021:38:1023:70 | ControlFlowNode for BinaryExpr | semmle.label | ControlFlowNode for BinaryExpr |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1022:59:1023:69 | ControlFlowNode for Tuple | semmle.label | ControlFlowNode for Tuple |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1023:59:1023:64 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1023:59:1023:69 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1071:20:1071:25 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1091:30:1091:35 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1178:20:1178:25 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1187:34:1187:39 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1424:27:1424:30 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1434:35:1434:38 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1436:26:1436:29 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1446:34:1446:37 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1497:32:1497:35 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1512:35:1512:38 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1550:53:1550:56 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:14:1557:35 | ControlFlowNode for _logRecordFactory() [Attribute args] | semmle.label | ControlFlowNode for _logRecordFactory() [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:59:1556:62 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1563:16:1563:17 | ControlFlowNode for rv [Attribute args] | semmle.label | ControlFlowNode for rv [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1565:32:1565:35 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:18:1588:62 | ControlFlowNode for Attribute() [Attribute args] | semmle.label | ControlFlowNode for Attribute() [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:66:1587:69 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1589:21:1589:26 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1591:22:1591:27 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1599:31:1599:36 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1645:28:1645:33 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1669:39:1669:44 | ControlFlowNode for record [Attribute args] | semmle.label | ControlFlowNode for record [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2089:16:2089:19 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2097:21:2097:24 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2099:17:2099:20 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:2107:22:2107:25 | ControlFlowNode for args [List element] | semmle.label | ControlFlowNode for args [List element] |
|
||||
| test.py:19:16:19:29 | ControlFlowNode for get_password() | semmle.label | ControlFlowNode for get_password() |
|
||||
| test.py:20:48:20:55 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:20:48:20:55 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:22:58:22:65 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:22:58:22:65 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:23:58:23:65 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:23:58:23:65 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:27:40:27:47 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:27:40:27:47 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:30:58:30:65 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:30:58:30:65 | ControlFlowNode for password | semmle.label | ControlFlowNode for password |
|
||||
| test.py:34:30:34:39 | ControlFlowNode for get_cert() | semmle.label | ControlFlowNode for get_cert() |
|
||||
| test.py:34:30:34:39 | ControlFlowNode for get_cert() | semmle.label | ControlFlowNode for get_cert() |
|
||||
| test.py:37:11:37:24 | ControlFlowNode for get_password() | semmle.label | ControlFlowNode for get_password() |
|
||||
| test.py:39:22:39:35 | ControlFlowNode for get_password() | semmle.label | ControlFlowNode for get_password() |
|
||||
@@ -114,11 +21,7 @@ nodes
|
||||
| test.py:67:21:67:37 | ControlFlowNode for Attribute | semmle.label | ControlFlowNode for Attribute |
|
||||
| test.py:69:11:69:31 | ControlFlowNode for Subscript | semmle.label | ControlFlowNode for Subscript |
|
||||
subpaths
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:59:1556:62 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:283:23:283:26 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:311:9:311:12 | [post] ControlFlowNode for self [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1556:14:1557:35 | ControlFlowNode for _logRecordFactory() [Attribute args] |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:66:1587:69 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1550:53:1550:56 | ControlFlowNode for args [List element] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1563:16:1563:17 | ControlFlowNode for rv [Attribute args] | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1587:18:1588:62 | ControlFlowNode for Attribute() [Attribute args] |
|
||||
#select
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1021:38:1023:70 | ControlFlowNode for BinaryExpr | test.py:19:16:19:29 | ControlFlowNode for get_password() | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1021:38:1023:70 | ControlFlowNode for BinaryExpr | This expression logs $@ as clear text. | test.py:19:16:19:29 | ControlFlowNode for get_password() | sensitive data (password) |
|
||||
| file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1021:38:1023:70 | ControlFlowNode for BinaryExpr | test.py:34:30:34:39 | ControlFlowNode for get_cert() | file:///home/rasmus/.pyenv/versions/3.9.5/lib/python3.9/logging/__init__.py:1021:38:1023:70 | ControlFlowNode for BinaryExpr | This expression logs $@ as clear text. | test.py:34:30:34:39 | ControlFlowNode for get_cert() | sensitive data (certificate) |
|
||||
| test.py:20:48:20:55 | ControlFlowNode for password | test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:20:48:20:55 | ControlFlowNode for password | This expression logs $@ as clear text. | test.py:19:16:19:29 | ControlFlowNode for get_password() | sensitive data (password) |
|
||||
| test.py:22:58:22:65 | ControlFlowNode for password | test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:22:58:22:65 | ControlFlowNode for password | This expression logs $@ as clear text. | test.py:19:16:19:29 | ControlFlowNode for get_password() | sensitive data (password) |
|
||||
| test.py:23:58:23:65 | ControlFlowNode for password | test.py:19:16:19:29 | ControlFlowNode for get_password() | test.py:23:58:23:65 | ControlFlowNode for password | This expression logs $@ as clear text. | test.py:19:16:19:29 | ControlFlowNode for get_password() | sensitive data (password) |
|
||||
|
||||
Reference in New Issue
Block a user