An exploitable vulnerability exists in the YAML parsing functionality in the parse_yaml_query method in parser.py in MLAlchemy before 0.2.2. When processing YAML-Based queries for data, a YAML parser can execute arbitrary Python commands resulting in command execution because load is used where safe_load should have been used. An attacker can insert Python into loaded YAML to trigger this vulnerability.
{
"extracted_events": [
{
"cpe": "cpe:2.3:a:mlalchemy_project:mlalchemy:0.1.1:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0.1.1"
},
{
"last_affected": "0.1.1"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:mlalchemy_project:mlalchemy:0.1.2:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0.1.2"
},
{
"last_affected": "0.1.2"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:mlalchemy_project:mlalchemy:0.1.3:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0.1.3"
},
{
"last_affected": "0.1.3"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:mlalchemy_project:mlalchemy:0.2.0:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0.2.0"
},
{
"last_affected": "0.2.0"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:mlalchemy_project:mlalchemy:0.2.1:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0.2.1"
},
{
"last_affected": "0.2.1"
}
],
"source": "CPE_STRING"
},
{
"range": [
{
"fixed": "bc795757febdcce430d89f9d08f75c32d6989d3c"
}
],
"source": "REFERENCES_COMMIT"
}
]
}