Advisory ID: HTB23248 Product: my little forum Vendor: http://mylittleforum.net/ Vulnerable Version(s): 2.3.3 and probably prior Tested Version: 2.3.3 Advisory Publication: January 14, 2015 [without technical details] Vendor Notification: January 14, 2015 Vendor Patch: February 8, 2015 Public Disclosure: February 11, 2015 Vulnerability Type: SQL Injection [CWE-89], Cross-Site Scripting [CWE-79] CVE References: CVE-2015-1434, CVE-2015-1435 Risk Level: Medium CVSSv2 Base Scores: 6.5 (AV:N/AC:L/Au:S/C:P/I:P/A:P), 4.3 (AV:N/AC:M/Au:N/C:N/I:P/A:N) Solution Status: Fixed by Vendor Discovered and Provided: High-Tech Bridge Security Research Lab ( https://www.htbridge.com/advisory/ ) ----------------------------------------------------------------------------------------------- Advisory Details: High-Tech Bridge Security Research Lab discovered multiple vulnerabilities in my little forum, which can be exploited to perform SQL Injection and Cross-Site Scripting (XSS) attacks. The SQL injection vulnerabilities have medium risk assigned as they can be exploited under administrator account or via XSRF vector. 1) SQL Injection in my little forum: CVE-2015-1434 1.1 Input passed via the "edit_category" HTTP GET parameter to "/index.php" script is not properly sanitised before being used in SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. Simple PoC code below will create a file in web root with phpinfo() function (if MySQL has enough privileges, and current web user can write into the directory): http://[host]/index.php?mode=admin&edit_category=' UNION SELECT 1,2,3,'' INTO OUTFILE '/var/www/file.php' -- 1.2 Input passed via the "letter" HTTP GET parameter to "/index.php" script is not properly sanitised before being used in SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. Simple PoC code below will create a file in web root with phpinfo() function (if MySQL has enough privileges, and current web user can write into the directory): http://[host]/index.php?mode=admin&action=user&letter=' UNION SELECT '' INTO OUTFILE '/var/www/file.php' -- Both vulnerabilities require administrative privileges, however can be also exploited via XSRF vector to which the application is also vulnerable. 2) Cross-Site Scripting (XSS) in my little forum: CVE-2015-1435 2.1 Input passed via the "back" GET parameter to "/index.php" is not properly sanitised before being returned to the user. A remote attacker can trick a logged-in user to open a specially crafted link and execute arbitrary HTML and script code in browser in context of the vulnerable website. PoC below uses JS "alert()" function to display a pop-up with "ImmuniWeb": http://[host]/index.php?delete_posting=1&mode=posting&back=%22%3E%3Cscript%3Ealert%28/ImmuniWeb/%29;%3C/script%3E ----------------------------------------------------------------------------------------------- Solution: Update to my little forum 2.3.4 More Information: http://mylittleforum.net/forum/index.php?id=8182 ----------------------------------------------------------------------------------------------- References: [1] High-Tech Bridge Advisory HTB23248 - https://www.htbridge.com/advisory/HTB23248 - Multiple Vulnerabilities in my little forum. [2] my little forum - http://mylittleforum.net/ - my little forum is a simple PHP and MySQL based internet forum that displays the messages in classical threaded view (tree structure). [3] Common Vulnerabilities and Exposures (CVE) - http://cve.mitre.org/ - international in scope and free for public use, CVE® is a dictionary of publicly known information security vulnerabilities and exposures. [4] Common Weakness Enumeration (CWE) - http://cwe.mitre.org - targeted to developers and security practitioners, CWE is a formal list of software weakness types. [5] ImmuniWeb® SaaS - https://www.htbridge.com/immuniweb/ - hybrid of manual web application penetration test and cutting-edge vulnerability scanner available online via a Software-as-a-Service (SaaS) model. ----------------------------------------------------------------------------------------------- Disclaimer: The information provided in this Advisory is provided "as is" and without any warranty of any kind. Details of this Advisory may be updated in order to provide as accurate information as possible. The latest version of the Advisory is available on web page [1] in the References.