12.07.2015 Views

Software Assurance in Acquisition and Contract Language

Software Assurance in Acquisition and Contract Language

Software Assurance in Acquisition and Contract Language

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong><strong>Language</strong><strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume IVersion 1.1, July 31, 2009


<strong>Software</strong> <strong>Assurance</strong> (SwA) Pocket Guide ResourcesThis is a resource for ‗gett<strong>in</strong>g started‘ <strong>in</strong> select<strong>in</strong>g <strong>and</strong> adopt<strong>in</strong>g relevant practices for deliver<strong>in</strong>g secure software. As part ofthe <strong>Software</strong> <strong>Assurance</strong> (SwA) Pocket Guide series, this resource is offered for <strong>in</strong>formative use only; it is not <strong>in</strong>tended asdirective or presented as be<strong>in</strong>g comprehensive s<strong>in</strong>ce it references <strong>and</strong> summarizes material <strong>in</strong> the source documents thatprovide detailed <strong>in</strong>formation. When referenc<strong>in</strong>g any part of this document, please provide proper attribution <strong>and</strong> referencethe source documents, when applicable.This volume of the <strong>Software</strong> <strong>Assurance</strong> Pocket Guide series focuses on contract language for <strong>in</strong>tegrat<strong>in</strong>gsoftware security <strong>in</strong> the acquisition life cycle, <strong>in</strong>clud<strong>in</strong>g sample SwA Request for Proposal (RFP)/<strong>Contract</strong>language. Buyers <strong>and</strong> evaluators of software <strong>and</strong> suppliers can ga<strong>in</strong> security risk-based <strong>in</strong>sight. They can putsuppliers on notice that consumers are concerned about software security <strong>and</strong> the risks to their organizationsthat are attributable to exploitable software.At the back of this pocket guide are references, limitation statements, <strong>and</strong> a list<strong>in</strong>g of topics addressed <strong>in</strong> the SwA PocketGuide series. All SwA Pocket Guides <strong>and</strong> SwA-related documents are freely available for download via the SwACommunity Resources <strong>and</strong> Information Clear<strong>in</strong>ghouse at https://buildsecurity<strong>in</strong>.us-cert.gov/swa.AcknowledgementsThe SwA Forum <strong>and</strong> Work<strong>in</strong>g Groups function as a stakeholder mega-community that welcomes additional participation <strong>in</strong>advanc<strong>in</strong>g software security <strong>and</strong> ref<strong>in</strong><strong>in</strong>g SwA-related <strong>in</strong>formation resources that are offered free for public use. Input to allSwA resources is encouraged. Please contact <strong>Software</strong>.<strong>Assurance</strong>@dhs.gov for comments <strong>and</strong> <strong>in</strong>quiries.The SwA Forum is composed of government, <strong>in</strong>dustry, <strong>and</strong> academic members. The SwA Forum focuses on <strong>in</strong>corporat<strong>in</strong>gSwA considerations <strong>in</strong> acquisition <strong>and</strong> development processes relative to potential risk exposures that could be <strong>in</strong>troducedby software <strong>and</strong> the software supply cha<strong>in</strong>.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>2


Participants <strong>in</strong> the SwA Forum‘s <strong>Acquisition</strong> & Outsourc<strong>in</strong>g Work<strong>in</strong>g Group collaborated <strong>in</strong> develop<strong>in</strong>g the material used <strong>in</strong>this pocket guide as a step <strong>in</strong> rais<strong>in</strong>g awareness on how to <strong>in</strong>corporate SwA considerations throughout the acquisitionprocess.Information conta<strong>in</strong>ed <strong>in</strong> this pocket guide is primarily derived from “<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong>: Mitigat<strong>in</strong>gRisks to the Enterprise” available through the SwA Community Resources <strong>and</strong> Information Clear<strong>in</strong>ghouse athttps://buildsecurity<strong>in</strong>.us-cert.gov/swa/acqact.html. The full document was also co-developed with representatives from theInformation Resources Management College (IRMC) http://www.ndu.edu/irmc/ <strong>and</strong> published through the National DefenseUniversity Press; so a copy can be accessed at http://www.ndu.edu/<strong>in</strong>ss/press/NDUPress_Occasional_Papers.htm.Special thanks to the Department of Homel<strong>and</strong> Security (DHS) National Cyber Security Division‘s <strong>Software</strong> <strong>Assurance</strong>team who provided much of the support to enable the successful completion of this guide <strong>and</strong> related SwA documents.Overview<strong>Software</strong> vulnerabilities, malicious code, <strong>and</strong> software that does not function as promised pose a substantial risk to theNation‘s software-<strong>in</strong>tensive critical <strong>in</strong>frastructure that provide essential <strong>in</strong>formation <strong>and</strong> services to citizens. M<strong>in</strong>imiz<strong>in</strong>gthese risks is the function of <strong>Software</strong> <strong>Assurance</strong> (SwA). <strong>Software</strong> assurance is the level of confidence that software isfree from vulnerabilities, either <strong>in</strong>tentionally designed <strong>in</strong>to the software or accidentally <strong>in</strong>serted at any time dur<strong>in</strong>g its lifecycle, <strong>and</strong> that it functions <strong>in</strong> the <strong>in</strong>tended manner [CNSSI No. 4009].Often the common practice <strong>in</strong> acquisition is to accept software that satisfies functionality with little regard for specify<strong>in</strong>g,determ<strong>in</strong><strong>in</strong>g or assur<strong>in</strong>g security properties—<strong>in</strong>creas<strong>in</strong>g the risk exposure to users. Many purchas<strong>in</strong>g organizations <strong>and</strong>acquirers cont<strong>in</strong>ue to accept software riddled with exploitable flaws <strong>and</strong> other security vulnerabilities. This, <strong>in</strong> part, may bedue to acquisition policies <strong>and</strong> procedures that do notensure that security is a ma<strong>in</strong> concern of software. <strong>Software</strong> Vulnerabilities Side EffectsIn addition, acquirers may not be aware of the<strong>in</strong>creased life cycle costs <strong>and</strong> <strong>in</strong>creased risk exposureto the organization attributable to software that is notsecure. Purchas<strong>in</strong>g secure software might entailmoderate upfront costs to the acquisition project(especially <strong>in</strong> deal<strong>in</strong>g with suppliers who have not<strong>in</strong>corporated security <strong>in</strong> their development processes);however, the price paid <strong>in</strong> lost time <strong>and</strong> resources tocont<strong>in</strong>ually fix or patch a vulnerable softwarecomponent can run as much as three times the <strong>in</strong>itial» Un<strong>in</strong>tentional errors lead<strong>in</strong>g to faultyoperations,» Destruction of <strong>in</strong>formation or majordisruption of operations,» Insertion of malicious code,» Theft of sensitive, personal or classified<strong>in</strong>formation, <strong>and</strong>» Changed product.purchase of secure software. Many organizations fall beh<strong>in</strong>d <strong>in</strong> properly patch<strong>in</strong>g vulnerable software due to thoseexponential costs, leav<strong>in</strong>g them exposed to attack. Dangers may be attributable to software errors or other vulnerabilitiesto <strong>in</strong>clude the unknow<strong>in</strong>g acceptance of software that conta<strong>in</strong>s malicious code.A broad range of stakeholders now needs justifiable confidence that the software that enables their core bus<strong>in</strong>essoperations can be trusted to function as expected (even with attempted exploitation) <strong>and</strong> can contribute to more resilientoperations. Therefore, the responsibility for SwA must be shared not only by software suppliers <strong>in</strong> the supply cha<strong>in</strong> butalso by the acquirer <strong>in</strong> the supply cha<strong>in</strong> who purchase the software. There is a concern, however, that acquirers are notaware of this responsibility <strong>and</strong> are <strong>in</strong>adequately prepared to support SwA <strong>in</strong> the acquisition process.In 2003, the U.S. Department of Defense (DOD), jo<strong>in</strong>ed by the Department of Homel<strong>and</strong> Security (DHS), launched a SwA<strong>in</strong>itiative to address SwA concerns of poor quality, unreliable, <strong>and</strong> non-secure software. The SwA Forum‘s <strong>Acquisition</strong> &Outsourc<strong>in</strong>g Work<strong>in</strong>g Group, consist<strong>in</strong>g of representatives from government, <strong>in</strong>dustry, <strong>and</strong> academia, was established to<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>3


address how to leverage the acquisition process to <strong>in</strong>fluence SwA <strong>in</strong> the supply cha<strong>in</strong>. To that end, the SwA Forum‘s<strong>Acquisition</strong> & Outsourc<strong>in</strong>g Work<strong>in</strong>g Group created this pocket guide to <strong>in</strong>form acquisition officials on how to <strong>in</strong>fluence SwA<strong>in</strong> software supply cha<strong>in</strong> management by leverag<strong>in</strong>g <strong>and</strong> <strong>in</strong>clud<strong>in</strong>g SwA considerations <strong>in</strong> the acquisition process.This pocket guide provides <strong>in</strong>formation on contract language for <strong>in</strong>corporat<strong>in</strong>g SwA throughout the acquisition process fromthe acquisition plann<strong>in</strong>g phase to contract<strong>in</strong>g, monitor<strong>in</strong>g <strong>and</strong> acceptance, <strong>and</strong> follow-on phases. For each phase, thematerial covers SwA concepts, recommended strategies, <strong>and</strong> acquisition management tips.Why You Need <strong>Software</strong> <strong>Assurance</strong><strong>Software</strong> assurance is a key element of national security <strong>and</strong> homel<strong>and</strong> security. It is critical because dramatic <strong>in</strong>creases<strong>in</strong> bus<strong>in</strong>ess <strong>and</strong> mission risks are attributable to exploitable software. <strong>Software</strong> vulnerabilities jeopardize <strong>in</strong>tellectualproperty, consumer trust, bus<strong>in</strong>ess operations <strong>and</strong> services, <strong>and</strong> a broad spectrum of critical <strong>in</strong>frastructures, <strong>in</strong>clud<strong>in</strong>geveryth<strong>in</strong>g from process control systems to commercial softwareproducts.To ensure the <strong>in</strong>tegrity of bus<strong>in</strong>ess operations <strong>and</strong> key assetswith<strong>in</strong> critical <strong>in</strong>frastructures, software must be reliable <strong>and</strong>secure. A Chief Information Officer Executive Council pollfound that the top two most important attributes of software are―reliable software that functions as promised‖ <strong>and</strong> ―software freefrom security vulnerabilities <strong>and</strong> malicious code.‖The ma<strong>in</strong> objective of software assurance is to ensure that theprocesses, procedures, <strong>and</strong> products used to produce <strong>and</strong>susta<strong>in</strong> the software conform to all requirements <strong>and</strong> st<strong>and</strong>ardsspecified to govern those processes, procedures, <strong>and</strong> products.SwA Drivers:» The <strong>Software</strong> Development Life Cycle(SDLC) provides opportunities for poorsoftware design <strong>and</strong> malware <strong>in</strong>sertion thatcan lead to exploitation;» Commercial Off The Shelf (COTS) productsreliance on foreign <strong>and</strong> non-vetteddomestic suppliers;» Lack of <strong>in</strong>formation on suppliers‘ processes‘capabilities, <strong>and</strong>;» Off shor<strong>in</strong>g requires more comprehensivedomestic strategies to mitigate risks.Both research <strong>and</strong> ―real world‖ experience <strong>in</strong>dicate that correct<strong>in</strong>g weaknesses <strong>and</strong> vulnerabilities as early as possible <strong>in</strong>the software‘s life cycle is far more cost-effective over the lifetime of the software than develop<strong>in</strong>g <strong>and</strong> releas<strong>in</strong>g frequentpatches for deployed software.The software supply cha<strong>in</strong> consists of (but is not exclusive to) the follow<strong>in</strong>g: the acquirers <strong>in</strong> <strong>in</strong>dustry <strong>and</strong> government,<strong>in</strong>formation assurance personnel support<strong>in</strong>g acquisition managers, decision makers for software procurements (<strong>in</strong>clud<strong>in</strong>gprogram/project managers <strong>and</strong> requirements personnel), prime contractors <strong>and</strong> subcontractors <strong>in</strong> their supply cha<strong>in</strong>, <strong>and</strong>software suppliers. Figure 1 illustrates a few potential paths that software can take.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>4


Figure 1- Potential <strong>Software</strong> Supply Paths<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>5


