Skip to main content
Blog

Japanse titels en een haantje in Google na een hack: zo los je het op

04 november 2026

Mijn website petermartin.nl is gehackt en weer hersteld. Toch hebben sommige zoekresultaten in Google nog een Japanse titel. En naast alle zoekresultaten staat niet mijn eigen favicon, maar een rood icoontje met een witte haan.

Is de site dan opnieuw gehackt? (Spoiler: Nee. Google loopt gewoon achter).

Op 21 oktober schreef ik over twee kritieke beveiligingsupdates op één dag, net nadat ik al mijn websites had bijgewerkt. Een dag later ontdekte ik dat een van mijn websites toch was gehackt via het lek in YOOtheme Pro, slechts een paar uur voordat de beveiligingspatch beschikbaar kwam. In mijn vorige blog lees je hoe ik die site heb onderzocht en hersteld. Enkele dagen later bleek ook petermartin.nl gehackt te zijn. Uit analyse van de bestanden en de logbestanden bleek dat ook hier het lek in YOOtheme Pro de oorzaak was. Ook deze site heb ik hersteld en hij is weer schoon. Maar zoek je in Google met site:petermartin.nl, dan zie je nog steeds sporen van de hack.

In deze blog lees je waarom die Japanse zoekresultaten en het haantjes-icoon na een herstel nog weken blijven staan, en wat je kunt doen om het opschonen te versnellen. Ik gebruik daarbij de cijfers uit Search Console van mijn eigen site.

1. Wat je in Google ziet, is oud

Bij deze hack kregen alleen zoekmachines zoals Googlebot de Japanse spampagina's te zien. Als je de site zelf opende, zag je gewoon de normale website. Dat heet cloaking, en daardoor valt zo'n hack vaak pas op in de zoekresultaten of in Search Console. Google heeft die spampagina's in die periode opgeslagen in zijn index, met Japanse titels, prijzen en sterrenbeoordelingen.

Na het herstel serveert de server die spam niet meer. Maar Google past zijn index pas aan als het een URL opnieuw bezoekt. Tot dat moment toont Google wat het de laatste keer heeft gezien. Wat je in de zoekresultaten ziet, is dus een momentopname van de periode dat de hackers actief waren, niet de huidige toestand van je website.

1.1 Ook je echte pagina's kunnen een Japanse titel hebben

Dit had ik niet verwacht. In Google staan niet alleen nep-URL's met een Japanse titel, maar ook mijn eigen pagina's. Mijn disclaimer staat in Google als een aanbieding voor Japanse whisky, met 4,3 sterren uit 517 beoordelingen. Mijn pagina "Over mij" en de sitemap hebben ook een Japanse producttitel. Andere resultaten eindigen op 【公式通販】 - PETERMARTIN.NL, wat "officiële webwinkel" betekent. De spam gebruikt dus mijn eigen domeinnaam om betrouwbaar over te komen. Google zet er zelfs "Vertaal deze pagina" bij.

De verklaring: de spamcode onderschepte de bezoeken van Googlebot voordat Joomla de pagina kon tonen. Googlebot kreeg daardoor op elke URL spam te zien, ook op bestaande pagina's. Die echte pagina's bestaan nog steeds. Een 410 is daar dus geen oplossing. Google moet ze gewoon opnieuw crawlen en de echte inhoud zien.

Google-zoekresultaten voor site:petermartin.nl met Japanse producttitels, sterrenbeoordelingen en het rode haantjes-icoon naast elk resultaat
Zoekresultaten op 4 november: Japanse titels bij echte pagina's zoals de disclaimer en "Over mij", en het haantje naast elk resultaat.

1.2 Wat Search Console laat zien

Mijn site heeft een kleine 600 pagina's. De sitemaps bevatten 277 Engelse en 268 Nederlandse links. Toch telde Search Console op 4 november:

  • 20.800 geïndexeerde pagina's, dus ruim dertig keer zo veel als de site echt heeft;
  • 35.500 niet-geïndexeerde pagina's, waarvan 35.418 met de reden Gecrawld - momenteel niet geïndexeerd.

Bijna al die URL's zijn spam die Googlebot tijdens de hack heeft gevonden. Het verschil tussen het aantal geïndexeerde pagina's en het aantal pagina's in je sitemap is een goede maatstaf voor hoeveel spam er nog in Google zit.

