2009-09-23 12:37:28 +02:00
|
|
|
/*
|
2009-09-24 15:36:55 +02:00
|
|
|
* Copyright 2009 Ge van Geldorp for VMware, Inc.
|
2009-09-23 12:37:28 +02:00
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* Check if Internet Explorer is configured to run in "Enhanced Security Configuration" (aka hardened mode) */
|
|
|
|
/* Note: this code is duplicated in dlls/mshtml/tests/mshtml_test.h and dlls/urlmon/tests/sec_mgr.c */
|
|
|
|
static BOOL is_ie_hardened(void)
|
|
|
|
{
|
|
|
|
HKEY zone_map;
|
|
|
|
DWORD ie_harden, type, size;
|
|
|
|
|
|
|
|
ie_harden = 0;
|
2013-10-10 12:53:34 +02:00
|
|
|
if(RegOpenKeyExA(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap",
|
2009-09-23 12:37:28 +02:00
|
|
|
0, KEY_QUERY_VALUE, &zone_map) == ERROR_SUCCESS) {
|
|
|
|
size = sizeof(DWORD);
|
2013-10-10 12:53:34 +02:00
|
|
|
if (RegQueryValueExA(zone_map, "IEHarden", NULL, &type, (LPBYTE) &ie_harden, &size) != ERROR_SUCCESS ||
|
2009-09-23 12:37:28 +02:00
|
|
|
type != REG_DWORD) {
|
|
|
|
ie_harden = 0;
|
|
|
|
}
|
|
|
|
RegCloseKey(zone_map);
|
|
|
|
}
|
|
|
|
|
|
|
|
return ie_harden != 0;
|
|
|
|
}
|