[TYPO3-german] felogin mit passwordCompareStrategy=rsa funktioniert nicht und speichert Passwort gesalted in der Datenbank

Webmeck - TYPO3 typo3 at webmeck.de
Tue Jun 19 22:40:55 CEST 2012


Hallo Steffen,

danke für deine Antwort. Tut mir Leid, der erste richtige Weg durch die 
t3lib etc hat mich ein wenig mitgenommen. Ja, ich kann mich nicht 
einloggen.

Danke schonmal für die beiden Links, die schaue ich mir jetzt erstmal an

MfG
Frederik

On 19.06.2012 17:45, Steffen Gebert wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi Frederik,
>
> ich verstehe noch nicht genau, was der letztendliche Fehler ist. Kannst
> du dich mit dem festgelegten Passwort erfolgreich einloggen?
>
> Das salt ist im Passwort-Hash mit eincodiert, siehe auch
> http://php.net/crypt oder
> http://www.slideshare.net/StephenKing/passwrter-in-typo3-sicher-speichern-mit
>
> Kind regards
> Steffen
>
> - -- 
> Steffen Gebert
> TYPO3 v4 Core Team Member
> TYPO3 Server Administration Team Member
>
> TYPO3 .... inspiring people to share!
> Get involved: http://typo3.org
>
> I work for TYPO3 solely in my spare time. If you think that
> my work helps you running your business, you are invited to
> send me a donation via PayPal to this email address. Thanks
>
> On 19.06.12 17:05, Webmeck - TYPO3 wrote:
>> Hallo an alle,
>>
>> ich hoffe ich mache nichts falsch, das hier ist mein erste Mail an eine
>> Mailingliste.
>>
>> Bei mir läuft:
>> TYPO3 4.7.1
>> mit felogin 4.7.1
>> und felogin_security 0.0.1
>>
>> Ich möchte FE-Nutzer ausschließlich über das Backend anlegen können, das
>> "funktioniert" auch. Wenn ich einen Testnutzer mit dem Passwort "hallo"
>> im Backend anlege, steht in der Datenbank in der Passwortspalte
>> "$1$OsjLcQFF$Zr3XF.HIGPZ8bG3sYLgy/."das scheint gesalted zu sein, denn
>> es ändert sich auch bei jedem abspeichern. Aber ich finde das salt
>> nicht. Wo könnte es sein? Hab nur eine tx_rsaauth_keys gefunden, dort
>> ist aber nur ein Eintrag drin, ich habe aber zwei FE-User.
>>
>> Außerdem habe ich, nach fehlgeschlagenem Login versucht, mal den Weg der
>> Logindaten zu gehen und bin dann in der Datei t3lib_userAuth gelandet.
>> Dort kommen die Logineingaben 1:1 an.
>>
>> (abhängig von aktiviertem JavaScript RSA-Verschlüsselt oder nicht)
>>
>> Mit JavaScript:
>> $loginData = array(
>> 'status' => 'login',
>> 'uname' => 'loginname',
>> 'uident' =>
>> 'rsa:RwAS+duvVaT/F+MHMUIlFVn9UpE+Q4AOLG7lcp/GD5Fbxncpl4CJPtMMIMCSkCzQL/xaTsmzhzppw5IUKB9ZRMXbGciYmUI6/3QFq5gasD6N/p9Jp1/ghK4y37OrteYnzJleZvASXvTDBhYpHrOIVe+j2RnJO66yzSz+wvLhoR0=',
>>
>> 'chalvalue' => '',
>> 'permanent' => 0
>> )
>>
>> Ohne JavaScript:
>> $loginData = array(
>> 'status' => 'login',
>> 'uname' => 'loginname',
>> 'uident' => 'hallo',
>> 'chalvalue' => '',
>> 'permanent' => 0
>> )
>>
>> nach einem Umweg über die class.tx_sv_authbase.php lande ich wieder in
>> der class.t3lib_userauth.php in der methode compareUident().
>>
>> function compareUident($user, $loginData, $passwordCompareStrategy = '') {
>>
>>          $OK = FALSE;
>>          $passwordCompareStrategy = $passwordCompareStrategy ?
>> $passwordCompareStrategy : $this->security_level;
>> t3lib_utility_debug::Debug($passwordCompareStrategy,
>> 'passwordcomparestrategy in class.t3lib_userauth');
>> t3lib_utility_debug::Debug($loginData, 'logindata in compareUident in
>> class.t3lib_userauth');
>> t3lib_utility_debug::Debug($user, 'user in compareUident in
>> class.t3lib_userauth');
>>          switch ($passwordCompareStrategy) {
>>              case 'superchallenged': // If superchallenged the password
>> in the database ($user[$this->userident_column]) must be a md5-hash of
>> the original password.
>>              case 'challenged':
>>
>>                      // Check challenge stored in cookie:
>>                  if ($this->challengeStoredInCookie) {
>>                      session_start();
>>                      if ($_SESSION['login_challenge'] !==
>> $loginData['chalvalue']) {
>>                          if ($this->writeDevLog) {
>>                              t3lib_div::devLog('PHP Session stored
>> challenge "' . $_SESSION['login_challenge'] . '" and submitted challenge
>> "' . $loginData['chalvalue'] . '" did not match, so authentication
>> failed!', 't3lib_userAuth', 2);
>>                          }
>>                          $this->logoff();
>>                          return FALSE;
>>                      }
>>                  }
>>
>>                  if ((string) $loginData['uident_' .
>> $passwordCompareStrategy] === (string) md5($user[$this->username_column]
>> . ':' . $user[$this->userident_column] . ':' . $loginData['chalvalue'])) {
>>                      $OK = TRUE;
>>                  }
>>              break;
>>              default: // normal
>>                  if ((string) $loginData['uident_text'] === (string)
>> $user[$this->userident_column]) {
>>                      $OK = TRUE;
>>                  }
>>              break;
>>          }
>>
>>          return $OK;
>>      }
>>
>> Dort ist:
>> $passwordCompareStrategy = 'rsa' und somit rennt er in den default-modus
>> wo er einfach das übermittelte Passwort (entweder rsa:... oder 'hallo')
>> mit dem salted hash in der Datenbank abgleicht.
>>
>> Da kann doch irgendwas nicht richtig sein. Also entweder habe ich das
>> Dingen komplett vor die Wand gesetzt oder aber da ist ein Bug. Wäre für
>> Hilfe sehr dankbar, sollte es ein Bug sein, könnte ich versuchen mich
>> drum zu kümmern (loginData in einem Hook wieder aueinandernehmen und das
>> aus der Datenbank auch, sodass er gerne in den Default: reinkann). Wie
>> ihr aber vielleicht merkt bin ich nicht so erfahren.
>>
>> Danke schonmal
>>
>> LG Frederik
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
> Comment: GPGTools - http://gpgtools.org
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iQEcBAEBAgAGBQJP4J6GAAoJEIskG/rSlyw4NvEH/jYI/4D37pXCWgRdPu24kf/y
> Ly540UYOZ+++EUIuDLYVcN5Pda5bc6J1lQBd1IJrw1YJ5ZtcmyckBFueXaNzT4fg
> JsvOvofPZ2VraRGOKvTWmX1EBaC2MMUHY4wOWZhAaV2wD8XsNIJI1kaNDO4znSTv
> MsJnkznCYEQMyzD2aAUqmK/FyhyGH0rAKsmb5cd/LNpKYfT26eSuJjeFzFHBAI3X
> sDmcb2e1RMWcKBu7Eu/wsv6XEgJCC57qtuwUYLqacGXKd3ghSvy4YZumAq3p3xtL
> csqwLbPinPovUg9AhVtJaP2iCHuWZLqVd+KLNyRieIbhyd1/xYOcQB1fSNoStYI=
> =JdYB
> -----END PGP SIGNATURE-----
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german




More information about the TYPO3-german mailing list