In PHP before 5.6.28 and 7.x before 7.0.13, incorrect handling of various URI components in the URL parser could be used by attackers to bypass hostname-specific URL checks, as demonstrated by evil.example.com:80#@good.example.com/ and evil.example.com:80?@good.example.com/ inputs to the parseurl function (implemented in the phpurlparseex function in ext/standard/url.c).
{
"versions": [
{
"introduced": "0"
},
{
"last_affected": "5.6.27"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.0"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.1"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.2"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.3"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.4"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.5"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.6"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.7"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.8"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.9"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.10"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.11"
},
{
"introduced": "0"
},
{
"last_affected": "7.0.12"
}
]
}