As of October 2026 no government-wide rule requires it: OMB M-26-05 of 23 January 2026 rescinded M-22-18 and M-23-16, and the FAR case that would have written the attestation into contracts was withdrawn on 6 March 2026. Agencies may still ask for CISA's Secure Software Development Attestation Form (version 1.0, OMB control number 1670-0052, approved through 31 March 2027) and may require an SBOM on request. If one does, Section III of the form has four statements, the first with six parts and the fourth with three, and its appendix relates each to SSDF 1.1 tasks. The CEO or a designee who can bind the company signs, or you attach a qualifying third-party assessment instead; a statement you can't make goes to the agency as a named gap with mitigations and a POA&M. Back each statement with evidence from the release and period you attest, and ask counsel what signing commits you to.
- M-26-05 leaves assurance to each agency: agencies must keep software and hardware inventories, may use the attestation form, may require a current SBOM on request (for a cloud platform, of the runtime production environment), and are pointed to SP 800-218.
- The form has instructions, Section I (attestation type and products), Section II (producer and contact) and Section III (the statements, a promise to notify agencies if practices lapse, and a signature or a third-party assessment).
- The form's appendix maps statement 1 to PO.5.1 and PO.5.2 (plus PO.3.2 and PO.3.3 for monitoring), statements 2 and 3 to tasks across all four SSDF groups, and statement 4 to 19 tasks from PO.4 to RV.3.3.
- A third-party assessment must come from a FedRAMP-certified 3PAO or one an agency official approves in writing, use NIST guidance covering every element of the form, and be attached; the producer then need not sign.
- Agencies may add their own instructions and addenda, Privacy Act statements and submission addresses; GSA publishes its own copy of the form, GSA 7700.
- The form still cites SSDF 1.1 and the rescinded memoranda. EO 14306 dropped the step that would have revised it after the SSDF update, and SSDF 1.2 remained a draft in October 2026.
- Run the evidence check on the index for the release you are attesting and confirm every statement lists evidence and no item is about another artifact or outside the period.
- Open one evidence item per statement and confirm it shows the control operating in the period, not only a policy.
- Compare the agency's request with the current form, any agency addendum and the contract clause it cites, and record which version of each you answered.
- Confirm the signer is an employee with authority to bind the company and has seen the evidence summary and any POA&M.
- Set a reminder to tell every agency you attested to if a practice in Section III lapses.
- Applies to
- CISA Secure Software Development Attestation Form Version 1.0 (released 11 March 2024), OMB control number 1670-0052, expires 31 March 2027
- NIST SP 800-218 (SSDF) 1.1 final; 1.2 initial public draft (17 December 2025) tracked separately
- OMB M-26-05 23 January 2026
Software producers whose US federal agency customers ask for a secure software development attestation, an SBOM or SSDF evidence. This guide explains what the documents say; it does not decide whether a contract, clause or law applies to you.
- Part of
- Workflow: Build an AppSec program
Learning goals and prerequisites
What you will learn
- State what US federal policy requires of software producers in October 2026, and what it no longer requires.
- Map each statement on the CISA attestation form to the SSDF 1.1 tasks the form's own appendix names.
- Assemble release-bound evidence for each statement and find the ones you can't support.
- Choose between self-attestation, a POA&M and a third-party assessment, and know which questions go to the agency or to counsel.
Before you start
Engineering and security leads at software producers who sell to US federal agencies, and the people who prepare their attestations
- Know your product's release process and where its build, review, scan and vulnerability records live.
- Have read the product's contract or solicitation language about software security, or know who has.
Refresh first: Apply NIST SSDF (SP 800-218) to one product: practices, evidence and attestation in 2026
Go to the guided practiceThe attestation came from Executive Order 14028 and two OMB memoranda, and most of that structure has since been withdrawn. The sequence matters because contracts, solicitations and agency forms written in 2024 still quote the old requirements. This is what the documents say; whether a particular contract still binds you is a question for your contracting officer and your counsel.
- 12 May 2021: Executive Order 14028 section 4(e) lists secure development practices, 4(k) tells OMB to require agencies to follow NIST's guidance, and 4(n) asks for contract language requiring suppliers to attest. EO 14028 has not been revoked.
- February 2022: NIST publishes SSDF 1.1 (SP 800-218) and its software supply chain security guidance under section 4(e).
- 14 September 2022: OMB M-22-18 requires agencies to use only software whose producer attests to the government-specified practices, allows a POA&M when a producer can't attest to some, and lets agencies ask for SBOMs and other artifacts.
- 9 June 2023: OMB M-23-16 extends the deadlines, excludes third-party components and freely available software from collection, and requires an agency that accepts a POA&M to request an OMB extension.
- 8 March 2024: OMB approves the common form under the Paperwork Reduction Act as control number 1670-0052, expiring 31 March 2027; CISA releases it on 11 March 2024 and opens the online Repository for Software Attestations and Artifacts (RSAA) on 18 March 2024.
- 16 January 2025: Executive Order 14144 calls for machine-readable attestations and artifacts in the RSAA, CISA validation of a sample, public posting of results and FAR contract language.
- 6 June 2025: Executive Order 14306 strikes those provisions. Its replacement text for the SSDF subsection keeps only NIST's tasks, with new dates: an SSDF consortium at the NCCoE by 1 August 2025, SP 800-53 patch guidance by 2 September 2025, and a preliminary SSDF update by 1 December 2025 with a final version within 120 days of it. The follow-on steps for OMB to adopt the update and for CISA to revise the form are not in it.
- 17 December 2025: NIST publishes SSDF 1.2 (SP 800-218 Rev. 1) as an initial public draft; comments closed on 30 January 2026, and on 11 October 2026 NIST still listed it as a draft.
- 23 January 2026: OMB M-26-05 rescinds M-22-18 and M-23-16.
- 6 March 2026: FAR Case 2023-002, Supply Chain Software Security, is withdrawn; the Unified Agenda says it was closed because the OMB direction it implemented had been rescinded.
M-26-05 makes each agency head responsible for the security of software and hardware on its network and asks agencies to set assurance policies that match their own risk determinations. Agencies must keep a complete inventory of software and hardware. They may use the resources built under M-22-18, including the attestation form, and may adopt contract terms requiring a producer to provide a current SBOM on request; for a cloud platform, the memo says such a term should require an SBOM of the runtime production environment. It points agencies to SP 800-218 and its appendices, CISA's SBOM minimum elements (cited in their August 2025 draft; CISA published the final 2026 Minimum Elements for an SBOM on 29 July 2026, replacing NTIA's 2021 list) and CISA's hardware bill of materials framework.
In practice a request now arrives in one of three forms: the attestation form itself, often because a 2024 contract or ordering process still asks for it; an agency's own questionnaire or contract clause on secure development; or an SBOM request. The same per-release evidence answers all three. /frameworks/ssdf-product-lifecycle/ builds that evidence for one product, /domains/supply-chain/sbom/generate-release-inventory/ produces the SBOM, and /frameworks/compliance-evidence-reuse/ reuses it across frameworks.
The form is eight pages of instructions and form plus a two-page appendix. Each part has an engineering input, even where a lawyer or contracts lead fills it in.
| Part | What it asks | Engineering input |
|---|---|---|
| Instructions | Purpose, the scope conditions M-22-18 used (software developed after 14 September 2022, a major version change after that date, or continuously delivered software such as SaaS), what is out of scope, agency-specific instructions and addenda, how to submit, who signs, the third-party option and the POA&M route. | Which products and versions the request covers, and whether any are agency-developed or freely available. |
| Privacy Act statement | An agency-specific statement; the DHS text says each agency using the common form supplies its own. It cites 18 U.S.C. § 1001 for willfully false or misleading information. | None; route it to counsel. |
| Section I | New attestation, attestation following an extension or waiver, or revised attestation; company-wide, an individual product, or multiple products or specific versions, with name, version and release date for each. | The exact product and version list. A footnote says attestations are binding for future versions until you tell the agencies your practices no longer conform. |
| Section II | Producer name, address and website, and a primary contact, which may be a role or a group. | A monitored role address that will still work when people change jobs. |
| Section III | The statements below, introduced as practices the producer presently makes consistent use of, to the best of the signer's knowledge, for code the producer develops; a box promising to notify agencies if those practices stop; and the signature of the CEO or a designee, or a box and attachment for a third-party assessment. | Evidence for every statement, a list of gaps, and the attachments, such as artifacts or an agency addendum. |
| Burden statement and appendix | An estimated 3 hours 20 minutes per response, the control number, and the table relating each statement to EO 14028 section 4(e) and to SSDF 1.1 tasks. | Use the appendix as the mapping; don't build your own. |
The SSDF tasks in the table are the form's own appendix, which CISA describes as a mapping provided for reference. It relates statement 4 as a whole, so 4a, 4b and 4c share one list. The evidence column is what to keep for the release and period you attest; statements 1a to 1f are about your environments during the period, and 2 to 4b are about the release itself.
| Statement | In short | EO 14028 | SSDF 1.1 tasks (form appendix) | Evidence to keep |
|---|---|---|---|---|
| 1a | Separate and protect each environment involved in developing and building software | 4(e)(i)(A) | PO.5.1 | Diagram and configuration showing build runners, development and production separated; access lists per environment |
| 1b | Regularly log, monitor and audit trust relationships used for authorization and access, to the environments and among their components | 4(e)(i)(B) | PO.5.1 | Audit-log retention for source control, CI and the registry; dated access and token reviews; the service-account inventory |
| 1c | Enforce multi-factor authentication and conditional access across the development and build environments | 4(e)(i)(C) | PO.5.1, PO.5.2 | Identity provider and source-control exports showing MFA and conditional access enforced |
| 1d | Document and minimize software that creates undue risk in those environments | 4(e)(i)(D) | PO.5.1 | Approved tool, plugin and CI action lists with exceptions and their review dates |
| 1e | Encrypt sensitive data, such as credentials, to the extent practicable and based on risk | 4(e)(i)(E) | PO.5.2 | Secrets-manager configuration, short-lived CI credentials, secret scanning with push protection |
| 1f | Continuously monitor operations and alerts and respond to suspected and confirmed incidents | 4(e)(i)(F) | PO.3.2, PO.3.3, PO.5.1, PO.5.2 | Alert rules on build and registry logs, the on-call rota, incident tickets in the period |
| 2 | Make a good-faith effort to maintain trusted source code supply chains with automated tools or comparable processes, for internal code and third-party components, and manage related vulnerabilities | 4(e)(iii) | PO.1.1, PO.3.1, PO.3.2, PO.5.1, PO.5.2, PS.1.1, PS.2.1, PS.3.1, PW.4.1, PW.4.4, PW.7.1, PW.8.1, RV.1.1 | Branch rules and sampled reviews, dependency intake decisions and scan results, the signed and archived release |
| 3 | Maintain provenance for internal code and third-party components to the greatest extent feasible | 4(e)(vi) | PO.1.3, PO.3.2, PO.5.1, PO.5.2, PS.3.1, PS.3.2, PW.4.1, PW.4.4, RV.1.1, RV.1.2 | The SBOM and signed build provenance for the release, lockfiles, and the source commit |
| 4a | Run automated vulnerability checks, or comparable processes, on an ongoing basis and before product, version or update releases | 4(e)(iv) | PO.4.1, PO.4.2, PS.1.1, PW.2.1, PW.4.4, PW.5.1, PW.6.1, PW.6.2, PW.7.1, PW.7.2, PW.8.2, PW.9.1, PW.9.2, RV.1.1, RV.1.2, RV.1.3, RV.2.1, RV.2.2, RV.3.3 | SAST, SCA and DAST results for the release candidate and the scheduled scans in the period |
| 4b | Have a policy or process to address discovered vulnerabilities before release | 4(e)(iv) | As 4a | The release criteria and the gate decision for this release, with open findings and approved exceptions |
| 4c | Operate a vulnerability disclosure program and accept, review and address reports in a timely way, according to its timelines | 4(e)(iv) | As 4a | The published policy with response times, and the timeline of each report in the period |
Keep an index per attested release that names the product, the artifact digest, the attestation period and one entry per piece of evidence, with the statement it supports and the SSDF tasks it shows. Store the evidence itself in the systems that produced it, and the index next to the release. The example is for a fictional product; its REL-4 entry is about a different digest and claims a task the form doesn't relate to 4b, and nothing supports 1b.
{
"product": "Kestrel Collector",
"release": "5.3.0",
"artifact": "sha256:4f6c2a9e0b8d71c35e2f9a1b7d40c6e83f5a9b2c1d7e0f4a6b8c3d5e7f9a1b2c",
"period": ["2026-07-01", "2026-09-30"],
"evidence": [
{"id": "ENV-1", "statement": "1a", "date": "2026-09-01", "ssdf": ["PO.5.1"],
"kind": "Network diagram and firewall export: build runners isolated from development and production"},
{"id": "ENV-2", "statement": "1c", "date": "2026-09-30", "ssdf": ["PO.5.2"],
"kind": "IdP export: MFA and device policy enforced on source control, CI and the artifact registry"},
{"id": "ENV-3", "statement": "1d", "date": "2026-08-15", "ssdf": ["PO.5.1"],
"kind": "Approved build-tool list and exceptions"},
{"id": "ENV-4", "statement": "1e", "date": "2026-09-30", "ssdf": ["PO.5.2"],
"kind": "Secrets manager configuration; secret scanning with push protection"},
{"id": "ENV-5", "statement": "1f", "date": "2026-09-12", "ssdf": ["PO.3.3"],
"kind": "Alert routing for CI and registry audit logs; incident tickets"},
{"id": "REL-1", "statement": "2", "date": "2026-09-14", "ssdf": ["PS.1.1", "PW.4.4", "PW.7.1"],
"artifact": "sha256:4f6c2a9e0b8d71c35e2f9a1b7d40c6e83f5a9b2c1d7e0f4a6b8c3d5e7f9a1b2c",
"kind": "Branch ruleset export, review records and dependency scan for the release"},
{"id": "REL-2", "statement": "3", "date": "2026-09-14", "ssdf": ["PS.3.2", "PW.4.1"],
"artifact": "sha256:4f6c2a9e0b8d71c35e2f9a1b7d40c6e83f5a9b2c1d7e0f4a6b8c3d5e7f9a1b2c",
"kind": "Signed SLSA provenance and CycloneDX SBOM attached to the image"},
{"id": "REL-3", "statement": "4a", "date": "2026-09-14", "ssdf": ["PW.7.2", "PW.8.2"],
"artifact": "sha256:4f6c2a9e0b8d71c35e2f9a1b7d40c6e83f5a9b2c1d7e0f4a6b8c3d5e7f9a1b2c",
"kind": "SAST, SCA and DAST results for the release candidate"},
{"id": "REL-4", "statement": "4b", "date": "2026-09-13", "ssdf": ["PW.1.1"],
"artifact": "sha256:0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e",
"kind": "Release gate decision with open findings and exceptions"},
{"id": "VDP-1", "statement": "4c", "date": "2026-09-20", "ssdf": ["RV.1.3", "RV.2.2"],
"kind": "Published disclosure policy with response times; two reports triaged and fixed"}
]
}The script holds the form's appendix as data. It rejects evidence for a statement that isn't on the form, release evidence about another artifact, evidence dated outside the period and SSDF tasks the form doesn't relate to that statement, then lists the evidence for each statement and the ones with none. For the index above it prints REL-4: about sha256:0d1e…, not the attested release, reports no evidence for 1b and 4b, and exits 1. A statement with no evidence is not one to attest to: list it for the agency with your mitigations and a POA&M.
Run it with python3 check_attestation.py evidence-index.json in the release pipeline, so the evidence summary the signer reviews comes from the same records as the release.
"""Check an evidence index against the CISA Secure Software Development Attestation Form."""
import json
import sys
# Section III statements and the SSDF 1.1 tasks the form's appendix relates to each.
ENVIRONMENT = ["PO.5.1"]
FORM = {
"1a": ENVIRONMENT,
"1b": ENVIRONMENT,
"1c": ["PO.5.1", "PO.5.2"],
"1d": ENVIRONMENT,
"1e": ["PO.5.2"],
"1f": ["PO.3.2", "PO.3.3", "PO.5.1", "PO.5.2"],
"2": ["PO.1.1", "PO.3.1", "PO.3.2", "PO.5.1", "PO.5.2", "PS.1.1", "PS.2.1",
"PS.3.1", "PW.4.1", "PW.4.4", "PW.7.1", "PW.8.1", "RV.1.1"],
"3": ["PO.1.3", "PO.3.2", "PO.5.1", "PO.5.2", "PS.3.1", "PS.3.2", "PW.4.1",
"PW.4.4", "RV.1.1", "RV.1.2"],
} # fmt: skip
# The appendix maps statement 4 as a whole; each of 4a to 4c still needs its own evidence.
FOUR = ["PO.4.1", "PO.4.2", "PS.1.1", "PW.2.1", "PW.4.4", "PW.5.1", "PW.6.1", "PW.6.2",
"PW.7.1", "PW.7.2", "PW.8.2", "PW.9.1", "PW.9.2", "RV.1.1", "RV.1.2", "RV.1.3",
"RV.2.1", "RV.2.2", "RV.3.3"] # fmt: skip
FORM.update({"4a": FOUR, "4b": FOUR, "4c": FOUR})
# Statements about the attested software rather than its environments.
RELEASE_BOUND = {"2", "3", "4a", "4b"}
def check(index):
problems, covered = [], {statement: [] for statement in FORM}
for item in index["evidence"]:
where, statement = item["id"], item["statement"]
if statement not in FORM:
problems.append(f"{where}: no statement {statement!r} on the form")
continue
if statement in RELEASE_BOUND and item.get("artifact") != index["artifact"]:
problems.append(f"{where}: about {item.get('artifact')}, not the attested release")
continue
if not index["period"][0] <= item["date"] <= index["period"][1]:
problems.append(f"{where}: dated {item['date']}, outside the attestation period")
continue
unrelated = sorted(set(item.get("ssdf", [])) - set(FORM[statement]))
if unrelated:
problems.append(f"{where}: the form doesn't relate {', '.join(unrelated)} to {statement}")
covered[statement].append(where)
gaps = [statement for statement, items in covered.items() if not items]
return covered, gaps, problems
if __name__ == "__main__":
with open(sys.argv[1]) as f:
index = json.load(f)
covered, gaps, problems = check(index)
for problem in problems:
print(problem)
for statement, items in covered.items():
print(f"{statement}: {', '.join(items) or 'no evidence; list it with mitigations and a POA&M'}")
sys.exit(1 if gaps or problems else 0)The form's instructions describe the route M-22-18 created: identify the practices you can't attest to, document the practices you have in place to mitigate the risk, and submit a plan of action and milestones. Under M-23-16 an agency that accepted a POA&M also had to ask OMB for an extension, and the form's text still says so. M-26-05 rescinded both memoranda and named no replacement process, so ask the requesting agency how it now handles a POA&M. Under M-22-18, POA&M documentation was not to be posted publicly by the vendor or the agency.
The alternative to signing is a third-party assessment. The form accepts one from a Third Party Assessor Organization that is FedRAMP certified or approved in writing by an appropriate agency official, which used relevant NIST guidance including every element of the form as its baseline. Check the box in Section III and attach the assessment; the producer then need not sign, and the agency must keep the assessment from being posted publicly. A third-party assessment costs more and takes longer, but it answers agencies that ask for independent assurance, which M-26-05 lets each agency decide for itself.
- Write each POA&M item as a gap against a statement, with the SSDF tasks it affects, the mitigation in place now, an owner and a dated milestone.
- Don't sign a company-wide attestation to cover one product's evidence; choose individual products or specific versions in Section I.
- Keep the attestation, its evidence index and any POA&M together, because a revised attestation should show what changed.
Requirements vary, and the common form expects them to. Read every request against the contract or solicitation it comes from, and ask the contracting officer which document governs. The items below are ones the primary sources show.
- Agency-specific instructions and addenda: the form says conformance to agency-specific requirements may be attached as an addendum, and the agency handles the Paperwork Reduction Act for its additions.
- Privacy Act statements and submission addresses: each agency supplies its own statement and the email address for PDF submissions.
- Agency copies of the form: GSA publishes GSA 7700 (revision 05/2024) under the same control number, with GSA's Privacy Act statement and a GSA address for emailed forms.
- Which agencies use the common form: the OMB history for control number 1670-0052 records 41 agency requests to use it in 2024 and 2025, and on 23 September 2026 OIRA approved the Securities and Exchange Commission's request to discontinue its use.
- Submission channel: CISA's form and RSAA pages are now marked as archived content, while the form remains downloadable with a resource page that cites M-26-05; confirm with the agency whether it still accepts the RSAA or wants the PDF.
- SBOMs and artifacts: under M-26-05 an agency may write SBOM-on-request terms into the contract, with a runtime SBOM for cloud platforms, and may ask for other artifacts its own policy calls for.
The form must be signed by the chief executive officer or a designee who is an employee and has authority to bind the company. The signer attests, to the best of their knowledge, that the company presently makes consistent use of the Section III practices in developing the listed software, for code the producer develops; third-party components are covered by the steps in statements 2 and 3 for managing them, not by attestations from their authors. The signer also promises to notify every agency that received the form if the practices stop, and the Section I footnote makes the attestation binding for future versions until that notice.
The form's Privacy Act statement cites 18 U.S.C. § 1001 for willfully false or misleading information. What that means for your company, and whether a contract term adds obligations, are questions for counsel, not for this guide. Engineering's part is to give the signer an evidence summary per statement, the list of gaps, and the date the evidence was checked.
Not on any published schedule. EO 14144 would have had OMB fold practices from the updated SSDF into its requirements and CISA revise the form; EO 14306's replacement text leaves both steps out, and M-26-05 then rescinded the memoranda the form implements. The form still refers to SP 800-218, which is SSDF 1.1. The 1.2 draft adds PO.6 (continuous improvement) and PS.4 (reliable updates); track it separately, as /frameworks/ssdf-product-lifecycle/ does, and keep 1.2 evidence out of a 1.1 attestation until an agency asks for it.
Guided practice
Kestrel Analytics (fictional) sells Kestrel Collector, a log shipper, to a civilian agency. The agency's contracting officer sends the request below. Prepare the response for release 5.3.0.
Supplied scenario material
Request (11 October 2026): "Per OMB M-22-18, provide the CISA secure software development attestation for Kestrel Collector, and an SBOM, before renewal on 1 December 2026. Attach the agency addendum on audit logging."
Agency addendum: audit logs for build systems kept 12 months.
Evidence index for 5.3.0 (period 1 July to 30 September 2026): see evidence-index.json in this guide.
Facts:
- CI audit logs are kept 90 days; nobody reviews CI tokens or service accounts.
- The release gate document exists, but REL-4 points at the 5.2.9 image.
- Disclosure policy promises acknowledgment in 5 business days; both reports in the period were acknowledged in 2.
- SBOM: CycloneDX, generated at build time and attested with the image.
- The CEO has delegated signing to the VP of Engineering, an employee with authority to bind the company.1. Correct the premise
What is wrong with the request's basis, and what do you do about it?
Expected result and reasoning
M-22-18 was rescinded by M-26-05 on 23 January 2026. The agency may still ask for the form and for an SBOM, and the renewal contract may require them, so don't refuse: reply that the memorandum was rescinded, ask whether the request rests on a contract clause or the agency's own policy, and send what that basis asks for. Whether an existing clause still binds Kestrel is a question for counsel.
2. Run the evidence check
Run check_attestation.py on the index and list what it finds.
Expected result and reasoning
It exits 1: REL-4 is about another digest (5.2.9) and also claims PW.1.1, which the form doesn't relate to 4b; 1b and 4b have no valid evidence. Every other statement has at least one item in the period.
3. Decide what to attest
For 1b and 4b, decide whether to fix the evidence before signing or to report a gap.
Expected result and reasoning
4b: rerun the gate record for the 5.3.0 digest (sha256:4f6c…) if the gate did run for it; if it didn't, that is a real gap. 1b is a real gap: 90-day logs and no reviews of tokens or service accounts don't show regular auditing of trust relationships, and the addendum asks for 12 months. List 1b as a practice Kestrel can't attest to, with mitigations in place (MFA and conditional access from 1c, alerting from 1f) and a POA&M: extend log retention to 12 months and start quarterly access reviews, with an owner and dates. Ask the agency how it handles a POA&M now that M-23-16 is rescinded.
4. Fill in the form
Choose the Section I options and say who signs.
Expected result and reasoning
Section I: New Attestation, Individual Product: Kestrel Collector 5.3.0 with its release date. Remember the footnote: the attestation carries forward to later versions until Kestrel says its practices no longer conform. Section II: a monitored role address as primary contact. Section III: the VP of Engineering signs as the CEO's designee, after reviewing the evidence summary and the POA&M; tick the box promising to notify the agency if practices lapse. Attach the SBOM for the 5.3.0 digest and the response to the agency addendum.
Kestrel, its evidence and the agency are fictional. Whether a contract clause still requires the form, and what signing it commits the company to, are for counsel and the contracting officer.
Save a draft on this device to resume later. Automatic saving begins after you choose Save. Drafts are never sent by this application; use synthetic data.
No draft saved on this device yet.
Sources & further reading
The standards, specifications and documentation behind the guidance above. Each is the evidence for a claim on this page; consult it for detail beyond the defaults and versions listed here.
- CISA: Secure Software Development Attestation Form (resource page, citing M-26-05). Revision date 14 May 2024.
- CISA: Secure Software Development Attestation Form and instructions (PDF). Version 1.0; OMB 1670-0052, expires 31 March 2027.
- CISA: Secure Software Development Attestation Form page (archived content)
- CISA: Repository for Software Attestations and Artifacts (RSAA) user guide (archived content). 18 March 2024.
- OMB M-26-05: Adopting a Risk-based Approach to Software and Hardware Security. 23 January 2026.
- OMB M-22-18: Enhancing the Security of the Software Supply Chain through Secure Software Development Practices (archived, rescinded). 14 September 2022.
- OMB M-23-16: Update to Memorandum M-22-18 (archived, rescinded). 9 June 2023.
- Executive Order 14028, Improving the Nation's Cybersecurity (Federal Register, via govinfo). 86 FR 26633, published 17 May 2021 (signed 12 May 2021).
- Executive Order 14144, Strengthening and Promoting Innovation in the Nation's Cybersecurity (Federal Register, via govinfo). 90 FR 6755, published 17 January 2025 (signed 16 January 2025).
- Executive Order 14306, Sustaining Select Efforts To Strengthen the Nation's Cybersecurity and Amending Executive Order 13694 and Executive Order 14144 (Federal Register, via govinfo). 90 FR 24723, published 11 June 2025 (signed 6 June 2025).
- Unified Agenda: FAR Case 2023-002, Supply Chain Software Security (RIN 9000-AO49), withdrawn. Withdrawn 6 March 2026.
- OIRA: OMB control number 1670-0052 history (common form approval and agency use)
- OIRA: ICR 202311-1670-001, Secure Software Self-Attestation Common Form. Approved with change 8 March 2024.
- NIST SP 800-218: SSDF 1.1. Version 1.1 (February 2022).
- NIST SP 800-218 Rev. 1 (SSDF 1.2), initial public draft. SP 800-218 Rev. 1 (initial public draft, December 2025).
- NIST: Software Supply Chain Security Guidance under EO 14028 Section 4e. 4 February 2022.
- GSA Form 7700: Secure Software Development Attestation. Revision 05/2024.
- CISA: 2026 Minimum Elements for a Software Bill of Materials (SBOM). 29 July 2026.