Spam elleni védelem a honlapon (Email cím védelme)

A www.hwsw.hu fórumait olvasgatva jutott eszembe (spamról volt szó), hogy talán már másnak is okozott kisebb-nagyobb kellemetlenséget, hogy postafiókjában akarva-akaratlanul is “gyűjti” a különböző kéretlen reklámleveleket, vírusokat – spamokat..

Általában azokat a maicímeket fenyegeti ez veszély, melyeket nagy forgalmú fórumokban használnak, honlapokra tesznek ki. Ezeket a címeket a különböző netet pásztázó robotok összegyűjtik, majd Email címünk bekerül egy adatbázisba és elkezdjük kapni a leveleket (egyre többet).

Ha már beütött a baj, használjunk olyan levélládát/programot, melyben a jól paraméterezhető szabályoknak köszönhetően szűrni tudjuk a spam-t.

De mielőtt idáig eljutnánk, védekezzünk mi is, próbáljuk meg elkerülni a bajt. Ennek egyik módja, hogy a honlapra (és bárhova ahova tudjuk még alkalmazni ezt a módszert) egy kis trükkös javascript segítségével tegyük ki Email címünket. A script lényege annyi, hogy megadjuk Email címünk úgymond “összetevőit”, melyek önmagukban nem használhatók, és a bízzuk a javascriptre hogy ezt megjelenítse honlapunkon a helyes formában. Így a látogatók ugyanúgy tudják használni mint eddig (rákatt, mail küldése), viszont a címeket gyűjtő robotokat átverjük.

A javascript lentebb látható, helyezzük el bárhol honlapunkon a -n belül.

Így fog kinézni:

1
2
3
4
5
6
7
8
<SCRIPT language=JavaScript>
<!--
var name = "gumikacsa";
var domain = "elnemsullyed.hu";
document.write('<a href="mailto:' + name + '@' + domain + '">');
document.write(name + '@' + domain + '</a>');
// -->
</SCRIPT>

gumikacsa@elnemsullyed.hu

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script language="JavaScript"><!--
 
	var name ="
	<B>gumikacsa</B>
	";
	<br />
	var domain ="
	<B>elnemsullyed.hu</B>
	";
 
	document.write('<a href="mailto:' + name + '@' +domain + '">');
	document.write(name + '@' + domain + '</a>');
 
	//-->
</script>

(Időközben találtam újabb ötleteket a neten, nézzük ezeket is)

A http://designprognet.net oldalán az alábbi módszert:

1
2
3
4
5
<body onload="var replaces=0; while	(document.body.innerHTML.indexOf('##'+'kukac##')!=-1 &amp;&amp;	replaces<10000) 
	{
	document.body.innerHTML=document.body.innerHTML.replace('##'+'kukac##',String.fromCharCode(64));
	replaces++; 
	}">

A http://index.hu fórum oldalain írta egy látogató, hogy az Index ezzel módszerrel jeleníti meg a fórumokban a mailcímeket:

a lap HEAD részébe kell beilleszteni

1
2
3
4
5
6
7
8
9
10
11
12
13
<script>
	function fix(a)
 
	{a.href=a.href.replace(/NOSPA-M./g, "");
	return true; }
 
	functionstat(a, b)
 
	{if (b) { window.status=a.href.replace(/NOSPA./-M/g, "");}
	else { window.status=""; }
 
	}
</script>

A honlap BODY részébe kell beilleszteni

mail

Ennyi lenne, jó “védekezést” mindenkinek! :)

7 HOZZÁSZÓLÁS

  1. Helló!

    Találtam egy e-mail kódoló szkriptet. Be kell írni az e-mail címet és a link feliratát, majd a legenerált kódot be lehet copyzni a weboldalra.

    A link:
    email spamvédelem

  2. Hali!
    Én egy php generált gif-képpel csináltam valami ilyesmit. A href-es résszel még nem szórakoztam, de majd egyszer….
    a két file tartalma:
    1. kapcsolat.html
    Emailcím:info@camcar.hu
    ————————————————————————————————-
    2. email_kep.php

    A gif átlátszósága miatt, szerintem nem olyan rossz.
    Remélem valakinek jól jön majd
    üdv: porz’

  3. Engem ez érdekelne, h. pontosan hová kell beilleszteni a forráskódba?… vagy?…Csak ennyit írtál hozzá: A javascript lentebb látható, helyezzük el bárhol honlapunkon a -n belül.

    1
    2
    3
    4
    5
    6
    
    <!var name = “gumikacsa”;
    var domain = “elnemsullyed.hu;
    document.write(’‘);
    document.write(name +@+ domain + ‘‘);
    // –>

    Köszönöm,
    sbz

  4. Már másodszor kapok olyan e-mail-t amelyben e-mail címeket (magán és céges) ajánlanak eladásra.Érdekelne, hogy ez törvényes-e? – és ha nem mi a a teendő.Továbbá, hogy hogyan lehet kivédeni, hogy ilyen “gyűjtögtő”-be bekerüljön a címem, nem tudva ki a gyüjtögető?
    Köszönettel
    László

  5. Ashtor

    Nem rossz ez a script, de szerintem megfontolandó, hogy az ember használjon-e egy 2000 karakteres scriptet kb 32 karakter elrejtésére. Mellesleg, ha valaki vissza akarja fejteni, akkor erre is írhat programot és akkor már nem mindegy, hogy 200 vagy 2000 karaktert áldoztunk a feladatra?

  6. Sorry hogy ezt mondom, de szerintem alapvetően rosszul közelítetted meg ezt a kérdést. :) A 2000 karaktert nem azért használod, hogy elrejtsd a 32 karaktert, hanem hogy ne kapj éveken keresztül mondjuk havi 10.000 spam-et (esetemben pl. ilyen számokról van szó).
    Programot is lehet írni persze, csak mondjuk nem ez a jellemző.

HOZZÁSZÓLOK A CIKKHEZ

Kérjük, írja be véleményét!
írja be ide nevét