Audience: AcquirersThis is a high level guide for anyone, both government <strong>and</strong> private sector, <strong>in</strong>volved <strong>in</strong> the management of acquisition<strong>and</strong>/or acquisition of software products or services by contract, <strong>in</strong>clud<strong>in</strong>g work that is outsourced or subcontracted. Thegeneric term the ―acquirers‖ is used throughout this guide tomean executives, managers, <strong>and</strong> members of the acquisitionteam. Members of the acquisition team perform a wide varietyof functions.Lastly, although this is a high-level guide for acquirers, it mayalso be used by the supplier team (e.g., prime contractors,<strong>in</strong>tegrators, <strong>and</strong> subcontractors <strong>in</strong> the supply cha<strong>in</strong>) of softwareproducts or services to facilitate their underst<strong>and</strong><strong>in</strong>g of SwArequirements that acquirers may request.<strong>Acquisition</strong> Functions» Develop<strong>in</strong>g requirements, plans, <strong>and</strong>strategies for contract(s),» Develop<strong>in</strong>g <strong>and</strong> issu<strong>in</strong>g Requests forProposals (RFPs),» Evaluat<strong>in</strong>g proposals,» Negotiat<strong>in</strong>g <strong>and</strong> award<strong>in</strong>g contracts,» Monitor<strong>in</strong>g contract performance, <strong>and</strong>» Accept<strong>in</strong>g delivery of the software productor service.Members of the team may hold positions such as» developers of requirements (may be systems/software eng<strong>in</strong>eers),» contract<strong>in</strong>g officer representatives (CORs) <strong>and</strong> contract<strong>in</strong>g officer technical representatives (COTRs),» contract<strong>in</strong>g officers <strong>and</strong> specialists,» procurement personnel,» program/project managers, or» supervisors of the above.<strong>Acquisition</strong> ProcessThis pocket guide is organized around the major phases of a generic acquisition process. Figure 2 depicts the relationshipof these phases to those of several other processes. Figure 3 depicts the sequence of the plann<strong>in</strong>g, contract<strong>in</strong>g,monitor<strong>in</strong>g <strong>and</strong> acceptance, <strong>and</strong> follow-on phases of the software acquisition process.Figure 3 - Generic <strong>Software</strong> <strong>Acquisition</strong> ProcessPlann<strong>in</strong>gPhase<strong>Contract</strong><strong>in</strong>gPhaseMonitor<strong>in</strong>g &AcceptancePhaseFollow-onPhase<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>7


Plann<strong>in</strong>g PhaseThis phase beg<strong>in</strong>s with (1) needs determ<strong>in</strong>ation for acquir<strong>in</strong>g software services or products, identify<strong>in</strong>g potential alternativesoftware approaches, <strong>and</strong> identify<strong>in</strong>g risks associated with those alternatives. This set of activities is followed by (2)develop<strong>in</strong>g software requirements to be <strong>in</strong>cluded <strong>in</strong> work statements; (3) creat<strong>in</strong>g an acquisition strategy <strong>and</strong>/or plan that<strong>in</strong>cludes identify<strong>in</strong>g risks associated with various software acquisition strategies; <strong>and</strong> (4) develop<strong>in</strong>g evaluation criteria <strong>and</strong>an evaluation plan. SwA considerations are discussed for each of the major activities. See the “<strong>Software</strong> Supply Cha<strong>in</strong>Risk Management <strong>and</strong> Due-Diligence” pocket guide where the development <strong>and</strong> use of SwA due-diligencequestionnaires are discussed.Needs Determ<strong>in</strong>ation - Dur<strong>in</strong>g the needs determ<strong>in</strong>ation process, an organization assesses its mission to determ<strong>in</strong>e ifthere are problems <strong>in</strong> mission performance that could be solved bya software solution. This is followed by an assessment ofRisk Assessment Questionsalternative software-based solutions. Determ<strong>in</strong><strong>in</strong>g the need toacquire software products or services (<strong>in</strong>clud<strong>in</strong>g software-<strong>in</strong>tensivesystems) is the first step <strong>in</strong> lay<strong>in</strong>g the groundwork for fulldevelopment of software requirements, <strong>in</strong>clud<strong>in</strong>g SwArequirements.Risk assessment (synonymous with risk analysis) is the process ofidentify<strong>in</strong>g the risks to system security <strong>and</strong> determ<strong>in</strong><strong>in</strong>g theprobability of occurrence, the result<strong>in</strong>g impact, <strong>and</strong> additionalsafeguards that would mitigate this impact.» What is the value of the software <strong>in</strong>dollars to protect?» What software assets need to beprotected <strong>and</strong> why, consequences?» What is the impact of softwareunpredictability?» How is residual risk determ<strong>in</strong>ed <strong>and</strong>managed?» What are the potential adverseconditions to be prevented <strong>and</strong>managed?An <strong>in</strong>itial risk assessment helps determ<strong>in</strong>e the security category,basel<strong>in</strong>e security controls <strong>and</strong> assurance case required for the acquired software. The acquirer should ask <strong>and</strong> haveanswered all of the risk assessment questions.Alternative <strong>Software</strong> Approaches - When consider<strong>in</strong>g alternative software approaches, acquisition officials <strong>and</strong>application owners should seek to reduce or manage the risks identified <strong>in</strong> the <strong>in</strong>itial risk assessment. The steps are to:» Evaluate alternatives for treatment of risks (accept, mitigate, avoid, transfer, share with a third party [such as asupplier]).» Identify protection strategies (security control objectives <strong>and</strong> controls) that reduce risks to levels that are with<strong>in</strong>acceptable tolerances. Controls can be deployed to reduce likelihood <strong>and</strong> impact.» Identify potential tradeoffs between reduc<strong>in</strong>g risk, <strong>in</strong>creased costs, <strong>and</strong> decreased operational effectiveness.» Identify approaches for manag<strong>in</strong>g residual risks that rema<strong>in</strong> after protection strategies are adopted.Alternative software approaches may <strong>in</strong>clude one or more software types or services, i.e. COTS open-source, COTSproprietary, GOTS, Custom, Hosted Applications, etc. Each software type or service can <strong>in</strong>troduce its own risks. The duediligencequestionnaires <strong>in</strong> the “<strong>Software</strong> Supply Cha<strong>in</strong> Risk Management <strong>and</strong> Due-Diligence” pocket guide are brokenup <strong>in</strong>to software types/services s<strong>in</strong>ce SwA concerns can vary by type or service.SwA Requirements - The security category provides a basis for SwA requirements. In the Federal Government, thesecurity category facilitates the selection of security controls (requirements) <strong>and</strong> other assurance requirements. Thesecurity controls m<strong>and</strong>ated <strong>in</strong> Federal regulation are a m<strong>in</strong>imum or basel<strong>in</strong>e, <strong>and</strong> are not exhaustive list to address SwA.Other security <strong>and</strong> assurance requirements should be identified as required to reduce risk to an acceptable level. SampleSwA requirements language is provided <strong>in</strong> later sections of this pocket guide.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>8


Resources:» Federal Information Process<strong>in</strong>g St<strong>and</strong>ard (FIPS) Publication 200, M<strong>in</strong>imum Security Requirements for FederalInformation <strong>and</strong> Information Systems.» National Institute of St<strong>and</strong>ard <strong>and</strong> Technology (NIST) Special Publication 800–53, Recommended SecurityControls for Federal Information Systems.» Department of Defense Instruction (DODI) 8500.2, Information <strong>Assurance</strong> (IA) Implementation.» Office of Management <strong>and</strong> Budget (OMB) Memor<strong>and</strong>um M–07–18, Ensur<strong>in</strong>g New <strong>Acquisition</strong>s Include CommonSecurity Configurations, 1 June 2007.<strong>Acquisition</strong> Strategy - Acquirers may develop an acquisition strategy, acquisition plan, or both. They should refer to theirorganization‘s policy on develop<strong>in</strong>g strategies <strong>and</strong> plans. <strong>Acquisition</strong> strategies <strong>and</strong> plans precede the actual purchase.These strategies <strong>and</strong> plans provide a description of roles <strong>and</strong> responsibilities, a roadmap for complet<strong>in</strong>g actions <strong>and</strong>milestones, <strong>and</strong> a discussion for <strong>in</strong>clud<strong>in</strong>g special considerations <strong>in</strong> the purchase <strong>and</strong> implementation of products <strong>and</strong>/orservices. <strong>Software</strong> assurance should be addressed <strong>in</strong>those strategies or plans. As a Federal Government<strong>Acquisition</strong> Plan SwA Considerations:example, Federal <strong>Acquisition</strong> Regulation (FAR)7.105(b) (17) requires that plans discuss how agency » Vendor SwA Expertise,<strong>in</strong>formation security requirements are to be met. In» Initial Security Category,DOD, the Defense <strong>Acquisition</strong> Guidebook, Part 2,» SwA Requirements,» SwA Considerations <strong>in</strong> <strong>Contract</strong>or Selection,requires program managers to develop an acquisition» SwA Considerations <strong>in</strong> <strong>Contract</strong> Adm<strong>in</strong>istration<strong>in</strong>formation assurance (IA) strategy describ<strong>in</strong>g how<strong>and</strong> Project Management, <strong>and</strong>IA/security requirements are to be <strong>in</strong>corporated. How » Plans for Independent Test<strong>in</strong>g.SwA requirements are to be met should be <strong>in</strong>cludedas part of how the IA/security requirements are met<strong>and</strong> acquirers should <strong>in</strong>clude SwA considerations <strong>in</strong> strategies <strong>and</strong> plans.Evaluation Plan - This activity <strong>in</strong>volves creat<strong>in</strong>g a plan for evaluat<strong>in</strong>g proposals submitted <strong>in</strong> response to a solicitation <strong>and</strong>the criteria that will be used to evaluate the proposals. The evaluation plan describes the process by which proposals aresecured <strong>and</strong> evaluated. SwA criteria should be <strong>in</strong>cluded <strong>in</strong> the solicitation, <strong>and</strong> the evaluation plan must describe how toevaluate the products <strong>and</strong> services aga<strong>in</strong>st the criteria. This <strong>in</strong>cludes discuss<strong>in</strong>g the tim<strong>in</strong>g of the evaluation <strong>and</strong> anymeasures that can be used to support the evaluation process.Evaluation Criteria - SwA depends on people <strong>and</strong> organization, process maturity, <strong>and</strong> technology work<strong>in</strong>g together to beeffective. Therefore, evaluation criteria should be developed to <strong>in</strong>clude those (people <strong>and</strong> organization, process maturity,<strong>and</strong> technology) broad categories. Criteria may be qualitative, quantitative, <strong>and</strong>/or ―go/no-go.‖ Qualitative <strong>and</strong> quantitativecriteria are often evaluated us<strong>in</strong>g a scorecard method. The evaluation plan should describe how to determ<strong>in</strong>e the scores.The ―go/no-go‖ criteria are evaluated based on whether the proposal satisfies the criteria. In the case where a proposaldoes not meet the criteria, the proposal is normally elim<strong>in</strong>ated from future consideration for award<strong>in</strong>g a contract. SwA duediligencequestionnaires can be a means for gather<strong>in</strong>g <strong>in</strong>formation to evaluate quantitative, qualitative, <strong>and</strong>/or ―go/no-go‖SwA criteria.SwA Due-Diligence Questionnaires - The software assurance due-diligence questionnaires can assist acquirers <strong>in</strong>obta<strong>in</strong><strong>in</strong>g additional <strong>in</strong>formation about the software <strong>and</strong> its supplier. In this context, due-diligence <strong>in</strong>volves tak<strong>in</strong>g all―reasonable steps‖ necessary to ensure that a software-<strong>in</strong>tensive system not only meets bus<strong>in</strong>ess <strong>and</strong> technicalrequirements, but also addresses SwA concerns. The <strong>in</strong>tent is to <strong>in</strong>form acquirers of potential risks associated with thesoftware they are consider<strong>in</strong>g for purchase. The questionnaires are a means for gather<strong>in</strong>g relevant <strong>in</strong>formation to supportdecision-mak<strong>in</strong>g versus be<strong>in</strong>g a decision-mak<strong>in</strong>g tool. Expertise <strong>in</strong> software, acquisition, <strong>and</strong> IA—as well as commonsense—is critical <strong>in</strong> mak<strong>in</strong>g smart decisions on acquir<strong>in</strong>g trustworthy software. Questions should be posed by, <strong>and</strong><strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>9


