You do not need a full DevSecOps programme. Which five steps deliver the most protection in development, and what merely slows teams down.
Building security into development works when it does not slow the team. If every commit waits ten minutes for a scanner producing nine false positives out of ten, the process will be switched off within two weeks.
This article covers what genuinely protects and what is merely noise.
The single most important step. An API key, database password or certificate committed to version control stays in the history forever and exists on every developer's machine.
What to do: pre-commit checking and scanning the repository's full history. Where there is a hit, the secret must not only be removed but rotated, because deletion does not erase it from history.
Most of the code is third-party. Automated scanning should be part of the build, with KEV-listed or high-EPSS findings failing the build while the rest merely report. We covered this in our software dependencies article.
SAST easily floods a team. Start with a few high-confidence rules (injection, hardcoded secrets, known dangerous functions) and expand only while the false positive rate stays low.
The key: whatever fails the build must be true. After one false block, the team's trust is gone.
Not a separate process but existing review extended with a few questions:
Four questions covering most real flaws.
Secrets belong not in a config file but read from a secrets manager at runtime. Then they are not in the repository, not in the image, and rotatable without code changes.
Full SAST with every rule. It produces thousands of findings, most irrelevant. The team learns to ignore them, and from then on genuine findings are lost too.
Mandatory security approval for every release. It creates a bottleneck and the team routes around it. A risk-proportionate approach works better: only for larger changes.
DAST on every build. Slow, and it requires a running environment. Weekly or pre-release runs suffice.
Threat modelling at design time. An hour discussing who might attack what in a new feature is cheaper than any later fix.
Security baselines for environments. Development, test and production with the same security settings. The most common gap is a test environment holding production data with weaker protection.
Anonymised test data. A copy of the production database in development is one of the most common data protection failures.
Our IT security services include reviewing the security of the development process.
The most important OWASP Top 10 items explained: broken access control, injection, authentication. What a…
Most of a modern application is third-party code. How to know what is in it, and what to do when a…
APIs are more exposed than web applications because no interface constrains usage. Authorisation, rate…
Our specialists are happy to discuss what this means in your organisation's environment.