Let ook op de datum rechtsboven in het rapport. Bij mij stond daar op 4 november nog "Laatste update: 23-10-2026". Het rapport loopt dus zelf ook bijna twee weken achter. De cijfers laten de situatie van vlak na het herstel zien, niet die van vandaag.

Rapport Pagina-indexering in Google Search Console met 35.500 niet-geindexeerde en 20.800 geindexeerde pagina's
Het rapport Pagina-indexering: 20.800 geïndexeerde pagina's voor een site van ongeveer 600 pagina's.

2. Het haantjes-icoon

Het rode icoon met de witte haan is het logo van Komeri (コメリ), een grote en bekende Japanse bouwmarktketen. Komeri heeft niets met de hack te maken en is net zo goed slachtoffer. De hackers gebruiken het logo omdat het vertrouwen wekt.

Het haantje staat niet alleen in de zoekresultaten. Ook in Search Console zelf staat het als icoon naast mijn property.

2.1 Waarom juist een bekend Japans logo?

Deze vorm van SEO-spam heet de Japanese keyword hack. De hackers maken duizenden Japanstalige spampagina's aan op jouw domein, meestal voor namaakproducten of nepwebwinkels. Ze richten zich op Google.co.jp en liften mee op de goede naam die jouw domein bij Google heeft opgebouwd.

Google toont de favicon naast elk zoekresultaat. Een Japanse gebruiker die een vertrouwd logo ziet, klikt eerder. Daarom staat de haan er.

2.2 Mijn eigen favicon was niet aangepast

Ik verwachtte dat de hackers mijn favicon.ico hadden vervangen. Dat bleek niet zo te zijn. Ik heb de favicons van de gehackte site vergeleken met een schone kopie: ze waren identiek. Ook stond er nergens op de server een Komeri-afbeelding of een verwijzing ernaar.

De meest waarschijnlijke verklaring zit in de cloaking. Googlebot kreeg niet mijn homepage te zien, maar spam-HTML die het script live ophaalde van de server van de aanvaller. In die HTML bepaal je zelf welke favicon je gebruikt. Google zag dan een homepage met het Komeri-logo als favicon, en heeft dat opgeslagen. Daarom was er op mijn server niets van terug te vinden.

Controleer bij een hack dus niet alleen of je favicon.ico is aangepast. Ook als dat bestand schoon is, kan Google een andere favicon hebben gezien.

2.3 Waarom de haan blijft staan

Google gebruikt één favicon per hostname. Daarom staat de haan niet alleen naast de spampagina's, maar ook naast je echte pagina's.

Google haalt de favicon niet bij elk bezoek opnieuw op. De favicon wordt bijgewerkt wanneer Google je homepage opnieuw crawlt en verwerkt. Volgens Google kan dat enkele dagen tot enkele weken duren. Pas als Google je schone homepage heeft gezien, verdwijnt de haan.

3. Waarom de spam-URL's niet in één keer weg zijn

In Search Console zag ik twee soorten spam-URL's:

  • Paden, zoals /product/19772966, /itemgoods/24373094 en /shops/reviews/eu9cumxea6xv6je. Die bestaan niet in Joomla, dus Joomla geeft zelf al een 404 Not Found. Daar hoef je niets voor te doen.
  • Querystrings op de homepage, zoals /?z=fdad7bybnp2oc0j. Joomla negeert die querystrings en toont gewoon de homepage met status 200. Voor Google bestaat de pagina dan nog steeds.

Voor die querystrings heb ik nginx zo ingesteld dat ze de HTTP-statuscode 410 Gone teruggeven:

# Spam-URL's van de hack: 410 Gone
if ($args ~* "^([a-z-]+/[0-9]{8,}|c=[a-z0-9]{10,}|z=[a-z0-9]{10,})$") { return 410; }
location ~* "^/(inx_sitemap\.xml|[a-z_-]*sub[a-z0-9_-]*\.xml)$" { return 410; }

De patronen verschillen per site. Op de site uit mijn vorige blog gebruikte de spam alleen c=, op petermartin.nl kwam daar z= bij. Pas de patronen dus aan op wat jij in je eigen logbestanden en in Search Console ziet, en controleer dat je echte URL's er niet onder vallen.

