Title: ====== Flynax General Classifieds v4.0 CMS - Multiple Vulnerabilities Date: ===== 2012-07-13 References: =========== http://www.vulnerability-lab.com/get_content.php?id=659 VL-ID: ===== 659 Common Vulnerability Scoring System: ==================================== 8.3 Introduction: ============= Choosing Flynax General Classifieds software allows you to set up any classifieds website. It is not designed for a particular niche so it can be adjusted to any idea of a classifieds website. This gives you a chance to choose the any niche for your classifieds website. For example you may create a classifieds website which will base on local classifieds with job ads, sport goods, motorbikes, bicycles or be oriented on all ideas in one website. Using General classifieds software with plugins you may create that classifieds website which you desire to have. (Copy of the Vendor Homepage: http://www.flynax.com/general-classifieds-software.html ) Abstract: ========= The Vulnerability Laboratory Research Team discovered multiple Web Vulnerabilities in the Flynax General Classifieds v4.0 CMS. Report-Timeline: ================ 2012-07-13: Public or Non-Public Disclosure Status: ======== Published Exploitation-Technique: ======================= Remote Severity: ========= Critical Details: ======== 1.1 A SQL Injection vulnerability is detected in the Flynax General Classifieds v4.0 Content Management System. Remote attackers without privileged user accounts can execute/inject own sql commands to compromise the application dbms. The vulnerability is located in the general module with the bound vulnerable sort_by parameter. Successful exploitation of the vulnerability result in dbms (Server) or application (Web) compromise. Exploitation requires no user inter action & without privileged user account. Vulnerable Module(s): [+] General Vulnerable Parameter(s): [+] sort_by 1.2 Multiple persistent input validation vulnerabilities are detected in the Flynax General Classifieds v4.0 Content Management System. The bugs allow remote attackers to implement/inject malicious script code on the application side (persistent). The persistent vulnerabilities are located in Administrators, User Account & Categories add/list modules with the bound vulnerable titel & username parameters. Successful exploitation of the vulnerability can lead to session hijacking (manager/admin) or stable (persistent) context manipulation. Exploitation requires low user inter action & privileged user account. Vulnerable Module(s): [+] Common > Administrators > Add an Administrator & Listing [+] User Accounts > Add an User Account & Listing [+] Categories > Add a Category & Listing Vulnerable Parameter(s): [+] Username [+] Titel 1.3 Multiple non persistent cross site scripting vulnerabilities are detected in the Flynax General Classifieds v4.0 Content Management System. The vulnerability allows remote attackers to hijack website customer, moderator or admin sessions with medium or high required user inter action or local low privileged user account. The bugs are located in the seach module with the bound vulnerable Titel & Price parameters. Successful exploitation can result in account steal, client side phishing & client-side content request manipulation. Exploitation requires medium or high user inter action & without privileged web application user account. Vulnerable Module(s): [+] Search Vulnerable Parameter(s): [+] Titel [+] Price Proof of Concept: ================= 1.1 The SQL Injection Vulnerability can be exploited by remote attackers without user inter action & without privileged user account. For demonstration or reproduce ... PoC: http://general.[SERVER]:1339/general?sort_by=-1 union all select 1,2,3,4,5,6,7,8,9,@@version,11-- --- Exception Logs --- MYSQL ERROR Error: Unknown column 'T1.' in 'order clause' Query: SELECT SQL_CALC_FOUND_ROWS DISTINCT SUBSTRING_INDEX(GROUP_CONCAT(DISTINCT `T6`.`Thumbnail` ORDER BY `T6`.`Type` DESC, `T6`.`ID` ASC), ',', 1) AS `Main_photo`, `T1`.*, `T1`.`Shows`, `T3`.`Path` AS `Path`, `T3`.`Key` AS `Key`, `T3`.`Type` AS `Listing_type`, COUNT(`T6`.`Thumbnail`) AS `Photos_count`, IF(UNIX_TIMESTAMP(DATE_ADD(`T1`.`Featured_date`, INTERVAL `T2`.` Listing_period` DAY)) > UNIX_TIMESTAMP(NOW()) OR `T2`.`Listing_period` = 0, '1', '0') `Featured` FROM `fl_listings` AS `T1` LEFT JOIN `fl_listing_plans` AS `T2` ON `T1`.`Plan_ID` = `T2`.`ID` LEFT JOIN `fl_categories` AS `T3` ON `T1`.`Category_ID` = `T3`.`ID` LEFT JOIN `fl_listing_photos` AS `T6` ON `T1`.`ID` = `T6`.`Listing_ID` LEFT JOIN `fl_accounts` AS `T7` ON `T1`.` Account_ID` = `T7`.`ID` WHERE ( UNIX_TIMESTAMP(DATE_ADD(`T1`.`Pay_date`, INTERVAL `T2`.`Listing_period` DAY)) > UNIX_TIMESTAMP(NOW()) OR `T2`.`Listing_period` = 0 ) AND `T1`.`Account_ID` = '2' AND `T1`.`Status` = 'active' AND `T3`.`Status` = 'active' GROUP BY `T1`. `ID` ORDER BY `T1`.`` DESC LIMIT 0, 10 Function: getAll Class: rlDb File: /home/[PATH]/public_html/general/includes/classes/rlListings.class.php (line# 831) 1.2 The persistent input validation vulnerabilities can be exploited with low privileged user account and low required user inter action. For demonstration or reproduce ... Review: User Accounts > Add an User Account & Listing
5 | ><[INJECTED PERSISTENT SCRIPT CODE]
| yea@gmail.com | Buyer | Jul 10, 2012 | Active | ||||