Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Cryptography & Encryption Ver- und Entschlüsselung, Algorithmen, Kryptoanalyse ? Kryptographie in der Praxis. Blowfish, Triple-DES, XOR u.a.

Passwort herausfinden möglich?

Diskussion: Passwort herausfinden möglich? im Forum Cryptography & Encryption, in der Kategorie Security Area; Anzeige Kann man hier das Passwort herausfinden?? Oder ist das eine md5 abfrage (das man das passwort nicht sehen kann?) ...

Antwort
Alt 09.08.05, 10:32   #1 (permalink)
 
Registriert seit: 12.07.05
tiggi Leistung: Facit NTK
tiggi eine Nachricht über ICQ schicken
Likes: 0
Standard Passwort herausfinden möglich?

Anzeige

Kann man hier das Passwort herausfinden??
Oder ist das eine md5 abfrage (das man das passwort nicht sehen kann?) bzw. hab ich hier
die möglichkeit, den md5 hash zu bekommen?

Gruß Tiggi

Code:
 	function sendPasswd() 
    {
        UID = document.logonForm.uid.value.toUpperCase();
        PWD = document.logonForm.pwd.value;
        document.logonForm.pwd.value = "";
		  document.logonForm.pwd.blur();
        document.logonForm.enc_pwd.value = MD5(UID + PWD);
		  return true ;
    }

	function isPwdChangeFormValid(myForm) 
	{
	
	    if (myForm.PASWD_OLD.value == "") {
	        alert("\"Passwort Alt\" erforderlich!");
	        myForm.PASWD_OLD.focus();
	        return false;
	    }
	
	    if (myForm.PASWD1.value == "") {
	        alert("\"Neues Passwort\" erforderlich!");
	        myForm.PASWD1.focus();
	        return false;
	    }
	    else
		 {
	   	if (myForm.PASWD1.value != myForm.PASWD2.value) {
	        alert("Die beiden neuen Passwörter stimmen nicht ueberein!");
	        myForm.PASWD1.value = "";
	        myForm.PASWD2.value = "";
	        myForm.PASWD1.focus();
	        return false;
	    	}
	    	else
	    	{
	    		document.myForm.ENC_PWD_OLD.value = 
	    			MD5(document.myForm.UID.value.toUpperCase() + document.myForm.PASWD_OLD.value.toUpperCase());
	    		document.myForm.ENC_PWD_NEW.value = 
	    			MD5(document.myForm.UID.value.toUpperCase() + document.myForm.PASWD1.value.toUpperCase());
			}
		}
		
		return true;
	}






