<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Lithik Systems</title>
	<atom:link href="http://www.lithik.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.lithik.com</link>
	<description>Transforming businesses by bending technology to the will of our clients</description>
	<lastBuildDate>Thu, 26 Jan 2012 15:28:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Proactive Versus Reactive</title>
		<link>http://www.lithik.com/2012/01/26/proactive-versus-reactive/</link>
		<comments>http://www.lithik.com/2012/01/26/proactive-versus-reactive/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 15:05:20 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=589</guid>
		<description><![CDATA[Jeff Bardin over at CSOonline.com has written an excellent article entitled The Proliferation of Cyber Janitors (and the mentality behind this movement). He observes that RSA, because of the mentality of its leadership, is focused not on preventing security breaches, but in cleaning up after them. He calls the security professionals who follow this approach [...]]]></description>
			<content:encoded><![CDATA[<p>Jeff Bardin over at <a href="http://csoonline.com" title="CSOonline.com" target="_blank">CSOonline.com</a> has written an excellent article entitled <a href="http://blogs.csoonline.com/security-leadership/1994/proliferation-cyber-janitors-and-mentality-behind-movement" title="The Proliferation of Cyber Janitors (and the mentality behind this movement)" target="_blank">The Proliferation of Cyber Janitors (and the mentality behind this movement)</a>. He observes that RSA, because of the mentality of its leadership, is focused not on preventing security breaches, but in cleaning up after them.  He calls the security professionals who follow this approach &#8220;janitors&#8221; because that&#8217;s their focus&#8211;cleaning up (information) spills.  Sure, they dust, vacuum and empty the trash, but they&#8217;re most visible when they&#8217;re actively cleaning up some huge mess.</p>
<p>His point is an excellent one.  Don&#8217;t listen to these folks; their pitch is unhelpful and fatalistic.  It <em>is</em> possible to run a tight ship and dramatically reduce the likelihood of a breach; it is <em>not</em> inevitable that you will be hacked.<br />
<span id="more-589"></span><br />
In our view here at Lithik, the keys are discipline and architecture. Disciplines like keeping your patches absolutely up to date&#8211;squeaky clean.  Like running internal security audits or hiring them out, then actually acting on what you find.  Not only to clean up what you discover, but also to change the way you do things to avoid getting in a &#8220;dirty&#8221; situation in the first place.  Proactive.</p>
<p>And architecture. We have developed a simple perimeter network architecture that we believe provides dramatically better protection than anything else under ten times the price.  See my article <a href="http://www.lithik.com/2010/12/31/firewall-architecture-combats-malware/" title="A Simplified Firewall Architecture for Combating Malware" target="_blank">A Simplified Firewall Architecture for Combating Malware</a> on this site for details on how we put together a powerfully secure perimeter from simple, off-the-shelf parts.</p>
<p>Go read Jeff&#8217;s article.  Then, the next time you hear a convincing, buzzword-compliant pitch from some bigwig at a major security firm, take their words with a grain of salt.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2012/01/26/proactive-versus-reactive/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is Antivirus Dead?</title>
		<link>http://www.lithik.com/2011/08/04/is-antivirus-dead/</link>
		<comments>http://www.lithik.com/2011/08/04/is-antivirus-dead/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 19:50:38 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=543</guid>
		<description><![CDATA[Read this excellent account by Ed Bott and decide for yourself. The situation he describes is a perfect example of why we at Lithik Systems are recommending architectural protections to block the outbound connection from this kind of malware that makes it so deadly. Antivirus and firewalls usually can&#8217;t detect these things, which means you [...]]]></description>
			<content:encoded><![CDATA[<p>Read <a href="http://www.zdnet.com/blog/bott/why-malware-networks-are-beating-antivirus-software/3654" target="_blank">this excellent account</a> by Ed Bott and decide for yourself.</p>
<p>The situation he describes is a perfect example of why we at Lithik Systems are recommending architectural protections to block the outbound connection from this kind of malware that makes it so deadly. Antivirus and firewalls usually can&#8217;t detect these things, which means you can&#8217;t keep them from getting in. But you do have a shot at keeping yourself safe if you can keep the infection dormant. Check out our article <a href="http://www.lithik.com/2010/12/31/firewall-architecture-combats-malware/" title="A Simplified Firewall Architecture for Combating Malware" target="_blank">A Simplified Firewall Architecture for Combating Malware</a> to see how.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2011/08/04/is-antivirus-dead/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Simplified Firewall Architecture for Combating Malware</title>
		<link>http://www.lithik.com/2010/12/31/firewall-architecture-combats-malware/</link>
		<comments>http://www.lithik.com/2010/12/31/firewall-architecture-combats-malware/#comments</comments>
		<pubDate>Sat, 01 Jan 2011 01:53:19 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[backdoor]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[information theft]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[security architecture]]></category>
		<category><![CDATA[web filter]]></category>
		<category><![CDATA[web proxy]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=517</guid>
		<description><![CDATA[If you operate a small to medium sized bank, savings and loan, or credit union, your biggest IT security concern is the possibility of being breached by malware. Not the kind that makes pop-up windows show up on your screen, but the kind that you become aware of when your credit card processor calls you [...]]]></description>
			<content:encoded><![CDATA[<p>If you operate a small to medium sized bank, savings and loan, or credit union, your biggest IT security concern is the possibility of being breached by malware. Not the kind that makes pop-up windows show up on your screen, but the kind that you become aware of when your credit card processor calls you up and says they think all your customers&#8217; credit card numbers have been stolen. The nightmare kind of malware. The kind that they say costs <a href="http://news.cnet.com/8301-1009_3-10153858-83.html" target="_blank">$6.6 million</a> to fix.</p>
<p>The kind that puts banks your size out of business.</p>
<p>Is there anything you can do other than worry? Isn&#8217;t this stuff so complicated only grad students in computer science can understand it? People say that nothing is truly secure—isn&#8217;t that true?</p>
<p>You can do something about it, because hackers have adopted a relatively uniform mass-production approach to attacking computers. And yes, you can understand it.<span id="more-517"></span></p>
<h2>How Malware Works</h2>
<p>Hackers don&#8217;t pick your name out of a hat and then decide to attack you; that&#8217;s so 1999. Their desire to make a profit has driven them to use highly efficient and highly effective techniques designed to maximize the number of breached systems rather than maximizing their ability to breach a specific target. Their chosen approach is actually quite clever. Here&#8217;s how it rolls out:</p>
<ol>
<li>A hacker penetrates a legitimate web site and modifies it so that a visiting web browser also pulls data from the hacker&#8217;s web site. The Google Anti-Malware Team recently found <a href="http://googleonlinesecurity.blogspot.com/2008/02/all-your-iframe-are-point-to-us.html" target="_blank"><em>3 million</em></a> such URLs in a survey of Google&#8217;s stored copies of web sites.</li>
<li>A normal person visits one of these infected web sites, causing the web browser to also make a request to the hacker&#8217;s web site. The hacker&#8217;s web site determines which operating system and which browser the innocent web surfer is using, then sends back a series of specially crafted HTML, PDF or other file types that contain exploit data for commonly found missing patches. An exploit is typically a pattern in the returned data that causes the targeted software to misbehave in some way due to a bug introduced accidentally by the program&#8217;s author when he wrote it. The exploits are specifically aimed at the user&#8217;s operating system and browser in order to maximize the likelihood of a breach.</li>
<li>If the user&#8217;s computer is running some amount of unpatched software, and if at least one of the attacker&#8217;s chosen exploits matches up exactly with one of the user&#8217;s missing patches, then the hacker&#8217;s malicious pattern of data causes the user&#8217;s buggy program to actually execute software the hacker himself wrote and included as part of the malicious data pattern.</li>
<li>Typically the first thing the hacker&#8217;s software does is to issue more requests to hacker web sites, downloading and installing more malicious software.  It is rare to be infected by a single virus; malware usually arrives more as a malicious throng than a single stealthy intruder.</li>
<li>Once the hacker&#8217;s programs are installed on the user&#8217;s computer, his software runs and begins to carry out his wishes. Sometimes this means sending Spam e-mail messages to millions of people.  Other times it may mean spraying a specific web site with huge amounts of bogus web requests, a so-called <em>Denial of Service</em> attack. But the scenario that terrifies us is the one where the software on the infected machine makes a network connection to one of the hacker&#8217;s servers that doesn&#8217;t download software, but instead stays connected. The purpose of this long-term connection is instead to provide two-way communication. This gives the hacker a direct path from his server on the outside right through your firewall, a so-called <em>backdoor</em> into the heart of your company&#8217;s computer network.</li>
</ol>
<p>Once inside, the hacker can do whatever he&#8217;d be able to do if he had free reign of your office. He can search through computer files, he can listen for passwords, he can record information displayed on customer account screens. He can also probe other machines on your network looking for more unpatched systems. Note that this is no longer an impersonal piece of automation running; now you have a real, live hacker rummaging through your data looking for something he can sell. And if it was that easy to get inside in the first place, it&#8217;s usually even easier to get access to the machines that contain all your customer data and ship it off to Russia. Or China. Or Cleveland.</p>
<p>According to the <a href="http://www.verizonbusiness.com/resources/reports/rp_2010-data-breach-report_en_xg.pdf" target="_blank">Verizon <em>2010 Data Breach Investigations Report</em></a>, the U. S. Secret Service reports that, although insider attacks are up 26% over last year, 96.5% of all stolen customer records occurred through external attacks. 95% of those external attacks were attributable to malware, the kind we just described. 80% involved malware that was explicitly designed to provide remote access to the hacker, the kind that lets him steal all your customer data.</p>
<h2>Traditional Defenses</h2>
<p>Most anti-malware strategies involve trying to stop it from infecting you in the first place. Reputation-based browser features compare the link you clicked on against a database of sites that have been reported to contain malware, popping up a warning if it finds a match. So-called UTM (Unified Threat Management) appliances or next-generation firewalls look inside the web browser data stream searching for data patterns that look like exploits, or they examine the entire returned web page, making sure it adheres strictly to the HTML standard. Sometimes they even can figure out what web application you are running, tailoring their activities to the specific site or function.</p>
<p>The best known defense, though, is anti-virus. A few years ago, the leading anti-virus systems would catch 99% or more of all malicious software.  Today, the best anti-virus systems detect and block perhaps half of all infections, but if an infected web site launches twelve exploits at you, and if, say, four of them match up with patches you are missing, then you&#8217;d still have a probability of 1 &#8211; 0.5<sup><small>4</small></sup> = 94% of being infected because of that one click.</p>
<p>It may not be the best known, but the most effective defense against malware in common use today is simple. Keep your systems patched! This has gotten much easier since Microsoft introduced Automatic Updates ten years ago. Unfortunately, the summer of 2009 saw Adobe break Microsoft&#8217;s long run as King of Vulnerable Software. Even more unfortunately, Adobe and the other commonly attacked desktop software vendors have not come close to matching the effectiveness of Microsoft&#8217;s efforts to provide patching tools (<a href="http://support.microsoft.com/kb/306525" target="_blank">Automatic Updates</a> and <a href="http://en.wikipedia.org/wiki/Windows_Server_Update_Services" target="_blank">WSUS</a>) and patch scanning tools (<a href="http://technet.microsoft.com/en-us/security/cc184923" target="_blank">MBSA</a>). See my article <a href="http://www.lithik.com/2010/12/30/keeping-windows-patched" target="_blank">Keeping Windows Patched</a> for more on this topic.</p>
<h2>A Simplified Firewall Architecture for Combating Malware</h2>
<p>It is certainly painful to have to deal with an infected machine. In most environments, the machine must be reformatted and reinstalled by hand, a job which can take anywhere from half a day by an experienced IT professional to as long as two days if a lot of software installation and reconfiguration must be performed. Using a disk imaging system can bring that time down to 20 minutes, but such a solution has its own costs. But the cost of recovering an infected machine never exceeds a thousand dollars or so. The real cost is in the risk of breach. <em>That</em> is where we should be putting our effort—<em>making it as difficult as possible for an infected machine to establish a backdoor connection.</em></p>
<p>The funny thing is, this is the part that isn&#8217;t all that hard. The last few years have seen an explosion in the growth of cloud-based security products, especially <em>filtering web proxies</em>. A web proxy is a special server that acts as a mediator between a web browser and a web site. The addition of filtering capabilities, including all those features listed above for advanced firewalls, makes this a very attractive service. But we at Lithik Systems believe that the greatest benefit of such a service comes from what it allows you to do to your firewall configuration.</p>
<p>The reason the hacker&#8217;s malware can build that backdoor connection so easily is that nearly everyone has their firewall configured to allow outbound web browser connections to an unlimited number of destinations. If the firewall allowed web browsers to only go to a short list of places, the backdoor could never be set up. Many if not most corporate firewalls are configured to allow e-mail traffic only to a short list of e-mail servers. The same is true of many other services. If all Internet traffic originating from behind the firewall was only allowed to go to a fixed list of destinations, no backdoors could ever exist. This is easy except for web traffic, and if a web proxy service is used, web traffic can be controlled in exactly the same way.</p>
<p>You may say, though, that a backdoor can indeed exist. Even though it would be tricky, even though the malware would have to somehow figure out that you were using a web proxy, and even though it would have to figure out where it was and how to authenticate with it, the malware could go <em>through</em> the web proxy. That&#8217;s why it&#8217;s important that you choose a service that has a really good filter. That&#8217;s also why you probably shouldn&#8217;t simply install a cheap, non-authenticating web proxy server just outside your firewall. Future-proof your solution now.</p>
<p>But wait, there&#8217;s more.</p>
<p>Utilizing the above approach can eliminate (or nearly eliminate) the likelihood of an outsider stealing your data. But once your firewall is configured with no unlimited destinations in any rules at all, you have a new option in front of you. If the firewall is then set up to trigger an alarm whenever any kind of traffic is blocked trying to go to an unauthorized destination, you have an IDS (Intrusion Detection System) that can almost perfectly detect external breaches. An alarm means that the offending machine is infected. Now, it could also mean that someone just misconfigured some application, or someone just installed a program that didn&#8217;t know about the web proxy and tried to auto-update itself, but those situations will only happen when you should expect them, and the cause should be obvious. But if your firewall sends you a text on your cell phone when no IT people are making any changes, you almost certainly have an infected machine.</p>
<h2>Cost-Benefit Analysis</h2>
<p>Costs:</p>
<ul>
<li>$5 per month per desktop computer for a top quality web filtering service</li>
<li>$50 per desktop for a permanent license to a good remote disk imaging system so you are never motivated to avoid reinstalling an infected machine</li>
<li>Time and effort to configure the new setup</li>
</ul>
<p>Benefits:</p>
<ul>
<li>A good filtering proxy will substantially reduce the number of infections you incur</li>
<li>No fancy firewall features are required</li>
<li>Infected machines can be cleaned in about 20 minutes</li>
<li>Infected machines are brought to your attention immediately</li>
<li>Patch management becomes easy (this is a side benefit of using a disk imaging system)</li>
<li><em>A breach involving information theft is nearly impossible</em></li>
</ul>
<h2>Take Action</h2>
<p>The above approach can dramatically reduce your risk of a serious breach.  The cost is moderate, and the side benefits are attractive. Do not put this off; talk about it with your IT staff and with your senior management, then make a decision. Choose wisely.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2010/12/31/firewall-architecture-combats-malware/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Build a Cheap But Secure Public Server Infrastructure</title>
		<link>http://www.lithik.com/2010/12/31/cheap-but-secure-public-server-infrastructure/</link>
		<comments>http://www.lithik.com/2010/12/31/cheap-but-secure-public-server-infrastructure/#comments</comments>
		<pubDate>Fri, 31 Dec 2010 05:37:04 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[disaster recovery]]></category>
		<category><![CDATA[ESXi]]></category>
		<category><![CDATA[ghettoVCB]]></category>
		<category><![CDATA[locked down]]></category>
		<category><![CDATA[monitoring]]></category>
		<category><![CDATA[off-site backups]]></category>
		<category><![CDATA[public server]]></category>
		<category><![CDATA[remote backup]]></category>
		<category><![CDATA[replication]]></category>
		<category><![CDATA[secure]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=470</guid>
		<description><![CDATA[Do you have a need to support several public servers? Would you like to have all the bells and whistles the big boys have but without spending $100K on equipment and licenses? You can do it. I know, because we did it and it works. It works great. Our total capital expenditure, not counting licenses [...]]]></description>
			<content:encoded><![CDATA[<p>Do you have a need to support several public servers? Would you like to have all the bells and whistles the big boys have but without spending $100K on equipment and licenses? You can do it.  I know, because we did it and it works.  It works great.</p>
<p>Our total capital expenditure, not counting licenses for the public servers themselves, amounts to less than $4,000.  Our total monthly expense for data services dedicated to supporting the public servers is $150 for 2U of rack space in a secure colocation facility. We&#8217;re spending between 5% and 10% of what our customers spend for nearly the same feature set.<span id="more-470"></span> We have</p>
<ul>
<li>Two complete sites, one in the secure colo and the other in a locked cabinet in an office with a 24&#215;7 security alarm including sensors on doors and ultrasonic motion detectors</li>
<li>A complete VMware virtualization environment at each site</li>
<li>Locked down administrative access to all servers</li>
<li>24&#215;7 monitoring of all servers, both physical and virtual</li>
<li>Daily snapshot backups of all virtual machines, archived and 100% automated</li>
<li>Daily automated backups replicated to the opposite site with 80:1 compression</li>
</ul>
<p>We also get most of the benefits of a virtualized server environment, including the ability to</p>
<ul>
<li>bring up a new server, patch it, harden it, then connect it to the public network, all in minutes rather than days</li>
<li>move a public server from one site to another in under an hour</li>
<li>restore a virtual machine from an archived backup in under a minute</li>
<li>tune virtual machine features such as CPU, RAM and disk storage to precisely match the needs of each server</li>
</ul>
<p>We do not have automatic fail-over of servers, a very nice feature that only comes with redundant ESXi servers as well as paid versions of VMware vSphere. So far, the alarms, multiple sites and automated backups have been enough. Also, the servers in the office piggyback on the office environment, including power, security, and Internet connectivity.</p>
<p>Our two sites are essentially identical, so the rest of this article will describe only one site.</p>
<h2>The Machines</h2>
<p>We wanted to spend as little money as possible, but we also wanted enterprise level reliability and performance. So we chose a server model known to be rock-solid reliable that was also on the VMware HCL (Hardware Compatibility List), then pumped the machines up with the features we needed. Each site consists of two servers, each an older 1U Dell PowerEdge 860. One runs the free version of VMware ESXi; the other runs Ubuntu Linux 10.04 LTS. Each machine has 3 gigabit network interfaces and a pair of terabyte SATA drives in hardware RAID 1. The ESXi server has a quad-core processor and 8GB of RAM. The Ubuntu machine has minimal CPU and RAM, but both machines have plenty of disk for storing lots of virtual machine images and backup images. The Dell 860&#8242;s have dual Broadcom gigabit Ethernet ports, but they don&#8217;t support jumbo frames (9000-byte Ethernet frames), so we added Intel PRO/1000 PT single port server adapters to each machine to carry the large NFS packets needed for decent throughput.</p>
<p>The ESXi and Ubuntu servers each have a single connection to a local switch for public Internet traffic. The other two ports are connected by direct cables, server-to-server, to carry 1) NFS traffic, allowing the Ubuntu server to act as a NAS for VMware VMFS storage, and 2) VMware remote management traffic via SSH port forwarding through the Ubuntu server.</p>
<h2>Secure Management Access</h2>
<p>Routing all VMware management traffic through the Ubuntu server means we don&#8217;t have to expose any vulnerable VMware management ports to the public Internet.  Instead, we use SSH directly to the Ubuntu server, but with port forwarding enabled to the ESXi management ports, then we run the vSphere client directly on our laptops. This way, all management traffic travels through an encrypted SSH tunnel that only allows authentication by SSH key. Our company policy requires that all such keys on laptops be stored on encrypted hard drives, meaning that a stolen laptop doesn&#8217;t compromise access to our public servers. Since we use laptops with wireless networking, we can manage our server infrastructure from anywhere, and with uncompromising security while doing so.</p>
<p>The SSH server on the Ubuntu machine is locked down according to <a href="http://www.howtoforge.com/ssh-best-practices" target="_blank">published best practices</a>. No root logins are allowed at all, only SSH Protocol 2 is allowed (version 1 has uncorrectable vulnerabilities), and authentication is only allowed via 1024 bit or longer SSH keys.  We believe that exposing a password-authenticated service to the public Internet is just asking for trouble, seeing as you can expect a constant stream of password-guessing probes from bad guys. We also use iptables on Ubuntu to close any other ports that might otherwise be open. We allow pings and key-authenticated SSH; nothing else.  And nothing is exposed on the ESXi servers at all except for the intentionally configured public-facing ports of the virtual servers.</p>
<h2>Service Resiliency</h2>
<p>We enabled SSH administrative logins on ESXi using the unsupported <a href="http://kb.vmware.com/kb/1017910" target="_blank">Tech Support Mode</a> that is intended only for customer service. Doing so allows us to use an open source VCB-like (VMware Consolidated Backup) tool that takes snapshots of running virtual machines and stores them in sparse virtual disk images on the NFS server. The <a href="http://communities.vmware.com/docs/DOC-9843" target="_blank">ghettoVCB</a> script can only run in the command line directly on the ESXi server, thus the need for enabling SSH. A new version is out that instead uses the standard VMware command line interface, but we haven&#8217;t installed it yet.</p>
<p>We are experimenting with automated replication of these backups between sites using <a title="rsync" href="http://en.wikipedia.org/wiki/Rsync" target="_blank">rsync</a>. Our current approach is to synchronize the latest snapshot of a virtual machine from one site directly over a copy of the previous day&#8217;s snapshot stored on the other site, thus taking advantage of the redundancy avoidance feature of rsync. This makes it feasible to synchronize a couple of hundred gigabytes of backups each night without really sending all that much data across the network. Current measurements indicate that this approach provides approximately 80-to-1 compression over sending the entire file directly.</p>
<p>Restoring a server or moving it to another site from a backup is simple. Since all backups are stored on the NFS servers, VMware can be configured in a minute or two to boot directly from any backup, which would subsequently serve as a virtual machine image. For better performance, or to preserve the backup, the VMware GUI or command line can be used to copy the archived image from the NFS server to the ESXi server&#8217;s internal disk, where it can then be booted directly. Having multiple, archived boot-compatible backups at each site provides great flexibility in choosing recovery methods.</p>
<p>One virtual server at each site runs monitoring software (we use <a href="http://www.opennms.org" target="_blank">OpenNMS</a>, but <a href="http://www.nagios.org" target="_blank">Nagios</a> would work just as well) that watches virtual and physical servers at both sites. If a server is down for more than a few minutes, an e-mail or text message is sent to the support group, initiating a recovery effort in as short a time as possible.</p>
<h2>Try It, You&#8217;ll Like It</h2>
<p>We have been extremely pleased at the results we have obtained from the above public server architecture. In fact, the only desired improvements we have been able to come up with are 1) bigger machines, and 2) adding remote management cards to each server, connected for security reasons only to the adjacent server. The advantages of server virtualization have been widely published, so with price out of the way, there should be nothing stopping you from jumping in with both feet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2010/12/31/cheap-but-secure-public-server-infrastructure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keeping Windows Patched</title>
		<link>http://www.lithik.com/2010/12/30/keeping-windows-patched/</link>
		<comments>http://www.lithik.com/2010/12/30/keeping-windows-patched/#comments</comments>
		<pubDate>Thu, 30 Dec 2010 21:59:08 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[disk imaging]]></category>
		<category><![CDATA[malware shedding]]></category>
		<category><![CDATA[mbsa]]></category>
		<category><![CDATA[missing patches]]></category>
		<category><![CDATA[patches]]></category>
		<category><![CDATA[security risk]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[WSUS]]></category>
		<category><![CDATA[WuInstall]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=461</guid>
		<description><![CDATA[The SANS Institute says that the highest priority security risk is client software that remains unpatched. That&#8217;s right—it&#8217;s the highest priority security issue there is. Number one. It trumps (or should trump) all other issues. So then, why is it that 90% of the time we here at Lithik Systems perform IT security audits, we [...]]]></description>
			<content:encoded><![CDATA[<p>The SANS Institute <a href="http://www.sans.org/top-cyber-security-risks/summary.php" target="_blank">says</a> that the highest priority security risk is client software that remains unpatched.  That&#8217;s right—it&#8217;s the highest priority security issue there is.  Number one.  It trumps (or should trump) all other issues.</p>
<p>So then, why is it that 90% of the time we here at Lithik Systems perform IT security audits, we discover hundreds, thousands, or even tens of thousands of patches missing from Windows, Office, Adobe, Java and other programs? It has been amply publicized that the vast majority of successful security breaches, that is, breaches that result in actual theft of proprietary information, occur through two avenues: visiting infected web sites and opening infected e-mail messages. Yet we routinely run into organizations, even organizations with CIOs and IT security staff, that don&#8217;t keep their systems up to date.<br />
<span id="more-461"></span></p>
<h2>Excuses</h2>
<p>The typical reaction of our customers, when faced with the evidence of their bad patching habits, is to apologize. &#8220;We&#8217;d love to be up to date, but it&#8217;s just such a huge job,&#8221; they say. &#8220;It&#8217;s our policy to patch, but we&#8217;ve been so busy recently that we just haven&#8217;t had the time.&#8221; Patching systems does take time, a lot of time, because even with automation, patches don&#8217;t always stick, and each failed patch means someone has to research the problem and, through trial and error, try to get it fixed. We&#8217;ve seen Windows installations that wouldn&#8217;t accept certain patches for months or even years until the machine was finally re-imaged, which often means a half of some tech&#8217;s day reformatting the broken machine, reinstalling Windows, reinstalling all the desktop and business apps, and bringing the configuration up to corporate standards. It&#8217;s a nightmare of a job.</p>
<p>WSUS (Windows Server Update Services), a free tool from Microsoft for deploying Windows and Office patches, is very popular and does a good job of minimizing Internet bandwidth use because, rather than having each desktop computer download each patch individually from Windows Update, WSUS downloads one copy of each patch from Microsoft, then distributes them across the internal LAN. It also comes with some nice deployment and status tools, allowing you to decide which patches should be applied and which should be held back (hint: They should all be applied. Always). But just like a 12-year-old boy, it doesn&#8217;t always tell the truth. Why is a mystery, but just be aware of the fact that WSUS lies, then use a patch scanner to give you the real skinny on which patches are actually missing.</p>
<p>Sometimes patches break critical applications. A recent client found that running Adobe Reader version X caused a business application used by a dozen or so of his users to fail, while version 9.1 worked just fine. One or two experiences like that and an IT person becomes gun-shy, never knowing which patch might break something, raining down wrath from irate users that just want to be able to do their jobs. So rather than risk being chewed out, he starts taking the &#8220;safe&#8221; way out. Safe for him, that is. Dangerously risky for the organization.</p>
<h2>Build Your Own Windows Patch Management System</h2>
<p>If all you want to do is roll out Windows and Microsoft Office patches, the options are pretty good. Microsoft Baseline Security Analyzer (<a href="http://technet.microsoft.com/en-us/security/cc184923" target="_blank">MBSA</a>) is an excellent patch scanning tool that quickly and accurately reports on missing patches and other security issues in Windows and Microsoft Office. WSUS is also useful, being a good soldier on the front lines, applying patches automatically while keeping your Internet connection from becoming overloaded. But to deal with the inevitable patches that don&#8217;t &#8220;take&#8221;, I like to use something that acts less like a lawnmower and more like a scalpel. <a href="http://www.wuinstall.com/" target="_blank">WuInstall</a> is a free tool that will install all missing Windows or Office patches on a specific machin or only the patches you specify. Tie this together with a login script or deploy it remotely using a program like <a href="http://technet.microsoft.com/en-us/sysinternals/bb897553" target="_blank">PsExec</a> that lets you push a command to a Windows machine across the network and you have a system that, either automatically or manually, cleans up the bits left behind by WSUS.</p>
<p>And servers? Patch them with WuInstall at night, then reboot them with PsExec. Put it in a script and run it with Windows <a href="http://support.microsoft.com/kb/308569" target="_blank">Scheduled Tasks</a> and now your server patches are 100% automated without disrupting business.</p>
<p>Not a bad system. All free software, near-complete automation. Too bad it won&#8217;t do Adobe patches.</p>
<h2>Third Party Apps</h2>
<p>So what can we do about third party desktop apps such as Adobe Reader, Adobe Flash, Adobe Air, Oracle (formerly Sun) Java, or other common desktop programs? WSUS and MBSA don&#8217;t deal with them at all. It&#8217;s no longer safe to just ignore them, because Adobe won the Number One Hacker Target title from Microsoft in the summer of 2009. Leaving your Adobe Reader installations at versions 7, 8 and 9 could end up costing your company millions of dollars—<a href="http://news.cnet.com/8301-1009_3-10153858-83.html" target="_blank">$6.6 million on average</a> for the typical security breach, to be specific. You could buy patch management software such as Shavlik (the original), Lumension (formerly PatchLink), Secunia or others, but that costs money, and you may not currently have the budget for it. Or you could engage a third party service such as ours to do the whole job, but we charge for our services, too. Isn&#8217;t there a cheaper way?</p>
<h2>Flying Blind</h2>
<p>Here&#8217;s one way to patch your third party apps without spending a dime, but it&#8217;s not for the squeamish or faint of heart.  It involves forcing out third party application updates but without the benefit of a software inventory of exactly what&#8217;s installed on each machine. <a href="http://wpkg.org" target="_blank">WPKG</a> is an open source system (that is, it&#8217;s free) that can be set up to automatically keep each desktop in your organization synchronized with a central repository of patch updates for a wide variety of third party desktop applications. The WPKG software discovers the currently installed version of each program to see if an update is warranted, but I&#8217;m not comfortable without a separate monitoring system that tells me if the patch application program is working properly. There are, of course, open source systems out there that will maintain a software inventory for you (<a href="http://www.ocsinventory-ng.org" target="_blank">OCS Inventory NG</a> comes to mind). But this whole approach is starting to look pretty complicated, especially when you consider that it&#8217;s all in addition to the WSUS/MBSA/WuInstall/PsExec system for Windows updates.</p>
<h2>The Imaging Solution</h2>
<p>There is one clean, clean, clean way to update your machines, but it also has costs as well as some pitfalls. Remote imaging tools such as <a href="http://antivirus.norton.com/norton/ps/us_en_gh.html?om_sem_cid=hho_sem_sy:us:ggl:en:e%7Ckw0000011946%7C6426226996&amp;om_sem_site=" target="_blank">Symantec Ghost</a>, <a href="http://www.acronis.com" target="_blank">Acronis</a>, <a href="http://www.symantec.com/business/deployment-solution" target="_blank">Altiris Deployment Solution</a>, <a href="http://technet.microsoft.com/en-us/library/cc786442(WS.10).aspx" target="_blank">Microsoft RIS (Remote Installation Services)</a> and others allow an IT administrator to make a single &#8220;gold copy&#8221; of a desktop computer, then push that image out to every desktop in the organization. It&#8217;s not as simple as it sounds, though, as similarity of hardware platforms is critically important, as is the amount of bandwidth available between your image server and the target desktop. But when it works, it&#8217;s sweet—run Windows Update once to a pristine machine, apply the latest Adobe and Java patches, then use the imaging tool to create a new gold copy on your fileserver. Then push the magic button and all your desktops are fresh and squeaky clean, up to date with Microsoft and all third party apps.</p>
<p>This approach also has a very important hidden benefit—what we at Lithik Systems call &#8220;malware shedding.&#8221; If a desktop becomes infected with a noisy virus such as those that pop up advertisements for fake antivirus software or certain unmentionable products, you know it right away. Or if a lazy hacker infects a lazy IT administrator&#8217;s desktop with an old virus allowed by a missing old patch, the antivirus system is likely to complain quickly and loudly. But what if the hacker is smart and subtle? What if the attack is of the zero-day variety, meaning that no antivirus system out there has ever heard of it, and no patch for the exploited bug has ever been released? Who can possible defend against such an attack? And what if the attack is of the &#8220;rootkit&#8221; variety that buries itself so deep in the operating system that no antivirus system has a prayer of ever finding it, even if it eventually becomes well-known?</p>
<p>Well, that&#8217;s where &#8220;malware shedding&#8221; comes in. If you re-image your desktops every month, say, on the evening of <a href="http://en.wikipedia.org/wiki/Patch_Tuesday" target="_blank">Patch Tuesday</a>, every rootkit and every bit of malware will be wiped off your network, no matter how tenacious the rootkit is, and no matter how clever the hacker was. They&#8217;ll all be gone, because every single Windows desktop has been wiped, reformatted and reinstalled. This feature is extremely valuable.</p>
<p>Imagine also what happens when, some other time during the month, you get one of those calls from a user saying, &#8220;My computer keeps popping up ads for designer watches,&#8221; or &#8220;My computer is acting, well, strange.&#8221; &#8220;Have no fear,&#8221; you say, &#8220;take a 20-minute break and I&#8217;ll make your computer sparkly clean.&#8221; Tell the imaging tool to remotely re-image the user&#8217;s computer and the infection vanishes. No diagnosis is necessary; just use the nuclear option on every problem as your first step and you&#8217;ll be right 90% of the time.</p>
<p>Other costs of using imaging include the redesign and conversion effort required to move every user&#8217;s desktop and My Documents folders over to a nearby fileserver. You should already be doing this anyway so that user files are backed up with your server&#8217;s other files, but it&#8217;s an absolute prerequisite of the imaging approach. A wipe-and-reinstall will wipe out not only malware, but also any files saved or changes made to the local disk.</p>
<p>&#8220;But hey,&#8221; you ask, &#8220;what about monitoring?  What about your software inventory?  Isn&#8217;t that important?&#8221; Well, sure it is, but you only need to check one machine.  Go to Control Panel -&gt; Add/Remove Programs and check the versions by hand. On just that one machine.  Or go to <a href="http://secunia.com/vulnerability_scanning/online" target="_blank">Secunia.com</a> and run their free Online Software Inspector. It will scan your computer, telling you about any applications that are out of date, whether Microsoft or otherwise. It&#8217;s just like a professional patch management solution, except that it&#8217;s free and you only have to run it on one machine.  Actually, it <em>is</em> a professional patch management solution. A really nice one, too.</p>
<h2>A Bit of Common Sense</h2>
<p>Now that you know how hackers find and capture their prey, you can come to some conclusions that make life a little less painful. Here are a few &#8220;therefores&#8221; that we should be able to count on:</p>
<ul>
<li>Not all machines are created equal. Given that attackers use web browsing sessions and e-mail sessions to infect computers, a server should never become infected because it should never run a web browsing session and it should never run an e-mail client. Keep that in mind and don&#8217;t do those things on your servers. This is important because it is much harder to recover from a server infection than from a desktop computer infection.  Much, much harder. It probably means rolling back to a backup, which probably means days of lost work, which may mean lost business.</li>
<li>Some software purchases should be easier to justify than others. Paying $40 a desktop for permanent imaging system licenses could save you many times that much money in saved staff time, both because of accelerated IT diagnosis and rectification, and because of reduced downtime for the desktop PC user.</li>
<li>You can&#8217;t tell if you&#8217;re secure unless you can measure it. Always use a reporting/scanning tool (MBSA, Secunia, etc.) to check your work.</li>
</ul>
<p>Don&#8217;t be like all the others—be the outlier that actually keeps your systems patched. Do this and you&#8217;ll also be the outlier that never gets hacked. Well, probably never, anyway.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2010/12/30/keeping-windows-patched/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Security Auditing and Security Design</title>
		<link>http://www.lithik.com/2010/11/03/security-auditing-and-security-design/</link>
		<comments>http://www.lithik.com/2010/11/03/security-auditing-and-security-design/#comments</comments>
		<pubDate>Wed, 03 Nov 2010 18:19:02 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[anti-virus]]></category>
		<category><![CDATA[compliance]]></category>
		<category><![CDATA[defense in depth]]></category>
		<category><![CDATA[device inventory]]></category>
		<category><![CDATA[drive-by downloads]]></category>
		<category><![CDATA[FFIEC]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[HIPS]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[malware shedding]]></category>
		<category><![CDATA[missing patches]]></category>
		<category><![CDATA[security auditing]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=451</guid>
		<description><![CDATA[My partner Ron Kellogg and I recently spoke at a meeting of the Northwest Ohio Auditors Association to update them on what an internal auditor should be looking for in an IT audit. We also talked about some new network architecture ideas that can drastically improve an organization&#8217;s resistance to web-borne and e-mail-borne malware. Click [...]]]></description>
			<content:encoded><![CDATA[<p>My partner Ron Kellogg and I recently spoke at a meeting of the Northwest Ohio Auditors Association to update them on what an internal auditor should be looking for in an IT audit.  We also talked about some new network architecture ideas that can drastically improve an organization&#8217;s resistance to web-borne and e-mail-borne malware.</p>
<p>Click <a href="http://www.lithik.com/downloads/security-auditing-and-security-design.pdf">here</a> for the slides.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2010/11/03/security-auditing-and-security-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configuring Windows Automatic Updates with Group Policy</title>
		<link>http://www.lithik.com/2009/11/16/configuring-windows-automatic-updates-with-group-policy/</link>
		<comments>http://www.lithik.com/2009/11/16/configuring-windows-automatic-updates-with-group-policy/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 22:01:36 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[automatic updates]]></category>
		<category><![CDATA[autoupdate]]></category>
		<category><![CDATA[gpmc]]></category>
		<category><![CDATA[gpo]]></category>
		<category><![CDATA[group policy]]></category>
		<category><![CDATA[group policy management console]]></category>
		<category><![CDATA[group policy object]]></category>
		<category><![CDATA[mbsa]]></category>
		<category><![CDATA[microsoft baseline security analyzer]]></category>
		<category><![CDATA[patch]]></category>
		<category><![CDATA[patches]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=413</guid>
		<description><![CDATA[Keeping your computer systems well-defended against the latest attacks is a daunting task, but fortunately, one of the most important defenses is really quite easy to maintain. Microsoft has provided some powerful tools that can keep your Windows systems patched with very little ongoing effort. If the idea of configuring Windows Group Policy makes you [...]]]></description>
			<content:encoded><![CDATA[<p>Keeping your computer systems well-defended against the latest attacks is a daunting task, but fortunately, one of the most important defenses is really quite easy to maintain.  Microsoft has provided some powerful tools that can keep your Windows systems patched with very little ongoing effort.</p>
<p>If the idea of configuring Windows Group Policy makes you break out in a sweat, be afraid no longer. We&#8217;ll go step-by-step through the process so that even a relative neophyte can get good results.<span id="more-413"></span></p>
<h2>GPMC</h2>
<p>GPMC (Group Policy Management Console) is an excellent tool for configuring and managing Group Policy.  If you don&#8217;t already have it installed, you can get it from <a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;familyid=0a6d4c24-8cbd-4b35-9272-dd3cbfc81887" target="_blank">here</a>. Fire it up by clicking <em>Start</em>, selecting <em>Run&#8230;</em>, then typing <code>gpmc.msc</code> and clicking <em>OK</em>.</p>
<p>Navigate through the domain tree in the left pane to <em>Forest</em> (for your domain), <em>Domains</em>, then open your domain, then open <em>Group Policy Objects</em>. You should find at least two GPOs (Group Policy Objects) there, among them being <em>Default Domain Controllers Policy</em> and <em>Default Domain Policy</em>. Click on one of these policies to open it in the right pane. Select the <em>Settings</em> tab to display the rules that make up the policy. Click on <em>show all</em> in the upper right corner to expand the rule hierarchy. Look through these policies to see if you already have rules governing Automatic Updates. If so, you can modify them in place, but we will proceed assuming a clean slate.</p>
<h2 style="font-size: 1.5em;">Create GPOs</h2>
<p>Right-click on <em>Group Policy Objects</em> in the left pane and select <em>New</em>. Assign a name like <em>Automatic Updates-Desktops</em> and click <em>OK</em>. Now right-click your new policy in the left pane and select <em>Edit</em>. This will start up the <em>Group Policy Object Editor</em>.</p>
<p>In the left pane, drill down to <em>Computer Configuration</em> -&gt; <em>Administrative Templates</em> -&gt; <em>Windows Components</em> -&gt; <em>Windows Update</em>. All Automatic Updates settings will appear in the right pane. As you click on each one, a description of the item will appear adjacent to the list. We won&#8217;t set every value, but we will set most of them. Open a setting by double-clicking its entry to open a configuration window. Each configuration window also has an <em>Explain</em> tab to help you understand the meaning of each aspect of the setting.</p>
<p>Let&#8217;s walk through the first one. Double click <em>Configure Automatic Updates</em>. Select the <em>Enabled</em> radio button. Set the first pull-down to <em>4 &#8211; Auto download and schedule the install</em>. Set the install day to <em>0 &#8211; Every day</em>. Set the scheduled install time to whatever you prefer. Finally, click <em>OK</em> to save the settings and close the box.</p>
<p>Here&#8217;s how I typically set it up:</p>
<ul>
<li>Configure Automatic Updates
<ul>
<li>Enabled</li>
<li>Configure automatic updating: 4 &#8211; Auto download and schedule the install</li>
<li>Scheduled install day: 0 &#8211; Every day</li>
<li>Scheduled install time: 11:00</li>
</ul>
</li>
<li>Specify intranet Microsoft update service location
<ul>
<li>Disabled</li>
</ul>
</li>
<li>Reschedule Automatic Updates scheduled installations
<ul>
<li>Enabled</li>
<li>Wait after system startup (minutes): 5</li>
</ul>
</li>
<li>No auto-restart with logged on users for scheduled automatic updates installations
<ul>
<li>Disabled</li>
</ul>
</li>
<li>Automatic Updates detection frequency
<ul>
<li>Enabled</li>
<li>Check for updates at the following interval (hours): 4</li>
</ul>
</li>
<li>Allow Automatic Updates immediate installation
<ul>
<li>Enabled</li>
</ul>
</li>
<li>Delay Restart for scheduled installations
<ul>
<li>Enabled</li>
<li>Wait the following period before proceeding with a scheduled restart (minutes): 5</li>
</ul>
</li>
<li>Re-prompt for restart with scheduled installations
<ul>
<li>Enabled</li>
<li>Wait the following period before prompting again with a scheduled restart (minutes): 480</li>
</ul>
</li>
<li>Allow non-administrators to receive update notifications
<ul>
<li>Enabled</li>
</ul>
</li>
<li>Enabling Windows Update Power Management to automatically wake up the system to install scheduled updates
<ul>
<li>Enabled</li>
</ul>
</li>
</ul>
<p>A few notes on the above values: You&#8217;ve got to let Automatic Updates reboot the computer; time and time again I&#8217;ve seen installations go literally <em>months</em> without applying patches because a user doesn&#8217;t want to be bothered with maintaining his machine.  That&#8217;s OK; we&#8217;ll do it for him.  Don&#8217;t check for updates more often than 3 or 4 hours; Microsoft says it can cause problems, and I, for one, don&#8217;t need any more problems with Windows than I already have. The 480 minute re-prompt number works out to 8 hours; I figure if someone actually doing their job sees a notice, they don&#8217;t need to be nagged again. Let it update once they&#8217;ve gone home. The power management setting is mostly wishful thinking on my part. Maybe someday I&#8217;ll go around and set up <a href="http://en.wikipedia.org/wiki/Wake-on-LAN">Wake-on-LAN</a> in the BIOS on all those machines.</p>
<p>That was a lot of work, but there&#8217;s still plenty to do. Create a nearly identical GPO called <em>Automatic Updates-Servers</em>. The only change I make is to set the <em>Configure Automatic Updates</em> value to <em>3 &#8211; Auto download and notify for install</em>. This prevents the possibility of a server rebooting while in use, disrupting work flow and generally wreaking havoc, but it also prevents the server from staying up to date unless you put forth an effort to keep it so. Hint: A particularly easy way to complete 90% of the work on your second GPO is to duplicate, then rename, the first one.</p>
<p>You can now close the <em>Group Policy Object Editor</em>.</p>
<h2 style="font-size: 1.5em;">Tie GPOs to Machines</h2>
<p>So far, nothing we have done has affected any machine, but that&#8217;s about to change. What we&#8217;d like to see is for the server policy to apply to all of our servers and for the desktop policy to apply to everything else. The first step in making that happen is to define which machines are servers.</p>
<p>Open up <em>Active Directory Users and Computers</em>. If you can&#8217;t find it under <em>Start</em> -&gt; <em>Administrative Tools</em>, then go to <em>Start</em> -&gt; <em>Run</em>, enter <code>dsa.msc</code> and click <em>OK</em>. Navigate in the left pane down through your domain to the <em>Computers</em> folder. Right-click on the <em>Computers</em> folder and select <em>New</em> -&gt; <em>Group</em>. Name the group <em>Servers</em>, leave the scope and type as a global security group, then click <em>OK</em>. It should show up in the list in the right pane.</p>
<p>Double-click your new group and select the <em>Members</em> tab. Add each server, one-by-one using the <em>Add</em> button and making sure the <em>Select this object type</em> field contains the word <em>Computers</em>. You can change it by clicking the <em>Object Types</em> button. Click <em>OK</em> when complete, then close the <em>Active Directory Users and Computers</em> window.</p>
<p>Next, we tie the <em>Automatic Updates-Servers</em> GPO to our new <em>Servers</em> security group. Back in GPMC, select the servers GPO and click on the <em>Scope</em> tab. In the bottom window, click the <em>Add</em> button and type <code>Servers</code> into the window, then click <em>OK</em>. Your security group should now be listed in the <em>Security Filtering</em> table. Highlight the other entry in the table (<em>Authenticated Users</em>) and click <em>Remove</em>, then <em>OK</em>. Now servers and only servers will be able to use the <em>Automatic Updates-Servers</em> GPO.</p>
<p>Last but certainly not least, link your new GPOs to the domain. In the left pane of GPMC, locate your domain name; it should be directly under the folder called <em>Domains</em>. Right-click your domain and choose <em>Link an Existing GPO</em>. Highlight both of your new GPOs with shift-click then click <em>OK</em>.</p>
<p>You are now in business.  Your policies are complete and in place.</p>
<h2 style="font-size: 1.5em;">Check Your Work</h2>
<p>If you log on to a domain member machine and look at the <em>Automatic Updates</em> page of the control panel, all the settings should be grayed out, but should match the values you set in your policies. If they&#8217;re not grayed out, you can wait, or you can give your policies a push.</p>
<p>Group policy flows gradually to domain member machines. They update at reboot time, but sometimes it takes more than one reboot for new policies to take effect. If you are impatient, or if a machine seems to get stuck, you can hurry along the process by running the command <code>gpupdate /force</code> from within a command window on the stuck machine. That, and maybe a reboot, usually get things moving along.</p>
<p>Another way to check is by examining the Windows Registry. Nearly all Group Policy operates by forcing certain registry settings on member computers, which then modify the computer&#8217;s behavior. Enter the following in a command window on any computer:</p>
<p style="padding-left: 30px;"><code>reg query hklm\Software\Policies\Microsoft\Windows\WindowsUpdate\AU /v AUOptions</code></p>
<p>and it should display the value <em>0&#215;3</em> on servers and <em>0&#215;4</em> on all other machines. You can run all your queries from one machine if you prepend each query target with its IP address or hostname, as follows:</p>
<p style="padding-left: 30px;"><code>reg query \\</code><em>hostname</em><code>\hklm\Software\Policies\Microsoft\Windows\WindowsUpdate\AU /v AUOptions</code></p>
<p>If the value is not found, try the <em>gpupdate</em> trick or a reboot. If it is found but does not match what you expected, make sure your <em>Servers</em> security group contains the right machine names; also make sure it is properly linked to the server GPO.</p>
<h2 style="font-size: 1.5em;">Maintaining Patched Systems</h2>
<p>Your GPOs will do a reasonably thorough job of keeping your systems up to date, but you still have work to do. Put Patch Tuesday on your calendar—Microsoft publishes new security updates on the second Tuesday of every month. Your desktops should automatically update themselves within a day or two, but you&#8217;ll have to patch the servers yourself. On each one, either go to <em>Start</em> -&gt; <em>All programs</em> -&gt; <em>Windows Update</em>, or find the yellow shield in the systray (the row of tiny icons in the lower right corner of your screen) and apply the patches that should be downloaded and ready to install.</p>
<p>I also recommend checking the patch state of each machine with MBSA, the Microsoft Baseline Security Analyzer (of which the latest version, currently 2.1.1, is available <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=b1e76bbe-71df-41e8-8b52-c871d012ba78&amp;displaylang=en">here</a>). MBSA can scan a single machine, all machines on your domain, or a LAN segment. It displays quite a bit of information, but the most critical is the list of missing patches. If a machine is chronically behind, it may be more than just group policy slowness. Many malware infections disable automatic updates, so a reformat and reinstall may be in order.</p>
<h2 style="font-size: 1.5em;">Congratulations!</h2>
<p>Your machines are patched. You have taken a critical step that every security policy framework and every set of security regulations requires. And you have eliminated much of your vulnerability to the most popular current malware attacks. And you are no longer a Group Policy newbie!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2009/11/16/configuring-windows-automatic-updates-with-group-policy/feed/</wfw:commentRss>
		<slash:comments>78</slash:comments>
		</item>
		<item>
		<title>Disabling the Windows AutoRun Feature</title>
		<link>http://www.lithik.com/2009/10/22/disabling-the-windows-autorun-feature/</link>
		<comments>http://www.lithik.com/2009/10/22/disabling-the-windows-autorun-feature/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 20:46:51 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[auto-play]]></category>
		<category><![CDATA[auto-run]]></category>
		<category><![CDATA[autoplay]]></category>
		<category><![CDATA[autorun]]></category>
		<category><![CDATA[cd-rom]]></category>
		<category><![CDATA[cdrom]]></category>
		<category><![CDATA[disable]]></category>
		<category><![CDATA[disabling]]></category>
		<category><![CDATA[group policy]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[usb]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=339</guid>
		<description><![CDATA[We often help organizations test how well their staff knows their security policy by performing social engineering tests.  In one, we drop hacked USB drives around the premises that notify our home server when inserted into a Windows computer.  Such tests are a lot of fun when they&#8217;re just tests, but when a real hacker [...]]]></description>
			<content:encoded><![CDATA[<p>We often help organizations test how well their staff knows their security policy by performing social engineering tests.  In one, we drop hacked USB drives around the premises that notify our home server when inserted into a Windows computer.  Such tests are a lot of fun when they&#8217;re just tests, but when a real hacker leaves such a tasty tidbit in your parking lot, you can bet it&#8217;s going to do a lot more mischief than phone home when an employee plugs it into one of your computers.</p>
<p>AutoRun and the companion feature AutoPlay are components of the Microsoft Windows operating system that dictate what actions the system takes when a drive is mounted.  The main purpose of AutoRun is to provide helpful actions and capabilities when removable media or network shares are mounted.  When such a device is mounted, the <code>autorun.inf</code> file from the media is parsed. This file specifies which commands the system should run. Many companies use this functionality to automatically start up their installers when a CD-ROM is inserted, but attackers can also use it to run data extraction sessions or automatic installations of malware.<br />
<span id="more-339"></span><br />
AutoRun and AutoPlay can be friendly features, but they are almost never necessary in an enterprise environment.  The security risk typically far outweighs any benefit.</p>
<p>All AutoRun/AutoPlay features are controlled by values stored in the Windows registry.  There are a number of ways to set these values, including</p>
<ul>
<li>Group Policy</li>
<li>Double-clicking a <code>.REG</code> file containing registry settings</li>
</ul>
<h2>Disabling AutoRun Using Group Policy</h2>
<p>If you think that Windows Group Policy would be the most convenient and thorough way to distribute such a policy, you&#8217;d be partly right.  The only gotcha is that a number of people report that it doesn&#8217;t always get every machine.  I&#8217;d recommend both belt and suspenders—use a GPO to catch future machines, but set each existing machine by hand to make sure none fall through the cracks today.</p>
<p>Before configuring Group Policy, you must ensure that one of the following updates has been applied to each of the machines you intend to configure.  Note that only one update applies to each machine.</p>
<ul>
<li>Update for Windows Server 2003 for Itanium-based Systems (KB967715)</li>
<li>Update for Windows Server 2003 x64 Edition (KB967715)</li>
<li>Update for Windows Server 2003 (KB967715)</li>
<li>Update for Windows XP x64 Edition (KB967715)</li>
<li>Update for Windows 2000 (KB967715)</li>
<li>Windows Vista-based and Windows Server 2008-based systems must have update 950582 (Security bulletin MS08-038) installed to take advantage of the registry key settings that disable AutoRun.</li>
</ul>
<p>This update will create a new registry entry, <code>HonorAutorunSetting</code>.  Without the update, <code>autorun.inf</code> gets read even with AutoRun disabled, but simply does not execute any AutoPlay commands inside.  This still allows attacks to be made using <code>autorun.inf</code>, and <code>HonorAutorunSetting</code> should be set to <code>1</code> to disable this. The default is <code>1</code> after the patch is applied.</p>
<p>To disable all AutoRun features in Windows Server 2003, Windows XP Professional and Windows 2000,</p>
<ul>
<li>Click <strong>Start</strong>, click <strong>Run</strong>, type <code>gpmc.msc</code> in the <strong>Open</strong> box, and then click <strong>OK</strong>.  If you don&#8217;t yet have <a href="http://www.microsoft.com/DownLoads/details.aspx?FamilyID=0a6d4c24-8cbd-4b35-9272-dd3cbfc81887&amp;displaylang=en">GPMC</a> installed, do so first.</li>
<li>Choose an appropriate Group Policy Object in the left pane (or create a new one and attach it in the appropriate place), right-click it, and select <strong>Edit</strong>.</li>
<li>Under <strong>Computer Configuration</strong>, expand <strong>Administrative Templates</strong>, and then click <strong>System</strong>.</li>
<li>In the <strong>Settings</strong> pane, right-click <strong>Turn off Autoplay</strong>, and then click <strong>Properties</strong>. Note: In Windows 2000, the policy setting is named <strong>Disable Autoplay</strong>.</li>
<li>Click <strong>Enabled</strong>, and then select <strong>All drives</strong> in the <strong>Turn off Autoplay</strong> box to disable Autorun on all drives.</li>
<li>Click <strong>OK</strong> to close the <strong>Turn off Autoplay Properties</strong> dialog box.</li>
</ul>
<p>Windows will propagate the group policy settings to all machines controlled by the edited Group Policy Object.  Once the settings have been applied to a computer, it must be rebooted before the changes take effect.</p>
<h2>Disabling AutoRun Using a Registry File</h2>
<p>Create a file called <code>autorun.reg</code> containing the following lines.  Some of the lines here are long; make sure you don&#8217;t break them in the middle somewhere when you cut and paste the text below.</p>
<blockquote><p><code>Windows Registry Editor Version 5.00</code></p>
<p><code>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf]<br />
@="@SYS:DoesNotExist"</code></p>
<p><code>[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2]</code></p>
<p><code>[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]<br />
"HonorAutorunSetting"=dword:00000001<br />
"NoDriveAutoRun"=dword:03ffffff<br />
"NoDriveTypeAutoRun"=dword:000000ff</code>
</p></blockquote>
<p>On each computer to be updated, browse to this file and double-click it.  The computer must be rebooted for the changes to take effect.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2009/10/22/disabling-the-windows-autorun-feature/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating Good Passwords</title>
		<link>http://www.lithik.com/2009/08/04/creating-good-passwords/</link>
		<comments>http://www.lithik.com/2009/08/04/creating-good-passwords/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 16:35:37 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[good password]]></category>
		<category><![CDATA[good passwords]]></category>
		<category><![CDATA[guess]]></category>
		<category><![CDATA[length]]></category>
		<category><![CDATA[memorable]]></category>
		<category><![CDATA[pass phrase]]></category>
		<category><![CDATA[passphrase]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[passwords]]></category>
		<category><![CDATA[rainbow tables]]></category>
		<category><![CDATA[scope]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[sentence]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=299</guid>
		<description><![CDATA[The keys to good password hygiene are: Making them hard to guess, Never writing them down, Limiting the scope of passwords, and Limiting the ability of an attacker to make repeated guesses. Password Complexity A recent study on password memorability and security uncovered two surprising results: The most important factor in the security of passwords [...]]]></description>
			<content:encoded><![CDATA[<p>The keys to good password hygiene are:</p>
<ul>
<li>Making them hard to guess,</li>
<li>Never writing them down,</li>
<li>Limiting the scope of passwords, and</li>
<li>Limiting the ability of an attacker to make repeated guesses.</li>
</ul>
<h2>Password Complexity</h2>
<p>A recent study on password memorability and security uncovered two surprising results:<br />
<span id="more-299"></span></p>
<ul>
<li>The most important factor in the security of passwords is consistency—implementing technical controls to enforce password quality.</li>
<li>So-called “passphrase” passwords are equal in quality to completely random passwords, yet are no more difficult to remember than any other user-chosen password.</li>
</ul>
<p>Good passwords (those that are least vulnerable to password cracking attacks) utilize the full spectrum of allowable characters (Capital and lower case letters, numbers and symbols) and are long enough to force password crackers to use their slowest “brute force” technique.</p>
<h2>Memorable Passwords</h2>
<p>“Passphrase” passwords meet both of these requirements. To create one, just choose a memorable sentence and make it your password. Windows considers the space character to be a special character, so setting your password to &#8220;I love the Buckeyes!&#8221; meets the Windows password complexity requirement, gives you a password 20 characters long, and declares your allegiance just as well as &#8220;goBUCKS!&#8221; without falling to a password cracker in the first two seconds.</p>
<p>If your computer system limits you to relatively short passwords (say, 8 or 10 characters), or if you are a two-finger typist, take a simple sentence, assemble the first letters from each word in the sentence (as with an acronym), including appropriate capitalization and punctuation, then modify the new password slightly using numbers or special characters. For example, the phrase, “Obama declares nuclear war; details at 11” might be entered as “Odnw;d@11” which looks like a random password, yet is easy to remember. Similarly, the phrase, “It’s noon and I am hungry” could be typed in as “It’s12&amp;Iah.” Unlike random passwords, passwords of this style are not any harder to memorize than shorter ones.</p>
<h2>Length is Key</h2>
<p>The power tools used by the bad guys can make quick work of password hash files these days, but choosing a password at least 15 or 16 characters long can move the advantage back to your side.</p>
<p><a href="http://en.wikipedia.org/wiki/Rainbow_table">Rainbow tables</a> can crack any password hash up to the length limit of the table in a very short time.  Since these tables grow exponentially large with the password length, there are probably few or no existing rainbow tables (yet!) for passwords longer than 15 or 16 characters.</p>
<p>Additionally, traditional Windows password crackers such as <a href="http://en.wikipedia.org/wiki/John_the_Ripper">John the Ripper</a> typically only crack the <a href="http://en.wikipedia.org/wiki/LM_hash">LAN Manager hash</a>, a relatively insecure password storage method that can only handle passwords 14 characters long or shorter.  Choosing a 15-character password forces the hacker to resort to the more esoteric and less computationally efficient NTLM (MD4) password hash algorithm.  Knowing this, you can make the bad guy&#8217;s job a whole lot harder by <a href="http://support.microsoft.com/?kbid=299656">not storing the LAN manager hash of your password</a> in the first place.</p>
<h2>Password Scope and Availability</h2>
<p>Even with an excellent password, however, an attacker can still break in if he has the opportunity (and patience) to make a hundred billion guesses at your password. It is also critically important to:</p>
<ol>
<li>Limit the number of failed password attempts, or at least limit the rate, and</li>
<li>Log repeated failures so that action can be taken.</li>
</ol>
<p>Similarly, choosing excellent passwords has little value if you use the same password for your business VPN and your Facebook or Amazon account. A hacker who manages to gain access to all of Amazon’s account holders is very quickly going to see if the user foxk@lithik.com with the password H@rd2gess has VPN access to lithik.com with username foxk and the same password. This type of attack is easily automated across thousands of stolen passwords.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2009/08/04/creating-good-passwords/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thin Clients are Invulnerable.  Aren&#8217;t They?</title>
		<link>http://www.lithik.com/2009/04/27/thin-clients-are-invulnerable-arent-they/</link>
		<comments>http://www.lithik.com/2009/04/27/thin-clients-are-invulnerable-arent-they/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 17:57:42 +0000</pubDate>
		<dc:creator>Karl Fox</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[mobile code]]></category>
		<category><![CDATA[patches]]></category>
		<category><![CDATA[thin client]]></category>
		<category><![CDATA[vulnerabilities]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.lithik.com/?p=251</guid>
		<description><![CDATA[I am greatly pleased when we at Lithik meet a client who uses thin clients. It not only means that IT management is forward-looking, it also often means they understand the substantial security benefit that can be gained by removing hard-disk-based Windows systems from their network. Converting an organization with a hundred Windows XP desktops [...]]]></description>
			<content:encoded><![CDATA[<p>I am greatly pleased when we at Lithik meet a client who uses <a href="http://en.wikipedia.org/wiki/Thin_client">thin clients</a>.  It not only means that IT management is forward-looking, it also often means they understand the substantial security benefit that can be gained by removing hard-disk-based Windows systems from their network.  Converting an organization with a hundred Windows XP desktops accessing three Windows servers to thin client technology means a reduction from 103 Windows installations to 3.  That means 30 times fewer machines to patch, 30 times fewer machines to monitor for antivirus updates and Windows events, and 30 times fewer machines on which to install services packs and other application updates.  This is a seriously good thing.</p>
<p>Thin client sales pitches frequently include claims saying they can&#8217;t be hacked.  They don&#8217;t have hard drives, so how could they?  Besides, you can always push the reset button and—<em>voilà</em>—the software is booted from a clean copy, erasing any filth that may have found its way into memory.<br />
<span id="more-251"></span><br />
Even so, I always recommend that our clients choose the version running Linux or some oddball <a href="http://en.wikipedia.org/wiki/Embedded_operating_system">embedded OS</a> like <a href="http://www.windriver.com/products/vxworks">VxWorks</a> or <a href="http://www.qnx.com">QNX</a>.  I do this because although I frequently quote the famous security paradigm, &#8220;security by obscurity is no security at all,&#8221; I know that obscurity often <em>does</em> add to security—sometimes quite substantially.</p>
<p>Thin clients running Windows CE or Windows XP Embedded need to be updated every month, just like XP or your servers.  Patch Tuesday applies both to the OS and to Internet Explorer, which is always the web browser in Windows-based thin clients.  Go ahead and look in the manual for your thin client management software; network-wide updates are supported and recommended, but they usually leave out the dire threats and arm-waving you get when security folks talk about Windows patches.  That&#8217;s too bad, because the same IE bug you just patched on all your XP machines is probably in all your CE and XPE thin clients, too.  Thin clients may not have hard drives, but they do have memory-based filesystems that can store malware and run it, at least until you reboot.  By then the damage may be done and the malware may have jumped to servers that do have hard drives.</p>
<p>But the fun doesn&#8217;t stop there!  Show me a thin client browser and I&#8217;ll show you a device that runs JavaScript for sure, and probably Java and Adobe Flash as well, technologies that fall into a category known as <a href="http://en.wikipedia.org/wiki/Mobile_code">mobile code</a>.  Claims that these environments are safe because they run in a protective &#8220;<a href="http://en.wikipedia.org/wiki/Sandbox_(computer_security)">sandbox</a>&#8221; are only partly true.  All software has bugs, even sandboxes.  A thorough security design requires measures that can protect against bugs that haven&#8217;t been found yet.  Thus the principle of <a href="http://en.wikipedia.org/wiki/Defense_in_Depth_(computing)">defense in depth</a> or security in layers is undoubtedly the most important threat mitigation tool in defending against the unknown.  Thin clients are great, but they&#8217;re only one layer.</p>
<p>So, what to do?  There are some steps you can take.  The following list is not exhaustive, because the author is not omniscient.  But it&#8217;s a start.</p>
<ul>
<li>Choose Linux-based or <a href="http://en.wikipedia.org/wiki/Real-time_operating_system">RTOS</a>-based thin clients over those running Windows CE or XP Embedded.</li>
<li>Keep your thin clients up to date with the latest firmware available. If you do use Window-based devices, this means <em>every month</em>.</li>
<li>Restrict the use of mobile code.  If you need it for your business applications, configure the browser to only allow it from a select list of servers.</li>
<li>If your thin client vendor hasn&#8217;t given you the ability to restrict mobile code, configure your firewall to do it instead.</li>
<li>If your firewall won&#8217;t let you control mobile code, configure it to restrict all web browsing to a list of approved sites.  This is called a <em>white list</em>.</li>
</ul>
<p>Applying these methods to a thin client environment will certainly decrease the risk of infection.  But it must be said that there is really no guaranteed safe way to give your staff unlimited freedom to browse the Internet with all the bells and whistles enabled.  Well, at least not unless you figure out a way to move them outside your firewall while they do it.  If you think of your business environment as a surgery room in which every item introduced from the outside represents a potential threat, you will understand the importance of continued vigilance to avoid contamination. Thin clients are indeed way more secure than desktops.  It&#8217;s just that the Internet is anything but sanitary and <em>nothing</em> is perfectly safe.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lithik.com/2009/04/27/thin-clients-are-invulnerable-arent-they/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

