Description
An issue was discovered in the captive portal in OpenNDS before version 10.1.3. get_query in http_microhttpd.c does not validate the length of the query string of GET requests. This leads to a stack-based buffer overflow in versions 9.x and earlier, and to a heap-based buffer overflow in versions 10.x and later. Attackers may exploit the issue to crash OpenNDS (Denial-of-Service condition) or to inject and execute arbitrary bytecode (Remote Code Execution). Affected OpenNDS before version 10.1.3 fixed in OpenWrt master and OpenWrt 23.05 on 23. November by updating OpenNDS to version 10.2.0.
References
github.com/openNDS/openNDS/releases/tag/v10.1.3
github.com/...ommit/c294cf30e0a2512062c66e6becb674557b4aed8d
github.com/...ommit/88c98c910acccab694b3afb6d36d70ca429118a6
source.sierrawireless.com/...bulletin---swi-psa-2023-006-v4/
github.com/openNDS/openNDS/releases/tag/v10.1.3
github.com/...ommit/c294cf30e0a2512062c66e6becb674557b4aed8d
github.com/...ommit/88c98c910acccab694b3afb6d36d70ca429118a6
source.sierrawireless.com/...bulletin---swi-psa-2023-006-v4/