/*
   *  md5.js 1.0b 27/06/96
   *
   * Javascript implementation of the RSA Data Security, Inc. MD5
   * Message-Digest Algorithm.
   *
   * Copyright (c) 1996 Henri Torgemane. All Rights Reserved.
   *
   * Permission to use, copy, modify, and distribute this software
   * and its documentation for any purposes and without
   * fee is hereby granted provided that this copyright notice
   * appears in all copies.
   *
   * Of course, this soft is provided "as is" without express or implied
   * warranty of any kind.
   *
   *
   * Modified with german comments and some information about collisions.
   * (Ralf Mieke, ralf@novolabs.de, http://mieke.home.pages.de)
   */



  function array(n) {
    for(i=0;i<n;i++) this[i]=0;
    this.length=n;
  }



  /* Einige grundlegenden Funktionen müssen wegen
   * Javascript Fehlern umgeschrieben werden.
   * Man versuche z.B. 0xffffffff >> 4 zu berechnen..
   * Die nun verwendeten Funktionen sind zwar langsamer als die Originale,
   * aber sie funktionieren.
   */

  function integer(n) { return n%(0xffffffff+1); }

  function shr(a,b) {
    a=integer(a);
    b=integer(b);
    if (a-0x80000000>=0) {
      a=a%0x80000000;
      a>>=b;
      a+=0x40000000>>(b-1);
    } else
      a>>=b;
    return a;
  }

  function shl1(a) {
    a=a%0x80000000;
    if (a&0x40000000==0x40000000)
    {
      a-=0x40000000;
      a*=2;
      a+=0x80000000;
    } else
      a*=2;
    return a;
  }

  function shl(a,b) {
    a=integer(a);
    b=integer(b);
    for (var i=0;i<b;i++) a=shl1(a);
    return a;
  }

  function and(a,b) {
    a=integer(a);
    b=integer(b);
    var t1=(a-0x80000000);
    var t2=(b-0x80000000);
    if (t1>=0)
      if (t2>=0)
        return ((t1&t2)+0x80000000);
      else
        return (t1&b);
    else
      if (t2>=0)
        return (a&t2);
      else
        return (a&b);
  }

  function or(a,b) {
    a=integer(a);
    b=integer(b);
    var t1=(a-0x80000000);
    var t2=(b-0x80000000);
    if (t1>=0)
      if (t2>=0)
        return ((t1|t2)+0x80000000);
      else
        return ((t1|b)+0x80000000);
    else
      if (t2>=0)
        return ((a|t2)+0x80000000);
      else
        return (a|b);
  }

  function xor(a,b) {
    a=integer(a);
    b=integer(b);
    var t1=(a-0x80000000);
    var t2=(b-0x80000000);
    if (t1>=0)
      if (t2>=0)
        return (t1^t2);
      else
        return ((t1^b)+0x80000000);
    else
      if (t2>=0)
        return ((a^t2)+0x80000000);
      else
        return (a^b);
  }

  function not(a) {
    a=integer(a);
    return (0xffffffff-a);
  }

  /* Beginn des Algorithmus */

      var state = new array(4);
      var count = new array(2);
          count[0] = 0;
          count[1] = 0;
      var buffer = new array(64);
      var transformBuffer = new array(16);
      var digestBits = new array(16);

      var S11 = 7;
      var S12 = 12;
      var S13 = 17;
      var S14 = 22;
      var S21 = 5;
      var S22 = 9;
      var S23 = 14;
      var S24 = 20;
      var S31 = 4;
      var S32 = 11;
      var S33 = 16;
      var S34 = 23;
      var S41 = 6;
      var S42 = 10;
      var S43 = 15;
      var S44 = 21;

      function F(x,y,z) {
          return or(and(x,y),and(not(x),z));
      }

      function G(x,y,z) {
          return or(and(x,z),and(y,not(z)));
      }

      function H(x,y,z) {
          return xor(xor(x,y),z);
      }

      function I(x,y,z) {
          return xor(y ,or(x , not(z)));
      }

      function rotateLeft(a,n) {
          return or(shl(a, n),(shr(a,(32 - n))));
      }

      function FF(a,b,c,d,x,s,ac) {
          a = a+F(b, c, d) + x + ac;
          a = rotateLeft(a, s);
          a = a+b;
          return a;
      }

      function GG(a,b,c,d,x,s,ac) {
          a = a+G(b, c, d) +x + ac;
          a = rotateLeft(a, s);
          a = a+b;
          return a;
      }

      function HH(a,b,c,d,x,s,ac) {
          a = a+H(b, c, d) + x + ac;
          a = rotateLeft(a, s);
          a = a+b;
          return a;
      }

      function II(a,b,c,d,x,s,ac) {
          a = a+I(b, c, d) + x + ac;
          a = rotateLeft(a, s);
          a = a+b;
          return a;
      }

      function transform(buf,offset) {
          var a=0, b=0, c=0, d=0;
          var x = transformBuffer;

          a = state[0];
          b = state[1];
          c = state[2];
          d = state[3];

          for (i = 0; i < 16; i++) {
              x[i] = and(buf[i*4+offset],0xff);
              for (j = 1; j < 4; j++) {
                  x[i]+=shl(and(buf[i*4+j+offset] ,0xff), j * 8);
              }
          }

          /* Runde 1 */
          a = FF ( a, b, c, d, x[ 0], S11, 0xd76aa478); /* 1 */
          d = FF ( d, a, b, c, x[ 1], S12, 0xe8c7b756); /* 2 */
          c = FF ( c, d, a, b, x[ 2], S13, 0x242070db); /* 3 */
          b = FF ( b, c, d, a, x[ 3], S14, 0xc1bdceee); /* 4 */
          a = FF ( a, b, c, d, x[ 4], S11, 0xf57c0faf); /* 5 */
          d = FF ( d, a, b, c, x[ 5], S12, 0x4787c62a); /* 6 */
          c = FF ( c, d, a, b, x[ 6], S13, 0xa8304613); /* 7 */
          b = FF ( b, c, d, a, x[ 7], S14, 0xfd469501); /* 8 */
          a = FF ( a, b, c, d, x[ 8], S11, 0x698098d8); /* 9 */
          d = FF ( d, a, b, c, x[ 9], S12, 0x8b44f7af); /* 10 */
          c = FF ( c, d, a, b, x[10], S13, 0xffff5bb1); /* 11 */
          b = FF ( b, c, d, a, x[11], S14, 0x895cd7be); /* 12 */
          a = FF ( a, b, c, d, x[12], S11, 0x6b901122); /* 13 */
          d = FF ( d, a, b, c, x[13], S12, 0xfd987193); /* 14 */
          c = FF ( c, d, a, b, x[14], S13, 0xa679438e); /* 15 */
          b = FF ( b, c, d, a, x[15], S14, 0x49b40821); /* 16 */

          /* Runde 2 */
          a = GG ( a, b, c, d, x[ 1], S21, 0xf61e2562); /* 17 */
          d = GG ( d, a, b, c, x[ 6], S22, 0xc040b340); /* 18 */
          c = GG ( c, d, a, b, x[11], S23, 0x265e5a51); /* 19 */
          b = GG ( b, c, d, a, x[ 0], S24, 0xe9b6c7aa); /* 20 */
          a = GG ( a, b, c, d, x[ 5], S21, 0xd62f105d); /* 21 */
          d = GG ( d, a, b, c, x[10], S22,  0x2441453); /* 22 */
          c = GG ( c, d, a, b, x[15], S23, 0xd8a1e681); /* 23 */
          b = GG ( b, c, d, a, x[ 4], S24, 0xe7d3fbc8); /* 24 */
          a = GG ( a, b, c, d, x[ 9], S21, 0x21e1cde6); /* 25 */
          d = GG ( d, a, b, c, x[14], S22, 0xc33707d6); /* 26 */
          c = GG ( c, d, a, b, x[ 3], S23, 0xf4d50d87); /* 27 */
          b = GG ( b, c, d, a, x[ 8], S24, 0x455a14ed); /* 28 */
          a = GG ( a, b, c, d, x[13], S21, 0xa9e3e905); /* 29 */
          d = GG ( d, a, b, c, x[ 2], S22, 0xfcefa3f8); /* 30 */
          c = GG ( c, d, a, b, x[ 7], S23, 0x676f02d9); /* 31 */
          b = GG ( b, c, d, a, x[12], S24, 0x8d2a4c8a); /* 32 */

          /* Runde 3 */
          a = HH ( a, b, c, d, x[ 5], S31, 0xfffa3942); /* 33 */
          d = HH ( d, a, b, c, x[ 8], S32, 0x8771f681); /* 34 */
          c = HH ( c, d, a, b, x[11], S33, 0x6d9d6122); /* 35 */
          b = HH ( b, c, d, a, x[14], S34, 0xfde5380c); /* 36 */
          a = HH ( a, b, c, d, x[ 1], S31, 0xa4beea44); /* 37 */
          d = HH ( d, a, b, c, x[ 4], S32, 0x4bdecfa9); /* 38 */
          c = HH ( c, d, a, b, x[ 7], S33, 0xf6bb4b60); /* 39 */
          b = HH ( b, c, d, a, x[10], S34, 0xbebfbc70); /* 40 */
          a = HH ( a, b, c, d, x[13], S31, 0x289b7ec6); /* 41 */
          d = HH ( d, a, b, c, x[ 0], S32, 0xeaa127fa); /* 42 */
          c = HH ( c, d, a, b, x[ 3], S33, 0xd4ef3085); /* 43 */
          b = HH ( b, c, d, a, x[ 6], S34,  0x4881d05); /* 44 */
          a = HH ( a, b, c, d, x[ 9], S31, 0xd9d4d039); /* 45 */
          d = HH ( d, a, b, c, x[12], S32, 0xe6db99e5); /* 46 */
          c = HH ( c, d, a, b, x[15], S33, 0x1fa27cf8); /* 47 */
          b = HH ( b, c, d, a, x[ 2], S34, 0xc4ac5665); /* 48 */

          /* Runde 4 */
          a = II ( a, b, c, d, x[ 0], S41, 0xf4292244); /* 49 */
          d = II ( d, a, b, c, x[ 7], S42, 0x432aff97); /* 50 */
          c = II ( c, d, a, b, x[14], S43, 0xab9423a7); /* 51 */
          b = II ( b, c, d, a, x[ 5], S44, 0xfc93a039); /* 52 */
          a = II ( a, b, c, d, x[12], S41, 0x655b59c3); /* 53 */
          d = II ( d, a, b, c, x[ 3], S42, 0x8f0ccc92); /* 54 */
          c = II ( c, d, a, b, x[10], S43, 0xffeff47d); /* 55 */
          b = II ( b, c, d, a, x[ 1], S44, 0x85845dd1); /* 56 */
          a = II ( a, b, c, d, x[ 8], S41, 0x6fa87e4f); /* 57 */
          d = II ( d, a, b, c, x[15], S42, 0xfe2ce6e0); /* 58 */
          c = II ( c, d, a, b, x[ 6], S43, 0xa3014314); /* 59 */
          b = II ( b, c, d, a, x[13], S44, 0x4e0811a1); /* 60 */
          a = II ( a, b, c, d, x[ 4], S41, 0xf7537e82); /* 61 */
          d = II ( d, a, b, c, x[11], S42, 0xbd3af235); /* 62 */
          c = II ( c, d, a, b, x[ 2], S43, 0x2ad7d2bb); /* 63 */
          b = II ( b, c, d, a, x[ 9], S44, 0xeb86d391); /* 64 */

          state[0] +=a;
          state[1] +=b;
          state[2] +=c;
          state[3] +=d;

      }
      /* Mit der Initialisierung von Dobbertin:
         state[0] = 0x12ac2375;
         state[1] = 0x3b341042;
         state[2] = 0x5f62b97c;
         state[3] = 0x4ba763ed;
         gibt es eine Kollision:

         begin 644 Message1
         M7MH=JO6_>MG!X?!51$)W,CXV!A"=(!AR71,<X`Y-IIT9^Z&8L$2N'Y*Y:R.;
         39GIK9>TF$W()/MEHR%C4:G1R:Q"=
         `
         end

         begin 644 Message2
         M7MH=JO6_>MG!X?!51$)W,CXV!A"=(!AR71,<X`Y-IIT9^Z&8L$2N'Y*Y:R.;
         39GIK9>TF$W()/MEHREC4:G1R:Q"=
         `
         end
      */
      function init() {
          count[0]=count[1] = 0;
          state[0] = 0x67452301;
          state[1] = 0xefcdab89;
          state[2] = 0x98badcfe;
          state[3] = 0x10325476;
          for (i = 0; i < digestBits.length; i++)
              digestBits[i] = 0;
      }

      function update(b) {
          var index,i;

          index = and(shr(count[0],3) , 0x3f);
          if (count[0]<0xffffffff-7)
            count[0] += 8;
          else {
            count[1]++;
            count[0]-=0xffffffff+1;
            count[0]+=8;
          }
          buffer[index] = and(b,0xff);
          if (index  >= 63) {
              transform(buffer, 0);
          }
      }

      function finish() {
          var bits = new array(8);
          var        padding;
          var        i=0, index=0, padLen=0;

          for (i = 0; i < 4; i++) {
              bits[i] = and(shr(count[0],(i * 8)), 0xff);
          }
          for (i = 0; i < 4; i++) {
              bits[i+4]=and(shr(count[1],(i * 8)), 0xff);
          }
          index = and(shr(count[0], 3) ,0x3f);
          padLen = (index < 56) ? (56 - index) : (120 - index);
          padding = new array(64);
          padding[0] = 0x80;
          for (i=0;i<padLen;i++)
            update(padding[i]);
          for (i=0;i<8;i++)
            update(bits[i]);

          for (i = 0; i < 4; i++) {
              for (j = 0; j < 4; j++) {
                  digestBits[i*4+j] = and(shr(state[i], (j * 8)) , 0xff);
              }
          }
      }

  /* Ende des MD5 Algorithmus */

  function hexa(n) {
   var hexa_h = "0123456789abcdef";
   var hexa_c="";
   var hexa_m=n;
   for (hexa_i=0;hexa_i<8;hexa_i++) {
     hexa_c=hexa_h.charAt(Math.abs(hexa_m)%16)+hexa_c;
     hexa_m=Math.floor(hexa_m/16);
   }
   return hexa_c;
  }


  var ascii="01234567890123456789012345678901" +
            " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ"+
            "[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~";

  function MD5(nachricht)
  {
   var l,s,k,ka,kb,kc,kd;

   init();
   for (k=0;k<nachricht.length;k++) {
     l=nachricht.charAt(k);
     update(ascii.lastIndexOf(l));
   }
   finish();
   ka=kb=kc=kd=0;
   for (i=0;i<4;i++) ka+=shl(digestBits[15-i], (i*8));
   for (i=4;i<8;i++) kb+=shl(digestBits[15-i], ((i-4)*8));
   for (i=8;i<12;i++) kc+=shl(digestBits[15-i], ((i-8)*8));
   for (i=12;i<16;i++) kd+=shl(digestBits[15-i], ((i-12)*8));
   s=hexa(kd)+hexa(kc)+hexa(kb)+hexa(ka);
   return s;
  }

    function deleteEmployeeConfim(mitnr, login) {
        if( confirm( "Wirklich Mitarbeiter " + login + " löschen?" ) ) {
        		window.location.href = "mitarbeiter.php?MITNR="+mitnr+"&ACTION=delete";
        }
    }

    function passwordChangeConfim(mitnr, login) {
        if( confirm( "Wirklich Passwort für " + login + " zurücksetzen?" ) ) {
        		window.location.href = "mitarbeiter_edit.php?MITNR="+mitnr+"&LOGIN="+login+"&ACTION=pwdreset";
        }
    }
