Pavlov Scope

2006 March 23

IE - Yet ANOTHER critical unpatched flaw

Filed under: ITSec — Kev Frey @ 17:20:31

Here we are again – another unpatched IE bug has just been announced. This one is similar to the issue last Dec. 2005 (described here External Link) in that disabling Active Scripting – Internet Explorer’s JavaScript engine – prevents the flaw from being exploited.

The official “word” from Microsoft is here External Link, but the gist for non-technical users out there is that this is a remotely exploitable (meaning, your computer can be compromised without having local access to your physical computer) and critical flaw that can allow an attacker, virus, or spyware (etc.) to run programming code on or infiltrate your computer or network.

There is a exploit code now publicly available that utilizes this flaw, so it is only a matter of time (short amount of time) before spyware, adware External Link, phishers External Link, virus writers, and hackers adapt the code for more nefarious purposes.

Microsoft has not issued a patch yet, but is working on one now, so stay tuned for an “out of cycle” patch to be released. I will let you know here as soon as I am notified.

In the meantime, always know that there are other browsers to use when IE has flaws like this – I recommend either Firefox External Link (with the Adblock, NoScript, and Fasterfox extensions External Link) and Opera External Link (now version 8.53).

Avoid using Internet Explorer for the next few days if at all possible. Once I’ve installed and tested the forthcoming patch, I’ll post on this blog.

_____________________________________________________________
KevFrey

kevfrey@gmail.com
.     .    .   .  . .. .  .   .    .     .
 Abbreviation and acronyms – the first indications of acceptance.

Powered by Bleezer

2006 March 22

Scientology vs. South Park

Filed under: Pers — FreyGuy @ 12:37:31


If you didn’t already know (which means you probably are not an avid South Park fanatic), Isaac Hayes – who plays the voice of the popular character “Chef” on the animated show – recently resigned from the show. This resignation was allegedly in protest of the show’s frequent satire of religious beliefs. However, most observers (including everyone I have spoken to on this matter) feel that it was likely due to a more recent episode poking fun at Scientology and Tom Cruise – Mr. Hayes is a Scientologist, as is the superstar TC.
In many circles this is seen as hypocrisy (or, at least, veiled reasoning) since Isaac has played Chef on the show throughout its 10-year run – over which South Park has lampooned nearly every major religion on the planet. That is, no one is exempted from their satire (as it should be), so mark 1 for Trey and Matt External Link.

But, CNN recently reported External Link that Tom Cruise has jumped into the fight with his ponderous Hollywood gravitas. Comedy Central was going to rerun the Scientology/TC episode, but two days prior they promptly pulled the rerun and aired another. Now, this is where the corporate conglomerate stuff kicks in and we see where money really does equal speech (as so many lobbyists would like us to believe External Link). TC’s upcoming blockbuster-ready, Paramount Pictures Mission Impossible 3 (MI3) External Link is ready for promotional round-robin. But, allegedly TC threatened to refuse press junkets for the project if Comedy Central aired the Scientology South Park episode again. CC then pulled the show… Why? – Because both Paramount and Comedy Central are owned by the same corporate entity – Viacom. Even though South Park is a wildly successful show on CC, I’m sure its revenue stream pales in comparison with a major motion picture like MI3, so mark 1 for Scientology.

To add an additional twist to the whole ordeal, and perhaps more intriguingly, Isaac might not have actually written his resignation (the spark for this whole battle). The Defamer blog has written that Isaac has fallen ill External Link early this year (stroke), and the message might have been composed “on his behalf” by his handlers. Mark 1 for the implication on the Trey and Matt side.

Regardless of truth or dare, what has been demonstrated is the Church of Scientology’s will and influence over large companies like Viacom. Mark 1 for Scientology’s power.

Now, in usual South Park react-quickly-to-recent-developments fashion, the SP team have re-tooled their season 10 debut episode and titled it “The Return of Chef! External Link.” They are clearly going to address this now very public issue directly in their own way… mark another one for Matt and Trey, with a bonus mark for the obvious free publicity that this is generating for SP (so far, seen as free-albeit-crude speechers while Scientology and Viacom are seen as reacting to hypocritical developments).

I personally don’t fault Viacom for their actions so far (they are, after all, a business and they have final say over programming). The viewers will decide whether to make MI3 a huge hit or flop and whether to make SP a continued success or flop – Such is the existing marketplace of entertainment. But, in the court of public opinion, I think Scientology is increasingly becoming a political force with artificially broad reach due to the revenue-generating membership it has cultivated.

Scientology has been described by its founder as “a study of knowledge.” Hate to break it to the late LRH, but that is the very definition of epistemology External Link – whoops, taken already. More on Scientology here External Link for those interested in the origins, history, and controversy surrounding this applied philosophical pursuit. In the early 1990s, a former girlfriend of mine that knew (and probably still knows…) more about this stuff than I did, explained to me that a well-circulated rumor claims that the founder of Scientology formed its basis after having made a wager with another author that he could “invent a religion” based on his knowledge of historical philosophy, theology, and science fiction. Additionally, Hubbard was also once quoted a long time ago as having said “If a man really wants to make a million dollars, the best way would be to start his own religion,” which certainly doesn’t lend Scientology much credibility upon scrutiny.

Whatever your beliefs or doubts, I think Isaac Hayes (or his handlers), TC, et al have chosen the wrong target to engage in the creators of South Park. These two really don’t care what other people think or feel and will always strike back (in comedic, satirical fashion), and IMO, the writers of this show make formidable foes.

_____________________________________________________________
KevFrey

kevfrey@gmail.com
.     .    .   .  . .. .  .   .    .     .
“Its never just a game when you’re winning.”
- George Carlin

Powered by Bleezer

2006 March 17

Busy March Security Updates

Filed under: ITSec — Kev Frey @ 19:28:31

Happy St. Pat’s day!


Microsoft Updates: This past Tuesday (March 14), Microsoft released additional patches to address a few problems and changes for Office and Windows.

  • KB912475: Modifies Windows so that an Australian timezone change is properly implemented by the Operating System. Official description: “Australia has changed the regularly scheduled end of Daylight Saving Time in five Australian states from March 2006 to the first Sunday of April 2006 due to the 2006 Commonwealth Games. Install this update to enable your computer to automatically adjust the computer clock on the correct date. After you install this item, you may have to restart your computer.”

  • MS06-011 – KB914798: Fixes a problem in Windows XP Service Pack 1 (that is, WIndows XP without the newer Service Pack 2 applied). This problem, albeit difficult to exploit, could allow a malicious program to “elevate” its permissions to obtain higher access on your system allowing the program to do more nefarious activities. However, most standard home users already run with elevated permissions (i.e. as Administrators) so this flaw is effectively already a problem for most users anyway (no matter what version of Windows) through the way that they use their computer (I too am guilty of this).
    For any server-types out there (like me), this update also applies Windows 2003 Server without SP1.
    For more information: Microsoft Security Bulletin MS06-011 External Link

    To update Windows on your personal machine (i.e. not your work computer), I recommend using the Microsoft Windows Update External Link site. If you company/organization does not automatically update your PC at work, update that one too.

  • KB913571: Updates the multilingual versions of Visio 2003, Project 2003, and Office 2003 to improve how those products find and correct errors in Dutch language documents. More information: KB913471 - Dutch Language Update for Office External Link

  • MS06-012: “Critical” error fixed in multiple versions of Office, Outlook, and related programs (e.g. Excel 2003 VIEWER). This fix plugs a hole preventing “arbitrary code execution” by potentially dangerous programs. Products affected are:
    1. Office XP
    1. Office 2000
    1. newer versions of Outlook
    1. Office (Excel) 2003 or the Excel Viewer
    1. Microsoft Works (versions 2000-2006)
    1. and Office X & 2004 for Mac

    Please update it to prevent any as-yet-unknown viruses or spyware from exploiting this flaw on your machine. If you know which versions of each that you have, please visit Microsoft Bulletin MS06-012 External Link for direct download links.

    But, I recommend simply going to the Microsoft Office Update External Link site for best results (this site will interrogate your computer for which software you have and which needs to be updated).

Mac Updates: In addition to the Microsoft Office X / 2004 update for Mac’s (see above), there are additional Apple (Mac OS X) fixes that address the same and similar problems as the updates released a couple weeks ago.

  • Security Update 2006-002: Corrects a problem caused by the previous patch a few weeks ago. However, there was another problem (discovered earlier this week) with this “002” patch that caused Safari to have a blank icon and/or the browser would not start. Additionally, some Mac users reported networking-related problems after the -002 update was applied Monday the 13th.

  • However, Apple released “2006-002 v1.1” for Mac OS X 10.45 (both PowerPC and Intel) yesterday, Thursday 2006-March-16. Please visit the Apple Support Downloads page External Link for the latest updates and downloads (if your Mac didn’t already download and prompt for install of the latest updates already).

Flash Updates: Macromedia Flash Player

  • If you have Flash installed, you might have already seen the “update Flash” tray icon which looks like this: Flash Tray Icon. If you click on that icon, the following dialog box should be displayed:
    Flash Update Screen

    which will walk you through the update.
    Otherwise, find out more about the issue here – Apple Support Downloads page External Link and then go here – Apple Support Downloads page External Link to get the recommended download and instructions for the Flash update.
    Flash is used to display movie files and rich navigation front-ends for many websites, so it is important to keep this browser add-on up-to-date. The flaw allows a hacker to create a malicious Flash file that will compromise browser security (and potentially your email client) allowing all kinds of ugly stuff (spyware, data loss, data compromise/disclosure, etc.).

McAfee Update alert: McAfee AntiVirus software released an update last Friday (March 10) that mistakenly identified Excel and some additional components as viruses (what is called a “false positive”).
If you run McAfee on your system for your antivirus, make sure your definitions are configured to automatically update and that the current definition file you have is equal to or higher than 4716.

Norton/Symantec AntiVirus and Internet Security problem: Very similar to the McAfee issue above, Norton Security products (A/V, Firewall, etc.) received an update on Mar. 15 (Thurs.) that caused some AOL customers to be bumped from their broadband and/or dialup connections. More information available here: Symantec AOL issue page External Link

Now, I have to go recupperate from a hellish week where I accomplished 10% of what I had planned due to increased security demands on my tasklist – ugh.

_____________________________________________________________
KevFrey

“Tradition is what you resort to when you don’t have the time or the money to do it right.” – Kurt Herbert Alder

kevfrey@gmail.com
.     .    .   .  . .. .  .   .    .     .

Powered by Bleezer

2006 March 1

Proxy Auto-Detect (IE and Firefox)

Filed under: IT — FreyGuy @ 2:26:31

Technical Article

Recently, my organization had the need to provide web proxy service to internal users, while not clobbering hotel, home, remote office, coffee shoppe, etc. type access while users were roaming outside of our divisions’ walls. The purpose is to apply content filtering rules to outbound Web traffic based on our organization’s security policy (i.e. no external webmail, personal web storage sites, etc.). I did some research and testing on this side and have come up with a solution that seems to work well across the board for our clients.

Using Internet Explorer’s capability to Automatically detect proxy server settings, IE uses the proxy when the proxy server is reachable, and connects directly when it is not. I have tested this with success (after a lot of initial troubles and debugging ;-)

The components involved in the proposed and tested solution:

  • Proxy Auto-configuration file (PAC)


  • Web Proxy Automatic Discovery (WPAD)


  • Related DHCP and DNS settings


  • Internal Web server


  • Group Policies in Active Directory (GPO)

PAC file:

The first step is to configure the Proxy Auto-configuration file (or PAC for short). This is a JavaScript-like file that has a set of predetermined variables and functions for use in making decisions defining the browser’s behavior at runtime. See below for references.

This file can be hard coded in the browser, or preferably delivered using WPAD (see next).

I have built the following sample file using the PAC spec standards which tests for exception sites first (should be accessed directly by the browser) – things like internal sites, private addresses, etc.

Then, the file will test against the client’s IP address (to determine network location). If the IP address is within our internal subnet ranges , it sets the proxy server(s) to use.

The file ends with an else statement that catches all other conditions and sets the browser to use direct access (for when the computer is located outside corporate-controlled facilities).

I have successfully tested this file format with both IE and Firefox. It is provided below as an example for you to utilize, but I make no warranties or claims of fitness-to-purpose. There are many additional testing conditions that might be more relevant to another environment or set of business policies (e.g. Time-of-day, day-of-week, DNS information, etc.).

Sample file:

function FindProxyForURL(url, host)
{
     if (
          isInNet(host, "10.0.0.0", "255.0.0.0") ||
          isInNet(host, "172.16.0.0", "255.240.0.0") ||
          isInNet(host, "192.168.0.0", "255.255.0.0") ||
          isPlainHostName(host) ||
          localHostOrDomainIs(host, "127.0.0.1") ||
          dnsDomainIs(host, ".company.local")
       )

         return "DIRECT";

     else if (
          isInNet(myIpAddress(), "10.1.0.0", "255.255.0.0") ||
          isInNet(myIpAddress(), "10.2.0.0", "255.255.0.0") ||
          isInNet(myIpAddress(), "10.3.0.0", "255.255.0.0") ||
          isInNet(myIpAddress(), "10.4.0.0", "255.255.0.0") ||
          isInNet(myIpAddress(), "10.7.0.0", "255.255.0.0") ||
          isInNet(myIpAddress(), "10.9.0.0", "255.255.0.0") ||
          isInNet(myIpAddress(), "10.10.0.0", "255.255.0.0") ||
          isInNet(myIpAddress(), "169.254.0.0", "255.255.0.0") ||
          isInNet(myIpAddress(), "172.16.199.0", "255.255.255.0")
     )

     return "PROXY prx0.us.company.local:8080;" +
            "PROXY prx1.us.company.local:8080";

     else return "DIRECT";
}


Note: Thanks to Jay Kulsh for pointing out RFC1918 compliance in above network tests.

WPAD

Second came the challenge of getting the clients to use that file without hard-setting it (hardcoding almost always an undesirable option if it can be avoided). The mechanism used for this is WPAD, which allows the browser to "discover" where the above configuration file is stored, allowing it to then dynamically pull it down and apply the function code therein during operation. There are several mechanisms available to WPAD, but they center on DHCP and DNS. I have opted to implement both the required elements of the standard (DHCP option and DNS "well known alias" methods), and have left alone the optional requirements as they are redundant for my purposes and remain unused if the required elements exist – if the required elements are unavailable (in my environment), it would be equivalent to a network outage at which point we have bigger problems to solve than WPAD not functioning.

The first step to configure WPAD is to put the PAC file onto a web server for all users to access. Depending on the web server platform and version chosen to host the file, this might require defining additional MIME types to allow the server to properly serve the file (see standard). As a reference point, Win2K’s IIS server generally hosts whatever files you make available, whereas Win2K3 (2003 Server) IIS requires the additional MIME definitions – otherwise you will receive 403 errors, and the browser will transparently fail to pickup the PAC file without displaying an error message (by design).

The recommendation is to place the PAC file on the same server that hosts the proxy. The rationale is that if it is unavailable, implicitly so is the proxy and as such, should not be utilized. However, one might opt to locate the PAC file on a neutral / different server (independent of the proxy) to allow for more robust proxy fail-over (since the PAC standard allows for multiple proxies to be defined for fail-over).