esponses assessed by, knowledgeable SwA experts or other appropriate functional experts. Sample due-diligencequestionnaires are available for download from the <strong>Software</strong> <strong>Assurance</strong> Community Resources <strong>and</strong> InformationClear<strong>in</strong>ghouse web site at https://buildsecurity<strong>in</strong>.us-cert.gov/swa.<strong>Contract</strong><strong>in</strong>g PhaseThe contract<strong>in</strong>g phase <strong>in</strong>cludes three major activities: (1) creat<strong>in</strong>g/issu<strong>in</strong>g the solicitation or RFPs with a work statement,<strong>in</strong>structions to offerors/suppliers, terms <strong>and</strong> conditions (<strong>in</strong>clud<strong>in</strong>gconditions for acceptance), prequalification considerations, <strong>and</strong>certifications; (2) evaluat<strong>in</strong>g proposals submitted <strong>in</strong> response to thesolicitation or RFP; <strong>and</strong> (3) f<strong>in</strong>aliz<strong>in</strong>g contract negotiation to <strong>in</strong>cludechanges <strong>in</strong> terms <strong>and</strong> conditions <strong>and</strong> award<strong>in</strong>g the contract.<strong>Software</strong> risks are addressed <strong>and</strong> mitigated through terms <strong>and</strong>conditions, certifications, evaluation factors for award, <strong>and</strong> riskmitigation requirements <strong>in</strong> the work statement.Work Statement - Acquirers usually prepare the work statement.The FAR states that ―agencies shall <strong>in</strong>clude the appropriate<strong>in</strong>formation technology security policies <strong>and</strong> requirements <strong>in</strong> allacquisitions for <strong>in</strong>formation technology‖ (FAR Subpart 39.101(d)).Acquirers should consider <strong>in</strong>clud<strong>in</strong>g software assurance requirements <strong>in</strong> a work statement.Recommended Work Statement SwARequirements:» Trustworthy software def<strong>in</strong>itions,» Security category description,» <strong>Assurance</strong> plan,» Security requirements assurance case,» <strong>Software</strong> implementation safety <strong>and</strong>security risk management plan,» Consideration for code audit<strong>in</strong>g, <strong>and</strong>» <strong>Software</strong> description <strong>and</strong> architecture.Instructions to Offerors /Suppliers - In response to an RFP, suppliers must submit <strong>in</strong>formation that provides objectiveevidence of their ability to perform the SwA aspects of the work statement <strong>and</strong> terms <strong>and</strong> conditions. Clear <strong>in</strong>structionsmust be <strong>in</strong>cluded <strong>in</strong> the RFP on what suppliers must submit for evaluation, <strong>in</strong>clud<strong>in</strong>g <strong>in</strong>structions perta<strong>in</strong><strong>in</strong>g to onsiteevaluation, if required by the RFP. Instructions to suppliers expla<strong>in</strong> how to answer the due-diligence questionnaire <strong>and</strong>what to submit <strong>in</strong> an <strong>in</strong>itial assurance case <strong>and</strong> software description.Terms <strong>and</strong> Conditions - Additional SwA requirements may be <strong>in</strong>cluded <strong>in</strong> terms <strong>and</strong> conditions. Whether to <strong>in</strong>clude anitem <strong>in</strong> the work statement or as a term or condition depends on the policies <strong>and</strong> structure of the acquisition organization.Select<strong>in</strong>g terms <strong>and</strong> conditions would depend on the type of software to be acquired. Because prime suppliers oftensubcontract software services, terms <strong>and</strong> conditions should be worded <strong>in</strong> such a way to ensure that they flow down to alllevels of subcontracts.Certifications - Certifications may also be a way to provide assertions of software trustworth<strong>in</strong>ess when <strong>in</strong>formation maybe too costly to compile or too volum<strong>in</strong>ous for proposal evaluation. Certifications provide assertions by offerors of exist<strong>in</strong>gconditions or compliance <strong>in</strong> certa<strong>in</strong> requirements. Us<strong>in</strong>g certifications shifts the burden of compliance to the suppliers.Prequalification - Acquirers should consider prequalification. Prequalification can be done to evaluate organizationalcapabilities or other technical management capabilities. As a word of caution, there should always be additional evaluationfor the unique SwA requirements of each acquisition.Proposal Evaluation - Acquirers should ensure that SwA Subject Matter Experts (SMEs) are used to evaluate eachproposal to determ<strong>in</strong>e the level of underst<strong>and</strong><strong>in</strong>g of the SwA requirements. This <strong>in</strong>cludes an evaluation of the evidenceprovided to support answers to the due-diligence questionnaire.Proposals have multiple components that should be weighed separately <strong>and</strong> then comb<strong>in</strong>ed to provide an overall score.An example of three components may be management, technical (<strong>in</strong>cludes SwA), <strong>and</strong> price. All three should haveweighted criteria to result <strong>in</strong> a numerical score.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>10


<strong>Contract</strong> Negotiation <strong>and</strong> <strong>Contract</strong> Award - The evaluation results <strong>in</strong> the selection of the best proposals for contractnegotiation. Dur<strong>in</strong>g negotiations, the acquirers <strong>and</strong> suppliers negotiate on requirements, terms, <strong>and</strong> conditions. It isimportant that the give-<strong>and</strong>-take on SwA requirements, terms, <strong>and</strong> conditions does not compromise the ultimate assurancegoals or critical assurance goals. Suppliers may push back on the SwA requirements because they may not be fullycompetent to do the job or be will<strong>in</strong>g to take the risk. Acquirers may f<strong>in</strong>d that suppliers may overbid because of perceivedrisk <strong>and</strong> do<strong>in</strong>g someth<strong>in</strong>g they have never done. Acquirers should consider ―share <strong>in</strong> sav<strong>in</strong>gs‖ arrangements (sav<strong>in</strong>gs as aresult of implement<strong>in</strong>g SwA requirements as stated). The shar<strong>in</strong>g <strong>in</strong>cludes not only costs <strong>and</strong> benefits but also thewill<strong>in</strong>gness to afford the supplier more time to engage <strong>in</strong> the education <strong>and</strong> tra<strong>in</strong><strong>in</strong>g that is needed. An alternative would beto consider a contract type that shifts the burden of some of the risk to the acquirer <strong>and</strong>/or provide additional cost orperformance <strong>in</strong>centives [see FAR Subpart 16.1 <strong>and</strong> FAR Subpart 16.3 for <strong>in</strong>centive contracts].When award<strong>in</strong>g the contract, acquirers must ensure that all SwA agreements made dur<strong>in</strong>g negotiation are <strong>in</strong>corporated<strong>in</strong>to the contract when it is awarded. Negotiated agreements are sometimes overlooked when draft<strong>in</strong>g the f<strong>in</strong>al contractaward.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>11


Monitor<strong>in</strong>g <strong>and</strong> Acceptance PhaseThe monitor<strong>in</strong>g <strong>and</strong> acceptance phase (may also be called contract adm<strong>in</strong>istration phase) <strong>in</strong>volves monitor<strong>in</strong>g of thesupplier‘s work <strong>and</strong> accept<strong>in</strong>g the f<strong>in</strong>al service or product. This phase <strong>in</strong>cludes three major activities: (1) establish<strong>in</strong>g <strong>and</strong>consent<strong>in</strong>g to the contract work schedule, (2) implement<strong>in</strong>g change (or configuration) control procedures, <strong>and</strong> (3) review<strong>in</strong>g<strong>and</strong> accept<strong>in</strong>g software deliverables. Dur<strong>in</strong>g the monitor<strong>in</strong>g <strong>and</strong> acceptance phase, software risk management <strong>and</strong>assurance case deliverables must be evaluated to determ<strong>in</strong>e compliance <strong>in</strong> accepted risk mitigation strategies as stated <strong>in</strong>the requirements of the contract.<strong>Contract</strong> Work Schedule - The contract work schedule should <strong>in</strong>clude very specific timel<strong>in</strong>es for deliver<strong>in</strong>g SwArequirements. If a work breakdown structure (WBS) is used, acquirers should ensure that SwA deliverables are identified<strong>in</strong> it.Change Control - The change control procedures for a software-<strong>in</strong>tensive system should ensure that SwA requirementsare not compromised when changes are requested. Each change control request should <strong>in</strong>clude a specific section thataddresses the impact of the requested change on SwA requirements. Change or configuration control of SwArequirements is managed as part of assurance case management.Review <strong>and</strong> Acceptance of <strong>Software</strong> Deliverables - Dur<strong>in</strong>g this activity, examples of deliverables are the riskmanagement plan for software, assurance case, <strong>and</strong> test documentation. Acceptance criteria should be explicit,measurable, <strong>and</strong> <strong>in</strong>cluded <strong>in</strong> the assurance case or <strong>in</strong> the terms <strong>and</strong> conditions. See section ―Sample RFP/<strong>Contract</strong><strong>Language</strong>: General Audience” <strong>in</strong> this pocket guide for sample terms <strong>and</strong> conditions that <strong>in</strong>clude acceptance conditions.The SwA SMEs should review each software deliverable <strong>and</strong> analyze test results produced by the contractor or<strong>in</strong>dependent tester to ensure that SwA requirements are met. Acquirers should not accept the service or product until theSwA expert f<strong>in</strong>ds the requirements acceptable.Risk Management - The FAR states: ―<strong>Contract</strong><strong>in</strong>g <strong>and</strong> program office officials are jo<strong>in</strong>tly responsible for assess<strong>in</strong>g,monitor<strong>in</strong>g <strong>and</strong> controll<strong>in</strong>g risk . . .dur<strong>in</strong>g program implementation. . .Appropriate techniques should be applied to manage<strong>and</strong> mitigate risks dur<strong>in</strong>g the acquisition of <strong>in</strong>formation technology.‖ An <strong>in</strong>itial risk assessment is performed dur<strong>in</strong>g theacquisition plann<strong>in</strong>g process. This risk assessment results <strong>in</strong> the identification of a security category, which may be furtherref<strong>in</strong>ed dur<strong>in</strong>g this phase of the acquisition process. Acquirers <strong>and</strong> suppliers who are responsible for implementationshould create a plan for manag<strong>in</strong>g risks associated with the security category. The plan should <strong>in</strong>clude an identification ofSwA risks, plans for mitigat<strong>in</strong>g those risks, associated measures, <strong>and</strong> plans for cont<strong>in</strong>ually assess<strong>in</strong>g those risks.On-l<strong>in</strong>e Resources:» Federal <strong>Acquisition</strong> Regulation (FAR). at http://www.arnet.gov/far/<strong>in</strong>dex.html.<strong>Assurance</strong> Case Management - Acquirers must ensure that the assurance case is implemented <strong>in</strong> accordance withestablished requirements <strong>and</strong> approved project plans, <strong>in</strong> particular the assurance plan approved for use <strong>in</strong> the contract.(Note: If an assurance plan is not used, special attention should be paid to supplier processes <strong>and</strong> products on the projectto give users <strong>and</strong> other stakeholders the confidence that software assurance has been considered <strong>in</strong> the productdevelopment.)<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>12


The assurance case must be managed as part of the riskmanagement strategy for the acquisition. If the assurance caseis used to demonstrate achievement of the security <strong>and</strong>dependability properties of the software system, then theacquirers must take appropriate steps to manage the assurancecase‘s development <strong>and</strong> acceptance <strong>in</strong>to operational service.All elements of any project management methodology thatacquirers use are affected by development <strong>and</strong> management ofan assurance case. The text box labeled <strong>Assurance</strong> CaseManagement Components on the right lists common projectelements (or pr<strong>in</strong>ciples) that contribute to the delivery of anassured software–<strong>in</strong>tensive system <strong>and</strong> expla<strong>in</strong> how they arecrucial for a project manager to deliver a robust <strong>and</strong> completeassurance case for transition to operations.<strong>Assurance</strong> Case ManagementComponents» Project Management Reviews,» Risk Management Strategy <strong>and</strong> the<strong>Assurance</strong> Case,» Scope Management,» Schedule Management,» Cost Management,» Human Resource Management,» Data <strong>and</strong> Configuration Management,» Quality Management, <strong>and</strong>» <strong>Assurance</strong> Case Measures.Independent <strong>Software</strong> Test<strong>in</strong>g - Acquirers should consider <strong>in</strong>dependent software test<strong>in</strong>g. The completed softwareproduct is provided to an <strong>in</strong>dependent accredited software test<strong>in</strong>g organization (International Organization of St<strong>and</strong>ards(ISO)/ International Electrotechnical Commission (IEC) 17025) to verify that not only functional requirements but also SwArequirements are met. The test<strong>in</strong>g organization can test <strong>in</strong> either a white or black box scenario depend<strong>in</strong>g on need.Follow-on PhaseThe follow-on phase <strong>in</strong>volves ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g (often called susta<strong>in</strong>ment) the software. This phase <strong>in</strong>cludes two major activities:(1) susta<strong>in</strong>ment (<strong>in</strong>cludes risk management, assurance case management, <strong>and</strong> change management) <strong>and</strong> (2) disposal ordecommission<strong>in</strong>g. Dur<strong>in</strong>g the follow-on phase, software risks must be managed through cont<strong>in</strong>ued analysis of theassurance case <strong>and</strong> should be adjusted to mitigate chang<strong>in</strong>g risks.Susta<strong>in</strong>ment (or Post-release Support) - Care shouldbe taken to enforce terms <strong>and</strong> conditions conta<strong>in</strong>ed <strong>in</strong>the <strong>in</strong>itial contract that apply to the service or product. Aprovision for ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g a specific security configurationof COTS software is a good example.Additional contracts are often awarded to providesupport dur<strong>in</strong>g this phase. Analyses should be ongo<strong>in</strong>gto ensure that security requirements rema<strong>in</strong> adequate.To that end, acquirers should ensure that theassurance/security requirements implemented <strong>and</strong>accepted <strong>in</strong> previous contracts flow to the follow-oncontract efforts. This <strong>in</strong>cludes cont<strong>in</strong>uous monitor<strong>in</strong>g ofthe assurance case (<strong>in</strong>clud<strong>in</strong>g risks) <strong>and</strong> mak<strong>in</strong>gappropriate adjustments <strong>in</strong> us<strong>in</strong>g <strong>and</strong> ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>gsoftware to update the assurance case <strong>and</strong> mitigaterisks.Ma<strong>in</strong>tenance Activities» Execut<strong>in</strong>g configuration control ofexecutable product basel<strong>in</strong>es;» Perform<strong>in</strong>g software modificationrevalidation <strong>and</strong> <strong>in</strong>tegration;» Conduct<strong>in</strong>g problem analysesreconstruction, review, <strong>and</strong> acceptance;» Predict<strong>in</strong>g software performance (defectdensity trend<strong>in</strong>g <strong>and</strong> so forth);» Monitor<strong>in</strong>g the eng<strong>in</strong>eer<strong>in</strong>g environment toensure that it is fully documented <strong>and</strong>validated (or security accredited);» Ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g organization policies <strong>and</strong>processes for security <strong>and</strong> safety fixes; <strong>and</strong>» Ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g <strong>and</strong> execut<strong>in</strong>g softwaremigration, data migration, <strong>and</strong>decommission<strong>in</strong>g policies <strong>and</strong> procedures.A formal assurance case <strong>and</strong> risk management processshould be ma<strong>in</strong>ta<strong>in</strong>ed. This process should <strong>in</strong>clude cont<strong>in</strong>uous threat analyses <strong>and</strong> vulnerability assessments. In addition,<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>13