tiggi ist offline   Mit Zitat antworten
Alt 09.08.05, 14:04   #2 (permalink)
Moderator
 
Benutzerbild von Elderan
 
Registriert seit: 30.03.04
Elderan Leistung: 8086
Likes: 14
Standard

Hallo,
das sieht aus, wie ein JavaScript der vorher überprüft, ob die neuen (?) Passwörter identisch sind.
Dazu wird eine UID benutzt, und das Passwort.
Die Hashs werden dann zum Formular zurück gegeben, und dann evt. in einer DB gespeichert, dies müsste aber dann von einem PHP/CGI/ASP Script passieren.
Elderan ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 09.08.05, 15:27   #3 (permalink)
Gulliver
Guest
 
Likes:
Standard

Du kannst da kein Passwort finden.

Du kannst den md5 hash DEINER EIngabe bekommen indem Du DEINE Eingabe mit einem beliebigen programm durch einen md5 schickst.

mfg
  Mit Zitat antworten
Alt 09.08.05, 19:28   #4 (permalink)
Themenstarter
 
Registriert seit: 12.07.05
tiggi Leistung: Facit NTK
tiggi eine Nachricht über ICQ schicken
Likes: 0
Standard verschlüßelungs script

Hallo Leute,
habe hier ein script und mich würde interessieren, ob bzw. wo man diesem Script
entnehmen kann, wo das Passwort gespeichert wird.
Und sehe ich es richtig, dass der md5-Hash aus UID (name) und PWD (passwort)
erstellt wird?

Gruß Tiggi


Edit von Elderan:
Bitte für eine ähnliche/gleiche Frage kein neues Thema erstellen.

--
Edit von mir ;)
Ups, das war nicht beabsichtigt. Auf der Arbeit war eins davon nicht durchge-
gan und habs deshalb nochmal geschrieben. Also eins davon kann, wenn noch
nicht geschehen, gern gelöscht werden.
tiggi ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Security Area » Cryptography & Encryption » Passwort herausfinden möglich?
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
.htuser Passwort entschlüsseln, möglich?? tosam Cryptography & Encryption 3 16.09.04 15:22


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61