← Back to blog

Security testing in 2026: what to check, how to start and which tools to choose

A functional test checks that an app does what it should. A security test checks the opposite: that it does not do what it shouldn't. It must not show other users' data, let people in without a password, run code pasted into a comment field or store passwords in plain text. One such bug can cost a company a leaked customer database, fines and its reputation.

Security testing is a specialism of its own, but every tester can handle the basic checks, and many tools run automatically in CI. This article explains where to start, what to check and which tools to choose, from free scanners to legal practice platforms.

Quick pick

Task Start with Alternatives
Manual web app testing Burp Suite ZAP, Caido
Automated site scanning (DAST) ZAP Nuclei, Nikto, Invicti, Detectify
Code analysis (SAST) Semgrep SonarQube, GitHub Advanced Security, Checkmarx One, Veracode
Vulnerable dependencies (SCA) Snyk OWASP Dependency-Check, Trivy, Socket
Secrets in code Gitleaks TruffleHog, GitGuardian
Infrastructure and network Nmap OpenVAS, Nessus, Intruder
Quick online checks HTTP Observatory Security Headers, SSL Labs
Mobile apps MobSF Frida
Learning PortSwigger Web Security Academy TryHackMe, Hack The Box, OWASP Juice Shop

Types of security testing

A good strategy combines them: SAST, SCA and secret detection automatically on every commit, DAST on the test environment, manual checks for critical features and a pentest before major releases.

OWASP Top 10: what to look for

The OWASP Top 10 lists the most common and dangerous categories of web application vulnerabilities, and both testers and developers rely on it. The current version is the OWASP Top 10:2025. Its categories in practical terms:

1. Broken access control. A user sees or changes someone else's data by changing an id in the URL (/orders/1001 → /orders/1002), opens an admin page via a direct link, or a regular user performs an admin action through the API. SSRF, where the server can be made to call an internal address, now belongs here too.

2. Security misconfiguration. Debug mode on, default passwords, exposed service pages, missing security headers.

3. Software supply chain failures. Vulnerable, outdated or even malicious libraries, compromised build tools and CI.

4. Cryptographic failures. Passwords stored without strong hashing, data sent without HTTPS, outdated TLS versions.

5. Injection. SQL injection, XSS (JavaScript pasted into a field gets executed), command injection: anywhere user data reaches a query or page unsanitised.

6. Insecure design. No limit on login attempts, a 4-digit confirmation code with unlimited tries, a discount that can be applied many times.

7. Authentication failures. Weak password rules, sessions that don't end on logout, password reset tokens that can be guessed or reused.

8. Software or data integrity failures. Updates or plugins without signature checks, insecure deserialisation.

9. Security logging and alerting failures. Nobody notices an attack because suspicious actions aren't logged or nobody gets alerted.

10. Mishandling of exceptional conditions. On an error the app shows a stack trace and internal data or, worse, "fails open" and skips a check when something goes wrong.

There is a separate OWASP API Security Top 10 for APIs and an OWASP Mobile Top 10 for mobile apps.

A checklist for testers

You can do these checks without deep security knowledge:

Authentication and sessions

Access rights

Input

Data and configuration

Log each vulnerability like a regular bug, but mark it as security and restrict access in the tracker, for example in Jira. Don't share details in open channels until it's fixed.

Intercepting proxies: the main manual testing tool

A proxy sits between the browser and the server: you see every request and can change it before it's sent, swapping an id, role or price or bypassing a front-end check.

For the network level there is Wireshark, which shows whether data is sent in plain text.

Automated scanners

Web apps and APIs (DAST):

Infrastructure:

A scanner is an assistant, not a judge: it produces false positives and misses logic flaws. Verify every finding manually.

Security in code and CI (DevSecOps)

A vulnerability is cheapest to fix before the code reaches production:

Run these checks in GitHub Actions or Jenkins on every pull request, and a ZAP baseline scan after deploying to the test environment.

APIs and mobile apps

APIs are the most common attack target: the UI doesn't protect against a request sent directly. Check access to other users' objects, extra fields, rate limiting and authorisation on every method. Send requests with Postman or Burp Suite, and see API testing for more.

Mobile apps can be analysed with MobSF for risky permissions, keys in code and weak cryptography, while Frida lets you examine app behaviour at runtime. More in Mobile app security testing and Mobile app testing.

AI apps and chatbots have vulnerabilities of their own: prompt injection, system prompt leakage and agents with excessive permissions. How to find them with the OWASP Top 10 for LLM is covered in Testing AI and LLM applications.

Where to practise legally

Once you have the basics, try public bug bounty programmes on HackerOne or Bugcrowd, strictly within each programme's scope. More practice sites in Practice sites for testers.

A one-month learning plan

Week What to learn Where and with what
1 HTTP, cookies, sessions, HTTPS; OWASP Top 10; setting up Burp Suite PortSwigger Web Security Academy, Burp Suite
2 Access control, XSS and SQL injection in practice OWASP Juice Shop, DVWA
3 API security, automated scanning OWASP crAPI, ZAP, Nuclei
4 Security in CI: SAST, dependencies, secrets; writing a report Semgrep, Trivy, Gitleaks

AI in security testing

AI assistants such as GitHub Copilot, Cursor or Claude Code explain findings, suggest fixes and help write Semgrep rules or Nuclei templates. Scanners and platforms such as Snyk, SonarQube and Caido add AI to prioritise findings and check AI-generated code, which can contain vulnerabilities too. HackerOne also offers security testing of AI systems themselves. Deciding what counts as a risk and how to fix it is still up to people.

For other kinds of testing, read Manual testing tools and Test automation tools. All tools from this article are in the Testing and Application Security subcategories.

FAQ

Can a manual tester do security testing?

Yes. Checking access rights, input handling and logic is a natural extension of functional testing. Start with the checklist above and PortSwigger Academy.

Burp Suite or ZAP?

Burp Suite is the standard for manual testing, and its Community Edition is free. ZAP is completely free and better suited to automated scanning in CI. Many people use both.

Can I scan any website to practise?

No. Without the owner's permission it's illegal. Practise on learning platforms and your own local apps, or within the rules of bug bounty programmes.

How does security testing differ from a pentest?

Security testing is a regular part of the team's work: automated scanners and checks in every release. A pentest is a separate in-depth audit by specialists under agreed rules, usually a few times a year or before major releases.

Not sure where to start?

Ask Elya: she will pick security testing tools for your project and level.

Fact-check date: 4 November 2026. Service terms may change, so check them on the official websites.