Document Title: =============== Barracuda Bug Bounty #9 CT - Cross Site Vulnerabilities Date: ===== 2013-05-09 References: =========== http://www.vulnerability-lab.com/get_content.php?id=577 Barracuda Networks Security ID: BNSEC-305 VL-ID: ===== 577 Common Vulnerability Scoring System: ==================================== 2.4 Introduction: ============= Designed to enable seamless voice and video communication, the CudaTel Communication Server is an easy-to-use, affordable, next-generation phone system for businesses. CudaTel Communication Server s enterprise-class feature set includes Voice over IP (VoIP) PBX services, conferencing, follow-me, automated attendant services, and more, controlled by an easy-to-use Web interface. CudaTel Communication Server is compatible with any SIP device and provider, and can be pre-configured for use with both analog and digital telephone networks. Powerful, Complete Solution With an expansive feature set and and no per user or phone licensing fees, the CudaTel Communication Server is equipped and priced for organizations of any size. Native High Definition audio support and integrated phone line (TDM) hardware produces an unparalleled audio experience. VOIP encryption protects calls from hackers and digital eavesdroppers. (Copy of the Vendor Homepage: http://www.cudatel.com or http://www.barracudanetworks.com ) Abstract: ========= Vulnerability Lab Team discovered multiple client side Web Vulnerabilities in the official Barracuda CudaTel Communication Server, Firmware 2.5.001.016. Report-Timeline: ================ 2013-01-04: Fix/Patch by Barracuda Networks 2013-05-09: Public Disclosure Status: ======== Published Affected Products: ================== Barracuda Networks Product: CudaTel - Communication Server v2.5.001.016 Exploitation-Technique: ======================= Remote Severity: ========= Medium Details: ======== Multiple non-persistent input validation vulnerabilities are detected in the official Barracuda CudaTel Communication Server, Firmware 2.5.001.016. The vulnerability allows remote attackers to hijack website customer, moderator or admin sessions with medium or high required user interaction. The first vulnerability is located in the exception handling when processing to load invalid integer values by using the list or bbx_backup_site_id parameters. The second client side cross site scripting vulnerability is located in the list module when processing to load the showname parameter. Exploitation of the vulnerability does not require an application user account but low or medium user interaction. Successful exploitation of the vulnerability result in account steal, client-side phishing & client-side module context request manipulation. Vulnerable Module(s) [+] Exception Handling Integer Value - List or bbx_backup_site_id [+] List - showname Proof of Concept: ================= The non-persistent cross site scripting vulnerabilities can be exploited by remote attackers with medium or high required user inter action and without local application user account. For demonstration or reproduce ... Code Review: Exception Handling Integer Value - List or bbx_backup_site_id
--- 
ERROR:  invalid input syntax for integer: >``<[NON-PERSISTENT SCRIPT CODE!]>`` .... with 
ParamValues: 1='>``<[NON-PERSISTENT SCRIPT CODE!]>'] at /home/bps/code/firmware/current/lib/perl5//Barracuda/
BPS/BaseResultSet.pm line 217"
PoC: cudatel.127.0.0.1:8080/gui/backup/list?_=1337378392621&bbx_backup_site_id='<[NON-PERSISTENT SCRIPT CODE!]>&bbx_backup_site_type=x&bbx_backup_site_host=x Code Review: List - showname bbx_domain_id: 6 bbx_extension_block_begin: 2040 bbx_extension_block_end: 2040 bbx_extension_id: 153 bbx_extension_id_primary: 153 bbx_extension_rcd: 2012-05-03 19:48:41.6751 bbx_extension_rpd: 2012-05-03 19:48:41.70055 bbx_extension_value: 2040 bbx_router_id: 30 flag_auto_provision: 0 flag_external: 0 flag_locked: 0 flag_primary: 1 flag_standalone: 1 flag_super: 0 flag_voicemail: 0 show_name: ">``<"<[NON-PERSISTENT SCRIPT CODE!]>']"' sort_name:="" "="">``<"<[NON-PERSISTENT SCRIPT CODE!]>']")<" type: router PoC: cudatel2.127.0.0.1:8080/gui/extension/list?_=1337415353739&rows=1000&sortby='<[NON-PERSISTENT SCRIPT CODE!]> Solution: ========= The show-name & the integer name needs a secure encoding to parse manipulated malicious client side request via GET method. The output listing (show-name & invalid integer error name) needs to be parsed too. Note: The issue has been addressed (fixed) by barracuda networks since January 2013 after the report in 2012. Risk: ===== The security risk of the cross site scripting vulnerabilities are estimated as medium(-). Credits: ======== Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri (bkm@vulnerability-lab.com) Disclaimer: =========== The information provided in this advisory is provided as it is without any warranty. Vulnerability-Lab disclaims all warranties, either expressed or implied, including the warranties of merchantability and capability for a particular purpose. Vulnerability- Lab or its suppliers are not liable in any case of damage, including direct, indirect, incidental, consequential loss of business profits or special damages, even if Vulnerability-Lab or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation of liability for consequential or incidental damages so the foregoing limitation may not apply. We do not approve or encourage anybody to break any vendor licenses, policies, deface websites, hack into databases or trade with fraud/stolen material. Domains: www.vulnerability-lab.com - www.vuln-lab.com - www.vulnerability-lab.com/register Contact: admin@vulnerability-lab.com - support@vulnerability-lab.com - research@vulnerability-lab.com Section: video.vulnerability-lab.com - forum.vulnerability-lab.com - news.vulnerability-lab.com Social: twitter.com/#!/vuln_lab - facebook.com/VulnerabilityLab - youtube.com/user/vulnerability0lab Feeds: vulnerability-lab.com/rss/rss.php - vulnerability-lab.com/rss/rss_upcoming.php - vulnerability-lab.com/rss/rss_news.php Any modified copy or reproduction, including partially usages, of this file requires authorization from Vulnerability Laboratory. Permission to electronically redistribute this alert in its unmodified form is granted. All other rights, including the use of other media, are reserved by Vulnerability-Lab Research Team or its suppliers. All pictures, texts, advisories, source code, videos and other information on this website is trademark of vulnerability-lab team & the specific authors or managers. To record, list (feed), modify, use or edit our material contact (admin@vulnerability-lab.com or support@vulnerability-lab.com) to get a permission. Copyright © 2013 | Vulnerability Laboratory