
Antispam a uživatelský komfort
Na spoustě blogů už je implementovaný nějaký antispam mechanismus. Většinou sestává z nějaké jednoduché otázky, kterou robot prostě sám od sebe nevyřeší.
Typicky třeba radio button "Opravdu chcete odeslat komentář? Ano/ne" u Lorda Agenta nebo "Kolik je 1+1?" u Zimmiho. Jenže je to hrozná otrava pořád to vyplňovat. Nebo ne?
Nedávno jsem upravoval i antispam tady. Že jste si žádného nevšimli? Máte zapnutý JavaScript. Bez JavaScriptu se původně zobrazoval CAPTCHA obrázek, který byl ale překonán OCR boty, teď je to otázka "Kolik je 6x9?", přičemž obě dvě odpovědi jsou správné.
Boti JavaScript (alespoň zatím) naštěstí neumí, takže ho můžeme využít k vyplnění pole
document.getElementById("code").value="42";a jeho skrytí
document.getElementById("code").style.display="none";A to není vše - je tu jeden tip pro Zimmiho, kdyby sem náhodou našel cestu

<input type="password">Usnadníš tím život alespoň lidem s Firefoxem



Zařazeno do kategorií O blogu, Webdesign.
Předchozí: Převibrujme se!
Následující: Někdy je lepší neumět číst
Komentáře
2. The Zero
[1] Mazlo Jistě. IIRC, u Opery musíš stisknout Ctrl+Enter, aby se ti vyplnilo heslo, zatímco u FF se ti vyplní automaticky (pokud máš uložené jen jedno, což bude asi tenhle případ).
Fakt je, že je dost možné, že i v Opeře by to fungovalo tak jak má, tj. po stisku Ctrl+Enter by se odeslal formulář s heslem.
Kromě toho to byla samozřejmě vyložená provokace. :)
3. Mazlo
Nikde nevidím problém
Uživatel vyplní nick, napíše zprávu a stiskne CTRL+ENTER. Automaticky se vyplní kontrolní otázka a formulář se odešle. To vše za předpokladu, že by to bylo password :)
5. The Zero
[3] Mazlo [4] Lord AgEnT OK, přesvědčili jste mě. Kdy to implementujete?
6. egg
Metoda popsaná v článku může fungovat jen do okamžiku, než si toho spameři všimnou. Pak už je dílem okamžiku napsat robota, který to 100% spolehlivě obejde. Naopak vhodně generovaný obrázek jen tak nějaké OCRko nepřečte.
7. The Zero
[6] egg A často ho pak nepřečtou ani lidé. Pořád je mnohem jednodušší změnit otázku nebo třeba jen číslo, protože implementace JS v robotech je v nedohlednu.
8. egg
Proč by byla v nedhohlednu? Jakmile to začnete používat, někdo to implementuje, není to přece problém.