DHCP: The second step is to configure a custom vendor option on the DHCP server. The reserved vendor option for WPAD is 252, and must be created on the DHCP Server config first. Then you can configure scopes (either via a server-wide setting or per-scope setting, relevant to your environment, with the proper URL string which tells the browser where to get the PAC file. However, the DHCP piece is not fully functional for PAC file location until the AutoDetect option is enabled in the web browser. In Firefox, this is the "auto-detect proxy" setting under Tools-Options-Connections – In IE, one can deploy the setting via GPO (see below). The value of the 252 WPAD option is the full URL to the PAC file, including FQDN of the web server (e.g. http://websrv.us.company.local/wpad.dat). This is the first component tried by WPAD for PAC file location, and is a required component of the standard.

DNS: The third configuration change I made was to place a DNS entry (can be an A or CNAME record) which includes a "well-known alias" for the service discovery – in my case – "wpad" without the quotes, which points to the proxy server. I opted for a CNAME record to alias the proxy itself since that is where my PAC file was located and maintaining multiple autonomous A records for the same host is problematic in this case.

The DNS option appears to be the one favored by Firefox, although secondary by IE based on my test results, so I implemented both to cover both browsers more effectively. (Note: In my corporate environment, the Proxy server in use uses proprietary auth mechanisms that Opera does not support, thereby preventing Opera from functioning with my organization’s proxy. This is why no mention of the Opera browser in this Windows-centric platform discussion).

GPO

The setting to have IE use Auto Detection for its Proxy settings is configured in the same place in Group Policy as if one was hard-coding the proxy (Internet Explorer Maintenance) – it is just a different option. This affects only IE at this time, since Firefox is not natively GPO-aware (author note: Efforts are underway to allow Firefox GPO administration, but not covered here – will cover in an upcoming entry) .

In the Internet Explorer Maintenance area:



User Configuration – Windows Settings – Internet Explorer Maintenance

"Automatically detect configuration settings"- Enabled

"Automatic Browser Configuration" – Not configured



This sets IE to use WPAD to discover the PAC file.

Additionally, in the Computer Configuration area, the following settings should be changed to maintain consistency and compliance of the browser’s settings:



Computer Configuration – Administrative Templates – System/Group Policy

"Internet Explorer Maintenance policy processing" – Enabled

"Allow processing across a slow network connection" – Enabled

"Do not apply during periodic background processing"- Disabled

"Process even if the Group Policy objects have not changed"- Enabled



These computer-level GPO settings set and renew the settings continually, even across slow connections, so that if a user has tampered with the IE proxy settings, they will be changed back (although I know this has worked with other configs, I have not had the time to fully test – i.e. tried to break – this setting yet, so I’m not certain how effective it is in overriding, for example, a proxy the user has defined themselves. Obviously, the best practice would be to hide the Connections tab (and perhaps other areas) from the UI to prevent tampering. Additionally, users should not have Admin rights to their machine if an effective policy is to be maintained with any consistency.

Firefox

The methods described in the above sections, when implemented together, support both IE and Firefox. The main hurdle is centrally deploying the Auto-Detect setting to both browser platforms consistently. Additionally, unrelated, anyone using Firefox should upgrade to 1.5.0.1 if they have not already, for security reasons.

Although many organizations do not officially advocate the use of Firefox (since there are still some management/administration hurdles for corporate deployment), I felt that it was important to find a workable solution that fit for both browsers since use of Firefox has become much more prevalent in the past year. Some organizations might choose to limit the use of Firefox altogether for other reasons (such as application standards, etc.), but I wanted to make the solution as browser-agnostic (cross platform) as possible.

I found that Firefox had some unexpected (by me) behavior in the way that it searched for the PAC file. Specifically, the Auto-Discover mechanism seems to always query the configured web server for the filename wpad.dat (instead of proxy.pac as I originally had the 252 DHCP WPAD option configured). IE obeyed my configuration, but Firefox insisted otherwise. Workaround, and the standard generally used by Windows shops anyway, was to make the name the file wpad.dat, update the 252 option accordingly, and then both browsers could automatically discover the file appropriately.

Also, on an unrelated note, I have had some odd, almost random, occurrences of Firefox interoperability problems with the Computer Associates (CA) SCM (Secure Content Manager) Proxy service. In some cases, the user is prompted for an ID, when – in fact – this authentication should be transparent (based on internal domain ID). The same behavior is not exhibited in IE thusfar.

Further research and "development watching" I am taking from this include the emerging capability for Firefox to be administered via GPO as well as an initiative inside the Firefox open-source development community to support MSI installers for corporate deployment and easy updates (that is, from the Mozilla side). There are third parties that have made great gains in both GPO and MSI for Firefox, but as I stated – that is something I’ll get into in an upcoming post.

Conclusion

From the testing I have done so far, both browsers appear to behave as expected once AutoDetection is setup as above. If the PAC file is not reachable using the "AutoDetect" WPAD mechanism, both browsers automatically default to direct, which gets around the issue of hard-coded proxy settings in hotels, WiFi hotspots, etc. Additionally, once the user connects to the VPN, they receive an internal IP address which matches on the PAC rules, and WPAD finds the PAC file to utilize (via the DNS mechanism of WPAD) and begins using the proxy for connections to the Web – thereby applying our corporate policies.

This system of configurations represents a "best effort" to provide technical compliance with our corporate policies with regard to web content filtering. There still exist some unavoidable loopholes, but those should be addressed through policy education to the user community (i.e. they are not allowed to browse the web in remote locations – home, hotel, airport, coffeeshoppes, etc. – without first connecting to the VPN). Adherence to that policy can be assured with monitoring, logging, and other tools.

References

For more technical information about the PAC and WPAD components of this proposed solution, please reference the following links:

PAC – This file’s format (along with some samples) is described here: http://wp.netscape.com/eng/mozilla/2.0/relnotes/demo/proxy-live.html

WPADIETF spec for Web Proxy Automatic Discovery – http://www.wrec.org/Drafts/draft-cooper-webi-wpad-00.txt

I hope this was helpful or informative to some of you out there! Good luck and if you have any questions or comments, please use the comment area or email me directly.

_____________________________________________________________

KevFrey

kevfrey@gmail.com

.     .    .   .  . .. .  .   .    .     .