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 {
40
40
}
41
41
42
42
/**
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.
48
54
*/
49
55
override predicate mayExecuteInput ( ) {
50
56
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