Asterisk: Heap Buffer Overflow in OGG/Speex File Playback (format_ogg_speex)
The advisory, in context
Asterisk is an open source private branch exchange and telephony toolkit. Prior to Asterisk 20.20.1, 21.12.3, 22.10.1, 23.4.1 and Certified Asterisk 20.7-cert11, 22.8-cert3, an unbounded memcpy of OGG/Speex packet data in format_ogg_speex can cause a heap buffer overflow and crash Asterisk when reading a file containing corrupted Speex audio. The attacker must create the file and make it available to Asterisk either through sufficiently elevated privileges or by convincing an Asterisk administrator to make it available. Asterisk must also be configured to play that file. This issue is fixed in Asterisk 20.20.1, 21.12.3, 22.10.1, 23.4.1 and Certified Asterisk 20.7-cert11, 22.8-cert3.
Affected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
References
- https://github.com/asterisk/asterisk/security/advisories/GHSA-8jhw-m2hg-vp3h
- https://github.com/asterisk/asterisk/commit/0a2c1d9e910f7c4dfffa05e328accb8a96990df8
- https://github.com/asterisk/asterisk/commit/0e6d761ed83f1671632c91805252767eae85e1a2
- https://github.com/asterisk/asterisk/commit/1cf189549994e0898954c814ce5a023cd969f1db
- https://github.com/asterisk/asterisk/commit/29026ece6fdd1834bb8f49c013ef163745ff2bbd
- https://github.com/asterisk/asterisk/commit/336ebe762bf6dfaf279796700de8ab51f7acd2f3
- https://github.com/asterisk/asterisk/commit/ccec146953b5e13043a36663af84e5a50ca633a6
- https://github.com/asterisk/asterisk/commit/dbcf38933866f0ddd023bc1814a78d4c750b0809
- https://github.com/asterisk/asterisk/releases/tag/20.20.1
- https://github.com/asterisk/asterisk/releases/tag/21.12.3
- https://github.com/asterisk/asterisk/releases/tag/22.10.1
- https://github.com/asterisk/asterisk/releases/tag/23.4.1
- https://github.com/asterisk/asterisk/releases/tag/certified-20.7-cert11
- https://github.com/asterisk/asterisk/releases/tag/certified-22.8-cert3
- https://github.com/asterisk/asterisk/tree/24.0.0-pre1