|
|
Web
Site Security:
|
| Author:
Stephen Cobb
|
Status: First Published in 1996 |
| (Original
Title: Risks to Web Projects and a Variety of Responses -- highlighting
the NCSA's early efforts in the area of web site security certification,
which evolved to become TruSecure's short-lived web security seal).
The phenomenal growth of the World Wide Web has simultaneously breathed new life into old databases and stirred up a host of new questions (pun intended). Questions like: How do I protect databases while serving up data to the Web? How can I prevent unauthorized changes to Web pages while making them available to the entire Internet-enabled world. Information security professionals who are grappling with these problems can offer some suggestions (see "Web Security Standards"), but as yet there are no guaranteed solutions. Surprised? Maybe you've been reading articles and product brochures touting the imminent arrival of secure transactions and bullet-proof network protection, or recent press releases about certifying the safety Web sites. While some of these products and proposals are clearly a step in the right direction, nobody who is objective about security is actually going to certify any Web site or Internet product as risk-free or hacker-proof. The best we can hope for is meaningful reassurance and significant risk reduction. In this article I look at ways of reducing the risk to online data projects and consider what the various Web assurance programs can do to help. I begin with a look at what can go wrong if you ignore security issues when you dish up data on the Web. A Whole New Dimension? Sounds pretty straightforward, right? You've already set up your own Web site and, let's face it, this HTML stuff is a snap compared to SQL, OBDC, and a few other acronyms you've had to master. To use an British expression, this Web project could be "a nice little earner." If that's what you think, try this expression, "Welcome to my nightmare." Why? Because www really does mean World Wide Web. Your work will be seen by everyone in the whole wide world who has an Internet connection, which is both a blessing and a curse. If you hadn't noticed, not all of these people, and there may be over 40 million of them by now, share the same values. For example, some people think it is wrong to kill animals for fur. If you live in New York you might have noticed anti-fur posters on city buses. What if someone who agrees with that message decides to target Mr. K's Web pages. Defacing Web pages is a heck of a lot safer than spray-painting billboards or smashing shop windows--attract attention to your cause without ever leaving your keyboard. Which is exactly what somebody did last November to a New York-based fur company. The poster image from the bus was plastered all over the home page, along with numerous slogans and an altered version of the company logo. In other words, developing for the Web encompasses issues that are quite different from projects that are internal, such as databases for the LAN and WAN environment. Security concerns become much broader than proper password hygiene and access control lists for authorized users. Web sites can become targets for everyone from competitors to disgruntled employees, from political activists to wired whackos. When the U.S. Department of Justice Web site was hit in August, followed by the CIA in September, some people thought political sites would be the main focus of Web vandalism. But I know of several commercial sites, besides the fur company, that have been "altered." Possible Responses 1. An understanding of how strongly the threat agent is motivated. 2. An assessment of the opportunity a threat agent has available to execute a particular threat. 3. A determination of how available the tools and knowledge (i.e., means) are for carrying out the threat. What we have here is a twist on the traditional crime fighter's quest for means, motive, and opportunity. Who would want to compromise your system? How strongly are they motivated and what technical capabilities do they posses? It is not hard to imagine a matrix that maps the answers, ranging from the recently fired network administrator (lots of motive and capability) to your latest competitor (a lot of motive perhaps, but may lack capability). After risks have been weighed you can proceed to action on a technical level, beginning with a review of current security, if your site is already up and running, or secure design elements is your site is still in the planning phase. There are several design options that can reduce or displace the risks, such as having your site virtually hosted by a specialist company or Internet Service Provider (ISP). This shifts the burden of protection to them and they have a clear financial incentive to deliver. However, you might want to arrange some sort of site monitoring and the issues of content, what you actually put on your site will still be up to you. For example, if you are engaged in an activity that is not universally appreciated, such as clear-felling old growth timber, you might want to get some outside input on how to tone down your site to make it less of a target. If you are doing your own hosting, you might want to configure the web server machine as a "sacrificial lamb." This is a minimally connected, basically expendable, and quickly recoverable machine. You make regular backups, run some sort of tripwire to alert you to unauthorized changes, and hope to restore normal service as soon as possible after an attack. This approach is particularly suited to an "information only" site, where a connection to send or receive user-specific information is not required. In fact, it is possible to go one step further and make such a site read-only at the hardware level. For example, on a standalone site development machine you use a CDR drive to burn a $7 CD-ROM copy of the site. You then walk that over to the Web server, slip it in the CD-ROM drive and serve up pages that cannot possibly be altered. When changes to Web pages are required, you burn another CD. Current CD-ROM drive performance falls short of the requirements for Web hosting, but with the latest 10x SCSI devices the gap is narrowing, and clever use of RAM caching, or even a RAM drive, could close that gap. An alternative might be optical drive cartridges, which can match hard drive performance and have physical write protection switches. Of course, sacrificial lambs and read-only servers run into problems if you want to connect to the server in any extended fashion, for example to serve up Mr. K's database of current fur inventory. While some databases queried by Web pages can be extracted from production servers and mirrored on a secure machine, some people want their Web sites to serve up "live" data. In either scenario, the connection and processes used to transmit queries and responses are a potential path into your systems and must be protected. A firewall of some type is the usual solution, strictly controlling access between the Web server on the outside and the database systems on the inside. If your Web site is already up and running, two items to check right away are cgi scripts and NFS, vulnerabilities allegedly exploited in the DoJ and CIA hacks, respectively (the DoJ server had an unused by insecure cgi script left over from installation and the CIA site was being maintained remotely by a sub-contractor using NFS, allegedly). For more details, you should check out Lincoln Stein's excellent World Wide Web Security FAQ and you might want to subscribe to the www-security mailing list (links to both exist at www.2cobbs.com/wwwsec). A Certified Site? Unfortunately, attempts to develop standards for information security tend to move much slower than the technology they seek to defend. One organization that does have a decent track record in this area happens to be the one I work for, the National Computer Security Association. A private company based in Carlisle, Pennsylvania, NCSA started to set standards for anti-virus software several years ago. A set of tests was devised. Products which passed were deemed NCSA-certified. At first, the process faced sharp criticism: "Not strict enough" and "Just a marketing ploy." Over time, as test criteria evolved, these criticisms were laid to rest. Today, an anti-virus program cannot be NCSA-certified unless it detects 100% of all currently active viruses (these are the "in the wild" viruses, numbered in the hundreds, as opposed to the "in the zoo" viruses which, although numbered in the thousands, aren't actually infecting any computers). The benefits and effectiveness of the program are now reflected in the fact that anti-virus vendors often make improvements to their products just to meet the NCSA certification standards. End-users can now avoid running their own tests, which are inherently difficult to organize and control (first catch your live viruses, then release and see if your defensive measures can detect them, be prepared to devise and initiate disinfection procedures if they don't). This process of setting baseline security standards and then progressively raising the bar has now been applied to firewalls, technology developed to protect connections between trusted and untrusted networks. As with anti-virus certification, there has been some initial criticism, but NCSA certification will probably emerge as a meaningful standard that firewall users will expect products to meet. Of course, NCSA recognizes that firewalls are considerably more complex than anti-virus products. For example, they should only be used as part of a comprehensive security policy and, because each installation is unique, firewalls are one defense that should also be tested after installation (you can read more about firewall policy at www.ncsa.com/fpfs/fwpg_p1.html and there's more on testing, plus detailed descriptions of 20 firewalls, in the NCSA Firewall Buyer's Guide, which can be ordered from www.ncsa.com). NCSA is now planning a certification process for Web sites, which brings us back to the comprehensive approach to protecting a Web site. A site that is NCSA-certified will confirm to best practices in many different areas (outlined in "Web Security Standards"). The plan is to certify sites that meet the published standards, as determined by a combination of physical site visits, audited site documentation, and remote testing. The goal is get to a point where an NCSA-certified Web site is impervious to all real world attacks. Clearly, the definition and enumeration of "real world attacks" will require a lot of debate and research, which is currently under way. The initial standards themselves were derived from extensive discussions with a large group of experts, including Scott Ramsey, director of Ernst & Young's information security division, Larry Hughes Jr., Internet security author and lecturer, Dr. Myron Cramer and Jay Harrell from Georgia Tech Research Institute. The term "real world attacks" is used to distinguish between theoretical or "actual yet highly unlikely attacks" and those which are actively being exploited to compromise Web sites. Since security budgets are never unlimited, it is important to focus protection on those attacks most likely to occur. Through ongoing research efforts and a constant dialogue with vendors, users, and experts, NCSA is well-placed to determine what exactly these threats are. Other Web Security Initiatives Red Alert (www.redalert.com) This seems to be a very practical service, valuable for organizations that don't have 7x24 staffing to watch over a site. Detection is a valuable security tool and Red Alert gives you instant access to a log of errors for the last 60 days. I also think the presence of the Red Alert logo might discourage the kind of vandal who is hoping that his or her handiwork will be visible for a meaningful period of time. True Site (www.truesite.net) The purpose of TrueSite is to defeat this sort of thing by means of a list of verified sites. A TrueSite logo is issued which links to a list of verified sites. This list is searchable and only leads to "real" sites. However, at this point the problem of bogus sites does not seem to be the main security concern of Web managers and it is unclear to what extent TrueSite will catch on as a way to discourage bogus sites. BBBOnline (www.bbbonline.org) Companies that meet high BBBOnline Standards will exhibit a BBBOnline CARE seal on their pages. The seal will show that they "care" about their customers. Consumers will be able to click on the logo and instantly get a BBB company report on the company. Web consumers will also have the option of searching the comprehensive Better Business Bureau database of BBB company reports. Linked to this site as well will be the extensive library of Better Business Bureau consumer and business advisory publications, useful links for related information and other advisory products. All of which seems like a worthwhile effort to provide assurance in terms of business practices. However, it does not dictate any specific security standards, for example, in the protection of private information supplied by the consumer to the site. eTRUST (www.etrust.org) Given the level of paranoia about privacy in some circles, efforts like this may well be required to reassure Web users who don't like the idea of sites tracking where they have come from and where they are going, and possibly turning such data into market research data. As with BBBOnline this program is more of an ethical commitment than a mandated security standard. Conclusion Box: Web Security Standards 1. The web site must withstand network-based attacks by means of a firewall, filtering router, or other appropriate security mechanism. 2. The Domain Naming Service (DNS) entries for all URL referenced systems must be resolvable. 3. The NIC contact information must be accurate and contain at least two contacts. 4. The site must maintain logging. Access to logs must be limited to authorized personnel. Logs must be retained in a secure but retrievable format. 5. A standard encryption mechanism must be used for sensitive data transmission. 6. A person must be designated as the site's "cgi Evaluator." This person is responsible for examining and evaluating all cgi scripts and programs. No interpreters should be accessible via HTTP. 7. A person must be designated as the site's "CxE Evaluator." All client executables must be examined and evaluated as "harmless" to the user. 8. Pages which contain or accept sensitive data must be made non-cacheable. Users must be informed if any pages containing sensitive data will be cached to local storage. 9. The site must meet physical security requirements such as: access controlled area, roster of authorized personnel, suitable equipment, and emergency contact information. 10. The site must meet logical security requirements such as: secure password policies, webmaster contact, HTTPD server configured for least privilege, and separate development and production systems. 11. If a transaction mechanism is in place, it must be documented and the server's private key protected by a strong passphrase. Sensitive information must be periodically removed from server. The OS/Platform must be documented and integrity assured. Backups and Restore capabilities must be in place Note that the above is an abbreviated outline of requirements for single
server sites. There are additional requirements when one server is hosting
multiple web sites. |
|
![]()
![]()
![]()
![]()
Updated Spring, 2002 by webloke © Stephen Cobb
Some article content reprinted by permission.
Article content copyright named author(s).