GD Img Validatie upate 1

Door The Beeding Clown, 23 jaar geleden, 3.406x bekeken

Een GD Img Validatie Systeempje tegen spam bots waar mensen de code die op de img verschijnt in moeten voeren om verder te kunnen gaan (met registreren oid)


Het schript maakt gebruik van .htaccess om de .png als .php te laten parsen.
Zet de .htaccess in dezelfde map als de image.png staat. Het is ook nodig om het font (.ttf) in dezelfde map als de image.png te zetten anders werkt je image script niet.

Ik ben nog niet zo heel erg bedreven met GD dus alle op en aanmerkingen zijn van harte welkom. Dit is v1 van het script, het kan zijn dat het nog niet helemaal waterdicht is.


Update:

De security code in de image.png staat nou per karacter iets gedraait en hebben per char een random kleur. Er worden ook wat eclypsen op de achtergrond getekend die ook allemaal een eigen random kleur krijgen toegewezen.


Enjoy, Grtz Nano

Gesponsorde koppelingen

PHP script bestanden

  1. gd-img-validatie-upate-1

 

Er zijn 15 reacties op 'Gd img validatie upate 1'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Lissy Pixel
Lissy Pixel
23 jaar geleden
 
0 +1 -0 -1
Dank je wel en ik ben er ook nog niet zo erg in thuis maar ga het wel even uitproberen en zal je mijn bevindingen hier weergegeven!!!
The Beeding Clown
The Beeding Clown
23 jaar geleden
 
0 +1 -0 -1
Tnx lissy.. feedback is altijd welkom :)
ik hier ook nog niet echt thuis in, is de eerste versie/poging van het script.
Moet het nog even in gaan bouwen in mijn gastenboek (word gek van die spambots daarzo, blijf mijn spam filter updaten :wacko:)
Hipska BE
Hipska BE
23 jaar geleden
 
0 +1 -0 -1
ziet er goed uit! leuk gedaan
DaeDaluz
DaeDaluz
23 jaar geleden
 
0 +1 -0 -1
Ziet er mooi uit maar is redelijk makkelijk te kraken...

@Gijs, Je kan de letters zonder de random achtergrond krijgen, door het script aan te passen.. Daarna is het gewoon een kwestie van vergelijken van de opgeslagen letters met de instukken gesneden stukjes image code dmv similair_text(). Natuurlijk moet je dit dan nog wat fine tunen, maar het gaat om het idee :)


23 jaar geleden
 
0 +1 -0 -1
@daedaluz

als het makkelijk te kraken is zeg dan hoe het beter kan, hoe je het wou kraken of plaats zelf een beter script.

@nano
Het enige wat ik erop kan aanmerken is dat het misschien slim is om de letters een beetje te draaien en wat strepen op de achtergrond te doen
Steff   an
Steff an
23 jaar geleden
 
0 +1 -0 -1
Quote:
if(strtoupper($_POST['num']) == $_SESSION['num'])
echo '<img src="goed.gif" alt="" /> Access Granted<br /><br />';
else
echo '<img src="fout.gif" alt="" /> Access Denied<br /><br />';

$_SESSION['num'] = '';
echo '<a href="index.php">back</a>';


Hier maak je een grote fout. Wat als ik zelf een (lege)post doe naar jouw pagina, dan zal er een nieuwe sessie($_SESSION['num'] zal leeg zijn) worden gemaakt en ik zorg er voor dat $_POST['num']l ook leeg is.
Nu zal er getest worden
Quote:
if(strtoupper(niks)) == niks)

Dan zal ik met gemak door jouw 'validatie' komen.

Oplossing:
Controleer eerst of $_POST['num'] en $_SESSION['num'] niet leeg zijn.
The Beeding Clown
The Beeding Clown
23 jaar geleden
 
0 +1 -0 -1
hahaha, das wel erg stom idd.. zal um gelijk effe bijwerken :)
Checken op isset($_SESSION['num']) moet voldoende zijn lijkt me toch ??

Heb gelijk even de random code generator even verbeterd.

@DaeDaluz
Ben bezig naar het kijken hoe ik de img code kan distorten of in een vorm van een wave kan krijgen oid.. :)
Steff   an
Steff an
23 jaar geleden
 
0 +1 -0 -1
Quote:
Checken op isset($_SESSION['num']) moet voldoende zijn lijkt me toch ??


Nee, dat is het niet. Je moet !empty$_SESSION['num']) gebruiken.
Han eev
Han eev
23 jaar geleden
 
0 +1 -0 -1
of allebij.... En als de var NULL is dan geeft isset ook False weer
Maar voor de rest een mooi script


23 jaar geleden
 
0 +1 -0 -1
En als je notices wilt voorkomen ook isset() en empty()
Woopie100
Woopie100
23 jaar geleden
 
0 +1 -0 -1
wel mooi is dit :)
The Beeding Clown
The Beeding Clown
23 jaar geleden
 
0 +1 -0 -1
Script even g-update

Heb even de image.png beet gepakt, letters/cijfers zijn nu gedraait en een random kleur. Ook wat eclysjes op de bg laten teken. Hoop dat dit de bug van DaeDaluz oplost.

@Steffan
isset() is genoeg toch ?

$_SESSION['num'] word in de image.png aangemaakt, als die niet aangeroepen word (er dus een bot oid post) bestaat ie niet, en is ie false.
Hij kan volgens mij nooit 'Wel' bestaan en 'Leeg' zijn, als ie bestaat bevat ie de goeie security string :unsure:
Zillion
zillion
23 jaar geleden
 
0 +1 -0 -1
Ik heb de zip content upgeload naar een folder maar ik zie geen image verschijnen.
Klopt het wel? http://www.phphulp.nl/php/scripts/1/535/ doet het wel bij mij.
The Beeding Clown
The Beeding Clown
23 jaar geleden
 
0 +1 -0 -1
Hier werkt ie perfect zoals je bij het voorbeeld kan zien

Mischien ondersteund je server .htaccess niet.
Haal de .htaccess uit de folder en rename de image.png naar image.php.
In de page waar je um aanroept moet je er dan ook even <img src="image.php" /> van maken.

het zou ook kunnen dat de gd lib niet geinstalleerd is.. kijk daar ook even naar
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Zillion
zillion
23 jaar geleden
 
0 +1 -0 -1
Tx! Ik heb even gecheckt, idd als ik dat verander van htaccess dan werkt het ;)

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

Inhoudsopgave

  1. gd-img-validatie-upate-1

Labels

  • Geen tags toegevoegd.

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.