[PHP] Langere code

Gestart doorDylan86 reacties156 weergaven

87 berichten · pagina 1 van 6

Dylan

Lid · Topicstarter

Berichten
14.025
Reputatie
1
Punten
0,01
Lid sinds
Laatst gezien
Ik wil zeker weten dat wachtwoorden niet gekraakt kunnen worden. Ik gebruik daarom sha1. alleen er zijn nog wel van die cracks daarom wil ik dit doen:
ik heb nu dit:

$password = sha1($_POST[password]);


alleen wil ik dat dit er dit gebeurt:

$password = sha1($_POST[password] , "deze-tekst-moet-ook-met-die-sha1-dingen-mee-gaan");


ik heb al wat geprobeerd maar dan kan ik niet inloggen...

Hoe moet dit dan?
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Nee, dat gaan niet zo. Er wordt voor de tweede parameter een boolean verwacht.
Gewoon die tekst (de salt) verbinden aan je $_POST string-var.
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
De , vervangen door een punt dus, dan word die aan passwoord toegevoegt en dan pas naar sha1 omgezet. Je kan er beter nog eens een MD5 en dan weer een sha1 overheenzetten ofzo.
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Antonn schreef:
Je kan er beter nog eens een MD5 en dan weer een sha1 overheenzetten ofzo.
Waarom?
0
Berichten
8.649
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
Eerdere citaten tonen
Antonn schreef:
Je kan er beter nog eens een MD5 en dan weer een sha1 overheenzetten ofzo.
Waarom?
Dan is het nog moeilijker te kragen als alleen 1 salt erbij. Als ze 2 passwoorden of meer kraken valt de salt al op, een een andere gehashde pass die weer gehashed is die kraak je niet zomaar, het is gewoon nog veiliger.
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Met een goede salt is het al niet eens meer te kraken, en als je zulke dignen nog eens verder gaat hashen, dan maakt het de kans tot een collission veel groter, en dus makkelijker kraakbaar.

Dusss..... een salt is genoeg.
0
Berichten
6.144
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
[COLOR= #0000BB]<?php
$salt[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]JbRB22iV4d8pri3722N17bn7t8wS3R[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$password[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/sha1"]sha1[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$salt[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$_POST[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]password[/COLOR][COLOR= #007700]].[/COLOR][COLOR= #0000BB]$salt[/COLOR][COLOR= #007700]);[/COLOR]
?>
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Just em...
0
Berichten
5.897
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Bij de check moet je de string dan ook meegeven yummie
0
Dylan

Lid · Topicstarter

Berichten
14.025
Reputatie
1
Punten
0,01
Lid sinds
Laatst gezien
$curpassword = sha1($_POST[curpassword]);
$newpassword = sha1($_POST[newpassword]);
$conpassword = sha1($_POST[conpassword]);

moet hier dan ook die string?
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
ja...
0
Dylan

Lid · Topicstarter

Berichten
14.025
Reputatie
1
Punten
0,01
Lid sinds
Laatst gezien
ok
0
Berichten
4.214
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aan te raden is ook om de gekste eventuele Japanese tekens er tussen te mixen dit maakt het al stukken moeilijker voor brute forcers.
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Moet je wel unicode gebruiken. Met een selectie leestekens kom je al ver zat.

Nu)6^y6@G(F6%$

Dit is al niet eens meer te kraken.
0
Berichten
4.214
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Aarclay schreef:
Moet je wel unicode gebruiken. Met een selectie leestekens kom je al ver zat.

Nu)6^y6@G(F6%$

Dit is al niet eens meer te kraken.
Nou een paar GPUs met een mooie rainbow table en je hebt MD5 en SHA1 zo ge brute forced, maar het is goed genoeg als ze binnen komen hebben ze meestal ook geen zin om te brute forcen tenzij er iets van waarde te halen valt.

Wat ook handig is is om 2x de MD5 functie aan te roepen met een verschillende hash en de eerste in 2 splitten en het eerste deel voor de 2nd MD5 en het 2nd deel er achter.

Voorbeeldje (klopt niet met PHP maar maakt het duidelijk)

$hash1 = MD5(wachtwoord-()&Q*diuagd78&@);
$hash2 = MD5(wachtwoord-hjjksd(*&(*y72);

$split = split($hash1);

echo($split[0] $hash2 $split[1]);

De brute forcer zal denken dat er 2 MD5 hashes zijn gemaakt en gebruikt dan het eerste deel van split in combi met de helft van 2 hier komt natuurlijk niks nuttigs uit.
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren