How to Check Website Vulnerability
Check only a site you own or are authorised to test. Start with a malware and blacklist check on the public URL, confirm CMS, plugin and PHP versions are supported, look for exposed files, grade TLS, and run an active scanner such as OWASP ZAP only on staging. Fix and rerun each check until findings clear.
For Indian site owners and developers who want a safe, ordered way to find and fix weaknesses in their own website.
knowledge
- Read time
- 6 min
- Sections
- 8
- Updated
- 14 Nov 2026
- Written by
- WebJi® team
Last editorial update: 14 November 2026.
How do you check a website for vulnerabilities?
On a site you own or are authorised to test, run checks from safest to most intrusive: malware and blacklist status, software versions, exposed files, TLS, and only then an active scan that sends test payloads. Always test the public hostname, not a bare IP, because a shared server picks the site by hostname.
- Confirm you own the site or have written permission. Active scans against sites you do not control can be unlawful and will trigger the host’s defences.
- Note the exact public URL visitors use, including https and www.
- Run a public malware and blacklist check such as Sucuri SiteCheck on that URL.
- In the hosting panel, record the CMS, plugin and PHP versions.
- Grade TLS with an SSL test.
- Run a passive scanner, and an active scan only on staging or in a window you control.
An uptime or HTTP status check is a different test: a site can return 200 and still run a plugin with a published flaw.
What does a website vulnerability scan look for?
A useful scan checks the site in layers — malware, vulnerable components, exposed files, headers and cookies, TLS, and injection flaws — and reports each separately. A single score hides which layer failed.
| Check | Looks for | Type |
|---|---|---|
| Malware and blacklists | Injected scripts, spam links, blocklist listings | Passive |
| Components | CMS, plugin, theme and library versions with known flaws | Mostly passive |
| Exposed files | Public .git, .env, backup archives, open directories | Passive discovery |
| Headers and cookies | Missing HSTS, weak cookie flags, mixed content | Passive |
| TLS | Hostname match, expiry, old protocols | Passive |
| Injection and access control | SQL injection, cross-site scripting, open redirects, broken access control | Active, permission required |
These map to OWASP Top 10 risk classes such as broken access control, injection, security misconfiguration and vulnerable components. Fix the serious classes before chasing informational header notes.
Why is outdated software the most common vulnerability?
Because the flaw is already published: attackers match your plugin, theme or PHP version to a known bug and use an existing exploit, with no need to study your site. Updating or removing the component is the fix.
| Branch | Security fixes until | Status |
|---|---|---|
| 8.1 and older | Ended 31 Dec 2025 | Upgrade now |
| 8.2 | 31 Dec 2026 | Ends within weeks; plan the move |
| 8.3 | 31 Dec 2027 | Supported |
| 8.4 | 31 Dec 2028 | Supported |
| 8.5 | 31 Dec 2029 | Supported |
- Deactivated plugins are still code on disk and can still be exploited; delete what you do not use.
- A public
.gitfolder,.envfile or backup ZIP leaks passwords without any software bug. - Shared hosting does not hide an old plugin; your account serves the files you installed.
To switch PHP versions, see change the PHP version in cPanel or in Plesk, after testing on staging.
How do you scan a WordPress site for vulnerabilities?
Apply all updates from Dashboard → Updates, delete unused plugins and themes, then list remaining components against a vulnerability database with WPScan. Run WPScan only against a site you administer.
# install: gem install wpscan (or use the official Docker image)
wpscan --url https://yoursite.com --enumerate vp,vt --api-token YOUR_TOKEN
vp and vt enumerate vulnerable plugins and themes; vulnerability details need a WPScan API token, which has a free daily allowance. If the report or a malware check shows infected files, stop and follow how to clean a hacked website before trusting any further scan. The WordPress security checklist covers the settings to review afterwards.
How do you run a passive or active scan with OWASP ZAP?
Start with ZAP’s baseline scan, which spiders the site and reports issues from responses without attacking it; run the full active scan only on staging. Active scans submit payloads into forms and can create junk records or emails.
# passive baseline scan (Docker)
docker run --rm -t ghcr.io/zaproxy/zaproxy:stable zap-baseline.py -t https://staging.yoursite.com
Treat every alert as a lead to verify, not a confirmed flaw: scanners report false positives, and a manual check or code review decides. Expect your host’s firewall to block or rate-limit aggressive scans against production.
How do you check SSL and TLS during a security review?
Run the same hostname through an SSL test and aim for an A grade: the certificate must match the name, be in date, and the server should refuse outdated protocols. A valid certificate protects data in transit but says nothing about application flaws.
The WebJi® SSL checker shows the certificate, issuer and expiry. Also look for mixed content — http:// images or scripts on an https page — which browsers block or flag.
How do you fix what a vulnerability scan finds?
Fix exposed secrets and known-vulnerable components first, configuration issues next and informational notes last, then rerun the same check to confirm each finding is gone. A finding that still appears is not fixed.
- Remove any public backup,
.envor.gitpath, then rotate every password and key it contained. - Update or delete each plugin, theme or library the report named.
- Move PHP to a supported branch.
- Correct TLS and security headers.
- Rerun the malware check, WPScan and the SSL test.
Then limit the damage of the next flaw: two-factor authentication for admins (WordPress 2FA), a web application firewall (what is a WAF) and backups with one copy off the server under the 3-2-1 backup rule. None of these replaces updating. For hands-on help, WebJi® website security services handle clean-up and hardening.
Frequently asked questions
Is it legal to scan someone else’s website for vulnerabilities?
Passive checks of public information, such as a blacklist lookup or SSL grade, are routine. Active scanning or attempting exploits without permission can amount to unauthorised access under India’s IT Act. Get written permission that names the hostnames and the testing window before any active test.
Are free online vulnerability scanners enough?
They are a good first screen for malware, blacklists, TLS and obviously outdated software. They cannot see inside your admin area, test business logic or confirm injection flaws safely. For shops and sites handling personal data, add an authenticated scan or a professional test once a year.
How often should I check my website for vulnerabilities?
Review updates weekly, run a full check at least once a quarter, and always after installing new plugins, restoring a backup or changing hosting. Automatic update notifications and a file-change monitor catch many problems between full checks.
Do I have to report a vulnerability I find on my own site?
A flaw you fix before anyone exploits it is not an incident. If you find evidence of a breach, defacement or malware, Indian organisations covered by the CERT-In directions must report it within six hours; see CERT-In rules for hosting.
PHP support dates from php.net, read 14 November 2026 · Last editorial update: 15 November 2026.
Ready to get started with WebJi®?
Join 12,000+ businesses across India and overseas. INR pricing, 18% GST shown before payment and 24/7 email support in Hindi and English — average first reply under 60 minutes.