Anti- spamplaatjes

Door Marco Postma, 11 jaar geleden, 5.425x bekeken

Dit is een simpel script om kleine PNG plaatjes te genereren met daarin een e-mail adres. Je stopt de een base64 van een e-mail adres in de URL, om te voorkomen dat het e-mail adres als plaintext in de URL te vinden is. Je krijgt geen foutmelding wanneer er geen hash is ingevuld of wanneer deze incorrect is, maar aangezien ik aanneem dat dit script geautomatiseerd wordt is dit denk ik ook niet nodig.

Je genereert zo een plaatje:
http://server/mailpic.php?mail=base64geëncodeerdemail
Met een echte base64:
http://server/mailpic.php?mail=bWlhdXdAd29lZi5ubA==

Werkend voorbeeld:
http://djcpower.woelmuis.nl/mailpic.php?mail=bWlhdXdAd29lZi5ubA==

http://djcpower.woelmuis.nl/mailpic.php?mail=bWlhdXdAd29lZi5ubA==

Gesponsorde koppelingen

PHP script bestanden

  1. mailpic.php

 

Er zijn 12 reacties op 'Anti spamplaatjes'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Pim -
Pim -
11 jaar geleden
 
0 +1 -0 -1
A: De plaatjes zijn makkelijk met OCR te lezen.
B: De aanvaller ziet zo dat het een base64 encoding is en kan dus eenvoudig het emailadres achterhalen.
TJVB tvb
TJVB tvb
11 jaar geleden
 
0 +1 -0 -1
Naast het commentaar van Pim is er nog een probleem. Je foutmelding zal niet zichtbaar zijn aangezien je daarvoor al zegt dat het een plaatje is.
Pim -
Pim -
11 jaar geleden
 
0 +1 -0 -1
Dan kan je idd beter een 500 foutmelding geven, zodat je een rood kruisje krijgt, in plaats van tekst te sturen die toch niet begrepen wordt.
Karl Karl
Karl Karl
11 jaar geleden
 
0 +1 -0 -1
Ik vind dit geen script bibliotheek waardig script. Het is niet veel meer dan wat voorbeeld (of misschien zelfs één voorbeeld) van php.net.
OldDylan England
OldDylan England
11 jaar geleden
 
0 +1 -0 -1
Wat dacht je van
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
strrev(base64_encode(strrev(base64_encode(strrev($var)))));

Is ook niet waterdicht maar oke, de aanvaller weet niet hoe de string door elkaar is gehusseld :)
Chris -
Chris -
11 jaar geleden
 
0 +1 -0 -1
Alles wat je met base64 encodeer, kun je gewoon weer decoderen. Wat je er ook mee doet.
OldDylan England
OldDylan England
11 jaar geleden
 
0 +1 -0 -1
Heb ik gezegd dat dit waterdicht is dan?
Pim -
Pim -
11 jaar geleden
 
0 +1 -0 -1
Waterdicht bestaat niet, maar je kan in ieder geval proberen een (beveiligings)systeem veilig(er) te maken.
OldDylan England
OldDylan England
11 jaar geleden
 
0 +1 -0 -1
Je zult het sowieso moeten terug coderen, dus waarom zal mijn alternatief niet veilig zijn? Denk je dat spambots dit nog kunnen oppakken ?
- -
- -
11 jaar geleden
 
0 +1 -0 -1
Enige veilige manier: e-mailadres opslaan op de server (in een database) en in de URL enkel een referentie naar dat e-mailadres (een ID) meegeven.
Niek s
niek s
11 jaar geleden
 
0 +1 -0 -1
Ik vind dit eigenlijk best een nuttig script.
Uiteindelijk wil je op een live site email adressen ook niet beveiligen voor echte 'boosdoeners', omdat die er toch wel achter komen vroeg of laat. Je wilt ze eigenlijk op deze manier vooral beveiligen tegen automatische spambots, die het internet gewoon afzoeken. Het gros van die spambots houd je op deze manier tegen.
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Johan Dam
Johan Dam
11 jaar geleden
 
0 +1 -0 -1
Het hangt er idd maar vanaf wat je wilt. Iets wat 'veiliger' is, of iets wat 'veilig' is.

In het geval van 'veiliger' is dit prima gezien de meeste bots hier 0.0 moeite voor zullen doen.

In het geval van 'veilig' zal je een captcha achtig iets moeten maken met het email adres (gekoppeld aan een database)

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. mailpic.php

Labels

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.