Toon posts:

Encryptie methode wachtwoorden shadow bestand

Pagina: 1
Acties:
  • 202 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben bezig met een applicatie dat onder andere wat aanpassingen moet maken in het shadow bestand van een Linux installatie (Debian etch). Hiervoor moet ik een nieuwe gebruiker kunnen toevoegen en daarvoor dus een wachtwoord kunnen hashen. Ik kom er echter niet achter welke hash methode Linux standaard gebruikt. Op internet lees ik overal dat dit MD5 zou moeten zijn indien er $1$ voor het wachtwoord staat, bij mij klopt dit echter niet.

Hier het wachtwoord "test" gehasht met behulp van passwd: $1$HXvE4mrb$i3hAl7TAcQVVFr/4N/ajk0
Hetzelfde wachtwoord gehasht met MD5: 098f6bcd4621d373cade4e832627b4f6
Hetzelfde maar dan met de crypt functie: teH0wLIpW0gyQ

Niet eens in de buurt dus. Ik heb geprobeerd de source van passwd te achterhalen maar ik kan deze nergens vinden (ik dacht dat deze in coreutils zou zitten). Verder heb ik de volgende hash methodes geprobeerd, maar allemaal geen match: MD4, SHA-1, SHA-256, SHA-384, SHA-512, RIPEMD160, PANAMA, TIGER, MD2, ALDER32 en CRC32.

Het is echt de bedoeling dat ik zelf deze hash genereer en dus niet gebruik maak van externe tooling.

Iemand een idee welke methode Linux gebruik om zijn wachtwoorden te hashen?

Edit: hmm kan de titel aangepast worden in encryptie methode van shadow bestand oid. Dat is iets duidelijker

[ Voor 4% gewijzigd door Verwijderd op 05-12-2007 11:34 ]


Verwijderd

Ik gok toch op MD5 of SHA. Lees maar eens over een Salt. Hoogstvermoedelike is er (gewoon) (een) salt over toegepast dus b.v.: 'Password'RanDomSalt' → MD5 ofzo dan krijg je inderdaad een 'totaal ander eindresultaat'.

  • AtleX
  • Registratie: Maart 2003
  • Niet online

AtleX

Tyrannosaurus Lex 🦖

Doet Linux geen salt toevoegen bij gebruik van MD5?

Sole survivor of the Chicxulub asteroid impact.


Verwijderd

Topicstarter
Waar haalt hij deze salt vandaan, hij zou deze toch opnieuw moeten kunnen bemachtigen om te kijken of er het juiste wachtwoord is ingevoerd. Daarnaast heeft MD5 naar mijn weten nooit een $ of / in zijn hash, die mijn hash wel heeft.

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Al eens naar mkpasswd gekeken?

  • zomertje
  • Registratie: Januari 2000
  • Laatst online: 30-01 04:56

zomertje

Barisax knorretje

Bij deze titel aangepast.

Ik ben trouwens benieuwd waarom je geen tooling wil gebruiken?

het ultieme jaargetijde.... | #!/usr/bin/girl | Art prints and fun


Verwijderd

Topicstarter
zomertje schreef op woensdag 05 december 2007 @ 11:43:
Ik ben trouwens benieuwd waarom je geen tooling wil gebruiken?
Studieopdracht :Y) de docent weet echter ook niet welke encryptie er gebruikt is, dat is aan mij om uit te zoeken.

Ik ben iets verder. Volgens mij wordt er gebruik gemaakt van een salt en een magic string. De magic string is in dit geval "$1$". Ik ben er dus alleen nog niet achter waar hij de salt vandaan haalt.

  • Pete
  • Registratie: November 2005
  • Laatst online: 31-10-2025
Je moet natuurlijk geen appels met peren gaan vergelijken. Oftewel geen hexadecimale strings met base64 strings gaan vergelijken.

Aldus deze maillinglist http://www.plug.org.in/pi.../2007-January/001667.html is het $1$<salt>$<md5hash> (base64 dus). Maar er staat ook bij dat het veranderen van een password iets meer met zich meebrengt dan alleen het wijzigen van je shadow bestand.

Trwns, google was mijn vriend

[ Voor 11% gewijzigd door Pete op 05-12-2007 12:54 ]

petersmit.eu


  • linksnl
  • Registratie: Februari 2002
  • Niet online
Verwijderd schreef op woensdag 05 december 2007 @ 11:33:
Ik heb geprobeerd de source van passwd te achterhalen maar ik kan deze nergens vinden (ik dacht dat deze in coreutils zou zitten).
Al eens op http://packages.debian.org/etch/passwd gekeken?

Verwijderd

Topicstarter
phsmit schreef op woensdag 05 december 2007 @ 12:51:

Aldus deze maillinglist http://www.plug.org.in/pi.../2007-January/001667.html is het $1$<salt>$<md5hash> (base64 dus). Maar er staat ook bij dat het veranderen van een password iets meer met zich meebrengt dan alleen het wijzigen van je shadow bestand.
Ik heb zonet een shadow bestand aangepast en daarmee was het wachtwoord van de gebruiker ook gewijzigd. Het lijkt er dus op dat dit voldoende is.

Het is mij tot op heden nog niet gelukt om met behulp van de salt de hash te reconstrueren.

Verwijderd

Topicstarter
Thnx, ik heb de source nu, hiermee zal het wel moeten lukken. Ik post het hier als ik meer weet.

Verwijderd

Topicstarter
Goed ik heb het gevonden en werkend test.

Het wachtwoord wordt berekend met behulp van de crypt() functie. Bij de GNU glibc2 versie kan deze eveneens gebruikt worden voor het genereren van MD5 hashes. Het wachtwoord wordt gehasht met behulp van een salt. Deze is 8 bytes en wordt voorafgegaan door de string "$1$". De salt kun je zelf random genereren uit de volgende character set: [a-Z0-9./]. Deze hash je door middel van crypt(wachtwoord, salt). Je moet hem wel linken met -lcrypt.

Misschien heeft iemand hier in de toekomst nog wat aan.

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Het is geen encryptie, het is gewoon een MD5 hash (te zien aan $1), met een salt (tussen de $ en de volgende $) en dan de hash op een andere manier weergegeven dan je gewend bent.

In je voorbeeld is je salt dus HXvE4mrb, en je hash i3hAl7TAcQVVFr/4N/ajk0.

Bij gewone DES crypt() hashes is de salt twee karakters lang, gewoon de eerste twee. In jouw voorbeeld dus weer: te + H0wLIpW0gyQ. ('test' als salt gebruikt toevallig? :P)

Mocht je nog 's $2 tegenkomen, da's een BlowFish hash.

[ Voor 47% gewijzigd door CyBeR op 06-12-2007 20:21 ]

All my posts are provided as-is. They come with NO WARRANTY at all.

Pagina: 1