A Buffer Overflow issue was discovered in Asterisk through 13.19.1, 14.x through 14.7.5, and 15.x through 15.2.1, and Certified Asterisk through 13.18-cert2. When processing a SUBSCRIBE request, the respjsippubsub module stores the accepted formats present in the Accept headers of the request. This code did not limit the number of headers it processed, despite having a fixed limit of 32. If more than 32 Accept headers were present, the code would write outside of its memory and cause a crash.
{
"unresolved_ranges": [
{
"source": "CPE_FIELD",
"extracted_events": [
{
"last_affected": "9.0"
}
],
"cpe": "cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*"
}
]
}{
"source": "CPE_FIELD",
"extracted_events": [
{
"introduced": "0"
},
{
"last_affected": "13.19.1"
},
{
"last_affected": "13.18-cert1"
},
{
"last_affected": "13.18-cert2"
},
{
"last_affected": "13.18"
},
{
"introduced": "14.0.0"
},
{
"last_affected": "14.7.5"
},
{
"introduced": "15.0.0"
},
{
"last_affected": "15.2.1"
}
],
"cpe": [
"cpe:2.3:a:digium:asterisk:*:*:*:*:*:*:*:*",
"cpe:2.3:a:digium:certified_asterisk:13.18:cert1:*:*:*:*:*:*",
"cpe:2.3:a:digium:certified_asterisk:13.18:cert2:*:*:*:*:*:*",
"cpe:2.3:a:digium:certified_asterisk:*:*:*:*:*:*:*:*"
]
}