File tree Expand file tree Collapse file tree 1 file changed +11
-5
lines changed
python/ql/lib/semmle/python/frameworks Expand file tree Collapse file tree 1 file changed +11
-5
lines changed Original file line number Diff line number Diff line change @@ -40,11 +40,17 @@ private module Yaml {
4040 }
4141
4242 /**
43- * This function was thought safe from the 5.1 release in 2017, when the default loader was changed to `FullLoader`.
44- * In 2020 new exploits were found, meaning it's not safe. The Current plan is to change the default to `SafeLoader` in release 6.0
45- * (as explained in https://github.com/yaml/pyyaml/issues/420#issuecomment-696752389).
46- * Until 6.0 is released, we will mark `yaml.load` as possibly leading to arbitrary code execution.
47- * See https://github.com/yaml/pyyaml/wiki/PyYAML-yaml.load(input)-Deprecation for more details.
43+ * This function was thought safe from the 5.1 release in 2017, when the default
44+ * loader was changed to `FullLoader` (see
45+ * https://github.com/yaml/pyyaml/wiki/PyYAML-yaml.load(input)-Deprecation).
46+ *
47+ * In 2020 new exploits were found, meaning it's not safe. With the 6.0 release (see
48+ * https://github.com/yaml/pyyaml/commit/8cdff2c80573b8be8e8ad28929264a913a63aa33),
49+ * when using `load` and `load_all` you are now required to specify a Loader. But
50+ * from what I (@RasmusWL) can gather, `FullLoader` is not to be considered safe,
51+ * although known exploits have been mitigated (is at least my impression). Also see
52+ * https://github.com/yaml/pyyaml/issues/420#issuecomment-696752389 for more
53+ * details.
4854 */
4955 override predicate mayExecuteInput ( ) {
5056 func_name in [ "full_load" , "full_load_all" , "unsafe_load" , "unsafe_load_all" ]
You can’t perform that action at this time.
0 commit comments