Een 404 of een 410: voor Google maakt het weinig uit. Volgens de documentatie van Google worden alle 4xx-statuscodes, behalve 429, hetzelfde behandeld: de pagina bestaat niet en wordt uit de index gehaald. Ik gebruik voor de querystrings toch een 410, omdat die het duidelijkst zegt dat de pagina bewust is verwijderd. Belangrijk is vooral dat het geen 200 is.

Maar Google moet elke spam-URL wel eerst zelf opnieuw bezoeken om die 404 of 410 te zien. Bij tienduizenden URL's gebeurt dat niet op één dag. Google verdeelt het crawlen over dagen en weken, zodat je server niet overbelast raakt. Elke keer dat Googlebot een spam-URL bezoekt en een 404 of 410 krijgt, verdwijnt die URL uit de index. Het aantal Japanse resultaten wordt dus geleidelijk kleiner.

Blokkeer de spam-URL's daarom niet via robots.txt. Dan kan Google ze niet meer bezoeken, ziet het de 404 of 410 nooit, en blijven ze juist langer staan.

4. Zo versnel je het herstel

Grotendeels is het wachten tot Google je site opnieuw heeft gecrawld. Met deze stappen in Google Search Console controleer je of je herstel echt gelukt is, en duw je Google een beetje in de goede richting.

4.1 Controleer wat Google nu echt ziet

Bij cloaking kun je niet afgaan op wat jij in je browser ziet. De hack liet gewone bezoekers immers ook de normale site zien. Gebruik daarom de URL-inspectie in Search Console:

  1. Ga naar URL-inspectie en voer een URL in die in Google nog een Japanse titel toont.
  2. Klik op Live URL testen.
  3. Bekijk de opgehaalde HTML en de statuscode.

Bij de live test haalt Google de pagina direct op als Googlebot. Zie je bij een spam-URL de status 404 of 410, of bij een echte pagina je eigen schone HTML? Dan serveert je server geen spam meer aan Google, en kijk je in de zoekresultaten alleen nog naar oude gegevens. Zie je toch Japanse tekst, dan is je site nog niet schoon.

4.2 Controleer de favicon en vraag indexering aan

De favicon en de belangrijkste titel en beschrijving van je site horen bij je homepage. Controleer daarom eerst welke favicon Googlebot nu op je homepage krijgt.

Kijk daarvoor niet in de broncode in je browser. Bij cloaking krijgt jouw browser altijd de normale site, met je eigen favicon, ook als de site nog gehackt is. Ook een controle met curl en de user-agent van Googlebot is niet genoeg: spamcode kan ook naar het IP-adres kijken. Alleen de live test in Search Console haalt de pagina op vanaf de servers van Google, en laat zien wat Googlebot echt krijgt:

  1. Ga naar URL-inspectie en voer je homepage in, bijvoorbeeld https://jouwdomein.nl/.
  2. Klik op Live URL testen.
  3. Klik op Geteste pagina bekijken. Rechts opent een paneel met de tabbladen HTML, Screenshot en Meer informatie.
  4. Zoek in het tabblad HTML naar icon.

Bij petermartin.nl ziet dat er nu zo uit:

<link href="/images/brand/favicon.png" rel="icon" sizes="any">
<link href="/images/brand/favicon.svg" rel="icon" type="image/svg+xml">
<link href="/images/brand/apple-touch-icon.png" rel="apple-touch-icon">
<link href="/favicon.ico" rel="icon" type="image/vnd.microsoft.icon">

Alle regels verwijzen naar mijn eigen bestanden. De haan komt dus alleen nog uit het geheugen van Google, en verdwijnt zodra Google de homepage opnieuw heeft verwerkt.

Zie je een verwijzing naar een bestand dat je niet kent, of naar een ander domein, dan krijgt Googlebot nog steeds andere HTML dan jij. Dan is je site nog niet schoon. Meestal zie je in dezelfde HTML dan ook Japanse tekst.

Klopt alles, klik dan op Indexering aanvragen. Daarmee vraag je Google om de homepage opnieuw te crawlen. Dat is ook de manier die Google zelf noemt om een gewijzigde favicon sneller op te laten pikken. Het is een verzoek, geen garantie: Google bepaalt zelf wanneer het langskomt.

