It waits for the right visitor
Lures commonly fire only for visitors arriving from a search engine, on a phone, on their first visit, or from a particular country — and not for logged-in administrators.
Guide · Search Console security issues
The email from Search Console says Google found pages on your site that try to trick people — into entering a password, calling a fake support line, installing something, or running a command. Browsers may already be warning visitors away. The pages are rarely visible to you, and they are rarely the whole problem: they are what a compromise is serving, and the compromise is what has to go before the review can pass.
Published Last reviewed
What Google means
Google uses “social engineering” for pages that deceive the visitor into doing something harmful themselves: typing credentials into a fake login that imitates a bank or a mail provider, calling a fake technical-support number, downloading software that pretends to be an update, or following instructions on a fake verification screen. The common factor is that the victim performs the damaging action.
On a legitimate business site, that content is nearly always there because the site is compromised. Typical shapes are a phishing kit unpacked into a folder under wp-content/uploads, a set of pages imitating a well-known brand, or a script injected into every page that overlays a fake prompt on top of your real content.
The ClickFix lure belongs in this class: a fake CAPTCHA or “verify you are human” panel that tells the visitor to paste a command into their own computer. It is documented on this site from an incident across more than 30 WordPress sites, where the lure was fed from several layers at once.
Why you cannot see it
Owners often open the site, see nothing wrong, and conclude the notice is a mistake. Deceptive content is usually conditional, and the owner is exactly the visitor it is designed to skip.
Lures commonly fire only for visitors arriving from a search engine, on a phone, on their first visit, or from a particular country — and not for logged-in administrators.
A phishing kit in a folder under uploads has its own URLs. Nothing links to it from your menus; the attacker sends victims straight to it.
An injected script can fetch the overlay from an external domain at page load, so your files contain only a small loader.
The page Google sampled may have been replaced by the time you look. The mechanism that placed it is still there.
Find it
Everything here is read-only. Record each URL, file and timestamp you find; the review request is written from these notes.
Figure 1 · From notice to review
A review request is the last step, not the first.
Find it
Fix it, then ask
The Security Issues report states the issue type and, where Google provides them, sample URLs. Start with those exact URLs, not with the home page.
Open each sample in a private window on a phone or a clean browser profile, ideally by searching for the site and clicking the result. URL Inspection’s live test shows what Google itself receives.
Phishing kits are HTML and PHP files sitting where only images should be. List them with their timestamps:
find wp-content/uploads -type f \( -iname '*.php' -o -iname '*.html' -o -iname '*.htm' \) -ls 2>/dev/null
A folder named after a bank, a mail provider or a delivery company, or an index.html in a dated uploads folder, is the usual shape.
Overlays injected into every page usually arrive through a script tag stored in posts or options. A read-only query finds candidates:
wp db query "SELECT option_name, LENGTH(option_value) FROM wp_options WHERE option_value LIKE '%<script%' ORDER BY 2 DESC LIMIT 20"
Adjust the wp_ prefix to your own. Widget and theme options legitimately hold some scripts; long, encoded or external-domain scripts are the ones to read.
Who requested them, from where, and what the server answered. A form that receives POST requests on a page you never built is a phishing kit collecting credentials:
grep -E 'POST .*(/wp-content/uploads/|\.html)' /path/to/access.log | awk '{print $1, $4, $7}' | tail -50
Clean it
Copy the deceptive pages, any kit archive, the injected scripts and the access logs before deleting anything. If credentials were harvested, the logs are what tells you whose.
The kit or lure pages, the loader that injects them, and the persistence that would restore them: rewrite rules, drop-ins, mu-plugins, scheduled tasks, startup directives and rogue administrators.
Update or remove the vulnerable component, and change control-panel, SFTP, database and WordPress credentials from a clean device.
Every sample URL should now return 404 or legitimate content to every kind of visitor — from search, on a phone, logged out — and to URL Inspection’s live test.
The review request
Request the review from the Security Issues report only when the verification step is complete. The request is read by people who are checking whether the deceptive content is gone; a short, specific account helps them do that.
Say what was found and where (for example, a phishing kit in a folder under uploads, and a script in an options row that loaded an overlay), what was removed, how the attacker got in and how that was closed, and that credentials were rotated. Do not claim the site was never compromised if it was, and do not request a review “to check” whether it is clean.
If the review fails, Google’s response will indicate that deceptive content is still being served. Treat that as information: something survived, and a second request without new cleanup work will fail the same way.
Common questions
It is possible, but conditional delivery is far more common: the content is shown to visitors from search, on phones or on a first visit, and hidden from logged-in owners. Work from the sample URLs, a clean browser profile and URL Inspection before concluding it is a false positive.
Usually, yes. Social engineering detections feed Google Safe Browsing, which browsers use to show warnings such as “Deceptive site ahead” on the affected pages or across the site.
Google judges what your pages serve. If an embedded third-party script or ad delivered the deception, remove or replace it before requesting review, and say so in the request.
Google does not commit to a fixed time, and it varies. Reviews for deceptive content are generally quicker than those for hacked spam. What you control is whether the site is genuinely clean when you ask.
Take it offline promptly, but copy it and the access logs first. The logs show whether people submitted credentials and the folder’s timestamps bound the rest of the investigation.
Only if something survived. The page Google sampled is output; the loader, the rewrite rule or the account that placed it is what has to go. A re-flag after a passed review means a layer was missed.