Úvodní stránka › Fórum podpory WordPressu › Problémy s WordPressem › Velký problém se spamem
Štítky: Akismet, Antispam, Captcha, Napadení webu, pre_comment_on_post, spam, wp-comments-post.php
Zvolené téma obsahuje celkem 18 odpovědí. Do diskuze (4 účastníci) se naposledy zapojil uživatel zeminem a poslední změna je stará 13 let, 3 měsíce.
-
AutorPříspěvky
-
20. srpna 2011 (19:06) #112620. srpna 2011 (19:31) #9063
Zdravím,
Rozhodně se na nikoho nezlobíme :-)
Takže k věci.
Váš web se stává obětí spamových útoků, stejně jako i ten můj + tisíce dalších.
Já osobně vám doporučím rozhodně začít používat Akismet, ten má obrovskou databázi spammerů a dle ní vyhodnocuje spamové komentáře(http://akismet.com/wordpress/). Dále lze samozřejmě použít captchu. Ta ale zase otravuje uživatele. Mě osobně se nejvíc ověřilo schvalování komentářů ručně, nastavení>komentáře, to nikoho(kromě webmastera :-D) neomezuje a je funkční. Jenom některé z daných emailových adres existují(většina z nich je pouze vymyšlená- http://verify-email.org). Dále také doporučuji všechny IP adresy spammerů blokovat pomocí pluginu ( např. http://wordpress.org/extend/plugins/wp-ban/).
Články k tématu:
http://www.neteyes.cz/clanky/zacatky-s-wordpressem-antispam/
http://www.netzin.cz/2010/antispam-pro-wordpress.php
Hodně štěstí v boji se spamem!
Neteyes.cz
20. srpna 2011 (20:24) #9064Děkuji, ale asi nechápete mojí situaci…
Dovolím si říct, že s WP již nejsem začátečník, Akismet samosebou používám (jako snad každý hned po nainstalování) a ten mi úspěšně tento nový útok filtruje. Jak jsem psal ve vláknu na Endoře, tak Captcha NEpomáhá, WP-ban jsem měl, ale dnes jsem ho zrušil, nemá to moc efekt, hodí se spíš na opakované útoky od jedné osoby, ale to není můj případ.
Abych stručně popsal co se mi teď na webu čerstvě děje. Prostě pokud smažu ten kus PHP kódu, co jsem si tam dopsal, tak mi na web chodí desítky, stovky, a když to nechám dlouho tak i možná tisíce spamů. Přikldádám screen ( https://plus.google.com/photos/108269453578187886435/albums/posts/5639641469429019986 ) kde je jasně vidět o co jde (podívejte se jaké jsou časové rozestupy). Jedna taková zpráva přijde každých pár minut (v největší špičce). Ať se na mě nikdo nezlobí,a le tohle není klasický spam, to je něco, co mi nikdo nevěří a asi ani nikdo nechce chápat…
Nevím co si o tom mám myslet a ani nevím co s tím mám dělat. Krom toho na web samosebou chodí i klasické spamy, ale tich je jen pár za týden a rozhodně ne několik desítek za den… Všimněte si, že se opakují stejné adresy, které jsem dopsal do toho php viz http://podpora.endora.cz/viewtopic.php?f=27&t=3583#p18736 Prosím, věřte mi, že tohle je opravdu trošku jiný problém…
20. srpna 2011 (21:01) #9065Omlouvám se.
Tak toto rozhodně není normální. V menší míře se to stávalo i mě, když jednoho dne přibylo na blogu stovka komentářů za den, pochopil jsem, že to není v míře únosnosti. Můj problém ale naštěstí vyřešilo moderování komentářů-nic jiného dnes nepoužívám.
Tolik spamů bych připisoval hodně cílenému útoku spambota, a pokud přidává spam automaticky, zkuste tento kód přidat do .htaccess:
# SpamOchrana
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post.php*
RewriteCond %{HTTP_REFERER} !.zeminem.g6.cz.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
</IfModule>PS: Je to hodně podivné, některé IP již jsou v blacklistech, některé emaily jsou funkční, ale většina ne.
20. srpna 2011 (22:24) #9066Potvrzuji stejný problém v posledních dnech.
Naštěstí se zdá, že už to pomalu odeznívá.
21. srpna 2011 (7:59) #9067Našel jsem téma na wp supportu, které nepřímo souvisí s problémem Zeminema, jedná se o to, že asi před měsícem, po aktualizaci na WP 3.2.1 nastal spamový útok na některé z uživatelů a za 12 hodin jim přibilo i 3000 spamů… Možná by se z toho dalo něco vyčíst…
http://wordpress.org/support/topic/upgrade-to-v-321-created-spam-problems
21. srpna 2011 (8:04) #9068No to s tím .htaccess sice fajn, ale to co jsem si dopsal já zatím stačí a navíc to vyhodí i error hlášku kam můžu přidat další možnosti, ale to už je jen způsob provedení, obojí je zdá se funkční…
Jsem rád, že u lucky.man má stejný problém. Ne proto, že jsem škodolibý, ale proto, že je to alespoň malé utěšení, že jsem si to nezanesl sám… :)
Porád však nevím jak bych zjistil nejlépe kdo za tím stojí, protože to je to co mě zajímá mnohem víc, než jak to zablokovat (a přitom vědět, že se stále pokouší o útok). Předpokládám, že nemám šanci zjistit kdo je ten záškodník, nebo kde ke mě přišel, případně další podrobnosti?
21. srpna 2011 (8:24) #9069To nejspíš opravdu nezjistíte, každá IP adresa ma jinou hostname. Pokud by ale všechny měly hostname stejnou, mohl by jste napsat poskytovateli služeb spammera, pokud.
PS: Většina IP adres je na spamlistech.
21. srpna 2011 (8:28) #9070No to je také důvod, proč Akismet všechny spamy pozná a vyřadí je z veřejného dění, ale pokud bych to nechal puštěné, bude to zbytečně vytěžovat server. Kdo chce zvětšit návštěvnost, tak je to asi dobré, ale o to já rozhodně nestojím. Raději bych měl jednu návštěvu za den, než 100 spamerů… Kdyby to byl nějaký globálnější problém asi by se o tom mluvilo více a přišel by brzo fix ze strany WP, ale toho se asi nedočkám. :/ No super…
21. srpna 2011 (8:38) #9071Tak jestli chcete, můžete váš problém v angličtině napsat přímo na oficiální support WP, kdo ví, třeba s tím v další verzi něco udělají…
21. srpna 2011 (11:41) #9072Míchá se tu několik různých informací a napadů, takže dodám několik postřehů a zkusím to celé trochu zpřehlednit…
Příčinou útoku může být cokoliv. Nějaký spambot např. na základě naprogramovaného skriptu usoudí, že jde o vhodný web (může být něčím zranitelný web či server, web může obsahovat nějaké klíčové slovo) a pustí se do toho. V tomto případě jste v tom nevinně a budete to muset vydržet, případně podpořit Akismet nějakým dalším pluginem, který funguje trochu jiným způsobem…
Občas však může být náhlý příval spamu způsoben nějakým bezpečnostním problémem. Používáte hosting Endora, neobjevil se tam třeba poslední dobou nějaký hacknutý web či jiný bezpečnostní problém? Pokud se spamový útok objevil opravdu až v přímé spojitosti s WordPressem 3.2.1, tak by mohlo jít teoreticky také o nějakou zatím neobjevenou (neopravenou) chybu, ale je to velmi nepravděpodobné. Dále by to mohl způsobovat nějaký plugin, ve kterém existuje neobjevená bezpečnostní díra. Pro jistotu bych zkusil preventivně použít nějaký antivirus, např. plugin Exploit Scanner. Konkrétní postup naleznete v našem starším vlákně a ujistíte se tak, že je vše v pořádku.
Spíše to ale bude pouze klasický spamový útok. Byl plugin pro CAPTCHA zprovozněn určitě správně? O jaký plugin konkrétně šlo? Nechce se mi totiž věřit, že by měl někdo zapotřebí, aby najímal “živé” lidi, kteří by vkládali komentáře s odkazy na weby vyhledávačů. Poznáte to asi také na neserverových statistikách (např. Google Analytics), které by měly započítávat pouze “živé” návštěvníky a nikoli roboty.
Pokud jste už našel nějaký jednotící prvek (např. pravidelně se opakující URL adresy), tak je můžete zablokovat jednoduše v menu Nastavení – Komentáře – Černá listina pro komentáře a nemusíte nikde upravovat zdrojové kódy WordPressu (či šablony). Mimochodem, kam jste uvedený kód vložil? Objevují se v textech komentářů nějaké další odkazy nebo je tam vždy uveden pouze ten vyhledávač jako autor?
Problém by mohl být také trochu v samotném pluginu Akismet. Sice to neřeší nárůst celkového počtu spamů, ale spíše v rostoucím počtu neodchycených spamů. Zkuste se podívat na statistiky Nástěnka – Statistika Akismet, kde by měl být vidět přehled zachycených spamů a úspěšnost pluginu. Nedávno totiž patrně docházelo k úpravám funkčnosti tohoto pluginu. Objevil se i jeden report o snížené úspěšnosti Akismetu v poslední době. A můžeme spekulovat dále. Pokud spambot vkládá automaticky spam, tak se poté asi i přesvědčí, zda se mu to podařilo (= je vidět na webu). A v kombinaci se změnami u Akismetu, mohlo v určitou dobu projít více spamů a spambot tak po kontrole usoudil, že občas něco pronikne a může se tedy vašemu webu nadále plně věnovat :-) Samotný Akismet ani dnes ještě nezadrží veškerý spam?
Možné řešení:
– Vydržet! Akismet by se měl časem naučit podobný spam rozeznávat a likvidovat. O žádné velké vytěžování serveru podle mě nejde. Kolik spamů se objeví denně? Spambot se na webu moc dlouho nezdrží, zkusí vložit komentář (a možná ho zkontroluje) a jde o dům dál (a za chvílis e zase vrátí).
– Prozatím můžete vyzkoušet další možnosti. Výše uvedená je již Černá listina pro komentáře, případně můžete zkusit nějaký další plugin, např. Block Spam By Math Reloaded (doplní k formuláři pro komentáře náhodný jednoduchý matematický příklad) nebo Raven’s Antispam (obecně nepouští spamboty, protože nemají zapnutý JavaScript).
Zkuste prosím upřesnit, co je v současné chvíli největší problém, abychom se v tomto vlákně trochu vyznali…
21. srpna 2011 (12:59) #9073Admin to velmi pěkně shrnul.
Já jenom přiložím zajímavý článek z root.cz, který popisuje další ze způsobů, jak obejít captchu: http://www.root.cz/clanky/potrebujete-obejit-captcha-zaplatte-si-armadu-indu/ .
21. srpna 2011 (18:09) #9074Hů, teď je toho na mě trošku moc. Mažu tedy ze souboru wp-comments-post.php script, který jsem si sám dopsal a mažu posledních pár spamů, které úspěšně zachytil Akismet. Za den jsou jich stovky, nevím přesně kolik ale podle toho screenu co jsem sem dával je jasné, že je to každých pár minut, jak kdy no (což je hodně, protože na to web není úplně stavěn). Již zde bylo zmíněno že se někdo s podobnou situací také setkává a že se nápor zmenšuje. Chvíli počkám jestli přijde nějaký spam… Mimochodem když jsem teď u toho čekání, tak černá listina dává příspěvky do sekce spam, ale tohle zvládám v tomto útoku Akismet. Úspěšně filtruje každý spam stejného typu. Problém je, že je toho hodně. Oproti tomu ten kód co jsem si tam dopsal já tak ten nepovolí vůbec ten komentář odeslat, což pro mě bylo v tuto chvíli důležitější…
> Již čekám několik hodin po zakomentování toho vlastního kódu a ještě žádný spam. Buď neví, že už zase může řádit, nebo už je klid (což by byla třešnička na dortu divnosti). Uvidím jestli mě zítra bude čekat nějaké překvapení…
21. srpna 2011 (21:28) #9075Spíš už začal zase pracovat Akismet jak má, vždycky to chce chvíli času. Určitě to není “standardní” spam – jednak množstvím, a potom adresami kam směřuje – bing, google, faceboook, yahoo. Spíš to vypadá na nějaký cílený útok na přetížení nebo čert ví na co.
Pro ostatní – není problém s tím, že by se to dostalo do komentářů. Akismet to správně identifikoval jako spam a vyřadil. Jenže frekvence byla extrémní a klidně si dokážu představit, že to mohlo nadělat pěknou paseku.
S přechodem na novou verzi WP to nemá žádnou souvislost (pravděpodobně), a není v tom ani Endora (nepoužívám). Souvislost bude někde jinde.
22. srpna 2011 (8:39) #9076Pokud nejde o stovky spamů za hodinu, tak by to měl standardní web nějaký čas bez problémů vydržet. Spambot si web moc neprohlíží, pouze se snaží vložit komentář… Máte pravdu, že černá listina povoluje komentář vložit (bude označen jako Spam), ale myslím, že byl tento způsob trochu méně náročnější než přímé zpracování Akismetem.
Ani ochrana prostřednictvím souboru wp-comments-post.php není špatná, máte určitě pravdu v tom, že je zabráněno vložit samotný komentář do databáze (pro napadení prostřednitvím trackbacků je to zase soubor wp-trackback.php). Spambot sice musí tento soubor také načíst, ale už ho nevloží do databáze. Takže vždy ušetříte nějaké databázové dotazy (requesty na server zůstanou), což zase není taková úspora (pokud jich není několik desítek za minutu). Jediná výtka směřuje ke způsobu provedení, kde byl upravován samotný zdrojový soubor WordPressu wp-comments-post.php, místo aby byla využita akce pre_comment_on_post, která slouží právě k tomuto účelu. Takže pokud si myslíte, že je nápor na server opravdu příliš velký, tak můžete použít např. následující kód (vložit do souboru funkctions.php v adresáři se šablonou):
add_action( 'pre_comment_on_post', 'separatista_odstranit_vyhledavace' );
function separatista_odstranit_vyhledavace() {
$zakazane_url = array( 'http://www.facebook.com/', 'http://www.google.com/', 'http://www.bing.com/', 'http://www.yahoo.com/' );
$url_autora = ( isset( $_POST['url'] ) ) ? trim( $_POST['url'] ) : null;
if ( $url_autora && in_array( $url_autora, $zakazane_url ) ) {
wp_die( 'Klidně to zkus ještě jednou, spambote!' );
}
}Pozor, skript zabrání pouze vložení přesně definované URL adresy, tedy musí mít http://, www i zpětné lomítko na konci. Pokud by měly být ošetřeny všechny další možnosti, tak to bude ještě trochu složitější…
Jinak myslím, že šlo opravdu o nějaký nový útok, Akismet ho hned nezachytil, a tak se spambot v případě úspěchu na web opakovaně vracel. Jen pořád nechápu, k čemu je dobré spamovat odkazy na vyhledávače. Pokud je ale někdo paranoidní, tak může jít pouze o nějaký test (třeba i ověření funkčnosti Akismetu) a můžeme se “těšit” na nové vylepšené útoky. A docela by mě zajímalo, jestli je nějaká souvislost mezi napadenými weby (žádný z našich webů s různými tématy na různých serverech napaden nebyl)… Pokud časem zjistíte ještě nějaké podrobnosti, tak se určitě podělte…
P.S. Ještě jsem našel jedno vcelku jednoduché řešení, kdy se ověřuje, zda má autor komentáře uvedeného referera. Pro běžného uživatele to není problém (komentuje přímo z nějakého příspěvku), ale spambot jde většinou rovnou po souboru wp-comments-post.php a referera nemá.
22. srpna 2011 (9:56) #9077Admin: Na stejném principu funguje i mnou vložený skript do .htaccess…
22. srpna 2011 (11:04) #9078Pravda, nějak jsem to přehlédl (konkrétní vysvětlení kódu v .htaccess)…
Mimochodem, zkoušel jsem vypnout Akismet i na tomto fóru a jak si někteří všimli, tak se tu hned začaly objevovat spamy…
22. srpna 2011 (11:27) #9079Admin: Ihned jsem to zahlédl :-))
23. srpna 2011 (6:48) #9081Díky za pomoc, je to opravdu zvláštní, problém se vyřešil sám stejně divně jako z ničeho nic přišel… Snad ještě na upřesnění cituji:
“Jinak myslím, že šlo opravdu o nějaký nový útok, Akismet ho hned nezachytil, a tak se spambot v případě úspěchu na web opakovaně vracel.” > Nevím jestli dobře chápu, ale Akismet chytal spamy od první chvíle, neuveřejňoval je, ale nechával je ve spam koši. Jen toho bylo prostě hodně…
Každopádně díky za pomoc a nad referrem se ještě zamyslím, jestli ho použít, nebo ne. :)
-
AutorPříspěvky
Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.