Skip to main content
Editorial

A Security Checklist for AI-Built Software Before Launch

Check access control, secrets, inputs, dependencies, private files, and recovery before releasing an application built with AI assistance.

A Security Checklist for AI-Built Software Before Launch

Security work begins with understanding what the application protects and who should be allowed to do what. An AI assistant can help identify questions and draft checks, but the product owner still needs evidence that the controls work. A generated checklist or a clean scanner report cannot establish complete security on its own.

For a small client portal, the protected resources may include account details, uploaded documents, invoices, and administrative settings. Start by identifying the routes and background jobs that read or change each resource.

Verify access at the point of use

Test a logged-out visitor, an ordinary user, a different customer’s account, and an administrator. Check direct requests to the action or download URL, not only the surrounding interface. Hiding a control does not prevent someone from submitting the request another way.

Private file storage deserves its own check. If the application denies a download but the underlying object URL remains public, the document is still exposed. Verify storage access using the exact deployed configuration and a safe synthetic file.

Remove secrets from deliverables and logs

Inspect the release package for API keys, database exports, configuration files, test credentials, and personal information. Use appropriate configuration or secret-management mechanisms for the deployment. Avoid distributing a shared privileged credential to every customer installation.

Review logs and error messages for passwords, session tokens, sensitive request bodies, and private documents. Logs should help someone investigate an issue without becoming another source of exposure. If a real secret has been disclosed, removing the visible copy alone does not invalidate it; follow the affected service’s revocation and replacement process.

Validate input and handle output safely

Use the framework’s established facilities for database queries, output encoding, file handling, and request protection. Validate expected types, lengths, ranges, and allowed values on the server. Treat imported files and data returned by external services as inputs that also need evaluation.

Uploads, webhooks, redirects, and features that fetch user-supplied URLs need particular attention. A feature that reads a URL may gain access to internal network resources if its destination rules are incomplete. Review these paths against relevant security guidance for the technology involved.

Know what you ship and how you recover

Keep an inventory of runtime dependencies and their versions. Review relevant advisories, supported runtime requirements, and update paths. Confirm that the package contains only the files required for the promised distribution.

The NIST Secure Software Development Framework provides a broader reference for incorporating security practices into development and vulnerability response. Use it to improve your process, rather than describing a product as certified because you consulted the document.

Prepare a launch decision

  • Document the important assets, roles, and trust boundaries.
  • Verify denied access as well as permitted access.
  • Check the exact package and deployed storage behavior.
  • Test backup restoration and safe failure handling.
  • Provide a private route for reporting a vulnerability.
  • Resolve serious findings before exposing affected features.

For products handling sensitive data or complex integrations, obtain review suited to the actual risk and claims you plan to make. Pair security work with code review and behavioral testing, and describe verified capabilities precisely in your product listing.