Doe hetzelfde voor je belangrijkste echte pagina's die in Google nog een Japanse titel hebben, zoals bij mij de disclaimer en "Over mij". Die pagina's verdwijnen niet vanzelf met een 404 of 410, want ze bestaan gewoon. Ze worden pas weer goed getoond als Google ze opnieuw heeft gecrawld.

Zet je na de hack een nieuwe favicon neer, houd dan rekening met de eisen van Google:

  • De favicon is vierkant en minimaal 8 × 8 pixels. Google adviseert groter dan 48 × 48 pixels.
  • Het bestand geeft status 200 en de URL blijft gelijk.
  • De homepage is niet geblokkeerd voor Googlebot, en het favicon-bestand niet voor Googlebot-Image, bijvoorbeeld via robots.txt.
  • Google gebruikt één favicon per hostname. Je kunt dus geen aparte favicon per pagina laten tonen.

4.3 Verberg de spam tijdelijk met de Verwijderingen-tool

Je kunt niet voor duizenden spam-URL's los een verwijdering aanvragen. Dat hoeft ook niet. In de tool Verwijderingen kun je bij een tijdelijke verwijdering kiezen voor Alle URL's met dit voorvoegsel verwijderen. Voor spampaden kan dat per map, zoals https://jouwdomein.nl/product/ of https://jouwdomein.nl/shops/, als je site zelf geen pagina's met dat begin heeft.

Voor querystrings werkt dit niet. Ik probeerde het voorvoegsel https://petermartin.nl/?z= toe te voegen. Search Console waarschuwde toen dat mijn hele domein zes maanden niet zichtbaar zou zijn in Google. Search Console negeert kennelijk het vraagteken en alles wat erna komt. Dan blijft https://petermartin.nl/ over, en dat is de hele site. Voor de querystring-URL's moet je het dus van de 410 hebben.

Drie dingen om op te letten:

  • Lees de bevestiging in Search Console goed voordat je een verwijdering indient. Staat daar dat je hele site wordt verborgen, breek dan af.
  • Een tijdelijke verwijdering verbergt de URL's ongeveer zes maanden, maar haalt ze niet uit de index. Daarvoor heb je de 404 of 410 nodig. Gebruik de twee samen.
  • Vraag nooit een verwijdering aan voor je homepage of andere echte pagina's, ook niet als ze nog een Japanse titel hebben. Dan verberg je juist de pagina's die je wilt laten zien. Controleer dus goed dat je voorvoegsel alleen spam-URL's raakt.

4.4 Houd bij wat er nog over is

Een gewone site:-zoekopdracht laat niet alle spam zien. Zoek daarom ook op Japanse woorden die vaak in deze spam voorkomen, zoals 通販 (postorder, webwinkel) en 日本 (Japan). Bij mij stond 通販 in veel titels, als onderdeel van 公式通販 (officiële webwinkel):

site:jouwdomein.nl 通販
site:jouwdomein.nl 日本

Ook dit geeft geen volledige lijst. Kijk daarom ook in Search Console bij Pagina-indexering. Vergelijk het aantal geïndexeerde pagina's met het aantal URL's in je sitemap. Bij mij is dat nu 20.800 tegen ongeveer 550. Controleer het elke week: het verschil moet geleidelijk kleiner worden. Kijk daarbij steeds naar de datum van de laatste update van het rapport.

De andere controles in Search Console, zoals onbekende eigenaren, onbekende sitemaps en handmatige acties, staan in mijn vorige blog bij stap 5.6.

5. Geduld

Het is frustrerend om na al het werk nog steeds Japanse titels en een haan naast je website te zien staan. Maar als de live test in Search Console schone HTML of een 404 of 410 laat zien, heb je technisch alles goed gedaan. De rest is wachten op Google. Reken op twee tot acht weken voordat de zoekresultaten weer helemaal kloppen. Ik houd de cijfers van mijn eigen site bij en vul deze blog aan zodra de haan verdwenen is.

6. Bronnen

Peter Martin
Joomla Specialist

Peter is Joomla specialist en Linux admin voor snelle, veilige en schaalbare websites.

Recente artikelen