eview <strong>and</strong> adjustment of mitigation strategies should occur regularly. A full-time assurance case/risk management teamshould be considered. If this team is contracted as a service, suppliers must be adequately tra<strong>in</strong>ed <strong>and</strong> cleared. Becauseacquirers should not abrogate their security responsibility wholly to suppliers, tra<strong>in</strong>ed <strong>and</strong> cleared SwA experts <strong>in</strong>sideacquirers organizations must be a part of that team.Risk Management - Risk management must cont<strong>in</strong>ue after the implementation <strong>and</strong> acceptance phase. This <strong>in</strong>cludesupdat<strong>in</strong>g the risk management plan. In this volatile <strong>in</strong>formation environment, new risks <strong>in</strong>evitably emerge. As a result, thesecurity category may be further ref<strong>in</strong>ed dur<strong>in</strong>g this phase. In addition, SwA risks <strong>and</strong> strategies for mitigat<strong>in</strong>g those risksare likely to change as well. Measures should be used to provide <strong>in</strong>sights <strong>in</strong>to the changes <strong>in</strong> the risk environment <strong>and</strong> <strong>in</strong>toimpacts of risk mitigation strategies.<strong>Assurance</strong> Case Management/Transition to Operations - The cont<strong>in</strong>ual assurance (<strong>and</strong> certification) of software<strong>in</strong>tensivesystems <strong>in</strong> the follow-on phase presents some unique challenges:» Many software systems are not architecturally or detail designed for modifications, <strong>and</strong> enhancements are mademany years after procurement.» System <strong>and</strong> software eng<strong>in</strong>eer<strong>in</strong>g change control mechanisms can lack traceability, rigor, <strong>and</strong> documentation.» Adequate assurance case ma<strong>in</strong>tenance processes may not be <strong>in</strong> place before the system transitions to operations.» Support personnel turnover causes loss of corporate knowledge about ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g <strong>and</strong> ensur<strong>in</strong>g <strong>in</strong>tegrity of legacysoftware.» Many software support agencies are not the orig<strong>in</strong>al software manufacturer <strong>and</strong> do not employ the same methods,tools, <strong>and</strong> processes used <strong>in</strong> development.» Dur<strong>in</strong>g previous acquisition phases, the software transition plann<strong>in</strong>g is typically poorly executed <strong>and</strong> ―assuranceconcerns‖ are ―thrown over the fence‖ for follow-on ma<strong>in</strong>tenance.Dur<strong>in</strong>g implementation, acquirers <strong>and</strong> suppliers must identify the assurance requirements for the follow-on phase toma<strong>in</strong>ta<strong>in</strong> <strong>in</strong>tegrity <strong>and</strong> dependability <strong>in</strong> the system. These requirements are def<strong>in</strong>ed <strong>in</strong> greater detail as the product‘stransition to operations nears <strong>and</strong> the software risk exposure is clearer. Any claims, evidence, arguments, <strong>and</strong>assumptions <strong>in</strong> the assurance case that are neither consistent nor based on a known material state of the ―<strong>in</strong> service‖software weaken the credibility of the evidence <strong>and</strong> elevate the safety <strong>and</strong> security risk <strong>in</strong> us<strong>in</strong>g the system. The authorityresponsible for the assurance case ma<strong>in</strong>tenance must keep an auditable record of his or her decisions to <strong>in</strong>cludejustification for changes made to the assurance case.Change Management - Information systems are typically <strong>in</strong> a constant state of migration with upgrades to hardware,software, or firmware, <strong>and</strong> with possible modifications to the surround<strong>in</strong>g environment of the system. Weak change controlprocedures can corrupt software <strong>and</strong> <strong>in</strong>troduce new security vulnerabilities.Change management <strong>in</strong>vokes revalidation efforts. When any hardware or software component is changed, the extent ofrevalidation must be evaluated. Generally, when hardware components are replaced like for like, no revalidation isnecessary. When new hardware is used, the system must be revalidated to ensure no detrimental effects occur. Whensoftware is patched or upgraded, revalidation is always required.Patches <strong>and</strong> upgrades make direct changes to software <strong>and</strong> potentially to the operat<strong>in</strong>g system configuration to which theyare applied. Changes may degrade performance, <strong>in</strong>troduce new vulnerabilities, or re<strong>in</strong>troduce old vulnerabilities. Tounderst<strong>and</strong> patch risks, the patch process must be exam<strong>in</strong>ed <strong>in</strong> some detail dur<strong>in</strong>g the <strong>in</strong>itial acquisition <strong>and</strong> aga<strong>in</strong> whenfollow-on support contracts are awarded. One of the most common patch failures stems from a lack of encryption <strong>and</strong>authentication <strong>in</strong> the implementation <strong>and</strong> acceptance phase. Suppliers should provide updates <strong>in</strong> a secure fashion. Thereshould be no doubt that the source is legitimate <strong>and</strong> the update‘s <strong>in</strong>tegrity is ma<strong>in</strong>ta<strong>in</strong>ed <strong>in</strong> transit.Disposal or Decommission<strong>in</strong>g - Disposal or decommission<strong>in</strong>g policies <strong>and</strong> procedures are often overlooked. Manyorganizations do not have such policies <strong>and</strong> procedures. Acquirers‘ organizations should ensure that policies <strong>and</strong><strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>14


procedures are developed <strong>and</strong> followed to ensure the safe <strong>and</strong> secure disposal or decommission<strong>in</strong>g of software, along withensur<strong>in</strong>g data are destroyed or migrated safely <strong>and</strong> securely. When a software-<strong>in</strong>tensive system is retired or replaced, thedata must be migrated by validated means to the new software-<strong>in</strong>tensive system.Sample RFP/<strong>Contract</strong> <strong>Language</strong> for Secure <strong>Software</strong>The contract language conta<strong>in</strong>ed <strong>in</strong> this pocket guide is offered only as an example. The authors <strong>and</strong> contributors make nowarranties about us<strong>in</strong>g any of this language. The language should be used by acquirers as suggestions <strong>and</strong> should betailored as appropriate <strong>in</strong> accordance with the acquirers‘ legal authorities <strong>and</strong> organizational policies <strong>and</strong> procedures.<strong>Language</strong> similar to the follow<strong>in</strong>g can be used to communicate requirements <strong>and</strong> terms <strong>and</strong> conditions <strong>in</strong> Requests forProposal <strong>and</strong>/or contracts. As used <strong>in</strong> this section, the terms contractor <strong>and</strong> offeror are synonymous with the term supplier.Resources for Procurement, <strong>Acquisition</strong> <strong>and</strong> Outsourc<strong>in</strong>gOPEN WEB APPLICATION SECURITY PROJECT (OWASP) CONTRACT ANNEX - The OWASP provides a samplecontract Annex that can be used as a framework for discuss<strong>in</strong>g expectations <strong>and</strong> negotiat<strong>in</strong>g responsibilities betweenacquirers (clients) <strong>and</strong> developers. The contract Annex is <strong>in</strong>tended to help software developers <strong>and</strong> their clients negotiate<strong>and</strong> capture important contractual terms <strong>and</strong> conditions related to the security of the software to be developed or delivered.The language <strong>in</strong> the Annex may be used whole, <strong>in</strong> part, or as tailored to communication requirements <strong>in</strong> a work statementor stated as terms <strong>and</strong> conditions. The Annex can be obta<strong>in</strong>ed from:http://www.owasp.org/<strong>in</strong>dex.php/OWASP_Secure_<strong>Software</strong>_<strong>Contract</strong>_Annex.APPLICATION SECURITY PROCUREMENT LANGUAGE - Application Security Procurement <strong>Language</strong> is freelyavailable at http://www.sans.org/appseccontract. These guidel<strong>in</strong>es <strong>in</strong>corporate substantial language from the OWASPSecure <strong>Software</strong> <strong>Contract</strong> Annex. These help enable buyers of custom software to more explicitly make code writersresponsible for check<strong>in</strong>g the code <strong>and</strong> for fix<strong>in</strong>g security flaws before software is delivered.The sample procurement language offers General provisions that address Personnel, Security Tra<strong>in</strong><strong>in</strong>g, Background Checks ofDevelopers, Vulnerabilities, Risks <strong>and</strong> Threats, <strong>and</strong> Application Development. It provides procurement language to address theDEVELOPMENT ENVIRONMENT, <strong>in</strong>clud<strong>in</strong>g: Secure Cod<strong>in</strong>g, Configuration Management, Distribution, Disclosure, <strong>and</strong>Evaluation. It offers sample procurement language to cover TESTING, <strong>in</strong>clud<strong>in</strong>g: test plann<strong>in</strong>g, source code reviews, as well asvulnerability <strong>and</strong> penetration tests. The sample procurement language provides provisions for address<strong>in</strong>g Patches <strong>and</strong> Updates,along with notification <strong>and</strong> test<strong>in</strong>g of those modifications to the software. It offers provisions for Track<strong>in</strong>g Security Issues. It hasprovisions for a vendor to self-certify <strong>and</strong> provide a ―certification package‖ that establishes the security requirements, design,implementation, <strong>and</strong> test results were properly completed <strong>and</strong> all security issues were resolved appropriately. It offers provisionsfor specify<strong>in</strong>g the developer is to warrant that the software shall not conta<strong>in</strong> any code that does not support a software requirement<strong>and</strong> weakens the security of the application, <strong>in</strong>clud<strong>in</strong>g computer viruses, worms, time bombs, back doors, Trojan horses, Eastereggs, <strong>and</strong> all other forms of malicious code. It offers procurement language for how security issues will be <strong>in</strong>vestigated.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>15


Sample RFP/<strong>Contract</strong> <strong>Language</strong>: General AudienceAnyone contract<strong>in</strong>g for software or outsourc<strong>in</strong>g software related services should take advantage of sample <strong>in</strong>structions tosuppliers <strong>and</strong> work statements, along with language for acceptance criteria, security controls, secure configuration, <strong>and</strong>certifications for orig<strong>in</strong>ality <strong>and</strong> security.SAMPLE INSTRUCTIONS TO POTENTIAL SUPPLIERS - The follow<strong>in</strong>g is generic language to <strong>in</strong>clude <strong>in</strong> solicitations.This language provides <strong>in</strong>structions to potential suppliers on what they must submit with their offer. The <strong>in</strong>formationsubmitted is used to evaluate offers or proposals.1.0 Foreign ownership, control, or <strong>in</strong>fluence (FOCI) is a concern. For any software product that the supplier <strong>in</strong>tendsto acquire or develop, the supplier shall answer the follow<strong>in</strong>g questions: [Note: Insert appropriate questions asshown <strong>in</strong> the sample questionnaires <strong>in</strong> the “<strong>Software</strong> Supply Cha<strong>in</strong> Risk Management <strong>and</strong> Due-Diligence”pocket guide series or, if deal<strong>in</strong>g with the US Government contracts, <strong>in</strong>struct the offerors to complete the Officeof Management <strong>and</strong> Budget (OMB) St<strong>and</strong>ard Form 328, ―Certificate Perta<strong>in</strong><strong>in</strong>g to Foreign Interests.‖]2.0 Due-Diligence Questionnaire. Offerors shall complete the SwA due-diligence questionnaire attached to this RFP.3.0 <strong>Software</strong> <strong>Assurance</strong> Case3.1 In order for the Acquirer to evaluate the proposed software assurance capabilities, the potentialsuppliers must submit an <strong>in</strong>itial <strong>Software</strong> <strong>Assurance</strong> Case <strong>in</strong> accordance with ISO/IEC 15026, Systems<strong>and</strong> software eng<strong>in</strong>eer<strong>in</strong>g — Systems <strong>and</strong> software assurance — Part 2: <strong>Assurance</strong> Case. Paragraph3.2 below identifies the m<strong>in</strong>imum that should be <strong>in</strong>cluded <strong>in</strong> the <strong>in</strong>itial assurance case. The <strong>in</strong>itial<strong>Software</strong> <strong>Assurance</strong> Case shall subsequently become a part of the contract <strong>and</strong> be used by theAcquirer as <strong>in</strong>itial acceptance conditions.3.2 It is understood that the <strong>in</strong>itial <strong>Software</strong> <strong>Assurance</strong> Case will be broad <strong>in</strong> nature because potentialsuppliers will not know all the details of safety <strong>and</strong> security until contract performance. However, theassurance case should be comprehensive enough to convey a clear underst<strong>and</strong><strong>in</strong>g of the safety <strong>and</strong>security requirement of this RFP. As a m<strong>in</strong>imum, the <strong>in</strong>itial <strong>Software</strong> <strong>Assurance</strong> Case shall <strong>in</strong>clude thefollow<strong>in</strong>g:3.2.1 Top-level claims (<strong>and</strong> sub-claims as appropriate). These claims shall <strong>in</strong>clude all thecharacteristics of claims def<strong>in</strong>ed <strong>in</strong> ISO/IEC 15026.3.2.2 Arguments for the top-level claims <strong>and</strong> sub-claims. These arguments shall <strong>in</strong>clude all thecharacteristics of arguments def<strong>in</strong>ed <strong>in</strong> ISO/IEC 15026.3.2.3 Evidence <strong>and</strong> explicit assumptions support<strong>in</strong>g the arguments. The evidence shall <strong>in</strong>clude all thecharacteristics of evidence def<strong>in</strong>ed <strong>in</strong> ISO/IEC 15026.3.2.4 Approv<strong>in</strong>g authority for the assurance case. The approv<strong>in</strong>g authority resume shall be <strong>in</strong>cluded.The resume should <strong>in</strong>clude evidence of the authority‘s experience <strong>and</strong> education <strong>in</strong> software assurance<strong>and</strong> develop<strong>in</strong>g <strong>and</strong> manag<strong>in</strong>g software assurance cases.4.0 Initial <strong>Software</strong> Description. The potential supplier shall submit an <strong>in</strong>itial <strong>Software</strong> Architecture <strong>and</strong> such otherdescriptions as needed to provide a structure for the software. The <strong>Software</strong> Architecture shall <strong>in</strong>clude an <strong>in</strong>itialdescription of the software components <strong>and</strong> connector, <strong>in</strong>clud<strong>in</strong>g software security related aspects. [NOTE:Include additional explanation.]<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>16


