Description
An issue was discovered in Enalean Tuleap 9.6 and prior versions. The vulnerability exists because the User::getRecentElements() method is using the unserialize() function with a preference value that can be arbitrarily manipulated by malicious users through the REST API interface, and this can be exploited to inject arbitrary PHP objects into the application scope, allowing an attacker to perform a variety of attacks (including but not limited to Remote Code Execution).
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
Metasploit 1 module
-
Tuleap 9.6 Second-Order PHP Object Injection
exploit/unix/webapp/tuleap_rest_unserialize_exec
Exploit-DB 1
- Tuleap 9.6 - Second-Order PHP Object Injection (Metasploit) EDB-43374 · remote · Dec 19, 2017 · verified
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
References
- https://tuleap.net/plugins/tracker/?aid=10118
- http://packetstormsecurity.com/files/144716/Tuleap-9.6-Second-Order-PHP-Object-Injection.html
- 43374 exploit
- [oss-security] 20171023 [KIS-2017-02] Tuleap <= 9.6 Second-Order PHP Object Injection Vulnerability mailing-list
- http://karmainsecurity.com/KIS-2017-02
- 20171023 [KIS-2017-02] Tuleap <= 9.6 Second-Order PHP Object Injection Vulnerability mailing-list