Hidden blocked items in Windows Parental Controls

When you install parental controls on vista there are a few hidden items that are not displayed in the control panel.  These are exemption lists for the applications and for specific web sites.  Specific applications might want to be able to have free access to the web, and they set this when they are installed.  Specific applications might require access to certain pages (for example help pages) and they set this when they are installed.

Both of these lists, the url and application exemption lists, are not visible in the control panel.  However it is possible to query and find the details of these lists using WMI and some simple javascript.  This will also help show you how to install a specific app or url as being allowed.  This must be run as an administrator for it to have permission to save so there are no security issues associated with this.  The arrays returned by WMI are VBArrays and not native javascript arrays, which is why the following is a little confused.

The HttpExemptionList is the list of applications that are allowed to run and have no limits on what they can view on the web, you should be very careful about what is added to this list since it allows unrestricted access to the web.  The UrlExemptionList is the list of urls that are allowed to always be connected to.  The default output you should see from this script is:

App Exemption list:
c:\Windows\eHome\MCUpdate.exe
c:\Program Files\Windows Media Player\Wmpconfig.exe
c:\Program Files\Windows Media Player\Wmpshare.exe
c:\Program Files\Windows Media Player\Wmpnetwk.exe
c:\Program Files\Windows Media Player\Wmpsideshowgadget.exe
c:\Program Files\Windows Media Player\wmplayer.exe
c:\Program Files\Windows Media Player\Wmpenc.exe
c:\Program Files\Windows Media Player\Wmlaunch.exe
c:\Program Files\Windows Media Player\Wmpnscfg.exe
c:\Windows\HelpPane.exe
c:\Program Files\Windows Media Player\Wmprph.exe
c:\Windows\eHome\ehrec.exe

Url Exemption list:
   https://drmlicense.one.microsoft.com
   https://preview.services.wmdrm.windowsmedia.com
   https://services.wmdrm.windowsmedia.com
   https://games.metaservices.microsoft.com
   https://images.metaservices.microsoft.com
   https://oca.microsoft.com
   https://wer.microsoft.com

 

 

// Setup some defines for the rest of the script, points to the local machine
// and the parental controls namespace.
strComputer = ".";
strRootNamespace = "\\ROOT\\CIMV2";
strNamespace = strRootNamespace + "\\Applications\\WindowsParentalControls";

// Connect to WMI and get the system settings object.
strConnectStr = "winmgmts:\\\\" + strComputer + strNamespace;
sysSettings = GetObject(strConnectStr + ":WpcSystemSettings=@");

// APplication exemptions (don't ask why this is a HttpExeptionList).
list = sysSettings.HttpExemptionList;
if (list != null) {
   strExemption = "App Exmemption list:\n";
   // Get the indexes and move through the array to print it out.
   for (str in list.toArray()) {
       strExemption = strExemption + " " + list.getItem(str) + "\n";
   }
} else {
   strExemption = "No app exemptions defined.\n";
}

// Show the path to the new instance.
WScript.Echo(strExemption);

// Url exemtpions.
list = sysSettings.UrlExemptionList;
if (list != null) {
   strExemption = "Url Exmemption list:\n";
   // Get the indexes and move through the array to print it out.
   for (str in list.toArray()) {
     strExemption = strExemption + " " + list.getItem(str) + "\n";
   }
} else {
   strExemption = "No url exemptions defined.\n";
}

// Show the path to the new instance.
WScript.Echo(strExemption);