SAMPLE WORK STATEMENT1.0 Trustworthy <strong>Software</strong>1.1 Key def<strong>in</strong>itions―Security controls‖ mean the management, operational, <strong>and</strong> technical controls (that is, safeguards orcountermeasures) prescribed for an <strong>in</strong>formation system to protect the confidentiality, <strong>in</strong>tegrity, <strong>and</strong>availability of the system <strong>and</strong> its <strong>in</strong>formation [National Institute of St<strong>and</strong>ards <strong>and</strong> Technology (NIST)Special Publication (SP) 800–53]. This def<strong>in</strong>ition <strong>in</strong>cludes software.―Security category‖ means the characterization of <strong>in</strong>formation or an <strong>in</strong>formation system based on anassessment of the potential impact that a loss of confidentiality, <strong>in</strong>tegrity, or availability of such<strong>in</strong>formation or <strong>in</strong>formation system would have on organizational operations, organizational assets, or<strong>in</strong>dividuals [Federal Information Process<strong>in</strong>g St<strong>and</strong>ards (FIPS) Publication (Pub) 199].―Security objectives‖ mean confidentiality, <strong>in</strong>tegrity, <strong>and</strong> availability [44 United States Code (USC), Sec.3542].―<strong>Assurance</strong>‖ means grounds for justified confidence that a claim has been or will be achieved (ISO/IEC15026).―<strong>Assurance</strong> Case‖ means representation of a claim or claims, <strong>and</strong> support for these claims (ISO/IEC15026). A <strong>Software</strong> <strong>Assurance</strong> Case <strong>in</strong>cludes (software assurance) claims <strong>and</strong> evidence that supportthose (software assurance) claims.[Note: Include other appropriate def<strong>in</strong>itions.]1.2 Security Category. (NOTE: This is an example. Also see [FIPS 199] <strong>and</strong> [Department of DefenseInstruction (DODI) 8500.2, Enclosure 4])This software system is used for large procurements <strong>in</strong> a contract<strong>in</strong>g organization <strong>and</strong> conta<strong>in</strong>s bothsensitive <strong>and</strong> proprietary supplier <strong>in</strong>formation <strong>and</strong> rout<strong>in</strong>e adm<strong>in</strong>istrative <strong>in</strong>formation. For the sensitivesupplier <strong>in</strong>formation, the potential impact from a loss of confidentiality is moderate (for example, theloss may result <strong>in</strong> a significant f<strong>in</strong>ancial loss), the potential impact from a loss of <strong>in</strong>tegrity is moderate(for example, the loss may result <strong>in</strong> the effectiveness of the contract<strong>in</strong>g mission is significantly reduced<strong>and</strong> there is significant damage to the <strong>in</strong>formation asset), <strong>and</strong> the potential impact from a loss ofavailability is low (for example, the loss may result <strong>in</strong> downtime, but there is backup). For the rout<strong>in</strong>eadm<strong>in</strong>istrative <strong>in</strong>formation, the potential impact from a loss of confidentiality is low, the impact from aloss of <strong>in</strong>tegrity is low, <strong>and</strong> the impact from a loss of availability is low.Based on 1.2, the result<strong>in</strong>g security category of the software system is {(confidentiality, moderate),(<strong>in</strong>tegrity, moderate), (availability, low)}.1.3 <strong>Software</strong> Security Requirements. Based on the security category for the software system, the m<strong>in</strong>imumsecurity requirements specified <strong>in</strong> [NOTE: Reference the external document(s)] are required.[NOTE: M<strong>in</strong>imum security controls may be specified <strong>in</strong> this paragraph or <strong>in</strong> an external documentsimilar to FIPS Pub 200; National Institute of St<strong>and</strong>ards <strong>and</strong> Technology (NIST) SP 800–53; <strong>and</strong> DODI8500.2, Enclosure 4].1.4 <strong>Software</strong> <strong>Assurance</strong> Case. The <strong>Software</strong> <strong>Assurance</strong> Case shall be the primary <strong>in</strong>strument for ref<strong>in</strong><strong>in</strong>g<strong>and</strong> monitor<strong>in</strong>g software assurance dur<strong>in</strong>g the life of this contract. The <strong>Software</strong> <strong>Assurance</strong> Case shallbe developed <strong>and</strong> conform to the requirements of ISO/IEC 15026, Systems <strong>and</strong> softwareeng<strong>in</strong>eer<strong>in</strong>g—Systems <strong>and</strong> software assurance—Part 2: <strong>Assurance</strong> Case. The supplier shall ref<strong>in</strong>ethe <strong>Software</strong> <strong>Assurance</strong> Case throughout the development process <strong>and</strong> should be based on thesoftware assurance requirements of this contract. The <strong>Contract</strong>or shall submit the case for review.[NOTE: Specify when the case should be reviewed, such as with the submission of the softwaredesign.] Lastly, the successful execution of the <strong>Software</strong> <strong>Assurance</strong> Case shall be a condition for f<strong>in</strong>alacceptance of the software product/service.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>17


SAMPLE LANGUAGE FOR SECURITY CONTROLS - The follow<strong>in</strong>g is sample language on implement<strong>in</strong>g securitycontrols <strong>and</strong> st<strong>and</strong>ards that may be considered for Federal agency use <strong>and</strong> may be appropriately modified for other uses.Federal Information Systems <strong>and</strong> National Security Systems are those def<strong>in</strong>ed by the Federal Information SecurityManagement Act (FISMA), NIST st<strong>and</strong>ards <strong>and</strong> publications, <strong>and</strong> other publications applicable to a particular Federalagency‘s <strong>in</strong>formation systems. In us<strong>in</strong>g this language, Federal Information <strong>and</strong> National Security Systems need to beexplicitly def<strong>in</strong>ed <strong>in</strong> accordance with the regulations <strong>and</strong> publications followed by the organization/agency. <strong>Contract</strong>orassets may be <strong>Contract</strong>or <strong>in</strong>formation technology or other assets that <strong>in</strong>terface with Federal Information <strong>and</strong> NationalSecurity Systems. Paragraph (b) refers to certification <strong>and</strong> accreditation or other processes that an organization/agencymay require. This should be explicitly stated <strong>in</strong> this paragraph as well.<strong>Language</strong> for Security Controls <strong>and</strong> St<strong>and</strong>ards(a) When mitigat<strong>in</strong>g or remediat<strong>in</strong>g risks to confidentiality, <strong>in</strong>tegrity, <strong>and</strong> availability of Federal Information Systems,National Security Systems, <strong>Contract</strong>or assets that enable possession, control, or otherwise enable access to FederalInformation or National Security Systems, the <strong>Contract</strong>or shall implement controls <strong>and</strong> st<strong>and</strong>ards as effective or moreeffective than those implemented by the Agency for the same or substantially similar risks with the same orsubstantially similar potential measure of harm.(b) When select<strong>in</strong>g appropriate controls <strong>and</strong> st<strong>and</strong>ards for protect<strong>in</strong>g confidentiality, <strong>in</strong>tegrity, <strong>and</strong> availability ofFederal Information <strong>and</strong> National Security Systems, the <strong>Contract</strong>or shall use the analyses, processes, <strong>and</strong> st<strong>and</strong>ardsestablished for Federal Government systems established by the [current organization/agency <strong>and</strong> other applicablest<strong>and</strong>ards] publications.SAMPLE LANGUAGE FOR SECURE CONFIGURATION OF COMMERCIAL SOFTWARE - The follow<strong>in</strong>g language isquoted from Office of Management <strong>and</strong> Budget Memor<strong>and</strong>um M–07–18, Ensur<strong>in</strong>g New <strong>Acquisition</strong>s Include CommonSecurity Configurations, dated 1 June 2007 (effective 1 February 2008). This is recommended language that may besupplemented as necessary. This language should also change when the software <strong>and</strong> associated regulations <strong>and</strong>suggestions for the configuration change. The use of common security configurations is <strong>in</strong>cluded <strong>in</strong> part 39 of the Federal<strong>Acquisition</strong> Regulation. An example for Vista <strong>and</strong> W<strong>in</strong>dows operat<strong>in</strong>g systems (OS) is <strong>in</strong>cluded below. Other Operat<strong>in</strong>gSystem (OS) types such as L<strong>in</strong>ux, Unix, etc. need to be configured securely as well:Vista <strong>and</strong> W<strong>in</strong>dows XP St<strong>and</strong>ard Secure Configuration(a) The provided <strong>in</strong>formation technology shall certify applications are fully functional <strong>and</strong> operate correctly as <strong>in</strong>tendedon systems us<strong>in</strong>g the Federal Desktop Core Configuration (FDCC). This <strong>in</strong>cludes Internet Explorer 7 configured tooperate on W<strong>in</strong>dows XP <strong>and</strong> Vista (<strong>in</strong> Protected Mode on Vista). For W<strong>in</strong>dows XP sett<strong>in</strong>gs, see:http://csrc.nist.gov/itsec/guidance_W<strong>in</strong>XP.html , <strong>and</strong> for the W<strong>in</strong>dows Vista sett<strong>in</strong>gs, see:http://csrc.nist.gov/itsec/guidance_vista.html.(b) The st<strong>and</strong>ard <strong>in</strong>stallation, operation, ma<strong>in</strong>tenance, update, <strong>and</strong>/or patch<strong>in</strong>g of software shall not alter theconfiguration sett<strong>in</strong>gs from the approved FDCC configuration. The <strong>in</strong>formation technology should also use theW<strong>in</strong>dows Installer Service for <strong>in</strong>stallation to default “program files” directory <strong>and</strong> should be able to silently <strong>in</strong>stall <strong>and</strong>un<strong>in</strong>stall.(c) Applications designed for normal end users shall run <strong>in</strong> the st<strong>and</strong>ard user context without elevated systemadm<strong>in</strong>istration privileges.SAMPLE ACCEPTANCE CRITERIA - The follow<strong>in</strong>g lists suggested generic software security acceptance <strong>and</strong>measurement criteria to be tailored as appropriate. These would apply at delivery <strong>and</strong> throughout the software life cycle.When us<strong>in</strong>g the language below or similar language, clarification should be provided on the specific mean<strong>in</strong>g with<strong>in</strong> thecontext of the software purchased:<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>18


