CYBERSECURITY — Software configuration
New guidelines for using National Checklist Program to securely configure software
- By William Jackson
- Oct 02, 2009
The National Checklist Program (NCP) is a resource to help software users find and use the proper security configuration checklists for their organizations and provides guidelines for the development of security configuration checklists for IT products by product vendors and by third parties.
The National Institute of Standards and Technology (NIST), which established the program and maintains the National Checklist Repository, has revised its guidelines for using the program. Special Publication 800-70 Revision 1, "National Checklist Program for IT Products -- Guidelines for Checklist Users and Developers," explains how to use the program and defines the policies, procedures and general requirements for participation in the NCP. It replaces the original version of the guidelines released in 2005.
A security configuration checklist provides instructions for configuring a particular software product to meet the security needs of a particular operational environment. They can consist of templates or automated scripts, Extensible Markup Language (XML) files or other procedures, and can include patches and patch descriptions for the software.
No checklist can make a system 100 percent secure, and each is expected to be tailored by each user to meet its own needs. But, “the use of well-written, standardized checklists can markedly reduce the vulnerability exposure of IT products,” NIST says in the guidelines. “Checklists can be particularly helpful to small organizations and to individuals with limited resources for securing their systems.”
Checklists are helpful, even necessary, because of the variability and complexity of IT systems and applications.
“Because IT products often are intended for a wide variety of audiences, restrictive security controls are usually not enabled by default, which means that many IT products are immediately vulnerable in their out-of-the-box configuration,” NIST warns. “Complicating this situation is that today’s systems and products can be complex to administer and difficult to secure. It is a complicated, arduous and time-consuming task even for experienced system administrators to know what a reasonable set of security settings is for many different IT products.”
Because the quality and usability of security checklists being developed to address these issues varied greatly, the National Checklist Program was created to help users. Its goals are to facilitate development and sharing of checklists by providing a formal framework and guidance for developers, and to encourage IT product vendors and others to develop checklists and to configure their products based on them.
Finding security checklists and determining the level of security each provides can be difficult, and checklists can become outdated and lack specific information on implementation. Presenting the content in a standardized format and providing an easy-to-use repository of checklists can help users select and evaluate them. The National Checklist Repository contains metadata that describes each checklist.
Recommendations for users and developers include:
- Checklists should be used to reduce the vulnerabilities that attackers can exploit operating systems and applications and to lessen the impact of successful attacks. Although checklist is complete foolproof, they can typically reduce the attack surface and improve security.
- Users should consider the source and the degree of automation available when selecting checklists. The NCP defines four tiers of checklists, ranging from narrative descriptions for manual configuration in Tier I, to machine readable data in the Security Content Automation Protocol format in Tier IV.
- Checklists should be customized and tested before being applied to production systems. Non-mandatory configurations should be considered a baseline that will be evaluated and changed where necessary.
- Operational environments should be taken into account when selecting checklists, and developers should target their checklists to operational environments. The NCP identifies several broad and specialized operational environments, at least one of which should be common to most audiences.
- IT product vendors are strongly encouraged to develop security configuration checklists for their products and contribute them to the National Checklist Repository. Vendors have the most expertise on the possible security configuration settings and the best understanding of how the settings relate to and affect each other.
William Jackson is a Maryland-based freelance writer.