patch management best practices
Transcription
patch management best practices
PATCH MANAGEMENT BEST PRACTICES A “How to” Guide for Securing the Enterprise AUTHORS: Anne Stanton President, Norwich Group Susan Bradley Microsoft Small Business Server MVP The Fundamentals of Patching – From a Technical and Historical Perspective Table of Contents INTRODUCTION ........................................................................................................................................ 3 WHAT IS PATCH MANAGEMENT?....................................................................................................... 4 HISTORY OF PATCHING ............................................................................................................................... 4 DEFINITION OF MICROSOFT PATCHES ......................................................................................................... 4 WHAT IS A PATCH? ..................................................................................................................................... 5 IDENTIFYING THE FLAW .............................................................................................................................. 6 WHY DO WE PATCH?................................................................................................................................... 6 WHAT IS INCLUDED IN A MICROSOFT PATCH? ............................................................................................ 6 HISTORICAL PATCH PROCESS WINDOW ...................................................................................................... 9 FINDING OUT ABOUT PATCHES.................................................................................................................... 9 THE ROAD AHEAD.................................................................................................................................... 11 CHANGE MANAGEMENT AND RISK ANALYSIS ............................................................................ 13 RISK AVOIDANCE – AVOID PATCHES ALL TOGETHER ................................................................................ 13 RISK AVOIDANCE – IF THEY’D ONLY WRITE BETTER CODE ........................................................................ 14 RISK ACCEPTANCE – THE REAL WORLD .................................................................................................... 14 PATCH POLICIES AND CHANGE MANAGEMENT POLICIES ........................................................................... 15 IDENTIFYING YOUR CHANGE MANAGEMENT TEAM ................................................................................... 16 OUR ASSUMPTIONS ................................................................................................................................... 17 SETTING UP A PATCH TESTING SCENARIO ................................................................................................ 17 DISCOVERY OF ASSETS ............................................................................................................................. 18 NECESSARY PATCHES VERSUS ALL PATCHES ............................................................................................ 20 SETTING UP THAT TEST LAB - UTILIZING A VIRTUAL ENVIRONMENT ......................................................... 20 THE BOTTOM LINE .................................................................................................................................... 21 IT’S ALL ABOUT RISK ........................................................................................................................... 23 THE ADMINISTRATOR’S ROLE ................................................................................................................... 23 IDENTIFY KEY FACTORS ............................................................................................................................ 24 CAN YOU PATCH? ..................................................................................................................................... 24 HANDICAPPING THE PATCHES .................................................................................................................. 25 CASE STUDY—BLASTER ARRIVES ............................................................................................................ 26 RESOURCES FOR THREAT ASSESSMENT .................................................................................................... 30 ADDITIONAL TESTING PROCEDURES ......................................................................................................... 31 TESTING PROCEDURES MAY INCLUDE EFFECTIVENESS TESTING ................................................................ 31 STANDARDIZE YOUR OFFICE ..................................................................................................................... 33 TESTING PROCESSES ................................................................................................................................. 33 ARE WE READY TO PATCH YET? ...................................................................................................... 36 PATCH “AT RISK” MACHINES FIRST ........................................................................................................... 36 USE PATCH TOOLS TO CONFIRM COMPLIANCE WITH POLICIES ................................................................... 37 CAPTURE FEEDBACK................................................................................................................................. 38 ENFORCEMENT ......................................................................................................................................... 38 SAMPLE TEST LAB SECURITY POLICY....................................................................................................... 39 TECHNICAL ENFORCEMENT ...................................................................................................................... 42 SET THE POLICY TO MAKE IT EASY TO UPDATE AND COMPLY WITH........................................................... 44 STUFF HAPPENS ........................................................................................................................................ 44 BE WILLING TO GATHER INFORMATION .................................................................................................... 45 CHANGE MANAGEMENT FOLLOW-UP ....................................................................................................... 45 SO I CAN’T PATCH, NOW WHAT DO I DO? .................................................................................................. 46 THE STORY OF TWO PATCHES ................................................................................................................... 47 Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 1 THE COMING THREATS .............................................................................................................................. 48 THE BOTTOM LINE FOR YOUR BOSS ........................................................................................................... 49 LIFE BEYOND PATCHING MICROSOFT........................................................................................... 51 PATCHING THIRD PARTY APPLICATIONS ................................................................................................... 52 PATCHING LINUX DISTRIBUTIONS ............................................................................................................. 58 BUILDING PACKAGES FROM SOURCE......................................................................................................... 66 DEPENDENCIES ......................................................................................................................................... 66 SUN SOLARIS ............................................................................................................................................ 67 JUSTIFYING PATCH MANAGEMENT—A BUSINESS TUTORIAL............................................... 69 MANAGEMENT AND PATCH MANAGEMENT .............................................................................................. 69 AN OFFICER’S PERSPECTIVE ..................................................................................................................... 70 INDUSTRY REQUIREMENTS/STANDARDS .................................................................................................. 75 COMPLIANCE WITH ISO900X ................................................................................................................... 81 COMPLIANCE WITH INDUSTRY ASSOCIATION STANDARDS AND REGULATIONS ......................................... 81 RETURN ON INVESTMENT (ROI)............................................................................................................... 82 WHAT DO WE REALLY NEED? ................................................................................................................... 84 DEFINING THE PATCH MANAGEMENT BEST PRACTICES—FIRST ROI VARIABLES PROJECT..................... 85 ONGOING MAINTENANCE AND MODIFICATION—SECOND ROI VARIABLES PROJECT ............................... 85 WHEN A BREACH OCCURS – BUSINESS CONTINUITY—THIRD ROI VARIABLES PROJECT ........................ 86 FINDING TIME IN A CRISIS MANAGEMENT ENVIRONMENT ......................................................................... 87 PURCHASING PATCH MANAGEMENT TOOLS .............................................................................................. 87 VENDOR ISSUES........................................................................................................................................ 88 CONCLUSION ............................................................................................................................................ 89 APPENDIX A– PATCH TESTING .......................................................................................................... 90 APPENDIX B—SAMPLE BUDGET REQUEST ................................................................................... 91 GLOSSARY ................................................................................................................................................ 92 NOTES ........................................................................................................................................................ 93 Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 2 Introduction ver a late January weekend in 2003, ATMs for well-known financial institutions became unavailable, flights were canceled due to online ticketing and electronic check-in problems, and a major city’s emergency 911 network went down. These were just some of the issues that caused a crisis throughout the world and sent IT staffs scrambling to figure out what was happening. O Pretty soon, we all learned what the culprit was. “Computer worm hits the net,” screamed the headline. SQL Slammer, Sapphire, W32.Slammer whatever you want to call it, was tiny as worm files go, only 376 bytes of code designed for speed. Typical computer transactions involve a “hand shake” transmission process. One party offers a connection, another party accepts, and the transmission proceeds by means of traditional TCP/IP processes. SQL slammer, however, used another transmission standard. It transmitted UDP packets only, through a connectionless transmission. This worm did not wait for a response. It flooded all vulnerable connections it could find. That high-speed little file was looking for a port that had behind it, ready and waiting, a listening application. The Internet Assigned Numbers Authority (IANA.org) maintains the listing of computer ports used by programs, applications, and typical connections on the Internet. A computer system has almost 65,000 ports to transmit information back and forth. Typically, these ports sit there waiting, but sometimes they are in “listening” mode, waiting to be called upon. Most worms would typically try to find vulnerable systems on well-known ports, those ports from 0 to 1023. SQL slammer was different. It aimed at a port not used in previous attacks, port 1434. This is a port used by database programs such as Microsoft SQL server and something called MSDE or Microsoft SQL Database Engine. Microsoft SQL Server is a very powerful database program typically run on maintained and monitored servers. The other, MSDE, it a small but powerful database engine used by developers in many applications. Furthermore, port 1434 is unique. It is not a port used to transmit data; rather it monitors SQL transmissions. All Microsoft SQL servers listen on this port. Not all MSDE installations do however. The tiny worm’s tale includes a couple of other twists. Developers use MSDE in many applications, but do not necessarily tell purchasers that their software uses MSDE to keep track of something needed for the application’s operation. At the time Slammer struck, patching SQL server or MSDE was difficult and cumbersome, needing the patch installer to understand SQL instances. While the original patch to fix the vulnerability came out in July of 2002, the rollup service pack had just recently come out about three weeks before Slammer appeared. In early 2003, three weeks was not enough time to have server admins or application developers test and install a service pack. Database administrators were (and still are) reluctant to install patches on working databases, so installing the rollup pack was not a priority. Furthermore, all the unpatched computers equipped with MSDE were primarily in installations where the administrator had no idea that he or she had MSDE installed. Their software vendors had not informed them, nor did they have a tool to identify machines that were running MSDE. Thus, the stage was set for the worm: unpatched machines, unidentified machines that were also unpatched, a worm built for fast connections, a port never used before for worm attacks, and a port not used for data, only monitoring. Overall, we had a “perfect storm” for unleashing the worm. The news reports indicated that the major ISPs and backbone providers of the Internet knew within minutes that something was up. Realize that unlike Code Red that took 24 hours to go around the world infecting the globe, SQL slammer was around the world in 30 minutes.1 Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 3 Chapter 1 – What is Patch Management? W e define patch management as “the act, manner, or practice of managing, handling, supervising and controlling the application of code to software in order to fix a bug, especially as a temporary correction between two releases.” Many in our industry consider that patch management means applying security fixes that are typically not temporary corrections. In fact, patch management and its processes include the entire area of introducing “new code” into an existing environment. While this document focuses primarily on tools used for testing, supporting, and evaluating Microsoft security patches, the basic concepts are the same for all software systems. IT managers and admins must logically control the introduction of new code into a network. Computers drive world business. No longer can a financially healthy firm exist without technology. Further, maintaining, protecting, and securing computer systems is, as recent legislative initiatives make clear, simply good business. A computer, like any mechanical device, requires regular maintenance. Applying patches to systems that connect to the Internet is simply and fundamentally mandatory. Period This document focuses only on the processes and procedures for patch management. We assume that you have taken steps to harden systems,2 apply firewalls, and install antivirus protection. Patch management is only one of the steps needed to protect an environment, but it is an essential element nonetheless. We also assume that you understand the “business” reason for patching and that you have the proper buy-in from management to add patch management to your security processes. Some security vendors recommend installing the bare minimum of patches; however, that still means that you must rely upon consistent and appropriate processes and procedures. History of patching The CERT Guide to System and Network Security Practices3 has small sections on software patches. The author, Julia Allen recommends applying patches on redundant or duplicate systems before applying them to main production machines. Any vendor service level agreement (SLA) should clearly state that firewalls should remain in place during installation of operating system patches. Allen further argues that those in charge of firewall operating systems and software need to review those devices as well for updates. Not too long ago, “best practices” meant not applying software patches in a piecemeal manner, but waiting for the cumulative security patch that, presumably, was more tested. Now, delay and deferral invite crisis. Definition of Microsoft patches In the Microsoft world, patch management included all of the following types of new code introductions:4 • Critical Update – this is not a security update but a fix for an issue in broadly applied software. It is publicly available and has an accompanying knowledge base article. • Driver Update – this updates software that supports and controls hardware. Driver updates may come from either the software vendor or the hardware vendor. • Feature pack – software package that includes non-critical additions to the base software program. It typically appears between major releases. • Hotfixes – patches built to address specific issues. Recipients may not distribute hotfixes outside their organizations without written authorization from Microsoft. Get them FREE by calling Microsoft Product Support Services. Hotfixes do not receive the regular testing Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 4 process. • Security Update – this is what we traditionally refer to in patch management circles. There is a severity rating included with each update, as is a security bulletin discussing the issue and a Knowledge Base article describing the patch in detail. • Service Packs – are cumulative packages of hotfixes, security updates, critical updates, and updates. A service pack undergoes both internal and external testing. • Software Update – is any update, update rollup, service pack, feature pack, critical update, security update, or hotfix. • Update – addresses a non-critical, non-security issue. • Update rollup – cumulative package of hotfixes, security updates, critical updates, and updates, collectively tested for easy deployment. • Upgrade – this software updates and upgrades an application to a newer version while keeping the settings and data from the prior program. Each of these categories requires the same process and procedures of testing, acceptance, and management sign off. Each must go through a process no matter the size of an organization. We will spend the bulk of our time in this document on security updates. What is a patch? Software refers to the instructions mechanical devices receive to process commands in a certain manner. Typically, developers write software to perform a process in a prescribed fashion. However, as with any process deriving from human intelligence, there can be incorrect assumptions made, and the software might not perform as intended. As Bruce Schneier and Niels Ferguson state in Practical Cryptography – Most engineers have to contend with problems like storms, heat, and wear and tear. A bridge designer only has to worry about three threats – water, gravity and wind. All of these factors affect designs, but their effect is predictable to an experienced engineer. (This is) not so in security systems. Our opponents are intelligent, clever, malicious, and devious; they’ll do things nobody had ever thought of before. They don’t play by the rules, and they are completely unpredictable. That is a much harder environment to work in.5 A software designer has to worry about threats from an unlimited number of vectors. This means that the network administrator must consider such risks from these same threat vectors when analyzing a network’s need for patches. Can the threats come from outside the organization or only from inside? What potential attack method might exploit a particular flaw? In a later chapter, we discuss resources for determining these threat vectors. Software flaws threaten an organization in various ways. The most critical give an attacker full rights to a system. Many of these flaws stem from buffer overflows. Traditionally stack-based buffer overflows have been the largest category of security issues, and are places in the software where more data enters the system than the software is asking for. If the software designer did not anticipate this, the system would “crash.” Perpetrators target buffer overflows to dump the processes to ensure that the system remains at an “administrative privilege” level, thereby forcing the system into “handing over the keys to the kingdom.” When a patch bulletin indicates that the worse case scenario is that the attacker can “run code of his choice,” this is the equivalent to that person logging in as administrator to a system. Software patches themselves are also threats. After each security bulletin release, even with the rigorous testing done by the vendors on those applications typically broken by previous security updates, issues still occur. Documentation accompanying a security update addresses any known issues likely to develop following release of the update. Remember that issues directly Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 5 caused by security updates qualify for a no-charge support call. In the United States, call 1-866PC-SAFETY.To resolve International issues contact a local Microsoft office.6 Testing patches, ensuring that they do not adversely affect systems and that they protect systems as intended, as well as applying patches, requires approval from management and may even require approval from critical line of business vendors. We discuss change management processes later and in detail. Nevertheless, you need adequate resources if these testing, ensuring, and applying processes and procedures are to work correctly. Identifying the flaw Very briefly, software vulnerability begins when someone looks at code or attempts to reverse engineer code. While Linux and its variants work under the Open Source licensing model wherein the source code accompanies the product, Microsoft does not release its source code. Thus, many security researchers use various techniques to identify flaws. In some cases, the interaction and connectivity needed between a UNIX or Linux system may provide clues to a researcher for potential flaws. Other freely available tools include Dave Aitel’s SPIKE (www.immunitysec.com), Todd Sabin’s DCE-RPC tools (razor.bindview.com), Netcat (www.atstake.com/research/tools/network_utilities), Ethereal (www.ethereal.com), and many of the utilities at the Sysinternals web site (www.sysinternals.com). If the researcher or security company agrees to responsible disclosure techniques, it contacts the software vendor ahead of time and allows the vendor to correct the flaw or respond to the issue. Eeye.com7 is one vendor that notifies but does not disclose a flaw publicly at any time prior to the release of a security update. Irresponsible vendors and security researchers post the vulnerability to listserves such as Full Disclosure8 along with information that provides a “proof of concept” that has later been exploited by others and turned into automated exploits. Once contacted, the vendor reviews the reported information to see if the issue truly is a security flaw. If there is an issue, the process of building the patch and testing the patch begins. Why do we patch? It is obvious that we patch because software is not processing commands correctly. This misprocessing could range from elevation of privilege to information disclosure. Threat Modeling, a text that explores what an adversary might attain by exploiting a flaw defines the following threat categories9 • Spoofing identity • Tampering with data (also called integrity threats) • Repudiation • Information disclosure • Denial of service • Elevation of privilege Patch management ensures that correct code replaces incorrect code. However, it is not the only way to reduce risk. The patch management process also includes mitigation techniques that are not actual patches but include additional procedures to protect networks if the patch is not available, or if admins cannot apply it to a network, or if there are other reasons that preclude applying the patch. What is included in a Microsoft patch? Let’s roll up our sleeves, get technical, and examine what is included in each type of Microsoft patch10. Security patches, critical updates, updates, update rollups, drivers, and feature packs fall into the general distribution releases (GDR) category. These go through testing across different platforms and applications to ensure proper functionality, and that the program or update that includes new features performs as intended. However, Hotfixes developed by Microsoft Product Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 6 Support Services for a specific situation are not as tested as those included in general distribution releases. Microsoft Knowledge Base articles, freely available from Microsoft Product Support Services, always accompany these QFEs. In the Windows 2003 Server environment and now in the Windows XP sp2 workstation, the product update packages may include two or more copies of the same files to support two different types of install environments for a system. When the security patch, critical update, update, update rollup, driver, or feature pack install, the installer package looks to see what files already exist on a system. Possible install environments include: • GDR environment o Original released version (RTM) o Service pack version o General Distribution release • QFE environment o Hotfix Having discovered the appropriate environment, the installer package installs the applicable file set. To see what version of a file exists in a Windows 2003 server environment, review the following formats:11 File Version Source of file Srv03_rtm.mmmmmmnnnn This file is from the original RTM version of the product and has not been updated by any security patch, critical update, update, update rollup, driver, feature pack or hotfix. Srv03_gdr.mmmmmmnnnn This indicates that the file is from a security patch, critical update, update, update rollup, driver, or feature pack and has not been updated by a hotfix. Srv03_spx.mmmmmmnnnn This indicates that the file is from a SP and has not been updated by a security patch, critical update, update, update rollup, driver, and/or feature pack. Srv03_qfe.mmmmmmnnnn This indicates that the file is from a hotfix. In our server, we can see that the file on our server is a GDR version. Thus, it indicates that the patch engine did not find a hotfix and instead found a GDR version. For example, let’s look at the file included in Security bulletin 04-024 (04 for the 2004 year, -024 th meaning the 24 bulletin of the 2004 year). Find this bulletin at http://www.microsoft.com/technet/security/bulletin/MS04-024.mspx and the sample below is the patch for the Windows 2003 platform. It includes updates to one file shell32.dll. Inside the installer package are two files. One expects that the server will still have one of the original dll’s categorized as a GDR package the other anticipates a hotfix. 13-May-2004 00:07 6.0.3790.168 8,168,960 Shell32.dll RTMGDR This version is used to apply to servers that have original released version (RTM), Service packs or General distribution versions. 12-May-2004 23:29 6.0.3790.169 8,168,960 Shell32.dll RTMQFE This version is used to apply to servers that have received a hotfix version. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 7 The shell32.dll File Version Window While security bulletin 04-024 includes an update to only one file, many patches contain a series of files that replace existing files on a system. Other security patches may include a series of files needed to correct the condition. In the Security patch Microsoft Security Bulletin MS04-022: Vulnerability in Task Scheduler Could Allow Code Execution (841873)12 the patch includes a series of files needed to remove the vulnerability from the system: Date Time Version Size File name Folder 08-Jun-2004 08-Jun-2004 03-Jun-2004 08-Jun-2004 08-Jun-2004 08-Jun-2004 08-Jun-2004 08-Jun-2004 08-Jun-2004 18-May-2004 22:01 22:01 22:54 22:01 22:01 22:02 19:59 22:02 22:02 03:46 5.1.2600.105 5.1.2600.155 5.1.2600.155 5.1.2600.122 5.1.2600.155 5.1.2600.1564 5.1.2600.1564 5.1.2600.1562 5.1.2600.1564 5.1.2600.1555 48,640 251,392 9,728 301,568 159,232 260,096 10,752 306,688 172,544 593,408 Browser.dll Mstask.dll Mstinit.exe Netapi32.dll Schedsvc.dll Mstask.dll Mstinit.exe Netapi32.dll Schedsvc.dll Xpsp2res.dll RTMQFE RTMQFE RTMQFE RTMQFE RTMQFE SP1QFE SP1QFE SP1QFE SP1QFE SP1QFE Applying new executables and dll files introduces change into a stable system. As evident from the files listed above, the security update includes both executables and dynamic link library files. An exe file is a file that a computer can directly “run” or execute. A DLL file contains a range of functions accessed by other Windows applications. The standard functions in the Windows Application Programming Interface (or API) are accessed using DLL files. This standardization eases collaboration among disparate applications. Without these building blocks, applications Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 8 would look and act much differently. A DLL can have the extension of .exe, .dll, .drv, or .fon. In any case, patching introduces new files and new code into a stable system. Thus, test to ensure that you have tested the install and uninstall processes, as well as any potential rollback issues. Historical Patch Process window Until recently, an administrator could be somewhat lax in applying patches. According to Forrester Research, the average time between the release of a patch and the attack of a worm was 305 days in March 2003. However, that window of opportunity has been shortening. Common Name SQL Slammer Bugbear Frethem Yaha Elkern Klez Badtrans Historical window of patching in 200313 Attack Patch Advance Impact of Attack Date Issued Notice Infections doubled every 8.5 1/25/03 7/24/02 185 days seconds More than 2 million infected 9/30/02 5/16/01 502 days computers 12 variants in the first two months 7/17/02 5/16/01 427 days of activity Intercepted in one of every 268 6/22/02 5/16/01 402 days emails at peak Detected in more than 40 different 4/17/2002 5/16/01 336 days countries $9 billion worldwide productivity 4/17/02 5/16/01 336 days loss Message Labs has seen 458,359 11/24/01 5/16/01 192 days instances Nimda 9/18/01 10/17/00 336 days Spread worldwide in 30 minutes Code Red 7/19/01 6/18/01 31 days Infection doubled every 37 minutes As the table shows, in March 2003, administrators had many opportunities to test patches and even wait until a Service Pack before deploying. However, this window has been shortening in to include instances where patches were not available. More recently, the time between the patch and the worm for an exploit commonly known as MSBlaster was 16 days. In June 2004, Microsoft’s Internet Explorer browser suffered several security issues left unpatched by Microsoft for many weeks. Therefore, while stressing patch application as the best security prevention, we include remediation techniques as well in this patch management process. Finding out about patches We next need to identify resources that help identify which patches an organization needs. Whether you patch manually or use patch management tools, ensure that your team or your Security officer is aware of the patches available for the products in your network. For most operating systems, this is rather easy to do, as all major vendors have e-mail or RSS notification. For Microsoft products, subscribe to get e-mail notifications at www.microsoft.com/security/bulletins/alerts.mspx. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 9 Sample of a Security bulletin Another way to stay current is to sign up for RSS or “really simple syndication.” Using a feed reader, you can receive these security bulletins quickly and easily. For more information about choosing and installing an RSS reader, go to www.microsoft.com/technet/security/bulletin/secrssinfo.mspx. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 10 RSS feed of Microsoft Security bulletins (Outlook 2003 using Newsgator) Microsoft moved to a once a month patch schedule that has patches releases on the second Tuesday of the month between 10:00 a.m. and 11:00 a.m. However, there may be times that a patch will be released “out of band” if an active exploit is “in the wild.” For the Red Hat Enterprise Linux platform, there is also many ways to obtain notifications directly from the vendor by subscribing to email or an RSS feed at the following web site: www.redhat.com/security/team/advisories.html14 RSS feed of Red Hat security bulletins (Outlook 2003 using Newsgator) Software vendors often provide additional support resources. For some applications installed on your network, it may be more difficult to track down notification sources. Secunia.com, for example does provide security information for quite a few vendors at secunia.com/vendor/. For your “line of business” applications, you will need to contact the vendors regarding the manner in which they notify customers. The Road Ahead In the coming sections we will discuss patch methodologies, risk management as applied to patching, and development of a patch team. We will analyze a security bulletin to find resources to determine if exploit code is already on the Internet and thus having an impact on a patch timing decision. We will discuss ways to set up a lab environment for testing patches and the procedures that you should review when ensuring that the security updates perform as expected. We will point to resources for proof of concept code or other techniques you can use to confirm patch status. We will discuss ways of enforcing patch management policy. We will discuss cases where you cannot patch because of vendor limitations or the lack of a patch, and what mitigation information and resources you can look for. While we focus primarily on Microsoft technologies, we will be vendor neutral in the use and recommendation of patching tools and give you Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 11 resources to assist you in making your choice. Whatever technology or process you use to manage patches, both the application and the reporting are key elements in ensuring that systems remain safe and secure. Ensuring that the patch or mediation technique performs as expected is central to any patch strategy. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 12 Chapter 2 – Change Management and Risk Analysis T raditional risk analysis accepts risk as possible, calculates the associated costs, and either applies mitigation techniques and procedures to reduce exposure, or transfers the risks to a third party. This perspective bears directly on how firms approach the patch management process. To give this perspective meaning, consider that a century or more ago, when foot travel dominated, diseases replicated slowly. Historically, epidemics took time to replicate throughout the population. Today, given airline travel and international trade, we now accept that diseases travel the globe in a relatively short time. However, imagine a person contracting a highly infectious disease for which there was no cure, and that this person could hop on a plane, travel the globe, and infect people throughout the world in less than 30 minutes. This is exactly what SQL Slammer did. It was a very tiny bit of code, one “sneeze” or a “cough” (if you will) that had several things going for it. First, while the patch [or inoculation to keep with our disease analogy] was available many months before Slammer launched, the “cumulative inoculation” or Service Patch came out only about 3 weeks before, not enough time (back in 2003) for system administrators to get the patch through change management procedures. As a rule, database administrators are probably reluctant to implement change management because they are suspicious of potential impact on their systems and because, until recently, SQL Server patching was extremely cumbersome to accomplish. Add to this the fact that patches affect both the full SQL server database system AND a “lite” version of the product embedded, without fanfare, in several other products, and it becomes easier to understand why some database admins might appear to be Nervous Nellies. This reluctance exposed asset management systems to a risk that Slammer readily exploited. Essentially, Slammer was a bit of code built to transmit over UDP protocol, a “connectionless” worm that did not wait for the syn-ack to occur and merely transmitted packets without waiting for confirmation that someone or something was on the other end of those IP addresses. Then it required that port 1434 be listening. Up to that time, this had not been a targeted port. Previous large-scale attacks always probed on port 80, the one that web sites use. Even with its small bit of code—built for speed—Slammer had a tremendous impact. Consider the pedigree of businesses whose lack of patch management was the subject of public commentary worldwide. Continental Airlines had to revert to issuing paper tickets; Bank of America had to rescue its ATM machines; and even Microsoft coped with security breaches.15 While one could argue that a lack of network segmentation contributed to the chaos (we discuss network segmentation later), the fact is that Slammer disrupted a trusted system. “Business as usual” was no longer business as usual for many companies. Whether those companies realized it or not, they accepted the risk associated with connecting to the Internet, and accepted the risk of not patching—waiting, instead, for the Service Pack approval process to work its way to completion. Currently, we have less than two to three weeks, maximum, to approve the latest patches before an exploit arrives. In the best firms, this window of risk management evaluation is less than a week. Risk avoidance – avoid patches all together Is there any way to avoid patching altogether? If your firm does not connect to the Internet and allows no introduction of outside destructive software, your firm could actually install a base image of an operating system and apply only patches needed for functionality improvements and never worry about security updates. However, can you guarantee, without ANY doubt that no software will bridge the “gap of air” between the outside infected world and the inside network? Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 13 Again, think in terms of our heath and epidemic analogy. If you have a child of school age, do you refuse to have preventive medical treatment in the forms of shots, convincing yourself that your child will never have contact with any other infected person, or do you understand that prevention (also known as shots) are a part of life and growing up and must be done. Most security benchmarks, including those from National Security Agency, Control Security Services16and the Center for Internet Security,17 recommend keeping computers and devices up to date with security patches. If you wish to use alternatives to patching, making sure that your remedial actions are effective should be part of your standard testing process. Risk avoidance – if they’d only write better code As noted in a previous chapter, the fact that software designers have to imagine threats from all sorts of vectors means that no program that interacts with humans can be completely free of issues. As we ask applications to produce more real time information and to be predictive, and as we add everything from information retrieval to real time analytics to RFID tag identification, we ask more and more of our systems and add more complexity, not less. If your attitude is that patch management issues are a temporary thing and once we get a “proper” operating system we won’t have to patch anymore, then, in my opinion, you have the wrong attitude. Risk acceptance – the real world In May 2002, CIS quoted the Gartner Group study asserting, “Over 90% of cyber attacks exploit known security flaws for which a patch is available”.18 Patching and other system hardening measures effectively mitigate 83% of security issues overall. Accepting the probability of risk and then installing all necessary patches ensures that you limit your exposure to vulnerabilities without relying on blocking mechanisms. It is also important to note that confirming patch installation is a critical part of this procedure. Here again is our risk calculation model, expressed as ARO x SLE = ALE with the components defined as follows19: Abbreviation Defined as Example ARO Annualized Rate of Occurrence 3 Multiplied by SLE Single Loss Expectancy $26,000 Equals ALE Annual Loss Expectancy $78,000 So we’ve done our risk calculation shown above and determined that any costs incurred less than our calculated Annual Loss Expectancy of $78,000 will be a potential cost savings to our firm. Choosing to accept the probability of risk, we choose to apply security patches. Within the U.S. health care system, the Food and Drug Administration must approve all drugs before their distribution to the public. Similar to testing and approving drugs, we must formalize change management processes in our own organizations. Every firm needs a person or a team that signs off on and authorizes change. President Truman’s desk had a plaque that read, “The buck stops here.” The same is true for patch management. The person or team must fully understand the firm’s IT environment. There must be written policies, procedures, and sign-off checklists. We discuss policies and procedures BEFORE discussing the patch analysis process for a very good reason: You must have the policy in place before implementing the technology. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 14 Patch policies and change management policies Patch policies range from informal guidelines to formal documents identifying authorized patches that appear to function as expected, and that do, indeed, protect the vulnerability they are supposed to protect. Formal procedures may also call for processes that verify and confirm patch installation. Many medium and large organizations require a procedural type of policy that guides the patch management team through the patch approval process. Samples of patch policies or change management policies are available at the following locations: • • • • • • • Sample of change policies at the Stanford Synchrotron Radiation Laboratory http://smb.slac.stanford.edu/blu-ice/dcsAdmin/node6.html Sample of change policies at Stanford’s University ITSS department http://www.stanford.edu/services/changemgt/itss_change_policy.html State of Connecticut Management Advisory committee Change Management policies http://www.cmac.state.ct.us/policies/change.htm Texas A&M University Change Management Policy http://www.cis.tamuk.edu/help/policies/1_050_Change%20Management%20Policy.pdf IT Assessments, tools for Project Management http://www.ittoolkit.com/cgibin/itmember/itmember.cgi/reg/ITBE-ok University of Texas Health Science Change Management Policy http://www.uth.tmc.edu/itsecurity/policy/Change_Mgmt_Policy.htm Use a search engine to search on the words “Change Management Policy” for additional resources In general, these policies include the following elements: • • • • • • • • • • • • Identification of the assets that need patching Identification/preparation of images that properly represent either the exact systems in your firm or a close approximation Testing of impact on applications Patch installation on the test systems Patch verification of install Optional verification of effectiveness Issue management Assessment of impact Remedial actions if impact does not affect all systems Follow-up with vendors Sign off of the patch Determination of timing of change implementation Notice that we have performed all of these procedures and have not even begun to roll out these patches into our production network. Further, after you have cleared the “patch” for installation across your network, you need to identify the best deployment mechanism. Additional discussion of change management techniques is available at http://www.microsoft.com/technet/itsolutions/techguide/msm/smf/smfchgmg.mspx. More details about these steps are forthcoming in the next sections of this document. One resource and guidance for patch procedures and timing of patching is the SANS.org @Risk newsletter that includes information regarding security vulnerabilities and how “Council sites” react to them. Find subscription information at the SANS.ORG web site: http://www.sans.org/newsletters/. As a preview, consider the following information contained in a recent newsletter issue: Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 15 Sample of the @Risk newsletter from the SANS.org organization Ensuring that your organization has policies and procedures to introduce “change” into your organization in a controlled and managed fashion is important in managing your risk of patching as well as mitigating dangers exposed by vulnerabilities. Identifying your change management team When setting up the team that will approve and administer your patch management process, stay sensitive to the needs of different divisions, departments, applications that are key to your organization. Similar to the process that every organization should have done in advance of the Year 2000, revisit those procedures and identify those key technology assets that you rely upon. Ensure your change management team includes a representative of each critical technology. If you rely on Oracle or SQL Server as the underlying backbone of your firm’s databases, ensure that you have a technical representative on your team. For these key elements of your firm’s Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 16 infrastructure, you should also ensure that your team has vendor contact information to follow up on issues that may arise during the patching process. Our assumptions We assume that concurrent with your resolve to establish a patch management process, you have established methodology and plans for true disaster recovery. You need a tested backup procedure that gets you back to the exact copy of any system before you began the patching process. While traditional tape and file-by-file backups give you roadmaps to where you were, most computer consultants and IT professionals would recommend that you look into Drive Imaging, whereby an exact copy of the data you have is copied in a snap shot format such that you can reapply that image and be back in “business” reasonably quickly. Even if you test the patches on test boxes and they appear to work flawlessly, never apply patches to a key critical business computer asset without ensuring that you have a backup of those files mandatory to restoring that system to full operational status. We also assume that you do the minimum amount of testing of that backup and recovery process to assure yourself that the restore process of even a few files is successful. Rename a few files of varying sizes and restore those files using your restoration software program. If you have a drive image, test the restoration of these devices by reapplying the image. Just because the backup has run and the log file indicates that the backup was successful does not mean that a restoration will be successful. Setting up a Patch Testing Scenario By this time, you and your managers need to have agreed to introduce “managed change” into your organization. A first and fundamental step in this process is setting up a test lab. You will use this environment for initial testing of all patches. Do not test patches on machines that contain real or original data (normally called “production systems”). As we will illustrate throughout, a reasonable test lab is well within the reach of nearly all budgets. This test environment should mimic, as much as possible, the setup and structure of your production network. Readily available tools and procedures help you set up virtual machines that mimic your real organization. Your organization might allow for additional testing on machines run by a team of users in an actual production environment. In this situation, identify certain staff positions that use your key line of business applications to test security patches and changes in live production settings before pushing patches out to the rest of the network. To prepare a test lab to reproduce the computing assets you must patch, you need to know what assets you are protecting. This should be easy—right? All you have to do is count up all those physical computers and network devices that appear on your asset listing or depreciation schedule. Either of these shows exactly when and for how much you bought equipment that you have in your building—right? That written schedule is all you need to identify the hardware and software your firm has purchased—right? Not so fast! Multiple recent advances work against your keeping a tight rein on your computer systems. The first concerns the relative ease of bringing in a piece of equipment from Best Buy or CompUSA and attaching to the network. Thus, you may not have a Linksys wireless router that has a vulnerability that needs patching on your asset schedule, but you might very well have one inside your office. Next is the relative ease of cannibalizing parts from older systems and using them in newer systems. Your asset schedule may state that you have a 1992 Compaq but, in reality, while the chassis is long gone, parts of that system may still be in machines in your office. When we review assets schedules of companies for valuation purposes, we regularly discount as worthless computer equipment more than four years old. That does not mean the equipment is not still in your network introducing possible vulnerabilities into your system. A nearly opposite Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 17 recent phenomenon concerns virtual personal computers and servers that are inside other machines. If you see only two computers, but your physical scan of the system indicates there are four IP addresses in use, there may be operating systems you are not aware of inside of tracked and documented machines. It is also important that you not assume you know all the software and even operating systems that are on your networked machines. We have seen cases where IT staffs have introduced unofficial operating systems into a network without management’s approval. Lastly, any device that accepts a RJ45 network connection is a device that could introduce vulnerability into a network. Any device that uses TCP/IP connectivity can be an entry point to a network. Don’t assume that because a device does not have a monitor and a keyboard that it is safe from exploitation. BugBear is one example of a virus whose “footprint” was TCP/IP attached printers suddenly printing out excess paper and garbled characters. Another example is hijacking HP Webjet or other printer administrative programs for use in attacks. We assume, of course, that your organization already has a written policy that forbids any and all of these activities. Samples of these kinds of polices are available at the SANS.org policy project center at http://www.sans.org/resources/policies/. In general, such policies stipulate that management approval must precede introducing new assets into a network. One of the ways to preclude the introduction of rogue software is to standardize on an installation image of a computer system. Subsequent new assets conform precisely to what the firm expects and are thus controllable and patchable. A sample of a policy that requires that all introductions of assets be done in a controlled manner is available at the SANS.org policy project center at http://www.sans.org/resources/policies/Aquisition_Assessment_Policy.pdf. Not controlling the introduction of assets into a network greatly increases the potential for unknown vulnerabilities entering the system. Discovery of Assets Your first step in designing an effective patch management program involves understanding the environment you have to patch. In any sized firm, understanding the operating systems and all the devices susceptible to patching is pre-requisite to determining which patch tool to choose. For example, if your environment contains a mixture of Windows and Linux/Unix distributions, choose a patch tool that supports both platforms. If your environment consists mostly of remote assets, choose a tool that supports background patching on a variety of connection speeds. You don’t want the boss dialing in from home on a 56K connection as you push down a large device update. Depending on your environment, you can choose among various tools to examine assets. In the Microsoft environment, choices include tools ranging from Active Directory to identify all connected assets, to WSH for script a system inventory. There are also many freely available options, and shared scripts can remotely inventory a network and build an appropriate asset database. Consider also commercial inventory and control products such as Microsoft Operations Manager [MOM], Argent, and Tally Systems, just to name a few such tools that have inventory features. Sample asset analysis tools include: • Microsoft Corporation, Microsoft Software Inventory Analyzer http://www.microsoft.com/resources/sam/msia.mspx • Lynch, Chris, Inventory every computer in Active Directory, http://cwashington.netreach.net/depo/view.asp?Index=808&ScriptType=vbscript • Lynch, Chris, Create Hardware Inventory in Excel Format http://cwashington.netreach.net/depo/view.asp?Index=612&ScriptType=vbscript Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 18 Host Name: _____ OS Name: Microsoft Windows XP Professional OS Version: 5.1.2600 Service Pack 2 Build 2600 OS Manufacturer: Microsoft Corporation OS Configuration: Member Workstation OS Build Type: Uniprocessor Free Registered Owner: ________ Registered Organization: Product ID: ______________ Original Install Date: 9/27/2003, 8:25:41 PM System Uptime: 2 Days, 1 Hour, 21 Minutes, 26 Seconds System Manufacturer: Dell Computer Corporation System Model: XPS-Z System type: X86-based PC Processor(s): 1 Processor(s) Installed. [01]: x86 Family 6 Model 8 Stepping 10 Genuine Intel ~996 MHz BIOS Version: DELL - 20010221 Windows Directory: C:\WINDOWS System Directory: C:\WINDOWS\system32 Boot Device: \Device\HarddiskVolume1 System Locale: en-us; English (United States) Input Locale: en-us; English (United States) Time Zone: (GMT-08:00) Pacific Time (US & Canada); Tijuana Total Physical Memory: 511 MB Available Physical Memory: 114 MB Virtual Memory: Max Size: 2,048 MB Virtual Memory: Available: 1,961 MB Virtual Memory: In Use: 87 MB Page File Location(s): C:\pagefile.sys Domain: ___________ Logon Server: \\__________ Hotfix(s): 8 Hotfix(s) Installed. [01]: Q147222 [02]: Q823718 [03]: Q832483 [04]: Q828026 - Update [05]: wm817787 [06]: wm819639 [07]: wm828026 [08]: KB811113 - Service Pack Network Card(s): 3 NIC(s) Installed. [01]: 3Com Ether Link XL 10/100 PCI TX NIC (3C905B-TX) Connection Name: Local Area Connection DHCP Enabled: Yes DHCP Server: __________ IP address (es) [01]: __________ [02]: VMware Virtual Ethernet Adapter for VMnet1 Connection Name: VMware Network Adapter VMnet1 [03]: VMware Virtual Ethernet Adapter for VMnet8 Connection Name: VMware Network Adapter VMnet8 Sample of the information that can be obtained from a system using scripting Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 19 Your patch management tool may also aid in the asset identification process. If you have SNMP20 enabled on your system, use that to query the devices attached to your network. Remember that print servers and other devices can be just as vulnerable as computer systems. Necessary patches versus all patches When analyzing what to patch, determine your firm’s acceptance of patching. Do you own all of the assets you need to patch or are you bound by lease agreements to patch only on a schedule that a vendor approves? Some medical equipment vendors certify their equipment only through certain service pack levels and thus you may void your agreement if you install patches or even antivirus products on their equipment. Check your service agreements and vendors for any caveats they may have that limit your patching ability. You may need to install traffic limitations and other barrier technologies to ensure that TCP/IP traffic is only in the direction you want it to be if you are unable to install patches on leased equipment that interacts with owned equipment. You can also determine the role of the computer or server and determine the patches minimally needed for that role. Be very careful in using this minimal patch methodology unless you truly have a clear handle on the software in your network and the traffic that routes to domains, vlans and other routed networks. Again, using the example of SQL slammer, many desktop users simply did not know that they had a version of SQL called Microsoft SQL Desktop Engine that was just as vulnerable to SQL slammer as Microsoft SQL server if left unpatched. Thus, manual patch methods whereby you push only those patches that you think you need may not be a wise move at all. In some cases you might decide that the web server you are patching that does not have NetBIOS ports open to the Internet does not need the latest patch for NetBIOS information disclosure vulnerability. Nevertheless, this risk-based patching methodology needs to be discussed and approved in your organization. You and your team need to weigh and determine the exposure and risks appropriate to either patching or not patching. There are costs to both methodologies. We determine the threat vector and vulnerability risk as factors in the timing of patching, not whether or not the patch will be applied. Setting up that test lab - utilizing a virtual environment After inventorying the network, set up a lab that provides the best equivalent emulation of the actual network. Either by having duplicate machines and hardware, or by using virtual machines based on VMware21 or Microsoft Virtual PC or Virtual Server, you can test using equivalent data or even exact images of data in your network. Dr. Jesper M. Johansson offers the following discussion for using virtual PCs to obtain drive images of data used in patch testing. (More details on this method and more on network threat modeling will be included in the forthcoming book by Jesper Johansson and Steve Riley entitled Protecting Your Windows Network. It will be available from Addison Wesley, Inc. in 2005.) “There is a neat new way to get a near-perfect replica of a production system that you can use for testing. Microsoft Virtual PC 2004 includes the ability to make a new virtual disk based on an existing hard disk. Using this functionality you can install Virtual PC on a production system (mind you, probably not one that is currently serving clients) and make a replica of its disk. Then you can copy that disk image off to another computer. Now install Virtual PC on that other computer and create a new virtual machine pointing to the disk image you just created. On the first boot, you will need to remove Virtual PC from the virtual machine, and possibly install a few drivers. However, you can now set up the disk in undoable mode and have a copy of a production system on which you can test new security updates. Obviously, this does not work for all types of testing, such as testing with particular hardware [that] is not emulated by Virtual PC, but it works pretty well for testing interoperability with software. Cost-wise it is far more Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 20 efficient than purchasing and managing additional hardware since Virtual PC only costs about $150.”22 If you use virtual machines and actual data, be aware of potential security issues of using copies of data. Ensure that your organization has previously gone through the process of data stratification. Categorize data as being public, restricted, or confidential. Do not use servers or workstations that contain restricted or confidential data for testing purposes unless the change management team stipulates that testing must include this more sensitive data. When imaging such data, follow strict procedures regarding the handling of such data as detailed in the firm’s change management documentation. Destroy the imaged data after the testing procedures and have these procedures monitored and audited to ensure that data integrity occurs within the organization. You may need to include such data as credit card numbers in databases in a test patch process to ensure the patch process is successful. However, most security patches for database engines never touch the data itself. The patches, typically, restrict themselves to adjusting the code in the database engine only. Testing procedures that include database integrity (hash totals, for example) may be included in the change management procedures to ensure data integrity before and after the patching process. Patching databases is one of the most critical patch implementations in any environment as it typically involves introducing software into a critical key business asset—the database information. Thus, meet with your firm’s database software engineers and vendors and get their recommendations for patch installations and database security. In the history of worms that affected databases, an SQL database administrator could have thwarted SQL slammer if he or she had merely taken the time to remove a blank SA password.23 Here is another example of where adhering to traditional security measures could delay the timing of a patch application. Again, we recommend against not patching and relying on mitigation alone. We do grant that following some basic security guidelines will buy you time for patching. Review the resources listed here to become a smarter patch manager for databases: SQL Server • National Security Agency, SQL Server security recommendations at http://www.nsa.gov/snac/db/mssql_2k.pdf • SQLSecurity.com at http://www.sqlsecurity.com/DesktopDefault.aspx • “Best Practices Analyzer Tool for Microsoft SQL Server 2000 1.0” http://www.microsoft.com/downloads/details.aspx?FamilyId=B352EB1F-D3CA-44EE893E-9E07339C1F22&displaylang=en Oracle database • Center for Internet Security, Oracle database security benchmarks http://www.cisecurity.org/bench_oracle.html • Oracle Corporation, Security notifications http://www.oracle.com/technology/deploy/security/alerts.htm The bottom line If you are running around once a month feeling as if you don’t have a handle on what you need to patch, you need to stop and take action now. Based on this first section discussing the technical aspects of patch management your action items are as follows: • • • • Identify key business computer assets Review the basic security procedures of your organization Ensure written policies are in place Set up a patch management team based on that analysis Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 21 • • • Test or set up backup and disaster recovery techniques Set a patch management policy based on risk management Identify the testing lab you will use to perform patch testing Our next section discusses ways to analyze and review security bulletins. This will help you identify patch needs based on a risk management determination and develop patching methodologies. We will also review additional techniques of enforcing patch policy to affected systems, and preview expected changes in patch management—including a look at the increasing number of tools that patch both Windows and alternative operating systems. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 22 Chapter 3 – It’s all about risk E arly evidence of a truly significant patch problem surfaced in mid-2003 postings to public newsgroups. Windows NT 4 server systems were dying in the water. While they were booting up and clients were able to log in, none of them could connect to the internet and the RRAS service was gone. Reports began filtering back to the newsgroups that there was a problem with a recent security patch. Posters indicated that the support representatives recommended pulling the patch off and rebooting systems. Removing the one patch confirmed restoration of RRAS and Internet services. While the support call to the vendor was a free call, placing it cost down time and investigation time for the administrator or consultant. Three weeks later, the vendor re-released the patch and all normal server functions performed as expected. The above accurately depicts what occurred to the Small Business Server 4.5 platform. One patch caused a service not to run. Microsoft Security Bulletin 03-029’s purpose was to protect Windows NT 4 from a denial of service attack. Instead, the patch caused a denial of business.24 The vendor identified the problem, repaired the patch, and removed the issue. Why did this occur? Here is some informed speculation: resources for testing on the NT platform concentrate on traditional servers and not on the integrated platform of the Small Business Server. For whatever reason, testing did not find the problem with 03-029. As a result, instead of protecting the system, the patch actually introduced failures to the system. There was less risk to a network from a potential exploit than there was benefit derived from the original patch. In this case, introducing change did more harm than good. Since that time, Microsoft has increased both internal and external patch testing to reduce these issues. A recent report card gives a grade of “C” to the current situation of Security patches,25 but commended Microsoft for developing a process for external testing to better identify patches that cause issues. Regardless of changes to vendors’ internal testing methodologies, it remains mandatory that you test patches before rolling them out to your network, your workstations, or your servers. As soon as a patch becomes available, the clock begins ticking. Miscreants begin by analyzing the patch, looking for a potential exploit, and then developing a proof of concept of the vulnerability. Therefore, the faster you obtain approval for change, the faster you can patch. You need to control patches and patch installation in your network. Only by testing and anticipating issues in advance will you be able to manage change in your system. The administrator’s role To use a sports metaphor, a patch administrator’s job is to coach on the sidelines, introducing a new player to the field. Introduce an untested player and the play misfires. Introduce a proven performer who is ready to go and ready to do his job and the team functions smoothly. To further this metaphor, it is the admin’s job to understand which player is better in front, which one needs to be a receiver, which is better at offense than defense. You may want to patch front line players faster than those who are inside the perimeter. You may want to take mitigation actions on players that, for one reason or another, are inappropriate for patching. As coach of your network, you need to know all of your team members well. Using scripts, tools, and inventory management processes, you should know exactly what computers and programs you have running. Your first job is to determine what you have and what you need to patch. Looking at a Microsoft world, you first need to determine workstations and programs. To do this, use a variety of tools or maybe just script an inventory solution. Available script sources include: • • • http://cwashington.netreach.net/depo/view.asp?Index=808&ScriptType=vbscript http://www.microsoft.com/resources/sam/msia.mspx ftp://ftp.microsoft.com/PSS/Tools/Networking_Support/MPSReports Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 23 • http://www.belarc.com/ctadvisor.html?B Available programs include: • • • Microsoft Systems Management Server http://www.microsoft.com/smserver/ Remedy asset management http://www.remedy.com BindView control solution suite http://www.bindview.com If you have a mixed environment, you need to investigate other tools and programs to remotely manage and inventory your system. You must know what you have in order to control your systems. Regularly scan your network to detect any new devices present on the system. The point here is critical: If you don’t have control of your network, you don’t have control of your network. Identify key factors Recall the hysteria before the year 2000 when the world’s computers were going to come to a crashing halt. Remember also the processes you used to identify key applications that you had to keep functioning for your firm to survive. It is now time to resurrect those evaluations and examine all processes and procedures key to your organization. Determine which applications are so vital and key to your organization that impairing their operations would severely affect your company. Can you patch? So now you have identified all assets that need patching—desktops, laptops, routers, web servers, firewalls, domain controllers, database servers, SQL servers, line of business applications--every device in your network that contains computer code needs monitoring and patching. However, here’s a catch-22 many of us face: we do not truly own the assets we are in charge of patching. In the health care industry, for example, vendors that own and lease the equipment point to Federal Drug Administration rules and will not support the installation of patches. Conversely, the FDA argues that vendors can support patching of systems. Furthermore, many of us outsource our Information Technology departments and have Service Level Agreements in place. Introducing unauthorized software via patching, antivirus, or monitoring software may void agreements. Equally frustrating is the stubbornness we see among line of business vendors who will not go on record and support a patch or, worse yet, will not support a service pack or patch on systems running their software. When Microsoft released Windows XP SP2, many line of business applications refused to support the installation of the patch. As coach, then, you find yourself in a truly difficult situation: skip the patch and expose unpatched vulnerabilities to exploits, or patch and risk voiding service agreements. This is not exactly a great choice. Some time back a security researcher left the field and, in his parting post to a newsgroup, he urged those of us who remain to “Demand better security from vendors and hold them responsible”26 We need to recognize that line of business software vendors impact our security decisions. Understand this message very carefully: Use what little influence you have during contract negotiations to make your line of business vendors understand how they affect your security decisions. There is no easy answer for those of us in this position. If contractual arrangements constrain your patching responsibilities, the next section on timing of patching is irrelevant. You will instead need to concentrate on procedures to reduce exposure in your network. These procedures may include vlans [virtual local area networks], air gaps, devices that restrict traffic to flowing one-way Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 24 across your network. Bottom line: if you cannot patch, your job is to isolate, segment, defend, and minimize exposure as best as you can. Handicapping the Patches Once a vendor—Microsoft or Sun or Adobe, for example—releases a security bulletin or patch, the clock starts ticking. You have a limited about of time to review the bulletin, decide what to patch, what to mitigate, where your threats are, whether or not there are exploits in the wild and how they might enter your system. I call this process “handicapping the patches”. In my firm, I use this process to determine when I will patch. I control my machines and sometimes choose to install tested service packs before my vendors approve them. I don’t void any warranties, nor do I jeopardize any contractual arrangements. I could choose not to patch my systems if I felt that I had enough blocking mechanisms in place. I could use the methodology to identify mitigation. My small size, my fully enabled active directory environment, and my 100 percent “borg network” (all of my desktops, laptops, and even telecommuting computers are on the Windows XP platform) mean that I can quickly and easily identify, patch, and protect my assets. That does not mean I have any less highly sensitive and critical data. However, I have two issues that expose me to significant risk. First, my industry routinely handles information—names and social security numbers—targeted by identity thieves. Further, because I work in California and perform work for employees in California, I am subject to the provisions of a public law SB 1386 and a new law effective January 1, 2005 called AB 1950. SB 1386 requires that if I have an unauthorized person view data containing sensitive identity theft information, I must inform the affected parties unless authorities instruct me not to do so, or unless encryption has protected the data in question. However, none of the major business line application vendors in my industry will go on record supporting EFS or PGPdrive or any other traditional form of encryption, nor is such encryption native to the programs. The new law, AB 1950, requires “reasonable procedures” to ensure that networks are secure enough to protect identity information for California residents. Gartner Research recommends that firms follow the guidance in ISO 17799. Keep in mind that this is a California law designed to protect data of California “residents” no matter where the data resides. Thus, your firm may not be a California nexus entity, but you would be still covered under this law if your servers contain data from California residents. Second, in my environment, as may well be the case in yours, our “bread and butter” line of business applications come forward from Windows 98 time and exhibit the Windows 98 way of thinking. Thus, many of my industry’s day-to-day applications require a level of user rights called “local administrator” on the desktop. This is equivalent to removing all security settings from a Windows XP or Windows 2000 system. Using tools such as Sysinternals.com’s Regmon and Filemon, or one from PC Magazine called Inctrl5, to monitor and document permissions needed on the files, and then set group policies to push down registry settings so the programs have needed administrative rights without crippling security, takes time and consumes resources to test and implement. It would be far better to have the application run in “least privilege” in the first place. As Aaron Margolis so aptly stated in his blog on the advantages of running as User: The #1 reason for running as non-admin is to limit your exposure. When you are an admin, every program you run has unlimited access to your computer. If malicious or other “undesirable” code finds its way to one of those programs, it also gains unlimited access. When an exploit runs with admin privileges, its ability to compromise your system is much greater, its ability to do so without detection is much greater, and its ability to attack others on your network is Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 25 greater than it would be with only User privileges. When an exploit requires administrative privileges (as many do), running it as a User stops it dead. However, if you’re running as administrator, an exploit can: • • • • • • • • • • • • install kernel-mode root kits and/or key loggers (which can be close to impossible to detect) install and start services install ActiveX controls, including IE and shell add-ins (common with spy ware and ad ware) access data belonging to other users cause code to run whenever anybody else logs on (including capturing passwords entered into the Ctrl-Alt-Del logon dialog) replace OS and other program files with Trojan horses access LSA Secrets, including other sensitive account information, possibly including account info for domain accounts disable/uninstall anti-virus cover its tracks in the event log render your machine unbootable if your account is an administrator on other computers on the network, the malware gains admin control over those computers as well and lots more27 In the end, the risks I face in my industry derive not so much from my vendors not supporting patches, but more from their not supporting users having lesser, that is “user” rights. Nevertheless, given my fiduciary duty of data protection for my clients, this means that patching as means of protection makes sense for my industry to remove the vulnerability from the system. To sum up, once the bulletins become available you need to assign resources to reading and reviewing them. I will use an historical bulletin to illustrate my methodology. You and your team need to develop your own methodology of reviewing and testing patches then scheduling patch deployment. You need a patch-testing matrix a plan for your organization. Case study—Blaster arrives Security bulletin Buffer Overrun in RPC Interface Could Allow Code Execution http://www.microsoft.com/technet/security/bulletin/MS03-026.mspx [aka MSBlaster]. Our first review of this bulletin is that is it rated by Microsoft as a critical bulletin. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 26 Graphical view of the bulletin rating system The web page recapping the bulletin clearly shows that it is affects Windows NT, 2000, XP and 2003. The very first question that I ask is, “Does it affect my network?” If it does, I then review the rating of the bulletin. Microsoft currently uses a 4-point rating scale. The Microsoft Security Response Center (MSRC) rates the bulletins based on their impact.28 In general, the MSRC recommends ALWAYS applying bulletins labeled as critical or important to your systems. Depending on your network, they recommend that you decide whether to install moderate or low rated patches. I personally patch anything that moves and, thus, will install any patches in my network after testing. You must make this decision for your environment. You may decide that datacenters need only critical and important patches; you may decide that workstations need all patches. Remember that, for OEM systems, vendors offer patches that they deem critical, but which are not necessarily security patches. If you scan a test workstation after you patching it by using Windows Update and find that it reports it is missing a patch, look carefully. That critical patch may be for a “Dell deemed” critical driver instead. Microsoft’s rating of the Security Bulletins Over time, as you use your test network effectively, you will develop an innate sense of which patches the devices on your networks need depending on the roles those devices play. I strongly recommend that you set up the ability to RIS or image in your network. Further, your firm will be much more efficient if you begin to think in terms of the novel concept that states, clearly and emphatically that employees don’t own the computers that they use. Because your company owns the computers, controlling what goes on them is your responsibility. Furthermore, as we noted earlier, you can meet vendor requirements for users to have high rights levels by adjusting registry entries. The next step in reviewing the security bulletin gives an indication of the possible threat to a network: Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 27 The phrase “run code of attacker’s choice” normally indicates that the attack might be exploitable remotely. However, there may be mitigation available that is not apparent upon first reviewing the bulletin. When is critical not critical? While bulletin may indicate that the security issue is critical, you still need to review the bulletin for mitigating factors. Expand the bulletin and review the section called “Technical details.” In this section, MSRC explains the ranking. Pay close attention to this section as this will determine when or if you patch. In the “Blaster” example, the “mitigation section” reads as follows: To exploit this vulnerability, an attacker would need to send a specially formed request to the remote computer on specific RPC ports. Mitigating factors: To exploit this vulnerability, the attacker would require the ability to send a specially crafted request to port 135, 139, 445 or 593 or any other specifically configured RPC port on the remote machine. For intranet environments, these ports would normally be accessible, but for Internet connected machines, a firewall would normally block these ports. In the case where these ports are not blocked, or in an intranet configuration, the attacker would not require any additional privileges. Best practices recommend blocking all TCP/IP ports not actually in use and most firewalls including the Windows Internet Connection Firewall (ICF) block those ports by default. For this reason, most machines attached to the Internet should have RPC over TCP or UDP blocked. RPC over UDP or TCP is not appropriate in hostile environments such as the Internet. Robust protocols, including RPC over HTTP, are suitable for hostile environments. Our mitigation factors focus on whether protocol ports are open for transmission. Analyze your systems. A typical network will not have ports 135, 139, 445 and 593 open on the outside because these are usually trusted network connection ports or file sharing ports. In a typical business network configuration, these ports would not be open to the outside world. However, what is YOUR situation? Avoid problems by regularly auditing port settings to ensure that what you think is open is, indeed, the only thing that is open. Set policies to enforce control and change management on firewalls in the same manner as you set up change management on operating systems. Use tools or services to regularly scan and review the exposure on your network. Consider hiring vulnerability analysis firms to investigate and externally audit these external entry points. What your “hard shell” looks like from the outside is extremely important. Servers, mail servers, and data centers “leak” information about what operating systems they run and their patch levels. Knowing what you look like from the outside helps to identify those entry and threat points to your network. Continued analysis of our systems tells us the following: Role of System Threat Vector Exposure Mandatory Patch needed Edge device, router, firewall server, etc Open and listening port 135, 139, 445 and/or 593 Not open to external access Not needed Because we do not have exposure to the outside, it seems as though we do not need to install any patches to our systems. It appears that we do not need to take any additional action whatsoever. Unfortunately, as we all know, the problem was that we are extremely vulnerable on the inside of our networks. Looking at our networks on the inside, our analysis shows: Role of System Threat Vector Exposure Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Mandatory Patch needed Page 28 Internal server, workstation, Exchange server Open and listening port 135, 139, 445 and/or 593 Wide open to inside exposure Patch needed If we could guarantee that all exploits would stay outside our networks, we might not need the patch inside our networks. However, unless you have network quarantine methodologies, edge filter or other blocking techniques that you have tested, TCP/IP connections from unvetted computers regularly connect back to your network. Even in my environment, my network boundary is not limited to the computers that are physically located in the firm; rather my network extends to the wireless connection in Starbucks where I am sitting using the Internet to remote back to my firm. So what’s the worst thing that can happen? In the case of the exploit of Security bulletin 03-026, there is quite a bit that can happen. Study the bulletin carefully: It is obvious from reading the ‘more information’ section that this is serious. In addition, this bulletin rates as critical on all platforms. You need to devote resources to testing this patch. The process affected by this bulletin is something called DCOM RPC interface. So why don’t we just disable that service or process and go on with life? Because of two things: First, you may have critical line of business applications that depend on the service, and secondly, many vendors write their programs using the default enabled services and are unable to tell you if their program does or does not depend on an affected service. Thus shutting it off may not be an alternative. As is evident here, DCOM functions as glue in networking: When you not only recognize which underlying service is vulnerable, but also know which ports are exploitable, you have clues to the level and type of testing required. Our sample patch indicates that you will need to maintain normal network connectivity. While I will discuss testing procedures in a later chapter, for this bulletin, test procedures should cover file transfers and monitor file transfer speed. In an historic footnote to this bulletin, AutoCAD files29 did indeed suffer data corruptions because of this security bulletin and a hotfix eventually corrected the issue.30 Thus, while reviewing the bulletin, you should identify key applications that you will need to test in your environment. In this instance, those applications that pulled files across the network would need additional testing time. I strongly urge that you prepare a checklist documenting the tests, indicating procedures, and identifying applications on which you have tested the patches. If an issue does arise after the fact, document the affected application, note if the files included in the patch are re-patched, and assign additional time to test against previously affected programs. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 29 Sticking with our 03-26 Security Bulletin as an example, reviewing the affected files shows that they have changed several times. Now while patches may not affect the same “bits” each time, even if you don’t have the resources to do a detailed analysis of the patch files, this provides evidence that you may need resources to test the applications in your firm that had issues with those files whenever you patched them in the past. Files patched with Security bulletin 03-026 as listed in http://support.microsoft.com/?kbid=823980 Files included in Knowledge base hotfix 824136 (http://support.microsoft.com/?kbid=824136) that patched a corruption issue in AutoCAD files Files included in Security bulletin 03-039 that also affected RPC and replaced 03-026 as listed in http://support.microsoft.com/?kbid=824146 31 This is just a sample of the impact of this one bulletin. For every security bulletin, you need to assign a team to review, identify your exposure, identify those services and processes most affected, and test on your standard server and workstation images. Resources for Threat Assessment Many of you may be thinking, “Well this is a fine analysis for an historical patch” but how do I find guidance for current issues? Among the chief resources for Microsoft patches is the “Threats and Countermeasures Guide: Security settings in Windows 2003 and Windows XP.” Find this at http://www.microsoft.com/downloads/details.aspx?FamilyId=1B6ACF93-147A-4481-9346F93A4081EEA8&displaylang=en. Other resources include: Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 30 • • • • NSA Security Configuration Guides: http://www.nsa.gov/snac/index.cfm?MenuID=scg10.3.1 Center for Internet Security Guides: http://www.cisecurity.org/ Open Web Application Security Project: http://www.owasp.org/index.html IANA master listing of ports used on the Internet: http://www.iana.org/assignments/portnumbers If you have not yet inventoried your network, take this opportunity to document what services are running and could be possible threats. One source for this can be a WMI script that pulls this information from the server. Find an example at SYDI - Script Your Documentation Instantly: http://sydi.sourceforge.net/ Remember: • You cannot protect what you do not understand. • You cannot protect what you do not know you have. • You cannot control what you do not access. Additional testing procedures Participate in patch communities to find additional resources regarding patch issues. Posters to resources such as the Patch Management32 listserve, Patch Talk33 and even newsgroups34 regularly share information and patching experiences. If you have few resources to devote to patch testing, your next best option is to find a resource for your industry. For those industries where you are restricted from patching, several online resources35 may provide guidance for properly setting up network segmentation, or may point to other resources for requesting vendors to test patches themselves. Sharing information can be a very effective resource for patch issues if you have minimal resources for testing. Testing procedures may include effectiveness testing If your testing process includes a check off for independent verification of patch effectiveness, your next task is identifying resources to obtain code you can use for testing. Testing patch effectiveness with test code involves using “live exploit” code. Be sure to do this in a segmented test lab that is nowhere near a production system. Ensure that you have an extreme air gap, meaning no electrons can go between this test network and your production network, and that you do not inadvertently introduce destructive code into your production network. Use this approach only if you have trained staff, a controlled environment, and the proper resources. This is not a trivial testing process; do not begin it without taking proper prevention and exercising caution. For example, FSecure uses an RF shielded lab when analyzing malware. This is discussed in a blog post at http://www.f-secure.com/weblog/#00000373. Typically, there are two resources for test code or exploit code. The first can be the security bulletin itself. Included in the bulletin are references to the CVE-Mitre vulnerability database. At times, this database points back to discussion of exploit code on the web. Our example bulletin of 03-026 contains a link pointing to the following: Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 31 The hyperlink, in turn, points to the web site at http://www.cve.mitre.org/cgibin/cvename.cgi?name=CAN-2003-0352 that includes a section of references. Included in this section are web sites and links. Following these links, we find that some are mere announcements on open vulnerability listserves, but some postings provide more detailed analyses and include code in their postings such as the one found at http://marc.theaimsgroup.com/?l=bugtraq&m=105914789527294&w=2. Examples of ways people share on these listserves include Jeremiah Cornelius’ analysis of the timeline between patch distribution and the first signs of exploit code on the web posted to http://lists.netsys.com/pipermail/full-disclosure/2003-August/009278.html. Ben Jurry posted the first proof of concept code, and H.D. Moore of the Metaspoit project36 refined the code. Ready-torun versions of the exploit were on the web by July 26 at http://lists.netsys.com/pipermail/fulldisclosure/2003-July/007103.html. While the process is not for the faint of heart, if your environment requires such testing, it is not long between the patch’s development37 and the exploit community's attempts to reverse engineer and develop exploit code. MITRE Database pointing to additional resources There are also web sites, listserves, and RSS feeds that specialize in exploit notification. Examples include: • • • • • • • • Full Disclosure mailing list: http://lists.netsys.com/mailman/listinfo/full-disclosure (no moderation is done on this list so you have to weed through postings to find the exploits) Bugtraq mailing list: http://www.securityfocus.com/archive/1 K-otik RSS feed of their vulnerability list http://www.k-otik.com/exploits.xml K-otik - Alertes Sécurité: http://www.k-otik.com/mailing (you don’t need to read French to track vulnerabilities) Security Focus Vulnerability RSS feed: http://www.securityfocus.com/rss/vulnerabilities.xml Security focus mailing list for potential vulnerabilities: http://www.securityfocus.com/archive/82 Packet Storm Advisories: http://www.packetstormsecurity.org/advisories100.html Vulnwatch: http://www.vulnwatch.org/subscribe.html Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 32 A safe way to confirm that a patch has properly deployed into your test scenario is merely to review the location in the registry. On the other hand, if you use a patch installer program that provides verification, rerun the patch tool to ensure deployment. You might use the Microsoft Baseline Security tool (http://www.microsoft.com/technet/security/tools/mbsehome.mspx) for this or, in our sample bulletin case, open regedit and review the following regkey for installation confirmation (sample of Windows 2003 reg key entry): HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Updates\Windows Server 2003\SP1\KB823980 Also pay attention to requirements to reboot the system before the patch takes effect. There is an effort within Microsoft to keep patches from requiring reboots, but as of now, this process is not yet complete.38 Information about restarting in Security Bulletin 03-026 If you remember the history of Security bulletin 03-026, you will remember that some companies believed that they had patched. However, because they had not rebooted they failed to protect their systems. In the case of 03-026, additional, built-in tools ensured proper file replacement. You may also want to use tools located at the Sysinternals39 web site such as Listdll to perform additional testing. Standardize your office One way to simplify the patching process involves standardization of images. Using a standard image40 to deploy your systems greatly increases the supportability and predictability of your network. Documenting the approved software in your network and allowing installation of that software only helps deliver expected test and rollout results. Change management means that you approve ALL changes. A recent post to the Patch Management listserve included a summary by Dominic White41 of Sun Microsystems’ suggestions for patching.42 The guidance is universal: • • • • • Analyze the need to apply patches or update your software based on risk, cost, availability, and timing Minimize change to your environment whenever possible Address SunAlertSM notifications (Security bulletins) and other critical issues as soon as possible Making other changes to your environment only to address known problems Keep your environment as current as appropriate for your business and application needs To summarize—assign appropriate resources to test patches. This is crucial to maintain up time, and ensure that you manage issues that may arise. Patch testing is just one part of the change management process. Testing processes So how do you test a patch? The most basic test process involves applying the patch to samples of your normal environment of workstations, servers, data servers, and the like. This is where standardization of computer images is especially handy. The more you standardize, the faster Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 33 you can test patches against your images and roll them out to your workstations and servers. By now, you should be visualizing a patching checklist for your own environment: Testing plans Identify the operating system subject to testing. Identify the service pack level. Identify the hotfixes installed on your systems (if in addition to security fixes). Identify critical third party applications. Identify third party applications that have had patching historically. Identify those files used in patches that may have causes issues in the past. Are the included in this current patch? Assign testing resources appropriately. Study the bulletin to determine if you can uninstall the patch. If not, determine if additional resources for testing or imaging need to be in place before approving the patch. Test the installation of the patch both manually and via your automated patch technology. Can you uninstall the patch using add/remove program or your patch tool? Review the processes of your line of business applications. Are they performing as expected? Attempt to replicate a production environment using imaged data. Having an exact image provides the best testing bed. Set up performance and monitoring tools to review your testing machines43 such as PerfMon, tools from Sysinternals44 and review all log files. Confirm the installation of the patches via registry review or other means. (OPTIONAL) Confirm the effectiveness of the patch using testing code. Follow any additional procedures your situation requires. Approve the patch for release. PREPARE BACKUPS. The Infraguard Technology Risk checklist also includes the following: • • • • • • • • • • • When applying a patch to any system vulnerability, verify the integrity of, and test for the proper functioning of the patch Verify that the patch will not negatively affect or alter other system configurations Test patches on test beds before being released into the network Backup your system before applying patches Conduct another vulnerability test after you apply a patch Keep a log file of any system changes and updates Prioritize patches prioritized Disseminate patch update information among the organization's local systems administrators Add timetables to patch potential vulnerabilities Require that external partners deploy all non-critical patches within 30 days Require that external partners deploy critical patches to servers and clients within 48 hours45 Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 34 Think about building your own test policy. In your perfect world, you will test patches on copies/images of your production systems. You will replicate your user load and your normal processes. You will identify your critical applications and related issues. That is the perfect world. Do all this and you will be ready for our next step of rolling out patches to the network in a controlled fashion—and then we will talk about reality. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 35 Chapter 4 – Are we ready to patch yet? T here is one key point that we need to emphasize. Even though we try to replicate our systems as best as we can, there will be times when we cannot perform an exact test to find all the expected issues that may arise in connection with deploying a patch. Thus, it is critical that you have backups and system images before you begin to roll out patches. The following are a few of the available backup and imaging solutions for Windows and Linux environments: • Symantec Ghost • Acronis True Image • Veritas • Ultrabac • Native NT backup • UniTrends • Arkeia Remember evaluate your network from a risk analysis standpoint, even if you have a proper backup or image of those stations you are patching. What systems are the most at risk for the patch in question? Carefully review security bulletins and assign patch priority based on the role a system plays in your network. Look again at patch guidelines such as Security bulletin 04-01146 for the Sasser worm. Security bulletin 04-01147 was a comprehensive bulletin that patched several security issues. It covered vulnerabilities that exposed edge devices to denial of service issues. “Chatter” on the listserves indicated that systems directly attached to the Internet and at the edge of a network needed immediate patching. For this reason, some firms, under certain circumstances, take the calculated risk of patching edge systems without pre-testing. Patch “at risk” machines first Identify regions in your network that are most at risk and assign zones. This is similar to the “Organizational Units” concept in the Active Directory setup. Zone out and patch servers separately from workstations, and build patch templates for each zone to scan and patch each zone separately. Internet Explorer, Outlook Express, or Windows Media patches may be more critical on desktops than they are for servers, as no one surfs or reads e-mail from server machines. Furthermore, in Windows 2003, the Internet Explorer enhanced lockdown ensures that most Internet Explorer patches are not highly critical. The reverse is true for desktops and machines used by information workers who surf for research purposes. Here there is a higher priority on Internet Explorer patches. Next, prepare templates for machines that you can patch more quickly than other machines due to their role in the firm or because they do not require prepatch backup procedures. Develop zones so that you can patch different machines in different ways. For those devices that do not permanently attach to your network, you may need a combination agent/agentless patch tool. We will address this in detail later, but the type of patch tool you have may dictate how you process the patches. Whether you manually script it, use Software Update Services, or use one of several available Patch Management software tools, your ability to control the patch process dramatically increases the more you automate this process. Additionally automation documents the change process and audits the installation of the patch process. Even after you have properly tested, consider doing a controlled test roll out to designated testers. This is particularly true for different types of patches such as a service pack that contains many more code changes than a security patch does. After your test team has approved the service patch for release, consider a staggered rollout. A testing environment can go only so far. It can never truly anticipate all of the issues that may arise in a production network. In testing of Windows XP SP2, we found that, even though we had no issues during testing, once deployment began, we saw issues with desktops that had digital graphics cards installed. We needed to track down an updated digital video driver. We had not deployed to the exact same hardware on which Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 36 we had tested and we encountered unforeseen issues during the rollout. Your pre-rollout testers should be computer literate and capable of clearly reporting issues to your help desk team for resolution. Once you begin patch rollout, notify employees so that they can be sensitive to the pre- and post-patch issues they may see. Screen shot of one available patch program, HFNetChkPro Use patch tools to confirm compliance with policies Use patch management tools to augment your firm’s policies and to audit the effectiveness of your external vendors. Additionally you may have contractual lease agreements with external vendors to manage systems. As part of these agreements, you can request that either you or they monitor the status of patches. Further, use your patch management best practices process to scan your systems periodically between patch periods to ensure that users have not added vulnerable machines to your network. Build this procedure into your agreements, and make it part of your normal control process so that you maintain proper control of your company’s systems. Clarify polices regarding patch responsibility. As we have stated earlier, if your vendors will not allow you to patch, you must scan and monitor your system so you can isolate, protect, and defend. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 37 Ecora Software graphical view of patch status Capture feedback Every organization has or should have formal or informal help desk capturing tools48 for tracking issues relating to the patches you roll out. Ensuring that you quickly identify issues and work with your vendors is extremely important. We have seen cases where a patch application changed the way in which a third party program interacted with a system. When this happens, begin working with the vendors. In the case of Microsoft patches, any issue caused by a security patch is a free support49 call. Red Hat tracks issues in their bug database.50 It is also wise to build up tech support relationships with antivirus vendors, firewall vendors, and line of business application vendors. Determine if they have e-mail notification services for issues with security patches. With excellent cooperation and communication, we can ensure the smoothest release process. Microsoft has put in place processes to assist in testing their patches prior to release. As one industry observer has noted, “Microsoft made good on the promise to beta test security patches with a limited number of customers and partners. By testing the patches in real-world environments, this program succeeds in increasing the quality of final patches.”51 A similar feedback process in your environment contributes to patch process success. Enforcement We assume that your corporate policy mandates that all machines should have patches installed; however, without enforcement of the policy, you systems remain exposed. Here is the rule: “Policy First; Technology Second”. In the case of security policies regarding the level of patches on systems, you can find guidance on setting and developing your policies on various web sites. The SANS.org52 Security policy page highlights the following sites: • http://www.security.kirion.net/securitypolicy/ Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 38 • • • • • • • • • http://www.network-and-it-security-policies.com/ http://iatservices.missouri.edu/security/ http://www.utoronto.ca/security/policies.html http://irm.cit.nih.gov/security/sec_policy.html http://w3.arizona.edu/~security/pandp.htm http://secinf.net/ipolicye.html http://cio.berkeley.edu/policies.html http://www.ruskwig.com/security_policies.htm http://razor.bindview.com/publish/presentations/InfoCarePart2.html There are also numerous examples of security policies on the SANS.org web page. The key elements you can find from these documents include: From the Server Security policy53: • Install the most recent security patches as soon as practical, the only exception being when immediate application would interfere with business requirements. From the Acquisition policy54: • • Install a standard <Company Name> image on all hosts—servers, desktops, and laptops. Business critical production servers that cannot be replaced or re-imaged must be audited and a waiver granted by InfoSec. From the Audit policy55: • Scanning period: <Company Name> and <Internal or External Audit Name> Scanning Team shall identify in writing the allowable dates for scans to take place. From the VPN connection policy56: • All computers connected to <Company Name> internal networks via VPN or any other technology must use the most up-to-date anti-virus software that is the corporate standard (provide URL to this software); this includes personal computers Sample Test Lab Security policy Given how critical it is to your test network, we provide an entire Test Lab Security policy referenced and available from the SANS.org site. It points out the importance of separating the Lab from the rest of the network. We highlight the test lab security policy in particular, as it is imperative that you keep your test lab from infecting the rest of your production network. Isolate it accordingly. Internal Lab Security Policy57 1.0 Purpose This policy establishes information security requirements for <Company Name> labs to ensure that <Company Name> confidential information and technologies are not compromised, and that production services and other <Company Name> interests are protected from lab activities. 2.0 Scope This policy applies to all internally connected labs, <Company Name> employees and third parties who access <Company Name>'s labs. All existing and future equipment, which fall under the scope of this policy, must be configured Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 39 according to the referenced documents. DMZ Labs and stand-alone, air-gapped labs are exempt from this policy. DMZ labs must comply with the DMZ Lab Security Policy. 3.1 Ownership Responsibilities 1. Lab owning organizations are responsible for assigning lab managers, a point of contact (POC), and a back-up POC for each lab. Lab owners must maintain up-to-date POC information with InfoSec and the Corporate Enterprise Management Team. Lab managers or their backup must be available around-the-clock for emergencies, otherwise actions will be taken without their involvement. 2. Lab managers are responsible for the security of their labs and the lab's impact on the corporate production network and any other networks. Lab managers are responsible for adherence to this policy and associated processes. Where policies and procedures are undefined lab managers must do their best to safeguard <Company Name> from security vulnerabilities. 3. Lab managers are responsible for the lab's compliance with all <Company Name> security policies. The following are particularly important: Password Policy for networking devices and hosts, Wireless Security Policy, Anti-Virus Policy, and physical security. 4. Lab managers are responsible for controlling lab access. Access to any given lab will be granted by the lab manager or designee only to those individuals with an immediate business need within the lab, either short-term or as defined by their ongoing job function. This includes continually monitoring the access list to ensure that those who no longer require access to the lab have their access terminated. 5. The Network Support Organization must maintain a firewall device between the corporate production network and all lab equipment. 6. The Network Support Organization and/or InfoSec reserve the right to interrupt lab connections that affect the corporate production network negatively or pose a security risk. 7. The Network Support Organization must record all lab IP addresses, which are routed within <Company Name> networks, in Enterprise Address Management database along with current contact information for that lab. 8. Any lab that wants to add an external connection must provide a diagram and documentation to InfoSec with business justification, the equipment, and the IP address space information. InfoSec will review for security concerns and must approve before such connections are implemented. 9. All user passwords must comply with <Company Name>'s Password Policy. In addition, individual user accounts on any lab device must be deleted when no longer authorized within three (3) days. Group account passwords on lab computers (UNIX, windows, etc) must be changed quarterly (once every 3 months). For any lab device that contains <Company Name> proprietary information, group account passwords must be changed within three (3) days following a change in the group’s membership. 10. No lab shall provide production services. Production services are defined as ongoing and shared business critical services that generate revenue streams Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 40 or provide customer capabilities. These should be managed by a <proper support> organization. 11. InfoSec will address non-compliance waiver requests on a case-by-case basis and approve waivers if justified. 3.2 General Configuration Requirements 1. All traffic between the corporate production and the lab network must go through a Network Support Organization maintained firewall. Lab network devices (including wireless) must not cross-connect the lab and production networks. 2. Original firewall configurations and any changes thereto must be reviewed and approved by InfoSec. InfoSec may require security improvements as needed. 3. Labs are prohibited from engaging in port scanning, network auto-discovery, traffic spamming/flooding, and other similar activities that negatively impact the corporate network and/or non-<Company Name> networks. These activities must be restricted within the lab. 4. Traffic between production networks and lab networks, as well as traffic between separate lab networks, is permitted based on business needs and as long as the traffic does not negatively affect other networks. Labs must not advertise network services that may compromise production network services or put lab confidential information at risk. 5. InfoSec reserves the right to audit all lab-related data and administration processes at any time, including but not limited to, inbound and outbound packets, firewalls and network peripherals. 6. Lab-owned gateway devices are required to comply with all <Company Name> product security advisories and must authenticate against the Corporate Authentication servers. 7. The enable password for all lab owned gateway devices must be different from all other equipment passwords in the lab. The password must be in accordance with <Company Name>'s Password Policy. The password will only be provided to those who are authorized to administer the lab network. 8. In labs where non-<Company Name> personnel have physical access (e.g., training labs), direct connectivity to the corporate production network is not allowed. Additionally, no <Company Name> confidential information can reside on any computer equipment in these labs. Connectivity for authorized personnel from these labs can be allowed to the corporate production network only if authenticated against the Corporate Authentication servers, temporary access lists (lock and key), SSH, client VPNs, or similar technology approved by InfoSec. 9. Infrastructure devices (e.g. IP Phones) needing corporate network connectivity must adhere to the Open Areas Policy. 10. All lab external connection requests must be reviewed and approved by InfoSec. Analog or ISDN lines must be configured to accept only trusted call numbers. Strong passwords must be used for authentication. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 41 11. All lab networks with external connections must not be connected to <Company Name> corporate production network or any other internal network directly or via a wireless connection, or via any other form of computing equipment. A waiver from InfoSec is required where air gapping is not possible (e.g., Partner Connections to third party networks). 4.0 Enforcement Any employee found to have violated this policy may be subject to disciplinary action, up to and including termination of employment. 5.0 Definitions 1. Internal - A lab that is within <Company Name>'s corporate firewall and connected to <Company Name>'s corporate production network 2. Network Support Organization - Any InfoSec approved <Company Name> support organization that manages the networking of non-lab networks. 3. Lab Manager - The individual responsible for all lab activities and personnel 4. Lab - A Lab is any non-production environment, intended specifically for developing, demonstrating, training and/or testing of a product. 5. External Connections (also known as DMZ) - External connections include (but not limited to) third-party data network-to-network, analog and ISDN data lines, or any other Telco data lines. 6. Lab Owned Gateway Device - A lab owned gateway device is the lab device that connects the lab network to the rest of <Company Name> network. All traffic between the lab and the corporate production network must pass through the lab owned gateway device unless approved by InfoSec. 7. Telco - A Telco is the equivalent to a service provider. Telcos offer network connectivity, e.g., T1, T3, OC3, OC12 or DSL. Telcos are sometimes referred to as "baby bells", although Sprint and AT&T are also considered Telcos. Telco interfaces include BRI, or Basic Rate Interface - a structure commonly used for ISDN service, and PRI, Primary Rate Interface - a structure for voice/dial-up service. 8. Traffic - Mass volume of unauthorized and/or unsolicited network Spamming/Flooding traffic 9. Firewall - A device that controls access between networks; it can be PIX, that is, a router with access control lists or similar security devices approved by InfoSec. 10. Extranet - Connections between third parties that require access to connections non-public <Company Name> resources, as defined in InfoSec's extranet policy (link). 11. DMZ (De-Militarized Zone) - This describes network that exists outside of primary corporate firewalls, but are still under <Company Name> administrative control. 6.0 Revision History Technical enforcement We have our policies, our scripts, or patch tool, but how to we enforce policy compliance? Within the world of technology vendors, we are starting to see corporations adding tools to normal network services. Both CISCO58 and Microsoft59 currently provide a Network Quarantine feature to the systems that they offer. The offerings are both Server based and IP based approaches. This technology is primarily for VPN connections at this time and is estimated to include normal internal network traffic by 2005. The concept is that a computer system must pass a predefined standard before they connect to the environment. Forrester recommends that you evaluate and explore mixing technologies, however recent news has indicated that the two major players, Microsoft and Cisco, may not be working with one another and you may have to choose.60 Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 42 61 Graphical view of Microsoft Network Quarantine Services Pete Boden, Director of US IT Corporate Security at Microsoft, used a TechNet Radio62 session to discuss ways of ensuring that systems match the policies. At Microsoft, they perform tests that Make sure the right version of Connection Manager is being used; do that to make sure that all of the subsequent checks are in place and are current. Then check for Windows XP Professional; that’s our remote-client-connection standard OS, so everybody who connects remotely to our environment should be running Windows XP Professional. Then we check that the Internet connection firewall is enabled, that Internet connection sharing is disabled, and that the antivirus product is loaded and all of the signature definitions are updated. After making that connection, we launch a full compliance scan of the machine from our network, which essentially runs through the rest of the patch and configuration compliance checks. We make sure that the machine is fully patched; we make sure that it’s configured correctly, and if it’s not, we deal directly with the asset owner, the owner of that PC, to make sure that those checks or that those standards are then met. The compliance process starts with discovery and assessment. That means, first of all we have to become aware that vulnerability exists. Typically, we use mechanisms like the Microsoft Security Response Center, at least for Microsoft vulnerabilities. Once we become aware of a vulnerability, we rate its severity to determine how critical that vulnerability is and what we need to do to remediate. If it is a critical vulnerability, we set a deadline for compliance, which is simply a date by which every system on our network needs to comply with our patch standard. The next step evaluates compliance across the network. As we set those standards, and as we set the compliance deadline, we’re performing baseline scans across our environment to see how compliant we already are. As vulnerability information is released to our client base, many clients go out and update themselves. They are allowed to update their own system and make sure it’s compliant. At the same time we test to make sure that the patch is of high enough quality to deploy, so we provide it to a very select group of application owners to make sure that they can install that patch, run their business appropriately, and uninstall it if they need to. Then we get to the deployment phase, and this is the phase where we’re doing an enormous amount of communication with our business systems owners and clients on the network to make sure that they understand when they need to be patched by and what the consequences are for noncompliance. Once we reach that patch deadline, we drop into what we call the enforcement phase. Once we get to that phase, when Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 43 we identify a vulnerable system we take one of two measures. We either forcibly patch or configure that machine or we remove it from the network. Let’s stress this point again. These computers are your company assets; they do not belong to the employees. Thus, setting policies and compliance is critical to maintain control. Set the policy to make it easy to update and comply with On the patch management listserve, people often ask for a template of all needed patches for a workstation or server. What is disconcerting in this question is that there is a desire to rely only on human interpretation of what is currently installed on a system. It’s much better to have a combination of human expectation based on a review of the published bulletins, and a reinforcement of this awareness by using a patch tool to confirm that “yes, you need to patch for this.” While this book is sponsored by a patch management software solution vendor, we cannot stress this point enough so we will make it loud and clear: If you rely solely on human judgment for patching your systems, your risks are significantly increased and your rate of failure is extremely high. Whether you use free patch tools or develop your own scanning methodology, relying solely on judgment and not following up with some sort of tool or technique to confirm your patch status is extremely foolhardy. Patch and then CONFIRM the application and effectiveness of the patch. In the windows environment confirm by checking registry keys or current, in-use DLLs to ensure patch status. Utilities such as tlist, ListDLLs63 or Process Explorer64 assist in this process. Stuff happens Even with all of our testing, things happen. Therefore, ensure that you have good vendor relationships. There is nothing so frustrating than the “ping pong” effect: Vendor A blames an issue on Vendor B; Vendor B blames Vendor A. The more a specific vendor depends on your business, the more power you have. While migrating to different vendors is not easy, the fact that we are in an increasingly competitive marketplace helps greatly. On listserves and newsgroups, we repeatedly see people post issues that they, clearly, could move to the vendor for resolution. Repeatedly they are reluctant to do so. If cost is an issue, remember that calls to resolve issues caused by a Microsoft security patch are free. When contacting any vendor, gather the following information: • • • Details about the computer exhibiting the problem o Version installed o Service packs applied o Affected application Version service pack o Other applications on the box o Antivirus software, version o Processor o Memory o Hotfixes Installed Details about other computers (a client machine, for example), if applicable o Operating system and service pack o Applications o Antivirus software, version Details about the network, if applicable o Internet connection type o Number of NICs in the server o Firewall/proxy o Network topology particulars Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 44 • Details about the issue o Full, complete error message wording or screenshot o Timing of first occurrence o Changes made around that time o Steps taken to reproduce the error, if any o Additional information you think might be helpful There is a cartoon showing Bart Simpson writing on the blackboard, “I will search Google before asking dumb questions.”65 You would be surprised how many people do not know the power of the search engine. You can begin your error investigation process by using one of the greatest diagnostic tools around: A search engine such as Google. Launch the Google search engine66 and put in your "exact" error message. You may be surprised that someone else had your same problem and someone else has helped him or her find the answer. If that does not work, try searching on Google Groups67, which is the search engine of the Usenet. To narrow your search further, click on “Advanced” and limit your search to microsoft.com or redhat.com or the appropriate vendor’s domain. For narrowing down Usenet postings, click on advanced and include a wildcard, as in Microsoft.*, which will search on the public newsgroups on the Microsoft domain. Lastly, after you review the Event viewer, the web site of www.eventid.net is invaluable for quick resolution on security or even non-security issues. Subscribe to the service. Those red stop signs in your event viewer and the resulting code can point you in the direction of resolution. Be willing to gather information Without data, your vendor is dumb and blind to the issue you are seeing. If your system crashes and asks to send a “Dr. Watson” dump to Microsoft, for example, send it. The information sent to Microsoft or any vendor assists them greatly in pro-actively preventing issues. You may find that doing a Dr. Watson error gets you a link to additional information for resolution. Next, have on hand the tools that Microsoft Product Support or other vendors use in diagnosing issues. Tools such at the PSS support tools68 allow engineers to more easily see what is going on. The support engineer may also want you to use debugging programs69 to prepare a dump file for analysis. Use additional tools from the Server resource kits70 as needed. The more information you provide the faster and better will be the resolution. Finally, when you call in for support to any vendor, make sure that you get to the right division or department. Online communities offer another way to compare patch experiences. Phrase your subject line carefully when sending a question and describe the steps that you have taken. Include the relevant information to make the resolution process faster. Find additional guidance in asking effective questions the right way at http://www.catb.org/~esr/faqs/smart-questions.html Remember: There are no dumb questions. Thinking it is a dumb question is just dumb because you will not find an answer until you ask the question. Always ask, as someone else probably has the same question that you have. Change Management follow-up You’ve patched and you’ve enforced the policy to ensure that everyone patches. So now you are done, right? Wrong. First, you need a change review process to summarize and gather those items that testing missed. Can you cover an emerging issue in future testing procedures? Can you better follow up with vendors and personnel? Did the patch affect one application in particular? Use this review process to learn and make the next patch process easier. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 45 Microsoft’s representation of the Change Management process Determine which tools did the best job of recreating your network. If there were issues with patches, what backup or imaging procedures worked the best? Did you ensure that during this process, all appropriate change control mechanisms were in place? Use this process to learn and refine your procedures as needed on an ongoing basis. So I can’t patch, now what do I do? There will be times when patching is either not an option or, in the case of zero day exploits wherein the exploit is released to the web before a patch has been built. You might find that you need to take alternative actions. Nevertheless, be sure to analyze carefully the true risk. Many businesses that didn’t patch for 03-026 erroneously believed that they were safe because they had a firewall; however, all MSBlaster (03-026) needed to shut down a business was a remote connection in from an infected remote client. The recent addition of the XP SP2 firewall71 controlled from the INSIDE of a company helps limit internal exposure. If contractual arrangements restrict you from patching, consider “air gaps” or other devices to limit and restrict TCP/IP traffic. Vlans and virtual machines may not be enough to limit such traffic as switches can be vulnerable devices as well. You can also use IPSec,72 which is “an implementation of the Internet Engineering Task Force’s Internet Protocol security (IPSec). IPSec, which is also included in Windows 2000 and Windows XP, provides network managers with a key line of defense in protecting their networks. IPSec exists below the Transport layer, so applications transparently inherit its security services. IPSec provides the protections of data Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 46 integrity, data origin authentication, data confidentiality, and replay protection without having to upgrade applications or train users.” IPSec provides defense-in-depth against vulnerabilities in upper-layer protocols and applications by protecting upper layer protocols, services, and applications. With IPSec enabled, initial packets access an application or service running on a server only if they meet the allowed policy. For example, attempts to disable applications or services on servers must first penetrate the IPSec protection. In addition, because packets will not be passed to the application or service until trust has been established through IPSec authentication and the configured protection on packets for the application or service is protected. Use IPSec policy to restrict access to servers. You can configure a server to accept specific types of traffic only. For example, you can configure an e-mail server to accept only secured e-mail traffic from client computers. The e-mail server discards all other traffic from client computers. What is the best way to find alternative to patching? Turn first to the security bulletins themselves. Using our Security bulletin 03-02673 as an example, refer to the technical information section. Scroll to the “Mitigating factors” area located in each bulletin. In this case, mitigation involved blocking the affected ports. This is easy to do on a stand-alone machine, but hard to do in a network. The story of two patches Two patches serve as examples of “major events” for IT professionals. Both were highly critical, many administrators pushed both patches out to their network EXTREMELY fast. Moreover, while one turned into a network event, the other seemed not quite the Internet threat that it initially appeared to be. Let’s look first at the MSBlaster security bulletin 03-02674 to review why it became an event: Security bulletin 03-026 - Buffer Overrun In RPC Interface Could Allow Code Execution (823980) MSBLAST Issue Impact of vulnerability Result Run code of attackers choice Severity rating Critical Threat vectors File and printing ports Comment “Run code” is translation for “oh this is going to be bad” Also critical on ALL platforms [sometimes Windows 2003 has mitigation issues when there are security issues for Internet Explorer due to the IE enhanced lockdown” Network administrators thought they had more control over the parameters of their network. We don’t. Plan accordingly. Regarding Blaster, we knew that our firewall protected us on the outside. What we did not take into account was how interconnected we are. The vulnerability for 03-026 spawned a worm called MSBlaster. This worm got inside of our networks because of VPN and other remote connections. It took down firms and put their servers and workstations offline. Even today, we remain at risk on the inside; we cannot depend on our network perimeters alone. In-depth defense through Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 47 compliance with patch policies would have prevented MSBlaster. Now let us look at our second sample patch:75 Security bulletin 04-011 - Buffer Overrun In RPC Interface Could Allow Code Execution (823980) SASSER Issue Impact of vulnerability Severity rating Result Remote code execution Critical Threat vectors Primarily File and printing ports Comment Hmmm… this also sounds bad But here’s the difference – NOT critical on Windows 2003 servers Primarily affected computers without up to date firewalls and antivirus Of all the issues addressed in this bulletin, the malware targeted only the LSASS service. The mitigation of this one was clear: An anonymous user can remotely attack Windows 2000 and Windows XP only. While Windows Server 2003 and Windows XP 64-Bit Edition Version 2003 contain the vulnerability, only a local administrator could exploit it. Given reviews of security issues, both patches deserved very quick installation, especially when administrators compared notes and looked at the threat vectors. Many thought that the Sasser worm would have exploited the SSL vulnerability instead of the LSASS service. Nevertheless, each case highlights the same thing: The time between patch, exploit and event is shrinking. The coming threats Patching is just one source of protection. Forthcoming network protection technologies are just the latest in the arsenal of tools that we must use to protect ourselves. Remember: it’s not just about having a tool for patching; it’s about controlling the patching and enforcing patching best practices. If you do not control your systems, they will control you. We will complete our technical discussion of patches by looking at what lies ahead. A Microsoft article76 seeks to: • Establish a single set of patch related terms and mandate their use in all documentation related to patches as described in knowledge base article 824684 • Establish the role, format, and content of knowledge base articles published in conjunction with patches. The KB article will focus on installing the patch, while the bulletin will focus on the vulnerability. as described in knowledge base article 824689 • Establish a common naming convention for all patch patches, providing information such as the product the patch applies to, the language the patch was developed for, as described in knowledge base article 824685 • Establish the standard that all patches use a properties page as discussed in knowledge base article 824686 • Establish a single consistent way of recording a patch in the add/remove programs list. Microsoft states that they are examining whether it may be appropriate to develop a repository of information dedicated solely to patches • Establish a standard such that all Microsoft patches will use either of two installer technologies: o Windows Installer [MSI] will be used by patches for applications o Update.exe will be used by Windows operating systems and some applications • Establish a standard of patch size reduction by removing debugging symbols from patches. {If you receive a hotfix from Microsoft, you will notice for some hotfixes “symbol” files inside the zipped hotfixes. • Establish a uniform set of options that installer technologies will support as discussed in knowledge base 824687 Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 48 • • • Establish a standard for uniform set of return codes and log entries that all patch installers will use Establish a standard allowing for uninstalling of all patches Establish a standard of placing patches in a standard registry location So what does the future hold for patch technology? Standardization is likely, and it can come none too soon. As we begin to mix operating systems, applications, and platforms, standards must emerge and evolve. Dig deep in your applications and work with your vendors to understand how your systems work, to examine your systems and to understand how to patch them and how to test the patches. Does this testing replicate your environment? The larger and more complex your environment, the more ability you have to ask vendors to support and test patches before you roll them out. Include such specifications in your vendor agreements. Begin to push, slowly at first, so that your applications support the latest service packs within a reasonable period. “Demand better security from vendors and hold them responsible. Use what you have, and make sure you know how to use it properly and effectively”77 Ask your vendors to step up to the plate and support and test patches as well. The bottom line for your boss If you are reading this, chances are you are not the CEO or CIO or CFO. You probably do not have budgetary control and the final say. Refer to the one-page appendix at the end of this chapter. Copy it, hand it to the people who make the decisions in your firm. Take the time to calculate the ALE formula. Discuss the impact of how the biggest security impact comes from laptops that may not get the attention they need to maintain patch level. Take the time to review the business side of patching to compile arguments you need to get the tools you must have. Effective patch management is all about good process and good control. If you do not control your server, your desktops, or your infrastructure; if you do not control who has access to your network; and if you do not control what comes into and goes out of your network, you don’t control anything. It is not YOUR network anymore. The World has changed and computing environments continue to evolve. Companies that may have considered security a minor compliance issue must now meet security standards. California already has a law on the books commonly referred to as “SB138678.” This law requires a firm to notify California residents when an unauthorized party views data sensitive to identity theft. While this is an admirable law from the standpoint of the person susceptible to identity theft, it is a potential liability and public relations nightmare. Management often requires ROI calculations on new processes and purchases, but they often ignore intangible costs. The traditional ALE equation may not give you the entire cost analysis you need but it may be all you have right now to make your point. CIO Magazine79 has predicted that the insurance industry will push for Security ROI and better industry statistics, but that has yet to happen. We are still moving toward what Kevin Soo Hoo described as “a place where computer security risks would be ‘actively and effectively managed.’”80 Do you need to be empowered to take control of your network? Refer to the US CERT research center for evidence on the survivability of the Internet.81 Consider, also, that Incidents.org, which track events on the Internet, calculate that a Windows XP workstation can run on the world wide web without protection for only twenty minutes.82 Ask yourself, if your Help Desk staff cannot get to that system within that period and your employees control their systems and not your IT staff, who really controls your network? It is certainly not your IT staff! Where is your weakest link? Look toward the person who has the ability to download what he or she wants to. Patch Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 49 management is part of the process of having your IT staff stake a claim for once again controlling YOUR network. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 50 Chapter 5 – Life beyond patching Microsoft T he reality of what we protect today includes products beyond those developed and supported by Microsoft. Third party software we monitor for updates included products from Apple, Macromedia, Real Networks, Adobe, WinZip, and many others. It even includes tracking vulnerabilities in antivirus agents. Many firms also track Solaris, RedHat, SuSe, Oracle, Cisco, and even vulnerabilities in devices and printers from vendors such as Ricoh and HP. While this text is about the concepts of patch management, one thing is clear. You must clearly understand what you are patching, know what information resources you have available and, just as in our extensive discussion of Microsoft patching, arm yourself with an environment and a team that is able to test, report findings, maintain good relationships with vendors, and manage Service Level Agreements tied to your goals. While this chapter covers some new ground, you will find that it will reinforce many of the concepts we have talked about before. Assessment of your network, testing procedures, policies in place, reporting of patch issues, all of these processes are identical in any software platform you maintain. The firms and service level agreements (SLAs) may be different, but the basic concept of “test to ensure you do no harm” is universal. Sun Tzu in The Art of War states, “If you know the enemy and know yourself, you need not fear the result of a hundred battles. If you know yourself but not the enemy, for every victory gained you will also suffer a defeat. If you know neither the enemy nor yourself, you will succumb in every battle.” We would argue that in the battle for better security, we are still working our way towards knowing ourselves. If you have not yet determined the critical assets you need to defend and protect, you need to do this analysis first. Just as in our previous chapters, we assume that you have identified that the software needs a patch according to the vendor. No matter what platform, spending resources to patch, putting a business continuity plan in place, ensuring that patches will not harm systems, arranging for notification of new patches from vendors, and obtaining patches conveniently are mandatory best practices. Over the Christmas holidays, a worm exploited vulnerabilities in phpBB (an Open Source Bulletin Board or CMS) and defaced web sites. Later deemed the “Sanity” worm, it points out that every platform is susceptible. Irregularly maintained and unpatched systems are the most common denominators among successful attacks. To prevent attacks we need to patch and to patch we know we must test. Recall the basic procedures used to test patches: • • • • Best—an exact replica (ghost) of your exact system on the exact same hardware, applying the patch to the ghosted system and monitoring processes Better—applying the patch to a mirror of the system, purposely breaking the mirror and monitoring results Better—applying the patch to a Vmware or virtual server (virtual PC will suffice with a bit of a workaround, but it is directly supported on Vmware and Virtual server platforms); monitoring applications and processes Applying the patch to a test server/workstation and monitoring the applications and processes As always, have a testing matrix and sign off procedures. Our policies and procedures for testing and approving patches are going to be the same no matter what the platform. Identify what you have and what you need to protect; remove—do not just disable—what you do not need running; run the least amount of privileges on files, folders, servers, and workstations to limit exposure; Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 51 and audit to confirm exposure to risk. These basic concepts apply to any platform you choose to run. Patching third party applications Let us begin this chapter by examining procedures we can use to patch (or actually re-deploy) sample third party applications on the Microsoft platform. We will then discuss procedures to patch operating systems such as Linux, Solaris, Oracle, and others. For many of you, this section, hopefully, will be ‘old hat’ and just a review; but if you have not used Group Policy to deploy applications, note that patching (or deploying) a third party application on the Windows platform involves preparing a transform file and utilizing active directory. On the domain that needs to deploy an application the basic procedure is as follows: • • • • Create a distribution point Create a group policy object for the deployment Deploy the .msi file from the shared distribution folder as machine-assigned. You can also deploy the .msi to specific security groups. Here is an example of deploying Adobe Acrobat reader to all workstations. The concepts mimic those detailed in the white paper “Using Group Policy to Deploy Windows XP sp2” (http://www.microsoft.com/technet/prodtechnol/winxppro/deploy/gpdepsp2.mspx) with one exception. For some applications, you must prepare a file for distribution as an .msi application. In the case of Adobe, this involves a little “trickery” of pretending to install the program. When you download the full file, it is actually an executable shell around the msi program. To “expose” the .msi, you merely go through the motions of having it begin the install and then make sure you “cancel” at the proper moment. Continue the installation “past” this screen Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 52 At this point, select “Cancel” You will now have on your local workstation system a folder that includes the “expanded files”. Copy these files up to the server installation point and the distribution point that you will use now that you have the actual msi file. Copy these files to your “distribution” point To create a distribution point83 1. Log on to the server computer as an administrator. 2. Create a shared network folder where you are going to put the Microsoft Windows Installer package that you want to distribute. This folder is the distribution point for the software package. 3. Set permissions on the shared network folder to permit access to the distribution package. 4. Give access permissions to the following: administrators, authenticated users, and domain users. (Remember that on Windows 2003, the “Everyone” group no longer includes anonymous users.) Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 53 Setting permissions for deployment 5. Configure distributed file system (DFS) for the distribution point in larger enterprise settings. This provides you with more flexibility by ensuring uninterrupted availability of the distribution point, in case you have to replace the server. In addition, DFS makes it easier to have distribution points in multiple sites. For more information on DFS review the information at http://go.microsoft.com/fwlink/?linkid=34229 To create a Group Policy Object (GPO) for deployments84 1. Begin by ensuring that you have a copy of the Group Policy Management Console installed on a XP sp2 workstation (preferably) that has the recent updated administration files. 2. Download this console tool from http://www.microsoft.com/downloads/details.aspx?FamilyId=0A6D4C24-8CBD-4B359272-DD3CBFC81887&displaylang=en. However you can control group policy from a non-XP sp2 location with a hotfix that will be included in Windows 2003 sp1. Download the hotfix from http://support.microsoft.com/default.aspx?kbid=842933 3. On an administrative workstation in large environments, log on as the domain administrator, or in smaller environments, remote desktop to the server and open Group Policy Management Console (GPMC). This is typically done by typing in “gpmc.msc” in the start, run box as shown: Launching the Group Policy editor 4. In the console tree, right-click the domain name in the forest in which you want to create and link a Group Policy object (GPO). 5. Click Create and Link a GPO Here. Creating a Group Policy Object 6. In the New GPO dialog box, specify a name for the new GPO, and then click OK. Preparing the new GPO Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 54 To edit a GPO for Deployments 1. Right click the new GPO and click Edit. Preparing to edit the Group Policy Object 2. In the Group Policy Object Editor, click Computer Configuration, click Software Settings, and then click Software Installation. 3. On the Action menu, point to New, and then click Package. Preparing to deploy the package [msi] 4. In the Open dialog box, in File name, type the full Universal Naming Convention (UNC) path of the shared installer package that you want to distribute. Type this path in the following format: \\ServerName\SharedFolder\Update.msi or \\ServerIP\SharedFolder\Update.msi. Make sure that you use the UNC path of the shared installer package. Ensuring that the package can be retrieved across the domain by using the UNC path 5. Select the Windows Installer package, and then click Open. 6. In the Deploy Software dialog box, click Assigned, and then click OK. The shared installer package that you selected appears in the right pane of Group Policy Object Editor. View of the resulting deployment To target the msi using security filtering 1. In GPMC, double-click Group Policy Objects. 2. Click the GPO to which you want to apply security filtering. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 55 Selecting the GPO 3. In the results pane, on the Scope tab, click Add. 4. In “Enter the object name to select,” type the name of the group, user, or computer that you want to add to the security filter, and then click OK. 5. If Authenticated Users appears in the Security Filtering section of the Scope tab, select this group and click Remove. This will ensure that only members of the group or groups you added can receive the settings in this GPO. If you leave this group in, staff logging into your servers will deploy the application to the servers as well. Set ONLY those groups that you want to deploy the software to in this window. Click on the settings tab to view the resulting effects of your deployment and to view the settings that the group policy will use to deploy the package: Resulting Group policy screen It is important to realize that testing a rollout or deployment or patch methodology is very important. Businesses have suffered dearly when scripts and group policy commands did more than expected or intended. Prepare a test lab and test the process. To force the group policy application, from a command prompt at the server, enter gpupdate/force (for Windows 2003/XP machines) Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 56 GPupdate/Force In the case of “scripted” installs, you may want to add additional features to ensure that the deployment of the software is “silent,” that is, the end user need not interact to apply the software update. Typically, additional scripting ensures that the install is transparent to the end user. For additional information and guidance for using “scripted” options, look at the Tech Republic web page at http://www.techrepublic.com and in the case of Adobe you can further link to http://techrepublic.com.com/5100-6270-5054963.html. If you have prior versions of Adobe, you may need to adjust the script to uninstall the prior versions. For other applications, you can typically ask fellow administrators on the PatchManagement.org listserve (www.patchmanagement.org) for guidance or Google for recommendations. There is also additional information for using the Microsoft Command line and the Windows installer here: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/msiexec.mspx Vendors have their own resources for enterprise deployment. The Adobe web site includes the following information for Terminal service installations, Citrix installations, and general enterprise deployment: http://partners.adobe.com/public/developer/acrobat/index_advanced.html Review your vendor’s technical guidance for enterprise deployment scenarios and suggestions. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 57 Patching Linux distributions A patch in both Windows and Linux products is a band-aid, a fix for a missed security issue or an interim update prior to a service pack release. In the Linux platforms, it is typically easier to avoid patching by not installing the application in the first place. Recent movements in the desktop applications of Linux, however, are beginning to load with “default” applications that need patching and maintenance. For example, a recent Novell/SuSe 9.2 desktop needed several critical patches. Most of the “enterprise” ready desktop versions of Linux distributions are beginning to have patch update tools built into the operating system. For example, both RedHat and SuSe come with a “windows update” style of automatic update that is useful for the desktop. The SuSe distribution requests administrator privileges before scanning for patches. SuSe prompting for administrator rights before patching Do not, however, “keep password” on the system to maintain separation between the user account and the Superuser Do (‘sudo’) account. Once the administrator password is applied, the system begins the scan and reports on the patches needed. Yast Online Patch window indicating critical patches needed by system Obviously similar to Windows update, these workstation auto updates work best for standalone workstations or small networks rather than the large enterprise settings. For those enterprise environments, the firm truly needs patch tools and scripts to ensure best practices. The savvy Linux administrator has an additional option. The more advanced Linux administrator will download the code and patches in source code form and compile them into a form that he will use to patch the systems before waiting for the vendor to release a patch. This manual approach should be reviewed to ensure that the procedure does not void any service line agreements (SLAs). This review takes significant manual effort to keep track of installed components and what is patched versus what needs patching. As Linux distributions proliferate into the Enterprise environment, a growing number of firms support patch distribution and inventory tools for Linux. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 58 Here are two vendors with Linux patch management tools as a sample: • • Shavlik with their Shavlik HFNetChkPro for Linux 2.1 – for RedHat Novell with their Linux Management console found here http://www.novell.com/products/zenworks/linuxmanagement/ When you begin a support agreement or other support arrangement with a commercial Linux vendor, discuss all the patch management tools they provide with the package itself. Manual patching and chasing down security patch information is at best tedious for any operating system. Patch information is available from each vendor. For example, each vendor normally has an email/newsletter service. Find samples at • • • • • • • http://www.suse.com/en/private/newsletter.html http://lists.suse.com/archive/suse-security/ http://lists.suse.com/archive/suse-security-announce/ https://www.redhat.com/mailman/listinfo/enterprise-watch-list/ http://lists.debian.org/debian-security-announce/ http://www.gentoo.org/main/en/lists.xml http://www.mandrakesoft.com/security/advisories Among others, review the offerings from the specific alternative operating system around which you choose to build. Here too, as was the case in our Microsoft-specific chapters, standardization on one platform may go a long way to helping a firm manage “change management.” If your firm had to keep up with patches for Microsoft, SuSe, RedHat, Debian, Mandrake, OpenBSD, and others, you would either need to subscribe to a notification service provided by a company such as Secunia (www.Secunia.com) or devote hours to keeping up to date. Gaining core competency surrounding a limited number of vendors is central to managing the “patch beast.” Remember that patching is mandatory for any software application. In late December 2004, the “Sanity” worm affected web sites that included code from phpBB web forum. Some other anecdotal issues in the Linux world include: • • • The “Ramen” worm shutdown print servers. In 2000, well-known vulnerabilities in the ToolTalk database server compromised Solaris systems. “Slapper worm” attacked Apache web servers. We could go on with more such examples, but the bottom line is each platform has vulnerabilities and needs patching. As we have stated before, the risk of introducing new code into a stable system could jeopardize that platform. Destabilizing a system will mean loss of productivity and revenue, and we need to weigh the risk against the benefit. Even after applying patches to a system, some firms wait for a “burn in period” or review patch community results before applying the patches firm wide. Vendors cannot test for all possible combinations of hardware and software and business practices and thus you must prepare your own test policies and procedures before implementing patch deployment. As in any introduction of new code, you may also want to have a “burn in” period to ensure that the patches work properly in your unique system. Begin by ensuring that you have secured your systems. The Center for Internet Security (www.cisecurity.org) has benchmarks for RedHat, Solaris, HP-Unix, and various other systems and provides auditing tools as well. Bastille (http://www.bastille-linux.org/) is another tool that Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 59 provides software-hardening information to help you proactively harden your systems against attacks. Again, it is imperative that system hardening of all operating systems complement patch management best practices. Unlike the Microsoft operating systems, Linux system administrators have the option of manually compiling patches rather than relying just on the vendor. However, this process is not a trivial one and you may wish to wait for the vendor complied packages due to unique changes with each distribution. We will discuss this later in this chapter. Ensure that whatever method you choose for patching is in line with both your operating systems and your applications. Again be aware of your vendor service level agreement requirements for commercial packages. While Linux distributions are based on the open source platform, it is your agreements with your line of business applications that are reliant on the software that you should pay attention to the most. If you have a commercial application built on a Linux distribution, has your application vendor approved the patch the question you should be monitoring the closest. You may not have any such agreements in place to worry about and can patch on your own schedule with your own methodologies. As we have previously pointed out, while the patch management process consumes time and resources to identify vendors, to develop patch testing resources and methodologies, the price of not patching is very high. Costs of loss of productivity, of reputation, and these days the potential for legislative requirements to ensure that reasonable security procedures are followed all add to the “costs” of not patching. For the RedHat distributions prior to the “Enterprise” versions, RPM (or RedHat Package Manager) files are the released updates, configurations, and documentation. Packages for Athlon and Intel processors appear along with a folder called “noarch” which apply to all systems regardless of the hardware platform. RedHat 9 RPM locations For RedHat Enterprise, the packages organize as follows: • AS (Advanced Server) is the RedHat top of the line package for large enterprise servers that can support up to 16 CPUs and 64 gb of memory • ES (Enterprise Server) supports two CPUs and 8gigs of memory. • WS is the workstation version of RedHat for highly technical needs. • Desktop supports a single CPU. RedHat Enterprise packages Each shop must decide whether to wait for vendor-supported packages or introduce other means for patching. Also, keep in mind that obtaining the updates by browsing to the site ftp://updates.redhat.com includes non-security updates. Before you begin the process of downloading packages from either the RedHat website or any other website, ensure you are using a trusted site and only use trusted sites. Earlier in 2004, a bogus RedHat security email attempted to entice people to download a Trojan. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 60 Compare the PGP signature (do you cover or point to documentation to support PGP on SBS or exchange and Outlook?) for emails and md5 checksums of the software you receive. For example when downloading the Fedora version of RedHat, compare the following checksums to the files downloaded: Hash: SHA1 2786a751df919f340d967a4833b63b16 0b9f23eff713db3a0d5a778e38d70299 Bd15bac386cdc30b6fcdf8e7da633403 D89ea5afcb3b94cbfaa3c275455d45a4 D177e8134ffff13e0029fe31a9f20c85 B61b0eb7e0171837aeeff4f0054a4d79 99dc12c7e8a93844a48a5675a9c07ec9 399b7ffd721ebb4244a02c34cdbb1b82 F58b1de3b880df55dbbd37d143419226 FC3-x86_64-DVD.iso FC3-x86_64-SRPMS-disc1.iso FC3-x86_64-SRPMS-disc2.iso FC3-x86_64-SRPMS-disc3.iso FC3-x86_64-SRPMS-disc4.iso FC3-x86_64-disc1.iso FC3-x86_64-disc2.iso FC3-x86_64-disc3.iso FC3-x86_64-disc4.iso Compare the PGP signature to the RedHat public key at http://www.redhat.com/security/team/key/. To confirm a RedHat package, run the command as follows: rpm --checksig -v <filename>.rpm The process of ensuring that checksums match, confirms that you are not in a similar situation as individuals who downloaded software tools from file sharing locations that contained Trojan horses in the source code and thereby infected their systems with backdoors. Individuals who didn’t verify checksums introduced bad code into their systems. Thus follow “good common sense” when downloading patch sources. You may accept the risk for your less critical machines, but you may not want to accept the risk for more critical machines. The RedHat command can be used to determine what version of the package you have on your system. #>rpm --query –all or rpm –qa can show you a listing of packages installed. By ‘piping’ the ‘grep’ command, (rpm –qa | grep <search string>) it is possible to easily locate particular applications. Sample of querying for all software Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 61 You can also use this to query a specific package such as #>rpm –q openssh Verification of Openssh package, please note I am logged in as “root” which should be limited and only done by administrators. In general, to update a package you need to follow instructions:85 To update all RPMs for your particular architecture, run: #>rpm -Fvh [filenames] where [filenames] is a list of the RPMs you wish to upgrade. Only those RPMs which are currently installed will be updated. Those RPMs which are not installed but included in the list will not be updated. Note that you can also use wildcards (*.rpm) if your current directory contains *only* the desired RPMs. Please note that this update is also available via RedHat Network. Many people find this an easier way to apply updates. To use RedHat Network, launch the RedHat Update Agent with the following command: #>up2date this will start an interactive process that will result in the appropriate RPMs being upgraded on your system. If up2date fails to connect to Red Hat Network due to SSL Certificate Errors, you need to install a version of the up2date client with an updated certificate. The latest version of up2date is available from the Red Hat FTP site and may also be downloaded directly from the RHN website: https://rhn.redhat.com/help/latest-up2date.pxt You can verify each package and see who signed it with the following command: #>rpm --checksig -v filename If you only wish to verify that each package has not been corrupted or tampered with, examine only the md5sum with the following command: #>md5sum filename To verify software integrity you can use the switch of rpm – verify or rpm –v to check packages against the local database. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 62 Verification of files To install software you can use rpm – install, rpm – upgrade or rpm – freshen. The ‘install’ flag ensures the new file is loaded but leaves the old version installed, the ‘upgrade’ flag removes a previous version that might exist, and the ‘freshen’ flag removes only the prior version of there is an older version on the system. A “defense in depth” measure is to not only disable a service but also remove the software completely, thus if you determine that you do not need a package on your system, rpm – erase is recommended to remove the software completely. Kernel updates should only be done with the ‘–I’ flag. To review what Kernel level you have on your system type in rpm –qa |grep kernel Verification of Kernel on RedHat Enterprise 9 This will show the kernels installed on the system. You may also consider the #>uname –a command to determine which kernel is currently loaded into memory and running. Modern Linux distributions support either GRUB or LILO as a boot manager. This permits a quick and easy ‘rollback’ by just rebooting the machine, and choosing a previously used kernel. In addition, for those using RedHat/Fedora, up2date is phasing out. The replacement, called “yum,” evolves from Debian’s update utility. This new tool helps to eliminate some of the issues surrounding RPM’s poor dependency resolution problems. RPM has occasionally installed applications rather than libraries to resolve library dependencies. This just added another application of questionable value, but one that needs maintenance for patches, updates, and revisions. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 63 Another element to keep in mind is that the files downloaded by these tools can be stored in a shared directory. When other machines mount that directory, up2date need not be run on all of the machines, just the installation process. This is extremely beneficial to updating multiple workstations. Usually an administrator will not have several servers to update that all require the same program updates, this naturally excludes cluster administrators. For less skilled administrators, we still recommend using a more commercial package such as RedHat or SuSe that has a scan and update feature. For example, even on RedHat’s Fedora package, the up2date utility showcases that a recently installed ISO still needs updating: RedHat Fedora update notification So taking our example, we first visit the Fedora RedHat web site to get the update at http://download.fedora.redhat.com/pub/fedora/linux/core/updates/ and download the needed packages we need so that we can manually update the Omni-0.9.1-7 to the more current version found on the Fedora web site to Omni-0.9.2-1.1. We would of course first check for dependencies; when we launch the download we allow the package to check for itself. RedHat preparing system update Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 64 We can see from the next screen that the package that it depended upon was not available in the system and thus it needed another rpm package first before updating the file: Fedora indicating dependency on another RPM package Once you have found the dependency, you run the rpm –Fvh command with the series of files together to begin the patching process Installation of files on RedHat Fedora We have now successfully updated these files and can confirm their installation. This process can be a bit tedious at best. Thus, patch management tools for any platform that you protect can easily pay for themselves in person-hours, in more automation and confirmation. Patching for any platform is not easy and takes skill. Using advanced tools to automate this process are highly recommended. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 65 Building packages from source Because Linux distributions are modular, there is not a “rollback” feature per se, but rather redistribution, a reapplication of the necessary package to “roll back” to a working version. Besides waiting for a distribution package from a vendor, you may wish to build from source. Steve Friedl, a Security consultant, has provided detailed instructions on how to build from source packages on his web site at http://www.unixwiz.net/techtips/building-source.html. You can review the steps for more detail. Another process for distribution in the open source world is called the Gentoo distribution is gaining popularity in certain circles because the entire OS/distribution is custom built on the machine. The packages are downloaded and compiled by the installation program. The disadvantage to this is that it can be extremely time-consuming; however, the benefits include knowing exactly what has been installed on the machine, no more or less than the files needed for the system to execute its assigned tasks. This distribution is useful for environments where peak performance and/or heightened security are needed. In an enterprise environment, (large or small) Gentoo is best when deployed to the same hardware on or for which it was compiled. Clusters are a good example, as are machines purchased in ‘groups’ for team environments such as call centers. Unfortunately, due to the time involved in developing a fully optimized single machine image, this would not be a recommended solution for environments with many systems from different vendors, particularly desktops. As Steve Friedl states in his Technology tip86: • • • It insures complete control over all the build options, including the installation pathnames. Using a pre-built package with options you do not need (say, an LDAP client) adds to bloat. It insures that cooperating packages are built with compatible options: if Postfix and Courier-IMAP both need to link with MySQL libraries, building them all yourself guarantees that the same compiler was used for all of them, with flags you can see. You develop a reusable skill that applies anywhere you install the package: apt-get is great for Debian but it won't be too helpful on Solaris or HP-UX. Dependencies As with many software patches from many vendors, there are dependencies that must be followed to install software. You can use rpm–qf, for example, as the anaconda package is not dependent on any other package. We saw in our own example that our sample patch was dependent on another package, testing a more innocuous package indicates it does not have a dependency. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 66 Sun Solaris Sun Solaris recommends the following in their patch management strategy “The Recommended Patch Cluster reflects the current version of all of the patches required to address all Sun Alert issues. Some customers have adopted a policy of periodically applying the current Recommended Patch Cluster to a system. While this strategy does address all Sun Alert issues, it also introduces more change to the system than is necessary. Similarly, reapplying the current Recommended Patch Cluster on a scheduled basis is also not necessary. 87 For Sun Solaris, a patch report file is located at ftp://sunsolve.sun.com/patchroot/reports/public_patch_report. This lists the recommended and security patches for Solaris as of any given date. Example of Sun Solaris public patch report The Sun Alert Pack reflects the lowest revision of all of the patches necessary to address all Sun Alert issues, and the least possible change to your system while still addressing all Sun Alert issues. Sun believes that you should apply patches only to address specific issues or needs Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 67 unless critical. According to Sun, you should not apply patches merely to keep current. There is no benefit to applying the latest revisions of patches without understanding whether those patches provide any value. Patch management tools for Solaris include • Sun Patch Manager 2.0 http://www.sun.com/software/download/products/40c8c2ad.html • Solaris Patch Manager 1.0 http://www.sun.com/service/support/sw_only/patchmanager.html • PatchPro - http://patchpro.sun.com/ • Traffic Light Patchtool - http://www.sun.com/service/preventive/index.html. • Patch utilities Coda We hope that this very brief overview of the methods and options you have when patching nonMicrosoft systems shows you that above all else you need the following key information no matter what the platform: • • • • • • • • • • Information from the vendors for the patches needed for security issues You need the software patches You need a test network set up You need to test the patches against installed applications that you need to ensure continue to run and perform as expected. You need to ensure you have a backup of production systems You need to ensure you have a rollback plan in case the patch does not work even in the production setting You need to confirm that the patches have been applied You need a review process You need to start the process all over again each time a new patch comes out. No matter what the platform, if you have “it’ installed, patch “it.” Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 68 Chapter 6 – Justifying Patch Management—A Business Tutorial H e has his laptop. He has printed, bound, and carefully reviewed his customized PowerPoint and he is finally off to present to one of his biggest prospects! The day is cool; the weather perfect the feel of a sale is in the air! The last eight months have been grueling; this prospect is one of the most demanding he has ever worked with and his company has met the prospect’s every demand. What our eager sales person doesn’t realize is that his trusty laptop, the one he carries with him every where, the one that has been to the beach, and the one that has survived being dropped at the local Starbucks is about to cost him this deal. Management and Patch Management Why should any sales director be concerned with the company’s current information technology infrastructure? The sales director is responsible for a team of people who, in general, are not going to be cutting edge IT specialists. They need access to prospect information, the ability to write a letter or an e-mail, and internet access for research, but not necessarily much more. The sales director is responsible for insuring that the team is successful, efficient, motivated, and passionate about their position. Would a sales director be interested in reading a complete guide to patch management? Highly unlikely, but why does management need to be cognizant of patch management best practices? Why? A sales person visits a prospect. The sales person walks in with a portable computer with an innovative presentation that the marketing department just prepared. He sets his computer on the table and connects with the prospect’s IT person. He turns the laptop on and plugs it into a projector. During boot up, the IT person at the prospect’s site notices that the machine boots to a Microsoft Windows 98 screen. What is the first impression? This prospective vendor and his company do not know how to protect themselves from vulnerabilities and risk, “that the company is using old software,” “that the company is using an unsupported operating system!” The IT person can only feel relief that the sales person has not asked to use the internal internet connection. “We could have been infected in less time than he plans to be presenting (at best 20 minutes).” Now consider the last presentation that you attended. Did you notice the equipment used? Have you personally questioned the technical competence of presenters? Did you know that even in security-focused presentations the audience could be shocked when the presenter’s laptop has the icon in the toolbar indicating that a security patch’s status as downloaded but not installed? These two situations indicate that the decision of each person’s company “not to keep current” just cost the sales person a sale and reduced the reputation of the presenter and the company he represents. What is worse is that they do not even know what hit them! Before the presentation even started, the prospect’s IT person is projecting a negative attitude and the technical people in the audience are prejudiced even before the sales person opens his mouth, and the nontechnical attendees are picking up bad vibes. I can sympathize, as I have been in this position. Buyers judge salespeople on their looks, their knowledge, their articulation, and the tools that they carry. Keeping a sales representative’s technology current is a huge concern for the sales director. Our sample scenario involves not only a lost sale, but also seriously compromised sales staff motivation. They feel abandoned when they factors outside their control nail them. Getting a meeting can be an extremely difficult and can occasionally take years. It is critical to create the best first impressions in first meetings, as most sales managers understand. Keeping a company’s machines current and secure sends a message to the buying audience that your company cares about security! Compare it to the Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 69 “infection” impression you might get if someone wiped his nose before offering to shake your hand! Now apply our sample insecure scenario to a larger sales event such as a trade show. Most trade show exhibits rely on shipped or rented computer technology. This equipment runs slide shows, highlights product benefits, demonstrates product features, and collects prospect and client information. When did you last patch your company’s trade show equipment? Consider that larger companies often dedicate some equipment for use at shows only. Among some of the larger vendors, you would assume that the trade show equipment was well “oiled and greased” before shipping. However, a malicious worm called Slammer hit during the American Institutes of Certified Public Accounts’ 2004 annual technology conference. The vendors all had invested thousands of dollars in booth space for the audience of almost one thousand technically inclined CPAs. The show included an audience of firms working with almost every business in the United States and was an attractive venue for reaching businesses. For a vendor a trade show also includes additional costs including equipment rental, the care and purchase of the booth itself and staff expenses; and yet over half of all the vendors in attendance had no way to conduct business when Slammer hit. This included some of the largest computer vendors in the world and some of the more technically advanced vendors in the country. Vendor representatives were depending on attendees for help and vendor booths were “dark.” The impression was significant! Management was oblivious to patch management best practices. Some are still recovering. We can agree, then, that patch management best practices affect image, marketing, and sales, but they also affect other departments, as well. An Officer’s perspective We can view corporate officers’ responsibilities from several angles. There are the big picture considerations and decisions that require a forward thinking individual who constantly looks toward what ultimately should happen. Then there are getting the tasks done to reach smaller and then progressively larger goals. We refer to the above as the doers and the thinkers. The thinkers can artfully decide where a company needs to be in a month, a year, or in five years to grow and prosper. The doers have a way of using the available resources in a company, including the specialized skills of team members, to achieve the smaller goals and to move toward bigger picture items. Patch management or the lack of patch management procedures affect both of these types of leaders and their daily environments. The CEO, President, and Founder are generally big picture thinkers when it comes to a business. The CEO must constantly be aware of the environment in which a company does business. He is the captain of the ship and needs to know about the possible iceberg formation hundreds of miles away, of parallel business traffic that might interfere with the company’s plans, and of environmental variables. When it comes to security patch management, the CEO needs to know of the level of risk associated within any given period. He also must be the compliance manager! Vulnerabilities and risks, created by the very nature of technology, affect big picture decisions for moving forward and must be on the CEO’s agenda. If we consider that the global environment in which we all do business is subject to government regulations, a war, or other factors that can increase the risk, then the CEO must be extremely sensitive to any “exposed” sides of a company. Additionally today, the CEO must also be concerned with his own personal risk due to noncompliance. Given that the technology infrastructure of a company is in constant change, the exposure to risk is a changing variable that needs constant attention. To the CEO, patch management is about best practices and compliance; it is about reducing risk and vulnerabilities; and it is about protecting the corporation, the corporate officers, and the team members. Consider that Gartner predicts, “By 2005, 60 percent of security breach incident costs incurred by Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 70 businesses will be financially or politically motivated.” increases corporate risk. 88 Weak or ineffective patch management The Chief Information Officer or Chief Technology Officer focuses on the use of technology within a company. This position emerged in the United States in the 1980s as a business-focused extension of the position of Director of R&D. Large research-oriented companies like General Electric, AT&T, and ALCOA created this position to increase the profits derived from research projects in their laboratories. During the dot-com and computer boom of the 1990s, many companies used the CTO title for their senior technical person. The MIS and IT community often use the title CTO as either synonymous with Chief Information Officer, or as a subordinate to the CIO who is more versed in the technical intricacies of the systems being deployed. There is no uniform application of the title and this causes confusion when people across domains discuss the role of this person. The roles of the CTO vary among companies and within industries, but 89 usually relate to technology. Immediately we realize that creating and rolling out a patch management best practice environment is closest in responsibility to the role of the CTO, but do patch management best practices help the actual IT departments? Does a patch management best practice make a CTO’s job easier on a day-to-day basis? Information Technology departments are traditionally environments of crisis management. Depending on the day, a set of workstations could be down, a database could be corrupt, or a network could be having trouble that requires the attention of the IT department staff. The Director of IT must also deal with limited resources to manage these crises given the erratic nature of the demand for IT professionals within a business environment. When a new application rolls out to a department, the demand for support significantly increases. On the other hand, if the application and infrastructure environment has not changed over the course of a few months the demand for IT support depends on outside variables that affect the internal infrastructure. In no other department can patch management best practices or a proven patch management process have a bigger impact then to reduce the demand on the IT staff. Small changes to applications and operating systems create efficient environments for problem resolution. If the corporate policy is to wait to install updates and patches, than the changes become bigger and bigger depending on how long the wait extends. Not only do the changes become bigger by accumulation, but the vulnerabilities increase as more and more programs that exploit vulnerabilities appear. We must also consider that the longer a company waits to role out a patch, the further away the vendor who created that patch gets from its development. This creates a situation where it is harder for the original vendor to make additional changes based on the idiosyncrasies of any one customer. Specific industries also must contend with special issues. In the medical community, for instance, the CTO balances the needs of patch management as recommended by the security provisions of HIPAA rules with the restrictions that medical equipment vendors impose to ensure that their equipment has a controlled change process in place. We will focus more on industry specific niche issues in further chapters. This brings us to the Chief Financial Officer (CFO), the accounting manager, or controller. “A financial manager, through his understanding of the company's financial health, the current 90 market, and the goals of the company, helps set direction and guides decision making.” The financial manager must understand more than numbers. He must be able to interpret data, be a researcher, and comprehend what needs to occur within his sphere of influence to help a business prosper. This includes balancing business needs/decisions/goals with investor’s needs/decisions/goals. The financial outlay and the investment that is required for rolling out any patch management best practice solution usually becomes the first consideration for the CFO; however, CFO’s are also very concerned with risk. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 71 How do you measure the impact of patching versus not patching against the investment needed in both time and dollars to roll out a proper system? There are certainly the tangible and intangible variables and we will consider these as we look at ROI, but remember that downtime costs money, sometimes so much soft money that measurement becomes extremely difficult! Downtime can also create either more of/or less of an impact depending on the nature of the business and the industry niche. Technology is also its own industry niche and technology variables affect patch management best. The CFO who compiles and creates the ROI around patch management must be more than a CFO. He must be a CFO who understands technology and the balance of risk within the technological world. We then have the Board of Directors, a group of executives often not located with or employed by the corporation. Most managers however do report to a board, but when it comes to patch management best practices a board of directors has a very different focus. They are independent of the firm but how they manage themselves, and how patch management best practices impact the board can cost a firm significant funds and loss of resources. Consider the cost of the board of directors to a corporation. Senior executives are expensive! Now consider what they are offering. Board members offer insight, experience, connections, and opportunity. They offer oversight and management support. The board has experience with the industry as a whole, with acquisitions and mergers and with the potential opportunities to a firm. With a board ranging from six to nine members, this bandwidth should be making powerful decisions and often they do—but—and the big “but” comes in the flavor of access to information and managing that access. How can the board make decisions without the appropriate information or without accurate access to current data? Printed reports a few months out of date are not easily digested, nor very applicable in an extremely fast changing environment. One of the epidemics in the corporate culture is the lack of available access to or appropriate control of digital information within a corporation. Board members are often corporate members of other companies, their internal privileges need monitoring, and their access is sensitive to changes. Yet they are often forgotten when changes need to be made. We find poorly rolled out patch management best practices can easily compromise the sensitive relationships that exist between a board and the management team, and repairing these relationships is not an easy task. If the BOD has no access to appropriate and current information then the company is not getting full benefit of their expertise. "There is a delicate balance between limiting insider access to information and crippling the ability to create revenue," said Richard Hunter, vice president for Gartner. "Generally, this conflict between security and commerce is resolved in favor of creating 91 revenue and therefore facilitating insider crime." Gartner advises that among other actions, businesses must create and enforce legal agreements defining legitimate use of proprietary 92 intellectual property by trading partners and employees. These legal agreements can also fall under the security arena best practice umbrella. Now consider, does the CTO always have deep insight into the existence of these legal agreements? When designing patch management best practices carefully consider every department within a company and every person who needs access to all data. Plan how to keep data available to those who need access and how to comply with existing legal agreements—not only how but which legal agreements apply to best practice policies. Control board member access by network and files rights management techniques such as limiting data and file access to read only or storing corporate data that is unrelated to the duties of the board in folders that are inaccessible to the BOD. To use the power and connections of a board effectively, a company must train and work with these senior level executives to ensure they can use the power of data mining and business intelligent tools. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 72 We turn our attention now to sales, marketing, and customer service. What about the every day tasks that employees and staff must accomplish to meet their job requirements? As more and more companies depend on technology to meet the needs of prospects and customers, problems can affect every department’s productivity. Marketing, consciously or unconsciously, integrates with almost every process within a corporation. Most corporations have a marketing department focused on the task of marketing externally by polishing a company’s image by preparing financial statements, producing and promoting products, or delivering compelling customer service. Marketing is part of every step of the business process. Technology is close to same role. When we call a client, we look up a telephone number (using technology). When we bill for a product or service we use accounting information systems (technology). When we market or advertise a product, we design mailings, make calls, or put advertisement in the news (using technology). We talked about the impact of poor patching on the sales process and certainly, our example plays to the perception for the new prospect. The firms impacted by the SQL Slammer and Blaster viruses realized quickly that not only did they have a “technology” issue, but a “marketing” issue. The fact that their firms’ names appeared on the nightly news as targets of these events caused issues that their marketing or public relations departments had to deal with. What other issues can an unpatched or even up to date systems cause? If a machine within the marketing department is not current, updated, or patched, it can become an issue with the outside vendors who work with that department. For instance, a publisher might not accept an electronic file needed for advertisement, because it is not in a compliant or specific format. This issue limits the marketing department’s efforts to create brochures; company t-shirts, mass mailings, or other products in compliance with outside requirements. In smaller firms, having the appropriate version of the software to produce the correct files can be a daunting task, but it is a rare magazine vendor who will accept a digital advertisement that is not compliant with the latest digital format. Having technicians to keep a firm current and up to standard increases the internal efficiency of file sharing as well as the external needs of file sharing with other vendors. When a company’s tools are current, that company is in a better position to compete. Security issues within marketing create layers of policy that affect standard practices such as emailing files. In late 2004, a security issue with image files caused some firms to begin to analyze whether or not to block such attachments. Industry wide best practices to block image file attachments slammed the marketing department’s use of e-mail to share files with publishers. A Patch Management Best practice includes knowing what types of files are in transport at any given time within a firm or department. Using policy to single out what is permissible within the marketing department increases the department’s ability to work while allowing IT to focus on the most relevant threat vectors. Blocking all attachments cripples the marketing department and crisis management would kick in to resolve the issue. Keeping systems on standards platforms and consistent with Patch Management Best Practices assists in ensuring that a business stays agile, out of crisis management and proactive in it’s ability to ensure interoperability with other business partners. Customer service is an ideal place to gather customer information and many firms fail to take advantage of this opportunity. Without patched, functioning, and current CRM software, data is continually lost, even though data accumulated equals powerful information for a firm. A dysfunctional CRM system is worse than having no CRM system because when customer service representatives run into a problem with the system they are usually on the phone with a client or prospect. Nine times out of ten the client or prospect has the impression that the corporation cannot keep its computer systems running. Talk about direct ding! Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 73 Lastly, we must consider that at the heart of every business is the supply chain and cash flow! The supply chain (inventory control, manufacturing, purchasing, etc.) is truly the blood that keeps a business alive. Consider that any company that manufactures a product relies on machinery to produce that product and, more and more, machinery relies on software to function. We must be keenly aware of what sort of problem this type of software dependency would cause. Machinery is becoming comparable to a living, breathing, and changing creature that needs careful management and maintenance, and the biggest management component of machinery software is patch management. Much of our world relies on software and this phenomenon is only going to grow. Consider the number of electronic devices used in any given environment; you have to accept that without the proper functioning of these critical devices we would be in serious trouble. “The epidemic of Windows-based worms and viruses in the past year has put hospital IT administrators on a state of high alert to protect patient-care systems that have become reliant on Microsoft operating 93 systems.” It is not just the Microsoft operating system at risk. More and more sophisticated hackers are wasting time creating havoc. The end of 2004 saw a barrage of Oracle database vulnerabilities released to the web right before the Christmas holidays. The Oracle Database infrastructure is not dependent on the Microsoft operating system. It runs on a variety of platforms with a variety of operating systems. For all firms using Oracle databases and software, crisis patching requirements increased at a time when business was busier than usual. How can businesses deal with the risks generated by external security threats and documented by researchers who discover and document these threats? How can the best practices help us reduce risks? Understand your unique environment, build strong relationships with vendors, and implement business-to-business (B2B) best practices that include high quality, partner-level relationships. Such relationships provide you with options, agility, and customized resolutions. This book focuses on many different elements of patch management best practices, the most fundamental of which is building and maintaining relationships at levels that create good flow of information, partner-to-partner win/win resolutions, and communication. To understand fully each manager’s risk assessment role, review the following guidelines provided by the National Institutes of Standards and Technology. Senior management, under the standard of due care and ultimate responsibility for mission accomplishment, must provide the necessary resources to develop the capabilities needed to accomplish the mission. They must also assess and incorporate results of the risk assessment activity into the decision making process. An effective risk management program that assesses and mitigates IT-related mission risks requires the support and involvement of senior 94 management. Senior managers have a level of power that can cut through layers of people and “peon filtering.” Senior managers need to build bridges between the appropriate people at vendors the firm depends on, allowing staff to connect with the appropriate people at other corporations. Chief Information Officer (CIO) is responsible for an enterprise’s IT planning, budgeting, and performance including its information security components. Decisions made in these areas 95 should evolve from an effective risk management program. The CIO attends trade shows and industry events, and mixes and mingles with other CIOs in the specific niche. The CIO also communicates information regarding threats to a given industry. System and information owners are responsible for ensuring that proper controls are in place to address integrity, confidentiality, and availability of the IT systems and data they own. Typically, the system and information owners are responsible for changes to their IT systems. Thus, they usually have to approve and sign off on changes to their IT systems (e.g., system Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 74 enhancement, major changes to the software and hardware). The system and information owners must therefore understand their role in the risk management process and fully support this 96 process.” System and Information owners are classic roles for participating in forums known to discuss the current risks. These forums include patch mananagement.org as well as industry specific niches focused on security risk analysis. Relationships with technical experts in the security space increase the resources a system and information owner brings to a corporation. Business and functional managers responsible for business operations and IT procurement processes must take active roles in the risk management process. These managers have the authority and responsibility for making trade-off decisions essential to mission success. Their involvement in the risk management process enables the achievement of proper security for the IT systems, which, if managed properly, will provide mission effectiveness with a minimal 97 expenditure of resources. The business and functional managers bring an outside perspective to the role of creating patch management best practices. Using their relationships, they can communicate options and case studies about how others within the corporate world are reducing risks, giving enough variable and perspective to pick the most efficient path. Information system security officers (ISSOs) and computer security officers are responsible for their organizations’ security programs, including risk management. Therefore, they play leading roles in introducing appropriate, structured methodologies to help identify, evaluate, and minimize risks to the IT systems that support their organizations’ missions. ISSOs also act as major consultants in support of senior management to ensure that this activity takes place on an 98 ongoing basis. Given that change happens so fast in the world of technology and even faster in the world of security, the best technologists and have depth of contacts unmatched by their peers. IT security practitioners, that is, network, system, application, and database administrators; computer specialists; security analysts; security consultants are responsible for implementing security requirements in their IT systems. As changes occur in the existing IT system environment (e.g., expansion in network connectivity, changes to the existing infrastructure and organizational policies, introduction of new technologies), the IT security practitioners must support or use the risk management process to identify and assess new potential risks and 99 implement new security controls as needed to safeguard their IT systems. Security awareness trainers (security/subject matter professionals) school an organization’s personnel in the use of the IT systems. Use of the IT systems and data according to an organization’s policies, guidelines, and rules of behavior is critical to mitigating risk and protecting the organization’s IT resources. To minimize risk to the IT systems, it is essential that system and application users have access to security awareness training. Therefore, the IT security trainers or security/subject matter professionals must understand the risk management process so that they can develop appropriate training materials and incorporate risk assessment into training 100 programs to educate the end users. Industry Requirements/Standards Healthcare Industry—in no other niche environment can this be better illustrated then in the world of medicine. A healthcare facility provides a heart cathode system that includes a couple of personal health Information (PHI) servers attached to the facility’s network. In security scans of the servers, the head of the IT team has noted that the manufacturer is not maintaining operating system patches and will not approve running antivirus software on these devices. The local IT team has been diligently working with the manufacturer to have the holes patched. It is not that easy, as the manufacturing vendor has made no progress. Meanwhile, the epidemic of Windowsbased worms and viruses in the past year has put hospital IT administrators on a state of high alert to protect patient-care systems. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 75 The hospital IT team has been diligent and has installed a monitoring software package on the servers to allow remote access to the systems. This software identifies a rogue dial-up modem and a few other violations of the normal system setups; however there are additional problems as the systems came with a virus scanner that the vendor updates and the vendor is updating this virus software only once a month. This standard for virus detection is outside the local IT department’s best practice policies. With the local team, the best practice standard is to install the virus definitions as they became available from the anti-virus vendor. It gets even more complicated as the manufacturing vendor has asked the local hospital IT team to remove the monitoring software and the anti-virus scanning software, stating that they cannot 101 support the system running software from other vendors, as doing so skirts FDA approval. Often, networks allowed to grow organically are not properly isolated and, as such, lie outside proper protection. All businesses need protection, but rolling out a patch does carry risks because rolling out a new patch is introducing new code and managing these risks is the goal. The manufacturing vendor is ensuring their due diligence about testing and certifying patches and the world at large needs to be diligent about expecting and requiring vendors to raise the security bar by approving patches in a reasonable period. Some vendors within the medical equipment niche have pointed to United States Federal Drug Administration rules mandating “pre-market submission tests” as the reason for their delay in approving patches. While this might make sense, it is not good enough, particularly given the online arguments against such statements. “The FDA says fingers shouldn't be pointed in its direction,” argues one poster. “The medical device manufacturers say they need FDA approval, but they don't," says another. "If this is a 102 security or virus-related patch, it doesn't require the pre-market submission,” notes a third. “Today, the delivery of healthcare increasingly relies on medical information systems (MedIS). Such systems rely on modern information technology to digitally collect, process, distribute, display, and store patient data. MedIS, like other IT-systems, are vulnerable to malware attacks. MedIS owners and operators have a special responsibility to shield their systems from malicious 103 attacks,” and patch management is a critical component of this responsibility. If we look at another example we can consider the process of medical images.” Medical scanners hit by viruses and worms can be put out of action for weeks while manufacturers decide how the problem can be fixed and whether patches to prevent future problems can be applied,” an 104 investigation by E-Health Insider has found. “The fact that many medical scanners now run on Windows operating systems connected to hospital computer networks to enable images to be stored and shared compounds the problem. This means that, unless patches are promptly applied, a scanner running Windows and connected to such a network is susceptible to viruses and worms designed to attack Microsoft software.” This system could then be down for weeks. Despite such potential devastation, “not all manufacturers have a clear policy about how and when new security patches should be applied to their medical imaging devices, and in some cases will not allow hospitals to apply security patches themselves.” The dilemma in healthcare becomes the quagmire of who is responsible for what compliance. The scenario involves “healthcare IT professionals [who want] to patch networked medical devices and run anti-virus software against them, but say their hands are tied by medical device makers and the FDA,” and the “medical device makers [who are] balancing the need to keep their products from getting infected by viruses and worms with making sure the devices meet FDA requirements” and the “FDA [which] requires medical device makers to adhere to strict 105 manufacturing processes, but wants IT pros and device makers to work out their differences.” The telecommunication industry differs from the health care industry in that it tends to deploy patches when they become available into a heavily tested inactive environment. There is no known standard, but generally rollout occurs on an as needed and when available basis. Vendors handle patches as part of the maintenance contract. Because systems carry live voice traffic, the Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 76 telecoms have to schedule the updates for non-peak times, which are generally around 2am. They bring up the inactive side of the equipment, run it through its tests, and then switch over to the active side when they are ready. Once network admins deploy a patch to a live network they test on the live network making test calls of all sorts inbound, outbound, tandem (in to out), announcement, call failure, and more. Even with these industry standards, there are historical instances where software upgrades did not go as smoothly as they should have. For instance, in 1998 AT&T experienced “a unique sequence of software flaws that caused an 106 outage” “AT&T said the problem began when a computer command to upgrade software code in one of the network switch's circuit cards created a faulty communications path that generated a large volume of administrative messages to other network switches. As a result, the other switches quickly became overloaded and stopped routing data from customer applications for periods ranging from 6 to 26 hours before the network was fully restored” The resulting impact caused disruption for AT&T’s networks and their frame relay customers resulting in a frame relay network that was out for 26 hours—yet it could have been much longer. “Praising Cisco for its cooperation in identifying the root cause of the problem and designing a fix, AT&T expressed “confidence in Cisco and its products.” AT&T will share its analysis of the network outage with the FCC, the industry-wide Network Reliability Council, and other network providers. “By sharing this information and best practices,” and AT&T spokesperson said, “we will help customers avoid similar network outages no matter which carrier provides their frame-relay service." A 2002 Agilent white paper documented the scope of the event. Disruption to customers lasted up to 26 hours and included the failure of mission-critical bank transactions. The fact that Service Level Agreements (SLAs) had promised 99.99% availability and four-hour recovery times (meant that) approximately 6600 customers were not charged, resulting in millions of dollars in lost 107 revenue alone.” Each equipment vendor to telecommunication providers has a different procedure for applying patches, and there may not be a documented procedure within a particular company. Deploying patched is just part of their maintenance procedures when they are working on the equipment. On the other hand, technicians generally deploy updates throughout the entire organization because vulnerability may affect call processing, and if there is an issue, everyone is aware of it, including customers. The vendors do as well, as the CLEC pulls down and applies the updates from the Website. It just depends on the type of equipment. The equipment may be the actual voice switching equipment, fiber optics transmission, digital loop carrier equipment, channel banks, or DSL equipment. Many of the costs to Service Providers caused by outages and downtime are tangible and easy to measure, such as • Direct costs of service restoration and equipment upgrades • Loss of revenue during outages • Penalties associated with customer SLAs However, the real costs include some losses that are harder to quantify but may be far greater. For example, • Lost revenue from dissatisfied customers moving to competitors or taking new business to competitors • The cost of a tarnished image; the lessened ability to credibly market future premium differentiated services Wall Street, Chicago Board of Exchange, and the world of finance is another world in which patch management and risk management best practices are of concern. In the world of fast decisions and even faster trading, Wall Street assesses downtime in the millions of dollars. There Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 77 is no room for vulnerabilities that can slow the trading process, for a slow down can mean millions of dollars in cash flow. The question in the world of finance is not when to update, but to maintain reports proving the system is patched and current. That the patches were tested and that best practices are in place. The financial world delegates risks to trading, while reducing the risk of downtime to the smallest possible variable. "Our organizational culture has been developed around an offensive mind-set, with innovation as a critical underlying theme,’ says Guy Chiarello, CIO of Morgan Stanley's Institutional Securities 108 Group.” In the financial industry, firms use their technology expertise to competitive advantage and as distinguisher factor. “At Morgan Stanley, one aspect of technology innovation is providing a better understanding of risks. [we have} a position, called IT risk manager that pulls together all the issues that underlie risk for a technology organization. This includes document and instant messaging retention, data security, market and credit risk, operating risk, and compliance with 109 Sarbanes Oxley and Basel II. "Whether it is data security, security around client technology offerings, or overall operating risk, risk management—and all it encompasses—now requires 110 greater focus," says Chiarello. “ There are some high profile examples of where patching and poor patch management process caused trouble. Consider, for instance, PayPal’s October 2004 incident involving a poorly tested update. “PayPal started experiencing problems with its service following a monthly software update. Officials at the company, owned by eBay Inc., blamed a software glitch for intermittent 111 outages that cut across account access as well as payment, shipping and other services. Not only did PayPal customers suffer from lack of access and a screeching halt to their business, but also PayPal had to recover from the public relations hit. Remember we mentioned the marketing aspect, and the impact on customer service – you can bet that the PayPal customer service team was working triple time this weekend. We also talked about sales, how would the above affect your sales team? Do you think “pending sales” that were about to close on Monday would close? We can see the impact of one incident is no by reviewing what came out in the news for the next few weeks about the problems with PayPal and the management of updates. What are the ties between patch management and disaster recovery? Disaster recovery is the umbrella under which patch management resides, but there is more. Mishandled patches can also cause disasters that a corporation may be ill prepared to handle efficiently. A CTO at a rather large enterprise recently revealed that backing up an Oracle Financial system and database prior to applying a patch took 10 hours. Applying and testing the patch for proper installation took another 5 hours and, if a problem developed, the restore took another 12 hours. Now consider that we just discussed at least 27 hours of potentially billable time that needs accounting for by the people who work with the Oracle Financial system. The financial concerns are huge! The time concerns are huge and the need for storing patches for recovery is critical. The software vendor perspective views our global environment and is aware of the options and risks associated with this environment. Patch management ties into security, disaster recovery, and IT best practices, but it also ties into a deeper understanding of how software vendors create software, how they create and release updates, and how to work most efficiently within a B2B model. The corporate relationship between software vendor, reseller, and business consumer is critical to businesses that depend on technology. We all know that software has bugs and will continue to have bugs. There is no known quality control process to eliminate all vulnerabilities in software because users and other applications significantly affect any specific software application. If we can’t eliminate all the vulnerabilities within the software and the people who use the software, then what better relationship to nurture than that with the team who knows the software code better than anyone else in the world! In response, the vendor who produces and releases software is generally the number one firm with Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 78 which to nurture a relationship. For the bigger software vendors we must develop bridges through the reseller or user groups to insure so that we understand vulnerabilities and stay ahead of the patch management process. Cyber crime persists. In the U.S., during the five years from 1999 to 2003, attacks on computer servers increased by over 530% to 137,000 incidents. This is partly attributable to vulnerabilities in software code, which have grown from 500 in 1995 to over 9000 in 2002. Developing countries are also susceptible, even after relying on leapfrog technology. Brazil has seen hacker attacks increase by at least 100% yearly since 2002.These growing numbers bear particularly important on the financial sector. The International Data Corporation reported that more than 57% of all hack attacks last year targeted the financial sector. The FBI has corroborated this statistic. Equally troubling, FINCEN’s Suspicious Activity Reports for Computer Intrusions have shot up more than 500% over the past year. With the growing amount of financial data stored and transmitted online, the ease of computer intrusions adds to the severity of traditional crimes such as identity theft. To put this in perspective for the digital age, over $222 billion in losses accrued 112 to the global economy because of identity theft. We can all agree that cyber crime is not going away and as more and more countries and people use computer systems, the law of numbers comes into play. We can assume that vulnerabilities will increase, that software will continue to change and that remain patched is one of many of the defenses we need to use to reduce risk. Best practices continue to spread across the growing global economy. Government regulations continue to assure that the mistakes made by a few do not compromise those within the greater expanse of the world. These mistakes can include pure malicious intent such as that which occurred at many of the large corporations famous in the news and no longer in existence today, to deficiencies in services and products from pure incompetence. Best practice methodologies cross numerous industries, though some are niche specific. They include methodologies such as Six Sigma and compliances such as ISO900x and government regulations that need to cross all industries like the Sarbanes Oxley Act of 2002. With software controlling much of the world we live in, the best practices around software maintenance mix with the methodologies in place to insure high efficiency, high profit, and low risk. Consider how Sarbanes Oxley affects a patch management best practice. Sarbanes Oxley is a complex document, but we must consider it when thinking about the network and computer systems that handle any financial data. Detailed auditing and compliance, computer glitches, hackers, and poor security are no longer acceptable errors in the business world. Accountability and compliance rule the day. If we consider the following four interpreted sections of SOX, we can quickly see that the control of internal systems is very much the responsibility of the management team for each corporation. Yes, management can delegate responsibilities, but they cannot forget them. The AICPA Business & Industry Team assembled an ad-hoc task force of members to address issues relating to management's responsibility with respect to Section 404 of the Sarbanes-Oxley Act of 2002 titled "Management Assessment of Internal Controls.” “The ad-hoc task force assembled a list of key issues to communicate to their peers in other companies that are similarly 113 impacted. The following is a list of four of those key issues and examples with regards to the risks associated with network systems and patch management best practices “Management is required to document the system of internal control over financial reporting. As required by the Sarbanes-Oxley Act of 2002 (SOX), section 404 (Management Assessment of Internal Controls), management will be required to assess the effectiveness of these controls. The ASB believes that the evidence management uses to support its assertion about the effectiveness of its internal control also should be documented. The ASB believes that a failure to document the system of controls or the evidence used in making the assessment should be considered a weakness in internal control.” Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 79 Documentation of financial data is more than a report, more than extracted data and/or compiled data and certainly contains numerous levels of detail. Most of the time base data comes from repositories on computer systems. If management is required to document the system for internal control then they must consider and then incorporate how to validate and protect the financial data on the network. How should managers control this data? How, for instance, can an admin confirm that a physical error on a hard drive has not caused a problem with the data residing in that location? How can he ensure that redundant or malicious data has not been inserted? Certainly reconcilable reports are one answer, but not all companies take this simple step. As we move away from paper, we must continue to consider internal controls and the teams responsible for these internal controls. “Positive testing of internal control must be performed to make the assessment under SOX section 404; inquiry alone is not adequate testing. Negative evidence, such as proper financial reporting, is not evidence of good internal control. On the other hand, a material misstatement detected by the auditor’s procedures that was not identified by management ordinarily is indicative of the existence of a material weakness in internal control.” Several consulting engagements have discovered data being reconciled actually crossreferenced itself. How can this be? What does this mean in real terms? Let us say you are using accounting system XYZ Software. It handles all of the financial data and accounting for your company. If you decide to run your controls using a spreadsheet software package then there is no conflict as long as the source data you are retrieving is independent of the XYZ Software product. If you are manually entering the amounts into the spreadsheet package from a report run out of the accounting system then the two are simply duplicates and reconciliation would be ridiculous. How can this happen? Quite easily, when you consider the superficial knowledge that most users have when it comes to computer systems. Controls remain valid if practitioners retrieve the data compared independently and enter it using two different systems. How does patch management come into play when talking about accounting software? The accounting software itself needs regular patching. “The documentation should encompass all significant account balances and disclosures. The company’s auditors may be utilized to help in the documentation of controls; however, management cannot abdicate its responsibility for the documentation.” How many people do you know understand the true nature of writing custom reports and are proficient in using data mining tools? What would happen if a malefactor compromised a system prior to extracting data? Do you think that the data retrieved would be accurate? If a user chose to extract only the summarized A/R data from one field within an accounting system (the summarized A/R for the month) and a transaction improperly updates the A/R transaction data but not the summary within the database will the totals for the extracted A/R data be correct? How would the user know? What if the detailed A/R was purged? Many of the controlling techniques are standards that go back to the days before computer systems, yet proper management of data has a significant impact on the ability to reconcile. The handling of data when posting, updating, and/or simply using a computer system is at the mercy of the vulnerabilities of the software itself. Since an unpatched system is at higher risk, data posted to multiple locations can be inaccurate. Consider the core operating system software or the development software used to write applications. The OS and development tools are also software packages that can have vulnerabilities. In fact, when programming during the Y2K crisis, we discovered that the core numeric fields within the software language we were using was truncating numbers to two decimal places for display purposes. This truncation was not rounding; it was simply dropping the last numbers. The displays would print and, as such, multiple displays when compared to reports were not reconciling. If as little as a penny of discrepancy can mean millions of dollars worth of differences (which is often the case in accounting) how do you think this error within the basic tool Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 80 set affected the job of the accounting manager? Numerous technical support calls and hours of research were required to report the bug, retrieve the patch, and update systems. What would happen or what does happen to the firms who are not reconciling as closely when errors appear months later? Who is impacted? The accountability is with the management team. The management team must be diligent about best practices! Policies should specify addressing vulnerabilities as they appear. When using outside service organizations (e.g., data processing, payroll processing, etc), management should consider the activities of the service organization when making an assertion about the effectiveness of the company’s internal control over financial reporting. A service organization typically engages an auditor to examine and issue a report on certain controls at the service organization, and this report has historically been a tool used by the independent auditor in planning the nature, timing, and extent of the auditor’s procedures. If a service auditor’s report on controls placed in operation and tests of operating effectiveness is available, management may consider whether this report provides sufficient evidence to support its assertion. Since the date of the service auditor’s report is not likely to correspond with the entity’s end of fiscal year, management will need to consider what changes, if any occurred at the service organization subsequent to the service auditor’s report and the effect of the time lag on their assessment. When significant changes occur, or a significant time lag exists, management may need to apply their own procedures at the service organization with respect to those subsequent changes or significant time lag. As illustrated above a company’s patch management policy can affect every department. If you do not have best practices for patch management in place, you cannot expect your partners to have them. Compliance with ISO900x ISO900x covers a wide spectrum, but we will focus on its focus on quality control and quality assurance. What is amazing is that it is not that different from a big picture view from the various other standards we have been discussing except that it has a long history of tagging a company as a quality player internationally. The ISO certification indicates an intensive process of documenting and commitment to keeping procedural process documented. With the new requirements to meet SOX government regulation, the ISO opportunities increase. While SOX is about compliance, ISO is about international opportunities not otherwise available to corporations when incorporating and DOCUMENTING Patch Management best practices you support the firm in meeting long term ISO 900x compliance goals. The world is becoming more and more global. Reviewing and understanding ISO can give the corporation a HUGE competitive advantage and can open the doors to new opportunity otherwise not possible. Consider adding an added WIN to your patch management best practices project. Look into getting ISO certified, it is not just for manufacturing plants anymore. The specific security guidelines of ISO17799 also provide a base for justification of patch and software management even though the process is not expressly stated in the documents from the ISO organization. The ultimate protection for vulnerability is to remove the vulnerability either in the form of removing the service or, if you are unable to remove the service, ensure that the flawed code is replaced by the patched ISO code. However, one should remember that while we tend to stress “security patches”, patches can also be needed for fixing software bugs. Section 6.3.3 of the ISO 17799 standards require that procedures for reporting software malfunctions be put in place. Compliance with industry association standards and regulations How can you reduce risk and increase compliance? Standards, Standards, Standards! There is some thought that “there has been progress in developing information-security risk metrics over Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 81 the past two decades, but there is still a way to go before standard metrics are established, 114 adopted, and practiced.” The following is a list of a number of institutes who offer Security standards. The International Information Security Foundation (IISF) Generally Accepted Systems Security Principles (GASSP) located at http://web.mit.edu/security/www/gassp1.html. The International Standards Organization (ISO) ISO 17799 located at http://www.iso.org/iso/en/ISOOnline.openerpage. The European Information Security Forum (ISF) Standard of Good Practice located at http://www.isfsecuritystandard.com/index_flash.htm The Institute of Internal Auditors (IIA) Systems Assurance and Control (SAC) located at http://www.theiia.org/esac/index.cfm. The Information Security Audit and Control Association (ISACA) Control Objectives for Information and Related Technology (CobIT) located at http://www.isaca.org/ How can we help the CxO or IT Technical director to summarize these standards and simplify the process? There are a few fairly simply rules of thumb: Document processes so that if the person responsible for a process is no longer available the business will continue. Update these documents for change happens fast in the transitional phase of the global economy and certainly in the world of technology culture growth. Create your standard so that it is a living document and grows with the business. This requires that more than one individual understands and can easily update said documentation. Define efficient processes including the process of pushing out updates (including testing, backing up, and adopting change). As a small business consultant, I recommend reviewing the following sample documentation and guidance: HIPAA: http://cms.hhs.gov/hipaa/hipaa2/readinesschklst.pdf Gramm Leach Bliley: “Security Check: Reducing Risks to your Computer Systems: http://www.ftc.gov/bcp/conline/pubs/buspubs/security.htm Financial Institutions and Customer Data: “Complying with the Safeguards Rule,” http://www.ftc.gov/bcp/conline/pubs/buspubs/safeguards.htm ISO 17799: http://csrc.nist.gov/publications/secpubs/otherpubs/reviso-faq.pdf Governmental engagements: http://csrc.nist.gov/pcig/cig.html SOX 404 (for small companies that are subsidiaries of publicly traded companies) http://www.pcps.org/pdf/article_mike_ramos_01.pdf http://www.isaca.org/Template.cfm?Section=home&Template=/ContentManagement/Con tentDisplay.cfm&ContentID=12406 Cross Border Privacy Issues: http://www.itgi.org/Template_ITGI.cfm?Section=Security,_Control_and_Assurance&CON TENTID=5556&TEMPLATE=/ContentManagement/ContentDisplay.cfm EUROPA Data Protection Guide: http://europa.eu.int/comm/internal_market/privacy/guide_en.htm Recent legislation in California, in the form of a law in effect as of January 1, 2005 called AB1950, requires that firms take “reasonable security measures” to protect the confidential data of California residents that could be labeled as “identity data.” I urge you to work closely with your clients if they are in one of these industries or are having these issues. In addition, obtain the resources you need, or find appropriate security consulting firms to help you stay informed. Return on Investment (ROI) What is the real return on investment to putting procedures in place? Why bother to document “another” procedure and carefully outline processes? The question is easier answered than not, but many CxO’s struggle with communicating the real understanding around the ROI of security. “Unfortunately, relatively little attention has been paid to economics, and to the applied financial practices that grow out of economics, when it comes to information security. In 2003, the annual CSI/FBI Computer Crime and Security Survey reported average losses per respondent of about Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 82 $800,000. In fact, the real headline should be that even those loss totals don't do justice to the 115 magnitude of information security crime and related costs.” "Economics--not technology-determines what security technologies get used," says Bruce Schneier, security expert and author of Beyond Fear: Thinking Sensibly about Security in an Uncertain World. "These days, I 116 feel like I do more economics than computer security." “In the commercial world, the cost of a 117 cyber security breach is measured by both ’tangibles’ and ’intangibles’.” Calculate the tangibles based on estimates of: • Lost business, due to unavailability of the breached information resources • Lost business, that can be traced directly to accounts fleeing to a “safer” environment • Lost productivity of the non-IT staff, who have to work in a degraded mode, or not work at all, while the IT staff tries to contain and repair the breach • Labor and material costs associated with the IT staff’s detection, containment, repair and reconstitution of the breached resources • Labor costs of the IT staff and legal costs associated with the collection of forensic evidence and the prosecution of an attacker • Public relations consulting costs, to prepare statements for the press, and answer customer questions • Increases in insurance premiums • Costs of defending the company in any liability suits resulting from the breached company’s failure to deliver assured information and services Not all of these tangible costs will occur with each breach; some will only occur with major, wellpublicized breaches. The intangibles refer to costs that are difficult to calculate because they are not directly measurable, but are nevertheless very important for business. Many of these intangibles are related to a “loss of competitive advantage” that results from the breach. For example, a breach can affect an organization’s competitive edge through: • Customers’ loss of trust in the organization • Failure to win new accounts due to bad press associated with the breach • Competitor’s access to confidential or proprietary information “In the military, [we must also take into consideration] the tangible costs measured in human lives, replacement costs of equipment, and prolonged military operations. The intangibles would include loss of tactical advantage, loss of international prestige, and impaired negotiating positions.” As Anita D’Amico points out, taking a close look at the break down in costs measured by tangibles and intangibles helps to understand the cost of a missed patch that causes computer down time. Certainly, security is not only about patches, but also by ignoring patch management an avoidable security breach could occur. A survey of 882 respondents determined that the MS Blaster worm cost $475,000 per company (median average - including hard, soft and productivity costs) with larger node-count companies reporting losses up to $4,228,000. MS Blaster is simply one example among many! We must then look at the constraints faced by management in budgeting for security. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 83 From Information Security Magazine July 1999, "Top Obstacle is Budget: What is the SINGLE greatest obstacle to achieving adequate info security at your organization?" Consider these top obstacles to achieving adequate security and notice that right behind budget constraints is “Lack of Senior Management Support.” "People in information security are often technicians--gear heads," the report notes. Few IS managers have come up through the ranks of 118 accounting or financial management, so they don't think in [economic] terms,” the report adds. It is critical that management focus on the economics of security and dare to go one step further and recommend a CFO who is also well versed and experienced in technology and the security niche. It is unfortunate, that more often than not it takes an event to occur before management realizes that installing a patch management tool is of value. What do we really need? According to Kathryn Korostoff of Network World, “Network security is one of the hardest technology categories for which to create an ROI analysis”119 but I doubt that it would be very hard to find a number of other situations where the ROI relies on softer variables and, as such, is as difficult. The goal is to break down the variables into manageable parts and then use the resources of the web, human experience, and knowledge to put parameters around those variables. Remember that sometimes these variables are very specific to the organization. When we understand the business processes down to the tasks preformed by specific departments and people, we can train staff to have an alternative path by default for completing the necessary jobs. If we look at a specific staff position and the task that position must accomplish we can determine the impact of having limited or no access to the internet on the completion of these tasks. A sales person making calls to prospects certainly needs access to customer relationship software, but depending on their style and the software they depend on they might not need access to the Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 84 internet. If we break down a number of sample components, we can make informed opinions and plan responses to security breaches. We might even consider building these job descriptions into the position statement stored with the HR department. When considering the ROI around patch management best practices we really have three projects. The first is that of creating and implementing a patch management best practice policy. This roll out takes time and resources and it is important to include this initial investment in our analysis. The second project is the ongoing maintenance and modification of the patch management best practices procedures, including training new staff, maintaining vendor relationships, and modifying documentation. Lastly, there is the project that defines and weighs options when a breach occurs. This last project is often bundled with the corporation’s disaster recovery planning or business continuity project. Here is an overview of some of the variables in each project. Defining the Patch Management Best Practices—First ROI Variables Project In defining patch management best practices, we need to consider that the end goal is to have a completely documented process that allows for continuous updates. This document should be a living document that, once created, evolves into a Maintenance Project. Intellectual teamwork—a team assembles the best practices. This team meets regularly to discuss the project and to make plans for completion. Who is on the team? What credentials are appropriate? Research by individual team members—having complete data on the business environment, the industry niche, and the tasks completed within the organization assures coverage of all variables. Decision-making takes time and input from the entire team. The decision-making component might also need input from higher levels of management. Documentation—writing, editing, typing, and binding the documentation require resources. Review and acceptance—once the document is completed each department, the management team, and perhaps even the board of directors needs to review and approve the procedures. Software and hardware deployment—the actual analysis of deploying the above documented best practices requires energy. A reality check, is it realistic? Who will analyze the costs of needed components? Industry specific variables can include other vendors who must approve the process such as the corporate lawyer (for industry and contract compliance), or the corporate accountant (for SEC compliance) Actual ROI—the cost and return on investment analysis should be written and then kept with the best practices patch management policy for any new manager or staff member exposed to the original documentation. These variables change with time and part of project two will be looking at the variables used at the outset. Some forward thinking firms have justified patch management practices by identifying the costs saved by not hiring help desk staff, or used the process of asset inventory to point out the unidentified risks and compliances issues. Ongoing maintenance and modification—Second ROI Variables Project Update schedule—when will the PMPB be updated and reviewed—quarterly, monthly, or yearly? Review team—who will do the review? Will there be a team, who will be on the team? Research (continued)—who will do the follow-up research? Where will they start? What new information will they look for? How do they know about this new information? Documentation (updated)—who will do the actual writing and updating of the documentation? How will he or she coordinate with the researcher? Who will manage the process? On going relationship building with key vendor contacts—this takes time and is critical to a best practice in this world of forever changing software and variables. Which people are involved? How do they meet? When do they meet? Which process assures compliance with vendor relationship policies? Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 85 Hardware and software upgrade costs—change daily. What is the policy for upgrading software and hardware? It may be necessary to implement more technology in order to provide more tools for asset inventory and control. Management—needs to set aside time to review the established procedures and policies. Testing—lab equipment, space, licensing Fire drill—does the firm support testing in a simulated situation a potential emergency. When a Breach Occurs – Business Continuity—Third ROI Variables Project Down time--what is the cost for your business to be offline? How long can you be offline? Equipment replacement—if X percentage of equipment was damaged due to a disaster, what would be the cost to replace it? How long would it take to replace? What would be the cost of that time? Backup location—if your location is destroyed, what is the cost, in time and dollars, to setup the business in a temporary location? Alternative power generator—if power is lost and all you need is power does it makes sense to borrow, rent or purchase a generator? Human impact (personnel loss that affects productivity)—even the best of us is not at our best when someone close to us has been hurt. The impact on our best asset, the people within the firm, plays a role in the ROI process. This exercise of creating a list of variables and breaking down the tasks shows that doing an ROI can be both overwhelming and very manageable. Certainly, the lists above do not include all variables you must measure for but the goal was to get you thinking about others. Make it fun, have a staff meeting where your only task is to brainstorm every possible variable appropriate to each of the above three projects. Make a list and expand the above on an ongoing basis. Build the game into the culture of the firm. Use magnetic words on the corporate refrigerator; give monthly prizes to staff who think of something new. Prizes can be something such as a two-hour lunch break, a gift certificate, or the first option on purchasing used equipment. Once you have your list of variables, break each into as many parts as possible, within reason. When you break down the ROI process into bite-size pieces, it is easy to assign values to the different components. Instead of assigning values based on an economic model, you might consider assigning points of importance. You can then assign energy to the items that rate the highest on the points scale. This look at ROI takes you out of the limiting mindset of economics and tangible items. We work in a knowledge worker’s world. Valuing knowledge workers is an art most companies have yet to master! How do I know this? Just look around at how many service companies bill by the hour. Is measuring time truly the right variable for calculating costs? Many would argue a resounding “No,” and the momentum is building. As such, how can we value the loss of time strictly on that hourly model? If you have strong feelings about the billable hour and costing by hour, check out Ron Baker’s books on the subject. He is a passionate speaker and writer and has goals of eliminating the old industrial culture of the billable hour for new models based on the knowledge! The traditional risk analysis calculation also works as a basic budget analysis and ROI calculation: SLE x ARO = ALE where SLE = Single Loss Expectancy ARO = Annualized Rate of Occurrence ALE = Annualized Loss Expectancy The accounting staff, risk management staff, and information technology staff need to cooperate on threat modeling your network. What are the biggest threats to your network? It is only in the process of identifying those risk factors of your firm that you will be able to justify to management that patch deployment is more than software deployment and asset management. As we go Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 86 forward and patching is a key process of fixing and blocking security vulnerabilities, best practices merely becomes part of compliance. Return on investment should reflect this “return” that includes intangibles that cannot be easily quantified. History has shown us repeatedly that we do not have control of our networks and that we cannot depend on our fragile “outside” perimeters anymore. We must begin the process of adding layers and building up or hardening our interior networks. Patching is one of the processes that assist in layering and hardening the defenses we use to reduce risk. Have we convinced you that patch management best practices are important? How can you as a manager work with your IT team to roll out a patch management best practice? Or, if you are the IT Manager how can you work with your management team to get the funding needed to make it all happen? How can you get buy in? When technology runs and flows smoothly and systems click along many benefits develop; however, what about the “human” factor associated with effecting a change of even the smallest magnitude? Nothing motivates a manager to buy into a concept quite like the thought of making more money and reducing personal inefficiencies that compromise available time. The number one consideration is to know your audience! When you work toward getting buy-in, you need to know what motivates your audience. Sometimes this is money considerations, but sometimes it is one of the many other variables. Knowing which variable to emphasize is the trick. For instance, for firms that make money by selling time, saving time means making money and increasing the bottom line. You can also consider the issue of compliance and risk. For firms where management is particularly exposed, such as in publicly traded companies, reporting and the potential for analysis and proof that the corporation is compliant can be the biggest motivating factor. Analysis can also be a factor for helping to direct and focus a firm on its most profitable path to best practices. This reporting component can reassure a CEO that his board of directors is not going to have problems with the projects you are proposing. Direct reports also motivate your audience. Never forget that the decisions in medium to large size firms rarely stop at one person. Speaking of one person, an ROI must reflect individual style with appropriate personal and firm-wide emphasis. ROI presentations vary widely depending on the audience. When you align your ROI with their goals, you find solutions that meet both your needs. Finding time in a crisis management environment Who has time to spend hours and hours preparing ROI presentations for top managers? Doing so takes time, but they can evolve by using bite-size pieces over time. Take the need to list all the different variables affecting an ROI analysis. Split this project into 25 different subsets and then assign each subset to a different person. You might ask the director of HR to make a list of all the things affected by computer problems. You might ask the office administrator how a phone system failure would affect clients. The marketing department is also a huge resource. They understand how crisis and unavailability can affect customer relations. Do not forget about the accounting department either. Many are numerically sensitive and can run some numbers for you. Get people involved. Make your quick list and then delegate. The beauty of the computer system is that it affects all departments and when considering variables for ROI analysis multiple perspectives and diversification can be a huge asset. Purchasing patch management tools Patch management tools play a significant part in a patch management best practices policy and in the efficiency of an IT department. These software products increase consistency and compliance in the management of corporate software and hardware updates. People who work with patch management software classify the patch management tools into two categories; the tools are either “agent” or “agentless” applications. An agentless solution does not install any software on the individual client computers. The agentless software can distribute or push updates to multiple machines without needing to first install or find an “agent” on the receiving machines. Agentless software rolls out in minutes as opposed to days. The benefits of an Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 87 agentless solution are numerous, but there are also disadvantages. An agentless system is more vulnerable. Many times agentless software will not comply with security policies that deal with distribution of encrypted data. The benefit of an agent-based system is that software updates and patches can be uniquely encrypted, delivered, and then unencrypted using the features of the agent software. Unfortunately, agent based solutions also contain the agents, which are software components that may also require updates, patches, and changes. Using an agent-based solution increases the complexity and requirements on a machine-by-machine basis. An extremely important component of patch management solutions is the reporting module. When reviewing a tool, look carefully at the built-in, pre-configured reports. Patch management software reporting can significantly decrease the amount of due diligence that must be done on an ongoing basis. The reporting component of patch management software can also indicate which patches need immediate deployment, which can wait, and which are unnecessary. Sophisticated patch management software packages offer robust reporting modules. Sophistication in patch management software also shows itself in support for multiple platforms because a patch management tool in an enterprise environment often needs to recognize and resolve patching on multiple operating systems and platforms. Even in small environments, there are more and more alternative operating systems and platforms widely available. Consider the mix of Open Source solutions and Microsoft Solutions. Many smaller companies find that having a mixed environment offers more options for less money. Patching the operating system is one consideration, but we also run numerous third party programs and each of these third party programs also has patches. The ability to recognize third party programs and pull patches from a wide variety of web resources is also a sign of a robust patch management solution. Here is a checklist of things to ask questions about when researching patch management software. 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 Agent vs. agentless Reporting: pre-defined and custom options Rights Management: Can access to the toolset be restricted and to what level? How many clients can the package support? Are there customers using it with this many clients? What are the biggest and smallest installations? Does it depend on a database back-end engine? Which one? What operating systems are supported? What third party applications are supported? Is the list of third party applications updated regularly? When? Does it cost to get the new libraries of supported third party applications? Is the User interface easy to use? Does the user interface require technical training? Does the application require training? If yes, how much? Are there other features not related to patch management built into the core package? In general, just as with any other due diligence review of a new software package, you want to ask as many questions as possible. A great resource for posting questions is the patchmanagement.org virtual community, but many of the security “centric” virtual communities also offer independent perspectives from people who have experience with many of the patch management tools available today. Vendor Issues Controlling the patch management process requires significant relationships with companies involved in the release of equipment and software. We stressed this earlier. In the current technology environment, a software company generally takes responsibility for their software and releases regular updates based on their methods of operation. For your company to reduce risk Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 88 and exposure it is important to understand the models in which your vendors operate. These models should also be part of the consideration process when choosing to work with a particular software or hardware vendor. Allowing vendors to manage patch management processes may compromise your work to maintain and stay within a high quality patch management best practices system. The key is to understand the vendor’s business model and then design your system around their offerings. If their offerings do not fit a good patch management best practice then consider working with a vendor who is more agile and responsive. In addition to picking vendors based on agility, you also want to create strong bridges of communication between multiple people within the vendor firm and with multiple people within your firm. Vendors can and have released incompatible patches, they can and have struggled with timing and delay issues based on their own testing schedules and their vendor relations and they can also have policies in place that could bind your hand. The software and hardware vendor have the power to threaten or even void service contracts if you touch or update their software or hardware. Conclusion As much as the world of security is becoming more important for everyone to understand, it is still a technical niche with its own language and unique set of acronyms. Extensive resources are available. This text helps focus management and staff on the three critical components of implementing and rolling out good patch management best practices. Each of these three components functions as a unique project. The first is accepting, deciding and actually rolling out a patch management best practice policy; the second is the project of maintaining and updating the patch management best practices policies so that they are viable on a continued basis; and the third and perhaps the most well known is building disaster recovery planning into the corporate culture. Patch Management is about reducing risk, increasing continuity, expanding options and relationships so that when a crisis occurs, everyone not only knows where to turn, but who to turn to for help and resources. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 89 Appendix A– Patch Testing Testing plans 9 Identify the operating system being tested 9 Identify the Service pack level 9 Identify the hotfixes installed on your systems [if in addition to security fixes] 9 Identify critical third party applications 9 Identify third party applications that have had patching historically 9 Identify those files used in patches that may have causes issues in the past. Are the included in this current patch? Assign testing resources appropriately. 9 Determine if the bulletin accurately describes patch deployment. If not, determine if additional resources for testing or imaging need to be in place before approving the patch. 9 Test the installation of the patch both manually and via your automated patch technology. 9 Can you uninstall the patch using add/remove program or your patch tool. 9 Review the processes of your line of business applications. Are they performing as expected? 9 Attempt to replicate a production environment by using imaged data. Testing tools may assist in attempting to replicate your production system but are not a substitute for an image of your system. 9 Stress tools to test a Web server: o http://support.microsoft.com/default.aspx?scid=kb;EN-US;q231282 9 Download details: Windows Application Compatibility Toolkit 3.0: http://www.microsoft.com/downloads/details.aspx?FamilyID=7fc46855-b8a4-46cd-a2363159970fde94&DisplayLang=en 120 9 Set up performance and monitoring tools to review your testing machines such as 121 PerfMon, tools from Sysinternals and review all log files. 9 Confirm the installation of the patches via registry review or other means Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 90 Appendix B—Sample budget request CONCLUSION AND RECOMMENDATION: Recommendation to the board to approve the purchase and installation of software patch management software to remotely manage all of the computing devices in the network as deemed by the IT staff. The estimated cost of this project will be in the range of ___________ to ____________. EXECUTIVE SUMMARY: The computer assets of the firm are an integral part of the revenue generation of the company. At the present time, unnecessary IT staff time is spent in attempting to control, administer and apply software patches to our current network system. We are requesting that the firm implement a more structured approach to software patching and management of the computer systems in the firm. BACKGROUND: Over the years through normal expansion and firm mergers and acquisitions, the network of the company has grown organically thus not providing the proper infrastructure to allow for the IT staff to properly control and manage the computer systems of the company, Currently the lack of software patching tools and lack of remote connectivity and control is contributing to the costs of the helpdesk in the firm. The following techniques will help reduce these costs: Standardization of desktop and server hardware and software--aids in the process of more control of the change management process we recommend that an inventory of all assets be undertaken and documentation of approved applications be prepared and only these allowed applications be installed in the firm. A virtual lab replicating these standardized desktop and server installations—aids in the quicker and faster testing of patches to deploy them quickly to the machines identified as needing these patches. Purchase of patch management software and/or tools to better aid in software patch application— currently the IT staff does not have the necessary tools to quickly and easily provide reports to management to ensure compliance with the firm’s minimum security policies. FISCAL IMPACT: Initial costs of _________ and annual maintenance fees of __________ are expected to be incurred in hard costs and staff costs are expected to range from _________ to ___________ in the testing and implementation of this solution. Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 91 Glossary Application - A program or group of programs designed for end users. Software can be divided into two general classes: systems software and applications software. Systems software consists of low-level programs that interact with the computer at a very basic level. This includes operating systems, compilers, and utilities for managing computer resources. In contrast, applications software (also called end-user programs) includes database programs, word processors, and spreadsheets. Figuratively speaking, applications software sits on top of systems software because it is unable to run without the operating system and system utilities. Critical Update – this is not a security update, but a fix for an issue in broadly applied software. They are publicly available and have an accompanying knowledge base article. Driver Update – The update in a software component that supports and controls hardware Driver updates may come from the software vendor or they may be from the hardware vendor. Feature pack – a software package that is released that includes non-critical additions to the base software program. It is typically distributed between major releases. Firewall - A system designed to prevent unauthorized access to or from a private network. Firewalls can be implemented in both hardware and software, or a combination of both. Firewalls are frequently used to prevent unauthorized Internet users from accessing private networks connected to the Internet, especially intranets. All messages entering or leaving the intranet pass through the firewall, which examines each message and blocks those that do not meet the specified security criteria Hotfixes – hotfixes are patches built to address specific issues. The Microsoft Hotfixes cannot be distributed outside of your organization without written authorization from Microsoft. They are obtained for FREE by calling Microsoft Product Support Services. They are not subjected to the regular testing process. Patch – “A piece of code added to software in order to fix a bug, especially as a temporary correction between two releases.” Patch Management - the act, manner or practice of managing, handling, supervising and controlling the application of code to software in order to fix a bug, especially as a temporary correction between two releases. Security (data) – A way of insuring data on a network is protected from unauthorized use. Service Packs (SP) – are cumulative packages of hotfixes, security updates, critical updates and updates. The SP is tested both internally and externally. Security Update – this is what we traditionally refer to in the existing patch management circles. There is a severity rating included in the updates and they are always accompanied by a Security bulletin discussing the issue and a Knowledge base article that describes the patch in more detail. Update – fixes a non-critical, non-security related issue. Update rollup – cumulative package of hotfixes, security updates, critical updates, and updates. This is tested for easy deployment. Upgrade – software that updates and upgrades a piece of software to a newer version while keeping the settings and data from the prior program Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 92 Notes Chapter 1—What Is Patch Management 1 “Analysis of the Sapphire Worm - A joint effort of CAIDA, ICSI, Silicon Defense, UC Berkeley EECS and UC San Diego CSE,” retrieved August 29, 2004 from http://www.caida.org/analysis/security/sapphire/ 2 “Threats and Countermeasures: Security Settings in Windows Server 2003 and Windows XP,” (Redmond, WA: Microsoft, Inc., 2004) from http://www.microsoft.com/downloads/details.aspx?FamilyId=1B6ACF93147A-4481-9346-F93A4081EEA8&displaylang=en 3 Allen, Julia H. The CERT Guide to System and Network Security Practices, New York: Pearson Education, 2001. 4 “Description of the standard terminology that is used to describe Microsoft software updates,” (Redmond, WA: Microsoft, Inc., 2004) from http://support.microsoft.com/default.aspx?kbid=824684 5 Ferguson, Niels and Bruce Schneier Practical Cryptography New York: John Wiley & Sons, Inc., 2003. 6 “10-Step Emergency Response Plan for Security Attacks” Redmond, WA: Microsoft Corporation, 2004 from http://members.microsoft.com/Partner/Campaign/SecurityOutreach/sell/10StepEmergencyResponsePlanforSecurityAttacks.pdf 7 “Upcoming Advisories” Aliso Viejo, CA: eEye Digital Security, 2004 from http://www.eeye.com/html/research/upcoming/index.html 8 http://lists.netsys.com/mailman/listinfo/full-disclosure 9 Swiderski, Frank and Window Snyder Threat Modeling Redmond, WA: Microsoft Press 2004. 10 While we will discuss alternative OS, due to market share and desktop impact, the bulk of the discussion will surround the Microsoft operating systems. 11 “Description of the Contents of a Windows Server 2003 Product Update Package” Redmond, WA: Microsoft Corporation, 2004 http://support.microsoft.com/default.aspx?scid=kb;en-us;824994 12 “Microsoft Security Bulletin MS04-022” Redmond, WA: Microsoft Corporation, 2004 http://www.microsoft.com/technet/security/bulletin/MS04-022.mspx 13 Koetzle, Laura, Ted Schadler, Charles Rutstein, and Robert Whiteley Can Microsoft Be Secure? Cambridge, MA: Forrester Research, March 2003 http://www.forrester.com/ER/Research/Report/0,1338,16275,FF.html 14 For purposes of this document we use only RedHat’s Enterprise Linux distribution in the examples; however all of the Linux distributions provide similar services. Chapter 2-- Change Management and Risk Analysis 15 Farrell, Nick. “SQL Slammer hits Microsoft,” vnunet.com, January 28, 2003; found at www.networkitweek.co.uk/news/1138312. 16 “Security Configuration Guides,” found at www.nsa.gov/snac/index.cfm?MenuID=scg10.3.1 17 “CIS Benchmarks/Security Tools,” found at www.cisecurity.org/ 18 “Reducing Over 80% of Windows 2000 Professional Vulnerabilities with the Consensus Security Benchmark Settings,” Center for Internet Security, found at www.cisecurity.org/Documents/Reducing_Over_80.htm 19 Shimonsky, Robert J., “Risk Assessment and Threat Identification,” Windows Security.com, August 29, 2004, found at www.windowsecurity.com/articles/Risk_Assessment_and_Threat_Identification.html 20 “RFC 1157 - Simple Network Management Protocol (SNMP),” found at http://www.faqs.org/rfcs/rfc1157.html; “Using SNMP for Network Management,” Windows NT Resource Kit, found at http://www.microsoft.com/resources/documentation/windowsnt/4/server/reskit/enus/net/sur_snmp.mspx 21 VMware, Virtual infrastructure, http://www.vmware.com/ , Microsoft Virtual PC http://www.microsoft.com/windows/virtualpc/default.mspx, and Microsoft Virtual Server http://www.microsoft.com/windowsserversystem/virtualserver/default.mspx 22 Johansson, Jesper, “Oh Patch, How I hate thee, let me count the ways,” Microsoft Corporation, found at http://www.microsoft.com/technet/community/columns/secmgmt/sm0404.mspx 23 Boyle, Neil, “SQL Server Security Checklist,” Database Journal, June 13, 2003, found at http://www.databasejournal.com/features/mssql/article.php/2221471 Chapter 3—It’s all about risk 24 Security bulletin 03-029 retrieved from http://www.microsoft.com/technet/security/bulletin/MS03-029.mspx Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 93 25 Schultze, Eric, Microsoft’s 2004 Security report card, found at http://www.ftponline.com/wss/2004_08/magazine/departments/guestop/ 26 Demanding more from vendors, Rain Forest Puppy as extracted and placed on the following web site: http://www.sbslinks.com/really.htm 27 http://blogs.msdn.com/aaron_margosis/archive/2004/06/17/157962.aspx 28 Microsoft rating of Security Bulletins, http://www.microsoft.com/technet/security/bulletin/rating.mspx 29 File corruptions in AutoCAD files after the installation of Security bulletin 03-026, http://usa.autodesk.com/adsk/servlet/ps/item?siteID=123112&id=3431487&linkID=2476435 30 Technical information for Security bulletin 03-026 - http://support.microsoft.com/?kbid=824136 31 Keep in mind that at that time of these historical bulletins, you had to review the underlying knowledge base article; currently bulletins now include the file versions and detailed information on the security bulletin itself. 32 Patch Management listserve located at http://www.patchmanagement.org/ 33 Patchtalk listserve located at http://www.patchtalk.com/ 34 Microsoft online communities resource page - http://www.microsoft.com/communities/default.mspx 35 Workgroup for Electronic Data Interchange listserves http://www.wedi.org/listserve/ 36 HD Moore’s Metaspoint project to allow for more controlled exploit testing - http://www.metasploit.com/ 37 My analysis of the timeline between the patch release of 03-026 to the web and the resulting release of exploit code to the web - http://www.sbslinks.com/timeline.htm 38 http://www.microsoft.com/technet/security/topics/patch/stdpatex.mspx 39 http://www.sysinternals.com/ntw2k/freeware/listdlls.shtml 40 http://www.microsoft.com/technet/desktopdeployment/depprocess/depprocessris.mspx 41 http://singe.rucus.net/blog/archives/243-Sun-Recommended-Patch-Management-Policy.html 42 http://docs-pdf.sun.com/817-0574-12/817-0574-12.pdf?biga=15 43 http://www.microsoft.com/resources/documentation/WindowsServ/2003/standard/proddocs/enus/Default.asp?url=/resources/documentation/WindowsServ/2003/standard/proddocs/enus/SAG_MPmonperf_06.asp 44 http://www.sysinternals.com/ 45 Infraguard (2004) Technology Risk Checklist retrieved October 10, 2004 from http://www.infragard.net/library/pdfs/technologyrisklist.pdf Chapter 4—Are we ready to patch yet? 46 http://www.microsoft.com/technet/security/bulletin/MS04-011.mspx http://www.microsoft.com/technet/security/bulletin/MS04-011.mspx 48 http://www.helpdesk.com/software-helpdesk.htm 49 http://support.microsoft.com/default.aspx?pr=securityitpro 50 http://bugzilla.redhat.com/bugzilla/query.cgi 51 http://www.ftponline.com/wss/2004_08/magazine/departments/guestop/ 52 http://www.sans.org/resources/policies/ 53 http://www.sans.org/resources/policies/Server_Security_Policy.doc 54 http://www.sans.org/resources/policies/Aquisition_Assessment_Policy.doc 55 http://www.sans.org/resources/policies/Audit_Policy.doc 56 http://www.sans.org/resources/policies/Virtual_Private_Network.doc 57 http://www.sans.org/resources/policies/ 58 http://www.cisco.com/application/pdf/en/us/guest/netsol/ns466/c664/cdccont_0900aecd800ce939.pdf 59 http://www.microsoft.com/downloads/details.aspx?FamilyID=fe902704-52dd-4bbe-8a75f8fbb76cd28a&DisplayLang=en 60 http://searchnetworking.techtarget.com/originalContent/0,289142,sid7_gci992761,00.html 61 http://download.microsoft.com/download/0/7/e/07ed1953-0ab5-41ea-b5da-41cf8bb9cdae/Quarantine.doc 62 http://www.microsoft.com/technet/community/tnradio/archive/tntrans_01.mspx 63 http://www.sysinternals.com/ntw2k/freeware/listdlls.shtml 64 http://www.sysinternals.com/ntw2k/freeware/procexp.shtml 65 http://dotnet.org.za/kevint/archive/2004/04/01/931.aspx 66 http://www.google.com/ 67 http://www.google.com/grphp?hl=en&tab=wg&q= 68 http://www.microsoft.com/downloads/details.aspx?FamilyID=cebf3c7c-7ca5-408f-88b7f9c79b7306c0&DisplayLang=en 69 http://www.microsoft.com/whdc/devtools/debugging/default.mspx 47 Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 94 70 http://www.microsoft.com/downloads/details.aspx?familyid=9d467a69-57ff-4ae7-96eeb18c4790cffd&displaylang=en 71 http://www.microsoft.com/technet/prodtechnol/winxppro/maintain/xpsp2man.mspx 72 http://download.microsoft.com/download/5/d/b/5db098e2-43d3-48bc-9e5be72ab9c65c61/IPSec_Server2003.doc 73 http://www.microsoft.com/technet/security/bulletin/MS03-026.mspx 74 http://www.microsoft.com/technet/security/bulletin/MS03-026.mspx 75 http://www.microsoft.com/technet/security/bulletin/MS04-011.mspx 76 http://www.microsoft.com/technet/security/topics/patch/stdpatex.mspx 77 http://www.sbslinks.com/really.htm 78 http://info.sen.ca.gov/pub/01-02/bill/sen/sb_1351-1400/sb_1386_bill_20020926_chaptered.html 79 http://www.cio.com/archive/021502/security.html 80 http://www.sims.berkeley.edu/resources/affiliates/workshops/econsecurity/econws/06.doc 81 http://www.cert.org/nav/index_purple.html 82 http://isc.sans.org//survivalhistory.php Chapter 5—Life beyond patching Microsoft 83 http://www.microsoft.com/technet/prodtechnol/winxppro/deploy/gpdepsp2.mspx Find more information on the Group Policy Management Console at http://download.microsoft.com/download/a/9/c/a9c0f2b8-4803-4d63-8c323040d76aa98d/GPMC_Administering.doc and http://www.microsoft.com/windowsserver2003/gpmc/default.mspx 85 http://rhn.redhat.com/errata/RHSA-2003-280.html 86 http://www.unixwiz.net/techtips/building-source.html 87 http://docs-pdf.sun.com/817-0574-12/817-0574-12.pdf?biga=15 84 Chapter 6—Justifying Patch Management—A Business Tutorial 88 Gartner (2003, 5) 2003 Press Release retrieved October 10, 2004 from http://www3.gartner.com/5_about/press_releases/pr29may2003a.jsp 89 Smith, R (2003) "The Chief Technology Officer: Strategic Responsibilities and Relationships", Research Technology Management, July-August, 2003. and Smith, R (2003) "Maximizing the CTO's Contribution to Innovation and Growth", retrieved October 5, 2004 from www.CTOnet.org 90 American Institute of Certified Public Accountants, AICPA (2004) CPA Financial Manager's Role in a Company retrieved May 23, 2004 from http://www.aicpa.org/cefm/CPA_fincl_mgr_role.asp 91 Gartner 92 Gartner 93 Messner, E (2004, 7) “Rx for Patching Mired in Red Tape” Copyright, 1994-2004 Network World, Inc. retrieved September 18, 2004 from http://www.nwfusion.com/news/2004/070504hospitalpatch.html 94 Stoneburner, G, Goguen, A and Feringa, A (2002, July)The National Institute of Standards and Technology (NIST) Special Publication 800-30 Risk Management Guide for Information Technology Systems retrieved October 17, 2004 from http://csrc.nist.gov/publications/nistpubs/800-30/sp800-30.pdf 95 Stoneburner 96 Stoneburner 97 Stoneburner 98 Stoneburner 99 Stoneburner 100 Stoneburner 101 Cavitt, L (2004) “Questions on HIPAA and FDA approval of Biomedical devices” Online posting September 3, 2004 WEDI SNIP Security Workgroup List http://subscribe.wedi.org 102 Messner, E (2004, 7) “Rx for Patching Mired in Red Tape” Copyright, 1994-2004 Network World, Inc. retrieved September 18, 2004 from http://www.nwfusion.com/news/2004/070504hospitalpatch.html 103 Secretariat: NEMA (National Electrical Manufacturers Association) www.nema.org/medical retrieved October 10, 2004 from http://www.nema.org/DocUploads/50496076-20B1-4DADA81B8B82F808B83E/medical-defending.pdf 104 E-Health Insider is managed and maintained by E-Health-Media.com http://www.e-health-media.com/ 105 Messner, E Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 95 106 AT&T News Release (1998, 11) AT&T Announces Cause of Frame-relay Network Outage retrieved December 26, 2004 from http://www.att.com/news/0498/980422.bsb.html 107 Agilent Technologies (2002, 3) Preventing IP Network Service Outages retrieved December 26, 2004 from http://advanced.comms.agilent.com/n2x/docs/whitepapers/pdfs/sp-insight.pdf 108 Schmerken, I (2004, September 21) “Innovation In Motion” Publisher: Wall Street Technology retrieved October 17, 2004 from http://www.wallstreetandtech.com/story/riskManagement/showArticle.jhtml?articleID=47900742 109 Schmerken 110 Schmerken 111 Hicks, M (2004, October) PayPal returning to Normal eWeek retrieved October 17, 2004 from http://www.eweek.com/article2/0,1759,1676610,00.asp 112 Kellermann, Sr, T (2003, June). Data Risk Management Specialist, Integrator Unit, The World Bank retrieved October 17, 2004 from http://www.cyberpartnership.org/World%20Bank%20Erisk%20Heat%20Map.pdf 113 AICPA Business & Industry Internal Control Task Force (2003) Key Issues for Management - AICPA Implementation Guidance and Tools for Sarbanes Oxley Key Internal Control Issues for Management retrieved October 3, 2004 from http://www.aicpa.org/download/sarbanes/key%20issues%20document%20%20FINAL.pdf 114 Ozier, W (2003, May) Risk Metrics for IT Security retrieved October 3, 2004 from http://www.securitypronews.com/securitypronews2420030805RiskMetricsNeededforITSecurity.html 115 Gordon, L and Richardson, R (2004, April) Economics of Cybercrime Computer Crime Research Center retrieved October 22, 2004 from http://www.crime-research.org/articles/Economics_Cybercrime/ 116 Gordon 117 D’Amico, Anita D. Ph.D. (2000, 9) What Does a Computer Security Breach Really Cost? Retrieved October 10, 2004 from http://www.securedecisions.com/documents/CostsOfBreaches-SANSInstitute.doc 118 Gordon 119 Korostoff, K (2003, 8) The ROI of network security Network World, 08/25/03 retrieved November 29, 2004 from http://www.nwfusion.com/techinsider/2003/0825techinsiderroi.html 120 Microsoft (2004) Windows Server retrieved October 10, 2004 from http://www.microsoft.com/resources/documentation/WindowsServ/2003/standard/proddocs/enus/Default.asp?url=/resources/documentation/WindowsServ/2003/standard/proddocs/enus/SAG_MPmonperf_06.asp 121 Sysinternals (2004) retrieved November 10, 2004 from http://www.sysinternals.com/ Ecora Software Corporation Patch Management Best Practices: A “How To” Guide for Securing the Enterprise Page 96 In the Real World... IT managers want easy to install and easy to use management software that fits within their budget and delivers immediate value right out of the box. …That’s the Ecora promise. Ecora provides total configuration management solutions that automate multi-platform configuration reporting, change monitoring, and patch management. Ecora's solutions enhance efficiency and reduce the costs associated with IT compliance, business continuity, and vulnerability assessment while providing the means to monitor change and plan for recovery. Cost effective, easy to implement, and easy to manage IT solutions. Ecora Patch Manager – Don’t let researching and manual patching take over your time – Know You’re Patched, Today! Save time and reduce costs with a focused patch management solution featuring an optional-agent technology for the automated deployment of critical patches and unique reporting capabilities for both, IT administrators and managers. Ecora Enterprise Auditor - An indispensable tool for documenting and managing your IT environment. If you’re addressing Sarbanes-Oxley, HIPAA, CFR Part 11, or other regulatory compliance acts, Ecora automates and delivers audit-ready reports that improve accuracy and, save time and money. Ecora supports enterprise platforms: Cisco Systems, Lotus Domino, Microsoft, Novell, Oracle, HP-UX, IBM, Sun Microsystems, Red Hat, and Citrix. Ecora Dr. Wi-Fi - Continuously monitor the availability and performance of mission critical Wi-Fi networks. Dr. Wi-Fi provides IT managers real-time data with easy-to-read “dashboard” reports and proactive alerts. Ecora DeviceLock - Prevent users with USB drives from stealing your data. Halt unauthorized Wi-Fi networks from gaining access to your valuable information and manage user access to devices. Solutions for Managing IT in the Real World. For more information about Ecora Software www.ecora.com or 1.877.923.2672 Notice to Readers The Patch Management Reference Guide does not represent an official position of Ecora Software, The Norwich Group or Tamiyasu, Smith, Horn And Braun Accountancy Corporation and it is distributed with the understanding that the authors and publisher are not rendering legal, accounting, or other professional services in this publication. If legal advice or other expert assistance is required, the services of a competent professional should be sought. Ecora Software Corporation Patch Management Best Practices Copyright © 2005 by Ecora Software Corporation All rights reserved. For information about the procedure for requesting permission to make copies of any part of this work, please call the Ecora Software Copyright Permissions Hotline at 603.436.1616. Otherwise, requests should be written and mailed to the Permissions Department, Ecora Software Ecora Software Corporation Patch Management Best Practices About the Authors Susan E. Bradley, CPA, CITP, MCP, GSEC is a Microsoft Most Valuable Professional for Small Business Server and Security. She is Chairman of the Technology committee of the California Society of Certified Public Accountants, Chairman of the Top Technologies committee for the American Institute of Certified Public Accountants (AICPA), and Committee Organizing member and speaker at the American Institute of Certified Public Accountants Tech 2003 and Tech 2004 Conferences. She has written numerous articles on computers and security for the AICPA InfoTech newsletter, the FCG Buzz newsletter, and the California CPA magazine, and is co-author of an upcoming book. She maintains a blog on security topics and issues affecting the Microsoft Small Business Server 2003 platform at http://www.msmvps.com/bradley. Reach her at [email protected] but if she doesn’t get back to you right away it’s because she is sorting through all of the out-of-office messages she gets when she posts to the patch management mailing list. Sign up at http://www.patchmanagement.org/. She is a principal with Tamiyasu, Smith, Horn and Braun in Fresno, Calif. She writes an ongoing column, Ebitz, for AICPA’s InfoTech Update newsletter, and is chair of the Top Technologies Task Force. Anne A. Stanton, an enthusiastic proponent of networking, Anne A. Stanton is a consultant to consultants, specifically in the Accounting and IT consulting niches. She creates bridges between business and technology. Anne is a member of the AICPA's Top 10 Technologies Task Force, and an active participant in numerous forums including the Certified Information Technology Professionals (CITP) discussion forum, the AICPA Technology Conference Chat user's group, the Association for Accounting Marketers user's group, and the CPA Map group (CPAs discussing issues relating to the management of their practices). She also moderates the NH/VT Upper Valley Microsoft Consultant’s group and is the comoderator of the InterNETnational Microsoft SBS Leaders Group. She is a contributing writer for Accounting Software 411.com, the CPA Technology Advisor, CPA Magazine and the AICPA’s IT Section Newsletter, InfoTech Update, as well as many other industry specific journals. She is an active speaker and has presented at SMB Nation, the AICPA Technology Conference, the OK State CPA State Society conference, and the New York Technology Assurance meeting. She is the editor of the Information Technology Alliance newsletter and an active participant in numerous events sponsored by the AICPA, state CPA societies and the Information Technology Alliance. Reach her at [email protected]. Ecora Software Corporation Patch Management Best Practices