(a) The Supplier shall provide all operat<strong>in</strong>g system, middleware, <strong>and</strong> application software to the Acquirer securityconfigured by Supplier <strong>in</strong> accordance with the FAR requirement based on 44 USC 3544 (b) (2) (D) (iii).(b) The Supplier shall demonstrate that all application software is fully functional when resid<strong>in</strong>g on the operat<strong>in</strong>gsystem <strong>and</strong> on middleware platforms used by the Acquirer <strong>in</strong> its production environment, configured as noted above.(c) The Supplier shall NOT change any configuration sett<strong>in</strong>gs when provid<strong>in</strong>g software updates unless specificallyauthorized <strong>in</strong> writ<strong>in</strong>g by the Acquirer.(d) The Supplier shall provide the Acquirer with software tools that the Acquirer can use to cont<strong>in</strong>ually monitorsoftware updates <strong>and</strong> the configuration status.(e) At specified <strong>in</strong>tervals by the Buyer, the Supplier shall provide the Acquirer with a comprehensive vulnerability testreport for the suite of applications <strong>and</strong> associated operat<strong>in</strong>g system <strong>and</strong> middleware platforms used by the Acquirer <strong>in</strong>its production environment, configured as noted above.(f) The Acquirer <strong>and</strong> Supplier agree to work together to establish appropriate measures to quantify <strong>and</strong> monitor thesupplier’s performance accord<strong>in</strong>g to the contract requirements. Specific guidance should <strong>in</strong>clude types of measuresto be used, measures report<strong>in</strong>g frequency, measures refresh <strong>and</strong> retirement, <strong>and</strong> thresholds of acceptableperformance.(g) The Supplier shall provide all operat<strong>in</strong>g system, middleware, <strong>and</strong> application software to the Acquirer free ofcommon vulnerabilities as specified by the Common Vulnerabilities <strong>and</strong> Exposures (CVE®)—The St<strong>and</strong>ard forInformation Security Vulnerability Names that can be retrieved from http://cve.mitre.org/.(h) The Supplier shall provide all operat<strong>in</strong>g system, middleware, <strong>and</strong> application software to the Acquirer free ofcommon weaknesses as specified <strong>in</strong> the Common Weakness Enumeration, A Community-Developed Dictionary of<strong>Software</strong> Weakness Types that can be retrieved from http://cwe.mitre.org/.SAMPLE LANGUAGE FOR CERTIFICATION & ACCREDITATION AND COMMON CRITERIA - The follow<strong>in</strong>g languagerelates to certification <strong>and</strong> accreditation processes <strong>and</strong> should be appropriately tailored for the organization‘s or agency‘sparticular requirements for certification <strong>and</strong> accreditation:<strong>Contract</strong>ors must also warrant that proposed system <strong>and</strong> software product specifications <strong>and</strong> security <strong>and</strong> dataaccess architectures have either been addressed <strong>in</strong> ongo<strong>in</strong>g documentation required by the agency’s certification<strong>and</strong> accreditation process [name the process, regulations govern<strong>in</strong>g the process, <strong>and</strong> specific documentationwhere this must be addressed] <strong>and</strong> are ready for evaluation <strong>in</strong> applicable phases of the process [list the specificphases of the process <strong>and</strong> specifically what is required <strong>in</strong> each phase]. <strong>Contract</strong>ors must also address will<strong>in</strong>gnessto provide proposed equipment <strong>and</strong> eng<strong>in</strong>eer<strong>in</strong>g assistance as required, at no cost to the government, to thespecified [name the test<strong>in</strong>g facility] test<strong>in</strong>g facility to obta<strong>in</strong> required certification of functionality.The follow<strong>in</strong>g language relates to Common Criteria:<strong>Contract</strong>ors must warrant that their products have been satisfactorily validated under Common Criteria or thatproducts will be satisfactorily validated with the period of time specified <strong>in</strong> the contract <strong>and</strong> that such product validationwill be ma<strong>in</strong>ta<strong>in</strong>ed for updated versions or modifications by subsequent evaluation as required.CERTIFICATE OF ORIGINALITY - The SwA Forum‘s “<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong>: Mitigat<strong>in</strong>g Risk to theEnterprise” Appendix F, provides a sample “Certificate of Orig<strong>in</strong>ality” developed by IBM that requires the vendor tosign stat<strong>in</strong>g that the code <strong>in</strong> the product is their own creation <strong>and</strong> not copied from other sources. This certification coversmore than SwA <strong>and</strong> should be used as an idea generator for ultimate requirements <strong>and</strong> terms <strong>and</strong> conditions that theacquisition official creates for the RFP <strong>and</strong>/or contract. The questionnaire must be completed by a vendor furnish<strong>in</strong>gcopyrightable material, such as software, audio/visual works, written materials, etc. Please visit https://buildsecurity<strong>in</strong>.uscert.gov/swa/acqact.htmlfor more details.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>19


Resources:» New York State ―Application Security Procurement <strong>Language</strong>‖ at http://www.sans.org/appseccontract/.» OWASP Secure <strong>Software</strong> <strong>Contract</strong> Annex athttp://www.owasp.org/<strong>in</strong>dex.php/Category:OWASP_Legal_Project.» Center for Strategic & International Studies ―Security Cyberspace for the 44th President‖ athttp://www.csis.org/component/option,com_csis_pubs/task,view/id,5157/.» Idaho National Labs ―Cyber Security Procurement <strong>Language</strong> for Control Systems‖ athttp://www.msisac.org/scada/documents/4march08scadaprocure.pdf.» Ounce Labs ―<strong>Software</strong> Security Addendum‖ at http://www.ouncelabs.com/assurance/.» Common Weakness Enumeration (CWE): A list of the known software security weaknesses athttp://cwe.mitre.org/data/<strong>in</strong>dex.html.» [IBM CO] No Author. (2006). Certificate of Orig<strong>in</strong>ality. Poughkeepsie, NY: IBM Corporation.» <strong>Software</strong> <strong>Assurance</strong>: A Guide to the Common Body of Knowledge to Produce, Acquire, <strong>and</strong> Susta<strong>in</strong>Secure <strong>Software</strong> (SwA CBK) developed by the DHS/DOD SwA Workforce, Education <strong>and</strong> Tra<strong>in</strong><strong>in</strong>gWork<strong>in</strong>g Group at https://buildsecurity<strong>in</strong>.us-cert.gov.» ISO/IEC 15408–3. Information technology—Security techniques—Evaluation criteria for IT security—Part 3: Security assurance requirements athttp://isotc.iso.org/livel<strong>in</strong>k/livel<strong>in</strong>k/fetch/2000/2489/Ittf_Home/PubliclyAvailableSt<strong>and</strong>ards.htm.» Common Criteria for Information Technology Security Evaluation, Part 3: Security assurance componentsat http://www.commoncriteriaportal.org/public/consumer/<strong>in</strong>dex.php?menu=2.» ISO/IEC 17799. Information Technology—Security techniques—Code practice for <strong>in</strong>formation securitymanagement athttp://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=39612&ICS1=35&ICS2=40&ICS3.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>20


Sample <strong>Language</strong>-US Government RFPs/<strong>Contract</strong>sAlthough, the follow<strong>in</strong>g sample language is tailored for government contracts (<strong>and</strong> task orders), other acquirers may tailorparts or all the language for their use, as well.1.0 GENERALAll work under this contract shall comply with the latest version of all applicable st<strong>and</strong>ards. Individual task orders willreference applicable versions of st<strong>and</strong>ards or exceptions as necessary. These may <strong>in</strong>clude, but are not limited to,{AGENCY} Manual(s), <strong>Acquisition</strong> Bullet<strong>in</strong>s [AB], American National St<strong>and</strong>ards Institute [ANSI] st<strong>and</strong>ards, <strong>and</strong> NationalInstitute of St<strong>and</strong>ards <strong>and</strong> Technology [NIST] st<strong>and</strong>ards, <strong>in</strong>clud<strong>in</strong>g Federal Information Process<strong>in</strong>g St<strong>and</strong>ards [FIPS]publications. <strong>Software</strong> Development St<strong>and</strong>ards Life Cycle (SDLC) Guidel<strong>in</strong>es conta<strong>in</strong>s a list of software developmentst<strong>and</strong>ards for {AGENCY} tasks. The {AGENCY} has developed its own Enterprise Life Cycle. While comply<strong>in</strong>g with thelatest version of all applicable st<strong>and</strong>ards is not a new <strong>in</strong>itiative, it does provide an emphasis of the {AGENCY}‘s expectationthat the <strong>Contract</strong>or will comply with, <strong>and</strong> provide verification that these st<strong>and</strong>ards are adhered to.2.0 CORRECTION OF SOFTWARE AND DOCUMENTATIONThe contractor shall, over the term of the contract, under any task order issued, correct errors <strong>in</strong> <strong>Contract</strong>or developedsoftware <strong>and</strong> applicable documentation that are not commercial off the shelf which are discovered by the Government, <strong>and</strong>any other user of the software, or the <strong>Contract</strong>or. If the system is <strong>in</strong> production, such corrections shall be completed with<strong>in</strong>one work<strong>in</strong>g day of the date the <strong>Contract</strong>or discovers or is notified of the error (or a date mutually agreed upon between theCO <strong>and</strong> the <strong>Contract</strong>or not to exceed 30 work<strong>in</strong>g days). If the system is not <strong>in</strong> production, such corrections shall be madewith<strong>in</strong> five work<strong>in</strong>g days of the date the <strong>Contract</strong>or discovers or is notified of the error (or a date mutually agreed uponbetween the CO <strong>and</strong> the <strong>Contract</strong>or, not to exceed 30 days). Latent defects will be h<strong>and</strong>led <strong>in</strong> the same manner, as soonas they are discovered. Inability of the parties to determ<strong>in</strong>e the cause of software errors shall be resolved <strong>in</strong> accordancewith the Disputes clause <strong>in</strong> Section I, FAR 52.233-1, <strong>in</strong>corporated by reference <strong>in</strong> the contract, but <strong>in</strong> no event constitutesgrounds for delay of error correction beyond the periods specified.3.0 SOFTWARE DEVELOPMENT PROCEDURES3.1 CAPABILITY MATURITY MODEL INTEGRATION (CMMI)3.1.1 All <strong>Contract</strong>ors awarded task orders for any activity related to software development for the {AGENCY}shall comply with the {AGENCY} policy for CMMI® compliance. All tasks that fall with<strong>in</strong> the softwaredevelopment life cycle shall at m<strong>in</strong>imum comply with Level {2, 3, 4, or 5 as required} of the staged representationof the CMMI® for <strong>Software</strong> Eng<strong>in</strong>eer<strong>in</strong>g (CMMI-SW). There are no exceptions to this {AGENCY}‘s policy.<strong>Contract</strong>ors develop<strong>in</strong>g software for the {AGENCY} shall ma<strong>in</strong>ta<strong>in</strong> Level {2, 3, 4, or 5 as required} or higher <strong>in</strong> thestaged representation of the CMMI-SW <strong>in</strong> order to cont<strong>in</strong>ue to receive software task<strong>in</strong>g.3.1.2 The Capability Maturity Model (CMM) Review Team will monitor the <strong>Contract</strong>or‘s process maturity (1)us<strong>in</strong>g st<strong>and</strong>ard {AGENCY} Process Appraisal Review Methodology (PARM) processes, <strong>in</strong>clud<strong>in</strong>g execution ofSt<strong>and</strong>ard CMMI Appraisal Method for Process Improvement (SCAMPISM), as needed, (2) perform<strong>in</strong>g annualcycles of review for CMMI-SW, <strong>and</strong> (3) consider<strong>in</strong>g all types of appraisal data <strong>and</strong> process improvement<strong>in</strong>frastructure data as st<strong>and</strong>ardized by the {AGENCY} PARM process to verify alignment <strong>and</strong> mapp<strong>in</strong>g of the<strong>Contract</strong>or‘s CMMI processes to the {AGENCY} Enterprise Life Cycle (ELC). The responsible organization is<strong>in</strong>dicated as <strong>Contract</strong>or (to be delivered under this Task Order), Government (Government will prepare), or Jo<strong>in</strong>t<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>21


(a jo<strong>in</strong>t effort with the {AGENCY} <strong>in</strong> the lead). The Government may waive (<strong>in</strong>dicated as Not Applicable) therequirements for certa<strong>in</strong> deliverables or work products based on the approved Program Tailor<strong>in</strong>g Plan.3.2 SECURITY CONTROLS3.2.1 The <strong>Contract</strong>or shall follow the NIST 800-53, Recommended Security Controls for Federal InformationSystems <strong>and</strong> the {AGENCY} guidance to ensure that the <strong>Software</strong> will be or has been developed us<strong>in</strong>g securecod<strong>in</strong>g practices <strong>in</strong> a manner that m<strong>in</strong>imizes security flaws with<strong>in</strong> the <strong>Software</strong>. Prior to the execution of asoftware development Work Request the <strong>Contract</strong>or shall provide the {AGENCY} a copy of the <strong>Contract</strong>or‘ssecure cod<strong>in</strong>g best practices policy <strong>and</strong> upon delivery of the <strong>Software</strong> to the {AGENCY}, the <strong>Contract</strong>or shallcertify to the {AGENCY} <strong>in</strong> writ<strong>in</strong>g that the <strong>Contract</strong>or complied with the Policy <strong>in</strong> the performance of itsobligations under the task order.3.2.2 The <strong>Contract</strong>or will be subject to an annual review that will allow the {AGENCY} to assess the effectivenessof security controls. In addition, the <strong>Contract</strong>or shall ensure that appropriate security management tools are <strong>in</strong>place to allow for the review of security configurations, user identities, etc.3.3 REQUIREMENTS TRACEABILITY. The <strong>Contract</strong>or shall provide the requirements traceability matrix at the end ofanalysis phase, design phase, build phase, <strong>and</strong> deployment phase that designates the security requirements <strong>in</strong> a separatesection so that they can be traced through the development life cycle. The <strong>Contract</strong>or shall also provide the applicationdesigns <strong>and</strong> test plan documentation, <strong>and</strong> source code to Government for review.3.4 SOFTWARE CHANGES. Without exception, for changes that may produce an impact on security, the <strong>Contract</strong>or shallfollow the Security Change Management procedures.3.5 MALICIOUS CODE WARRANTY. The <strong>Contract</strong>or represents <strong>and</strong> warrants that the <strong>Software</strong> shall be free from allcomputer viruses, worms, time-outs, time bombs, back doors, disabl<strong>in</strong>g devices <strong>and</strong> other harmful or malicious code<strong>in</strong>tended to or which may damage, disrupt, <strong>in</strong>convenience or permit access to the <strong>Software</strong> user's or another's software,hardware, networks, data or <strong>in</strong>formation.3.6 ACCEPTANCE—SECURE SOFTWARE3.6.1 Notwithst<strong>and</strong><strong>in</strong>g any other provision of the task order, the {AGENCY} will not accept the software until aGovernment source code <strong>and</strong> security analysis has been performed. The <strong>Software</strong> shall be deemed to be ―Non-Secure‖ if the <strong>Software</strong> <strong>in</strong>cludes any one or more of the security flaws. A detailed list<strong>in</strong>g of security flaws will beprovided to the <strong>Contract</strong>or <strong>and</strong> will be updated based on newly discovered flaws.3.6.2 If after a security audit the <strong>Software</strong> is determ<strong>in</strong>ed to be Non-Secure, then upon written notice of such Non-Secure status, the <strong>Contract</strong>or, at its cost <strong>and</strong> expense, shall use its commercially reasonable best efforts toremedy the security flaws by modify<strong>in</strong>g or replac<strong>in</strong>g the <strong>Software</strong> with<strong>in</strong> 30 days of receipt of such written notice(the ―Remedy Period‖). Upon receipt of revised <strong>Software</strong> <strong>and</strong> notice from the <strong>Contract</strong>or that the security flawshave been remedied prior to the end of the Remedy Period, the Government, shall aga<strong>in</strong> subject the <strong>Software</strong> toa security audit at the <strong>Contract</strong>or‘s expense.3.6.3 Notwithst<strong>and</strong><strong>in</strong>g any other provision of the Agreement, if the <strong>Software</strong> is determ<strong>in</strong>ed to be Non-Secure asset forth above <strong>and</strong> rema<strong>in</strong>s Non-Secure at the end of the Remedy Period, the {AGENCY} shall be deemed tohave not accepted the <strong>Software</strong> under the terms of the <strong>Contract</strong> unless the {AGENCY} <strong>in</strong> its sole discretionotherwise expressly agrees <strong>in</strong> writ<strong>in</strong>g to accept the <strong>Software</strong> notwithst<strong>and</strong><strong>in</strong>g that it is deemed to be Non-Secure.3.7 WORK PRODUCTS REQUIRED(These will be def<strong>in</strong>ed with<strong>in</strong> the Work Requests written for this sub-task.)3.8 ACCEPTANCE CRITERIA--OTHER(These will be def<strong>in</strong>ed with<strong>in</strong> the Work Requests written for this sub-task.)<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>22


3.9 AGENCY SECURITY STANDARD. The security st<strong>and</strong>ard for the {AGENCY}, <strong>in</strong>clud<strong>in</strong>g both the security policies <strong>and</strong>the security requirements, are pre-def<strong>in</strong>ed. In general, the sources of these policies <strong>and</strong> requirements <strong>in</strong>clude:» In accordance with the requirements of the Office of Federal Procurement Policy Act of 1974 (Pub. L. 93-400), asamended by Pub. L. 96-83,» The Federal Information Security Management Act of 2002 (H.R. 2458, Title III, Section 301),» OMB A-130, Management of Federal Information Resources, Appendix III,» OMB A-127, F<strong>in</strong>ancial Management Systems,» OMB A-123, Management's Responsibility for Internal Control,» Publication 1075, Safeguard<strong>in</strong>g Taxpayer Information for Federal, State, <strong>and</strong> Local Agencies & Entities,» {Other appropriate Federal laws <strong>and</strong>/or directives},» {Appropriate AGENCY or Senior AGENCY Directives <strong>and</strong> Manuals}.4.0 PREPARATION AND MAINTENANCE OF CERTIFICATION AND ACCREDITATION DOCUMENTS4.1 The <strong>Contract</strong>or shall participate <strong>in</strong> the {AGENCY} security Certification <strong>and</strong> Accreditation (C&A) process by provid<strong>in</strong>gall product specific <strong>in</strong>put (electronic) to the Application System Security Plan (SSP) <strong>and</strong> the Application InformationTechnology Cont<strong>in</strong>gency Plan (ITCP). Refer to NIST Special Publication 800-18, Guide for Develop<strong>in</strong>g Security Plans forInformation Technology Systems (http://csrc.ncsl.nist.gov/publications/nistpubs), for additional guidel<strong>in</strong>es <strong>in</strong> writ<strong>in</strong>g asecurity plan. An {AGENCY} Certification <strong>and</strong> Accreditation checklist, guidance <strong>and</strong> document templates is available toassist the <strong>Contract</strong>or. The purpose of the SSP <strong>and</strong> the ITCP is to provide the {AGENCY} with technical <strong>in</strong>sight on how the<strong>Contract</strong>or meets the {AGENCY} security requirements.4.2 The <strong>Contract</strong>or shall follow the {AGENCY} security st<strong>and</strong>ard <strong>and</strong> policies (see the document references) for security.The <strong>Contract</strong>or shall use the policies <strong>and</strong> other applicable guidance as a framework for specific security controls,documents, procedures <strong>and</strong> features when perform<strong>in</strong>g security requirements analysis <strong>and</strong> security design.4.3 The <strong>Contract</strong>or shall provide draft updates (electronic) version of the Application System Security Plan with<strong>in</strong> 30calendar days of a major change to the system or at a m<strong>in</strong>imum on an annual basis by June 30 to the ProgramManagement Office (PMO).4.4 Included with the submission of the draft SSP the <strong>Contract</strong>or shall ma<strong>in</strong>ta<strong>in</strong> a current up-to-date version of theApplication Information Technology Cont<strong>in</strong>gency Plan (ITCP) <strong>and</strong> related escalation procedures.4.5 The PMO will review the security documents for 10 calendar days <strong>and</strong> provide written comments <strong>and</strong> changes for the<strong>Contract</strong>or to address. <strong>Contract</strong>ors will have 10 calendar days to address the comments <strong>and</strong> complete the documents.4.6 The security st<strong>and</strong>ard for the {AGENCY}, <strong>in</strong>clud<strong>in</strong>g both the security policies <strong>and</strong> the security requirements, are predef<strong>in</strong>ed.In general, the sources of these policies <strong>and</strong> requirements <strong>in</strong>clude:{Appropriate AGENCY or Senior AGENCY Directives <strong>and</strong> Manuals}» NIST Draft SP 800-37 ―Guidel<strong>in</strong>es for the Security Certification <strong>and</strong> Accreditation (C&A) of Federal InformationTechnology Systems,‖ November 5, 2002, http://csrc.nist.gov/sec-cert/,» The Privacy Act (PA), <strong>and</strong>» The Federal Information Systems Management Act (FISMA).<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>23


5.0 CONTINUOUS MONITORING, TESTING, AND REPORTING5.1 SELF TESTING5.1.1 SELF TESTING REQUIREMENTS. The <strong>Contract</strong>or shall perform self test<strong>in</strong>g of their implemented securitycontrols. The <strong>Contract</strong>or shall cont<strong>in</strong>uously monitor all test<strong>in</strong>g activities <strong>and</strong> report on the performance <strong>and</strong>effectiveness of the {AGENCY} security controls (as required by FISMA, OMB Circular A-130, NIST guidance<strong>and</strong> FIPS publications) to the {AGENCY} project manager assigned to oversee this contract. The specificassessments procedures as outl<strong>in</strong>ed <strong>in</strong> draft NIST Special Publication 800-53A, shall be used by the <strong>Contract</strong>or<strong>in</strong> assess<strong>in</strong>g whether appropriate corrective action was taken on previously closed Plan of Action <strong>and</strong> Milestones(POA&Ms) <strong>and</strong> volatile security controls.5.1.2 SELF TESTING SCHEDULE. The <strong>Contract</strong>or shall work with {AGENCY} project manager to establishschedules, discuss roles <strong>and</strong> responsibilities, test<strong>in</strong>g requirements, <strong>and</strong> other general activities to ensurecont<strong>in</strong>uous monitor<strong>in</strong>g is well organized <strong>and</strong> completed <strong>in</strong> a timely manner <strong>and</strong> <strong>in</strong> accordance with the{AGENCY} procedures.5.2 TESTING CONTROLS. The security controls specified <strong>in</strong> {AGENCY} policy {identify the policies or other documents}shall be tested by the <strong>Contract</strong>or us<strong>in</strong>g approved {AGENCY} methods. As part of test<strong>in</strong>g controls, the <strong>Contract</strong>or shallexam<strong>in</strong>e exist<strong>in</strong>g data sources <strong>and</strong> metrics, such as self assessments, <strong>in</strong>cident report<strong>in</strong>g statistics, risk assessments, thirdparty evaluations, <strong>and</strong> other exist<strong>in</strong>g data <strong>and</strong> propose a set of metrics that leverages exist<strong>in</strong>g data <strong>and</strong> is consistent withthe compliance evaluation criteria. The <strong>Contract</strong>or shall <strong>in</strong>clude verification <strong>and</strong> validation to ensure that appropriatecorrective action was taken on POA&Ms closed <strong>in</strong> the last quarter.5.3 REPORTING. The <strong>Contract</strong>or shall provide a determ<strong>in</strong>ation, <strong>in</strong> a written form agreed to by the {AGENCY} projectmanagement, on whether the implemented corrective action was adequate to resolve the identified <strong>in</strong>formation securityweaknesses <strong>and</strong> provide the reasons for any exceptions or risk-based decisions.5.4 ASSESSMENT METHODOLOGY5.4.1 ASSESSMENT PROCEDURES. The assessment procedures as outl<strong>in</strong>ed <strong>in</strong> draft NIST 800-53A shall beused by the <strong>Contract</strong>or as guide <strong>in</strong> the execution of the test procedures as deemed appropriate. Theseprocedures shall be supplemented <strong>and</strong> augmented by tailored test procedures based on the control objective asit applies to {AGENCY}.5.4.2 TEST METHODS. The <strong>Contract</strong>or shall use test methods that <strong>in</strong>clude <strong>in</strong>terview, exam<strong>in</strong>e, <strong>and</strong> test. The<strong>in</strong>terview method is the process of conduct<strong>in</strong>g focused discussions with <strong>in</strong>dividuals or groups of <strong>in</strong>dividuals with<strong>in</strong>an organization to facilitate the reviewer‘s underst<strong>and</strong><strong>in</strong>g, achieve clarification, or obta<strong>in</strong> evidence. The exam<strong>in</strong>emethod is the process of review<strong>in</strong>g, <strong>in</strong>spect<strong>in</strong>g, observ<strong>in</strong>g, study<strong>in</strong>g, or analyz<strong>in</strong>g one or more assessmentobjects (i.e., specifications, mechanisms, or activities). Similar to the <strong>in</strong>terview method, the primary purpose ofthe exam<strong>in</strong>e method is to facilitate the reviewer‘s underst<strong>and</strong><strong>in</strong>g, achieve clarification, or obta<strong>in</strong> evidence. Thetest method is the process of exercis<strong>in</strong>g one or more objects (limited to activities or mechanisms) under specifiedconditions to compare actual with expected behavior. In all three cases (i.e., <strong>in</strong>terview, exam<strong>in</strong>e, <strong>and</strong> test) wherethe methods are employed, the results are used to support the determ<strong>in</strong>ation of overall security controleffectiveness.5.4.3 DETERMINATION STATEMENTS. The <strong>Contract</strong>or shall write a determ<strong>in</strong>ation statement describ<strong>in</strong>g theresults of each tested control.5.4.4 SCORING. The <strong>Contract</strong>or shall mark each determ<strong>in</strong>ation with an ―S‖ for ―Satisfied‖ or an ―O‖ for ―Otherthan satisfied.‖ If all of the determ<strong>in</strong>ation statements <strong>and</strong> test procedures for a control are marked as ―S forSatisfied‖, then the <strong>Contract</strong>or shall score the control as ―In Place‖. If one or more of the determ<strong>in</strong>ationstatements <strong>and</strong> test procedures for a control is marked as ―O for Other than Satisfied‖, then the <strong>Contract</strong>or shallscore the control as ―Partially <strong>in</strong> Place.‖ If most or all of the determ<strong>in</strong>ation statements <strong>and</strong> test procedures for acontrol are marked as ―O for Other than Satisfied,‖ then the contractor shall score the control as ―Planned‖.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>24


5.5 REPORTINGThe <strong>Contract</strong>or shall fully document tests <strong>in</strong> accordance with the report<strong>in</strong>g format prescribed by {AGENCY} procedures.When the results are partially satisfied or other than satisfied condition, the <strong>Contract</strong>or shall document any vulnerabilities<strong>in</strong>dicat<strong>in</strong>g which portions of the security control have not been implemented or applied.6.0 OTHER ACTIVITIES. The follow<strong>in</strong>g are some ideas for additional activities—some of which may be repeated <strong>in</strong>previous paragraphs. These additional ideas provide additional language from which to choose. Also note thatthe language below <strong>and</strong> <strong>in</strong> some previous paragraphs apply to the “system” vice specifically to the “software” <strong>in</strong>the system.6.1 PO&M MAINTENANCE. The <strong>Contract</strong>or shall develop <strong>and</strong> support Web Services <strong>in</strong> implement<strong>in</strong>g solutions that willprovide a means of plann<strong>in</strong>g <strong>and</strong> monitor<strong>in</strong>g corrective actions; def<strong>in</strong>e roles <strong>and</strong> responsibilities for risk mitigation; assist <strong>in</strong>identify<strong>in</strong>g security fund<strong>in</strong>g requirements; track <strong>and</strong> prioritize resources; <strong>and</strong> <strong>in</strong>form decision-makers of progress of openPOA&M items. The <strong>Contract</strong>or shall perform verification of IT security weaknesses to ensure that all weaknesses identifiedthrough third party (e.g., Office of Inspector General (OIG)) audits are <strong>in</strong>cluded <strong>in</strong> the POA&Ms that the quarterly report<strong>in</strong>gto OMB is accurate, as well as actual activities are mirror<strong>in</strong>g planned activities <strong>and</strong> the reasons for any exceptions or riskbaseddecisions are reasonable <strong>and</strong> clearly documented. This verification process will be done <strong>in</strong> conjunction with thecont<strong>in</strong>uous monitor<strong>in</strong>g program <strong>and</strong> will leverage the knowledge <strong>and</strong> methodology established through that strategy.6.2 FISMA COMPLIANCE. The <strong>Contract</strong>or shall plan <strong>and</strong> execute FISMA test<strong>in</strong>g of controls.6.3 C&A DOCUMENTATION. The <strong>Contract</strong>or shall update the Application Certification <strong>and</strong> Accreditation (C&A)documentation to ensure that the C&A artifacts are kept current <strong>and</strong> conta<strong>in</strong> all <strong>in</strong>formation <strong>and</strong> support<strong>in</strong>g evidence isdocumented for the next certification <strong>and</strong> accreditation is available <strong>and</strong> complete. This shall <strong>in</strong>clude review<strong>in</strong>g changesmade to the system <strong>in</strong> order to identify any new data types that may have a Privacy Impact or change the SecurityCategorization of the system.6.4 SECURITY RISK ASSESSMENT. The <strong>Contract</strong>or shall work with the {AGENCY} project manager <strong>in</strong> perform<strong>in</strong>gSecurity Risk Assessment (SRA). This <strong>in</strong>cludes identify<strong>in</strong>g risks related to the design <strong>and</strong> functionality of a new systemaga<strong>in</strong>st compliance with the {AGENCY} risk management process, NIST SP 800-39, FIPS 200 <strong>and</strong> SP 800-53. Activitiesperformed dur<strong>in</strong>g this phase shall <strong>in</strong>clude analyz<strong>in</strong>g how the security architecture implements the {AGENCY} documentedsecurity policy for the system, assess<strong>in</strong>g how management, operational, <strong>and</strong> technical security control features areimplemented by the software <strong>and</strong> hardware, how the system <strong>in</strong>terconnects to other networks while ma<strong>in</strong>ta<strong>in</strong><strong>in</strong>g security,<strong>and</strong> lastly analyz<strong>in</strong>g other <strong>in</strong>herent design features. Procedures <strong>in</strong>clud<strong>in</strong>g a checklist shall be used to document compliancewith basel<strong>in</strong>e security requirements <strong>and</strong> exist<strong>in</strong>g agency guidance.6.6 SECURITY TESTING AND EVALUATION (ST&E). The <strong>Contract</strong>or shall work with {AGENCY} project manager <strong>in</strong>perform<strong>in</strong>g pre-ST&E activities, <strong>in</strong>clud<strong>in</strong>g but not limited to, coord<strong>in</strong>at<strong>in</strong>g the ST&E <strong>and</strong> develop<strong>in</strong>g the ST&E Plan <strong>and</strong>ST&E test cases. The <strong>Contract</strong>or shall also assist project officer <strong>in</strong> perform<strong>in</strong>g dry run assessments to determ<strong>in</strong>e theadequacy of functional <strong>and</strong> non-functional controls <strong>in</strong> preparation for the ST&E, update the ST&E plan based on dry runassessments, observe <strong>and</strong> provide assistance to the ST&E test<strong>in</strong>g team to ensure successful <strong>and</strong> timely completion of thetest plans, <strong>and</strong> prepare the POA&Ms result<strong>in</strong>g from the ST&E results.7.0 GOVERNMENT INDEPENDENT TESTING. The Government will perform periodic vulnerability test<strong>in</strong>g to evaluate thesecurity of {AGENCY}. The process <strong>in</strong>volves an active analysis of the system for any potential vulnerabilities that mayresult from poor or improper system configuration, known <strong>and</strong>/or unknown hardware or software flaws, or operationalweaknesses <strong>in</strong> process or technical countermeasures. The <strong>in</strong>tent of test<strong>in</strong>g is to determ<strong>in</strong>e feasibility of an attack <strong>and</strong> theamount of bus<strong>in</strong>ess impact of a successful exploit, if discovered. The frequency of the test<strong>in</strong>g will be at a m<strong>in</strong>imumquarterly <strong>and</strong> on dem<strong>and</strong> based on the risk associated with newly discovered vulnerabilities.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>25


ConclusionThis pocket guide compiles example RFP/<strong>Contract</strong> language for <strong>in</strong>tegrat<strong>in</strong>g SwA <strong>in</strong>to the acquisition life cycle to supportrisk-based decision mak<strong>in</strong>g by buyers <strong>and</strong> software evaluators. For the latest updates <strong>and</strong> details, visit the web sites listed<strong>in</strong> the preced<strong>in</strong>g pages <strong>and</strong> resource box.The <strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series is developed <strong>in</strong> collaboration with the SwA Forum <strong>and</strong> Work<strong>in</strong>g Groups <strong>and</strong>provides summary material <strong>in</strong> a more consumable format. The series provides <strong>in</strong>formative material for SwA <strong>in</strong>itiatives thatseek to reduce software vulnerabilities, m<strong>in</strong>imize exploitation, <strong>and</strong> address ways to improve the rout<strong>in</strong>e development,acquisition <strong>and</strong> deployment of trustworthy software products. Together, these activities will enable more secure <strong>and</strong>reliable software that supports mission requirements across enterprises <strong>and</strong> the critical <strong>in</strong>frastructure.For additional <strong>in</strong>formation or contribution to future material <strong>and</strong>/or enhancements of this pocket guide, please considerjo<strong>in</strong><strong>in</strong>g any of the SwA Work<strong>in</strong>g Groups <strong>and</strong>/or send comments to <strong>Software</strong>.<strong>Assurance</strong>@dhs.gov. SwA Forums are opento all participants <strong>and</strong> free of charge. Please visit https://buildsecurity<strong>in</strong>.us-cert.gov for further <strong>in</strong>formation.No WarrantyThis material is furnished on an ―as-is‖ basis for <strong>in</strong>formation only. The authors, contributors, <strong>and</strong> participants of the SwAForum <strong>and</strong> Work<strong>in</strong>g Groups, their employers, the U.S. Government, other participat<strong>in</strong>g organizations, all other entitiesassociated with this <strong>in</strong>formation resource, <strong>and</strong> entities <strong>and</strong> products mentioned with<strong>in</strong> this pocket guide make no warrantiesof any k<strong>in</strong>d, either expressed or implied, as to any matter <strong>in</strong>clud<strong>in</strong>g, but not limited to, warranty of fitness for purpose,completeness or merchantability, exclusivity, or results obta<strong>in</strong>ed from use of the material. No warranty of any k<strong>in</strong>d is madewith respect to freedom from patent, trademark, or copyright <strong>in</strong>fr<strong>in</strong>gement. Reference or use of any trademarks is not<strong>in</strong>tended <strong>in</strong> any way to <strong>in</strong>fr<strong>in</strong>ge on the rights of the trademark holder. No warranty is made that use of the <strong>in</strong>formation <strong>in</strong>this pocket guide will result <strong>in</strong> software that is secure. Examples are for illustrative purposes <strong>and</strong> are not <strong>in</strong>tended to beused as is or without undergo<strong>in</strong>g analysis.Repr<strong>in</strong>tsAny <strong>Software</strong> <strong>Assurance</strong> Pocket Guide may be reproduced <strong>and</strong>/or redistributed <strong>in</strong> its orig<strong>in</strong>al configuration, with<strong>in</strong> normaldistribution channels (<strong>in</strong>clud<strong>in</strong>g but not limited to on-dem<strong>and</strong> Internet downloads or <strong>in</strong> various archived/compressedformats).Anyone mak<strong>in</strong>g further distribution of these pocket guides via repr<strong>in</strong>ts may <strong>in</strong>dicate on the pocket guide that theirorganization made the repr<strong>in</strong>ts of the document, but the pocket guide should not be otherwise altered.These resources have been developed for <strong>in</strong>formation purposes <strong>and</strong> should be available to all with <strong>in</strong>terests <strong>in</strong> softwaresecurity.For more <strong>in</strong>formation, <strong>in</strong>clud<strong>in</strong>g recommendations for modification of SwA pocket guides, please contact<strong>Software</strong>.<strong>Assurance</strong>@dhs.gov or visit the <strong>Software</strong> <strong>Assurance</strong> Community Resources <strong>and</strong> Information Clear<strong>in</strong>ghouse:https://buildsecurity<strong>in</strong>.us-cert.gov/swa to download this document either format (4‖x8‖ or 8.5‖x11‖).<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>26


<strong>Software</strong> <strong>Assurance</strong> (SwA) Pocket Guide SeriesSwA is primarily focused on software security <strong>and</strong> mitigat<strong>in</strong>g risks attributable to software; better enabl<strong>in</strong>g resilience <strong>in</strong>operations. SwA Pocket Guides are provided; with some yet to be published. All are offered as <strong>in</strong>formative resources; notcomprehensive <strong>in</strong> coverage. All are <strong>in</strong>tended as resources for ‗gett<strong>in</strong>g started‘ with various aspects of software assurance.The planned coverage of topics <strong>in</strong> the SwA Pocket Guide Series is listed:SwA <strong>in</strong> <strong>Acquisition</strong> & Outsourc<strong>in</strong>gI. <strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>II. <strong>Software</strong> Supply Cha<strong>in</strong> Risk Management & Due-DiligenceSwA <strong>in</strong> DevelopmentI. Integrat<strong>in</strong>g Security <strong>in</strong>to the <strong>Software</strong> Development Life CycleII. Key Practices for Mitigat<strong>in</strong>g the Most Egregious Exploitable <strong>Software</strong> WeaknessesIII. Risk-based <strong>Software</strong> Security Test<strong>in</strong>gIV. Requirements & Analysis for Secure <strong>Software</strong>V. Architecture & Design Considerations for Secure <strong>Software</strong>VI. Secure Cod<strong>in</strong>g & <strong>Software</strong> ConstructionVII. Security Considerations for Technologies, Methodologies & <strong>Language</strong>sSwA Life Cycle SupportI. SwA <strong>in</strong> Education, Tra<strong>in</strong><strong>in</strong>g & CertificationII. Secure <strong>Software</strong> Distribution, Deployment, & OperationsIII. Code Transparency & <strong>Software</strong> LabelsIV. <strong>Assurance</strong> Case ManagementV. <strong>Assurance</strong> Process Improvement & Benchmark<strong>in</strong>gVI. Secure <strong>Software</strong> Environment & <strong>Assurance</strong> EcosystemSwA Measurement & Information NeedsI. Mak<strong>in</strong>g <strong>Software</strong> Security MeasurableII. Practical Measurement Framework for SwA & InfoSecIII. SwA Bus<strong>in</strong>ess Case & Return on InvestmentSwA Pocket Guides <strong>and</strong> related documents are freely available for download via the DHS NCSD <strong>Software</strong> <strong>Assurance</strong>Community Resources <strong>and</strong> Information Clear<strong>in</strong>ghouse at https://buildsecurity<strong>in</strong>.us-cert.gov/swa.<strong>Software</strong> <strong>Assurance</strong> Pocket Guide Series:<strong>Acquisition</strong> & Outsourc<strong>in</strong>g, Volume I – Version 1.1, July 31, 2009<strong>Software</strong> <strong>Assurance</strong> <strong>in</strong> <strong>Acquisition</strong> <strong>and</strong> <strong>Contract</strong> <strong>Language</strong>27

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!