Zum Inhalt wechseln

Als Gast hast du nur eingeschränkten Zugriff!


Anmelden 

Benutzerkonto erstellen

Du bist nicht angemeldet und hast somit nur einen sehr eingeschränkten Zugriff auf die Features unserer Community.
Um vollen Zugriff zu erlangen musst du dir einen Account erstellen. Der Vorgang sollte nicht länger als 1 Minute dauern.

  • Antworte auf Themen oder erstelle deine eigenen.
  • Schalte dir alle Downloads mit Highspeed & ohne Wartezeit frei.
  • Erhalte Zugriff auf alle Bereiche und entdecke interessante Inhalte.
  • Tausche dich mich anderen Usern in der Shoutbox oder via PN aus.
 

   

Foto

[Java] MD5 Bruteforcer (Source Code)

- - - - -

  • Bitte melde dich an um zu Antworten
9 Antworten in diesem Thema

#1
Mr_NiceGuy

Mr_NiceGuy

    Tool Tester

  • Premium Member
  • Likes
    82
  • 116 Beiträge
  • 161 Bedankt
Entschlüsselt Nachrichten, die md5 verschlüsselt sind, solange die Nachricht 5 Ziffern oder weniger beträgt. Einfach an mehreren Stellen erhöhen, hatte nicht mehr zeit und lust.
so hier:

/*
* @Author: Mr_NiceGuy
*/

import java.security.*;
import java.util.*;

public class BruteForcer implements Runnable{

public static String currentCombo;
public static String encryptedCombo;
public static String encryptedWord;
public static int wordLength;
public static int char1, char2, char3, char4, char5;

public static char Char[] = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r',
's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K',
'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3',
'4', '5', '6', '7', '8', '9'
};

public BruteForcer() {}

public void run() {
Scanner sc = new Scanner(System.in);
System.out.println("Encrypted Word:");
encryptedWord = sc.nextLine();
resetChars();
wordLength = 1;
Decrypt(encryptedWord);
}

public static boolean compareDigestedMsg(String s1, String s2) {
if(s1.contains(s2))
return true;
else
return false;
}

public static void resetChars() {
char1 = 0;
char2 = 0;
char3 = 0;
char4 = 0;
char5 = 0;
}

public static String DigestMsg(String s) {
byte[] defaultBytes = s.getBytes();
try {
MessageDigest algorithm = MessageDigest.getInstance("MD5");
algorithm.reset();
algorithm.update(defaultBytes);
byte messageDigest[] = algorithm.digest();

StringBuffer hexString = new StringBuffer();

for (int i = 0; i < messageDigest.length; i++) {
hexString.append(Integer.toHexString(0xFF & messageDigest[i]));
}

s = hexString + "";
} catch(NoSuchAlgorithmException e) {
e.printStackTrace();
}
return s;
}

public static void Decrypt(String s) {
int i = 0;
switch(wordLength) {
case 1:
for(i = 0; i < 62; i++) {
currentCombo = "" + Char[i];

if(compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[MATCH FOUND!] Combonation: " + currentCombo); wordLength = 1;
break;
}
}
if(!compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[WORD LENGTH: " + wordLength + "] has been processed: NO MATCHES!");
wordLength++;
Decrypt(encryptedWord);
}
break;

case 2:
resetChars();
for(i = 0; i < 3844; i++) {

char2 = i % 62;

if(char2 == 0) {
if(i > 0)
char1++;
}

currentCombo = "" + Char[char1] + Char[char2];

if(compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[MATCH FOUND!] Combonation: " + currentCombo);
wordLength = 1;
break;
}
}
if(!compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[WORD LENGTH: " + wordLength + "] has been processed: NO MATCHES!");
wordLength++;
Decrypt(encryptedWord);
}
break;

case 3:
resetChars();

for(i = 0; i < 238328; i++) {
char3 = i % 62;

if(char3 == 0) {
if(i > 0) {
if(char2 < 61){
char2++;
if(Char[char2] == '9' && Char[char1] != '9')
char1++;
} else {
char2 = 0;
}
}
}

currentCombo = "" + Char[char1] + Char[char2] + Char[char3];

if(compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[MATCH FOUND!] Combonation: " + currentCombo);
wordLength = 1;
break;
}
}
if(!compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[WORD LENGTH: " + wordLength + "] has been processed: NO MATCHES!");
wordLength++;
Decrypt(encryptedWord);
}
break;

case 4:
resetChars();

for(i = 0; i < 14776336; i++) {
char4 = i % 62;

if(char4 == 0) {
if(i > 0) {
if(char3 < 61) {
char3++;
if(Char[char2] == '9')
char2 = 0;
if(Char[char3] == '9' && Char[char2] != '9')
char2++;
if(Char[char2] == '9' && Char[char1] != '9')
char1++;
} else {
char3 = 0;
}
}
}

currentCombo = "" + Char[char1] + Char[char2] + Char[char3] + Char[char4];

if(compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[MATCH FOUND!] Combonation: " + currentCombo);
wordLength = 1;
break;
}
}
if(!compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[WORD LENGTH: " + wordLength + "] has been processed: NO MATCHES!");
wordLength++;
Decrypt(encryptedWord);
}
break;

case 5:
resetChars();

for(i = 0; i < 916132832; i++) {
char5 = i % 62;

if(char5 == 0) {
if(i > 0) {
if(char4 < 61) {
char4++;
if(Char[char2] == '9')
char2 = 0;
if(Char[char3] == '9')
char3 = 0;
if(Char[char4] == '9' && Char[char3] != '9')
char3++;
if(Char[char3] == '9' && Char[char2] != '9')
char2++;
if(Char[char2] == '9' && Char[char1] != '9')
char1++;
} else {
char4 = 0;
}
}
}

currentCombo = "" + Char[char1] + Char[char2] + Char[char3] + Char[char4];

if(compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[MATCH FOUND!] Combonation: " + currentCombo);
wordLength = 1;
break;
}
}
if(!compareDigestedMsg(s, DigestMsg(currentCombo))) {
System.out.println("[WORD LENGTH: " + wordLength + "] has been processed: NO MATCHES!");
wordLength++;
Decrypt(encryptedWord);
}
break;
}
}
public static void main(String[] args) {
BruteForcer bf = new BruteForcer();
new Thread(bf).start();
while(true) {}
}
}

  • Thor gefällt das

Eingefügtes Bild
--Die Existenz des Lebens ist ein höchst Überbewertetes Phänomen.--


#2
Noone

Noone

    Leecher

  • Members
  • PIP
  • Likes
    0
  • 2 Beiträge
  • 0 Bedankt
Danke fürs posten, war auch der Grund warum ich mich hier mal angemeldet habe, es gibt leider viel zu weniger Java Szene Coder, da ich selbst mit Java begonnen habe und die Sprache gerne mag, möchte ich auch irgendwann mal damit Szenetools coden, dadurch is es immer mal gut input zu bekommen wie solche Szeneprogramme im SC aussehen.

#3
PaulaAbdul

PaulaAbdul

    Favoured Management

  • Administration
  • Likes
    3742
  • 2158 Beiträge
  • 3746 Bedankt
  • 1337-699
  • verifiziert
  • Android [root]
  • Windows, Linux
ich wollt mich auch in nächster zeit mit java beschäftigen und werd mir jetzt erstmal das buch "Java - eine Insel" kaufen welches mir von einem Bekannten empfohlen wurde.

401a3d5869.jpg

 

,,Der blaue Baum" von Prohex (2020)


#4
Simius

Simius

    Script Kiddie

  • Premium Member
  • Likes
    17
  • 25 Beiträge
  • 8 Bedankt
  • Android
  • Linux
An sich ist Java aufgrund der plattformübergreifenden Anwendbarkeit bestens für Szenezwecke geeignet. Wurde mir auch von einem befreundeten Informatiker zum Einstieg empfohlen. Bin aber leider noch nicht dazu gekommen.

#5
Zero0150

Zero0150

    Noob

  • Members
  • PIPPIP
  • Likes
    0
  • 13 Beiträge
  • 1 Bedankt
  • 197-790
Ich kann Java nicht empfehlen - gerade zum Einstieg bietet sich eigentlich C# mehr an.
Für Szene zwecke finde ich es auch nicht gerade geeignet. Mittlerweile hat kaum noch jemand JAVA installiert. Achso es sei denn du meinst etwas wie Account-Checker und Co. dafür ist es natürlich bestens geeignet.

#6
juPP

juPP

    Hacker

  • Premium Member
  • Likes
    49
  • 174 Beiträge
  • 61 Bedankt
  • 000000
  • Blackberry
  • Windows, Linux

Ich kann Java nicht empfehlen - gerade zum Einstieg bietet sich eigentlich C# mehr an.
Für Szene zwecke finde ich es auch nicht gerade geeignet. Mittlerweile hat kaum noch jemand JAVA installiert. Achso es sei denn du meinst etwas wie Account-Checker und Co. dafür ist es natürlich bestens geeignet.


Hi, muss dir leider vollkommen woedersprechen ...

Ich würde gerade zum Einsteigen Java empfehlen.... zu C# tut sich da zwar nicht viel aber meiner Meinung nach ist Java syntaktisch noch ein bisschen einfacher...

Auch füre Maleware ist Java bestens geeignet (wenn man sich damit auskennt, man kann z.B noch alle alten Version von Java als aktuelle JRE laden wenn diese noch installiert sind, dies ist im Regelfall so)

Auch sind alle DriveBy??s die heutzutage so rumgehen basierend auf einem Java Applet....

Das Java so gut wie keiner installiert hat ist einfach eine schlechte Behauptung.... Viele Leute gerade in Geschäftsprozessen haben Java installiert weil es auch viele ERP Systeme gibt die in Java entwickelt worden sind.
... hier könnte Ihre Werbung stehen ;)

#7
0day

0day

    Noob

  • Members
  • PIPPIP
  • Likes
    3
  • 5 Beiträge
  • 0 Bedankt
Ich würde auch eher C# als Java empfehlen und danach C/C++

#8
DasBeast1989

DasBeast1989

    Leecher

  • Members
  • PIP
  • Likes
    0
  • 2 Beiträge
  • 0 Bedankt
Sorry, das ich das jetzt Frage, aber was macht das Programm genau. Ich werd nicht ganz schlau draus :) Falls du mir ein Beispiel nennen kannst, wie das funktioniert wäre echt super ;) Ich versteh den Ansatz und auch die einigermaßen die Syntax, bin (nicht neu) aber noch recht frisch in Java.
Zumal ist doch MD5 eine "One-Way" Verschlüsselung oder?

#9
juPP

juPP

    Hacker

  • Premium Member
  • Likes
    49
  • 174 Beiträge
  • 61 Bedankt
  • 000000
  • Blackberry
  • Windows, Linux
Also das Programm versucht über eine BruteForce Attake den gleichen Hashwert zu finden, wie der Eingabe wert. Wenn das der Fall ist hast du entweder das Wort oder eines was genau den gleichen Hash ergibt (kollision). Der Sourcecode ist nicht gerade schön. Gerade bei BruteForce bietet sich an mit rekursion zu arbeiten...

Schau mal hier:

Please Login HERE or Register HERE to see this link!




evtl verständlicher für dich

Bearbeitet von juPP, 28 January 2014 - 10:04 Uhr.

... hier könnte Ihre Werbung stehen ;)

#10
DasBeast1989

DasBeast1989

    Leecher

  • Members
  • PIP
  • Likes
    0
  • 2 Beiträge
  • 0 Bedankt
ok, danke :)



  Thema Forum Themenstarter Statistik Letzter Beitrag

Dieses Thema wurde von 24 Mitglied(ern) gelesen


    Blackfox, Bot4ng, caballo, Cortys, decent, Giant, hitman56, INTERSPACECOWBOY, Killerblow, kingkev0, kiwitone, loginman1, Marauder91, maxrisk, MiD_NiGHT, r3vO, randomname, Razorback88, Red Hat, SkullSplitter, smc2014, Stalin, TuttiFrutti, xrahitel
Die besten Hacking Tools zum downloaden : Released, Leaked, Cracked. Größte deutschsprachige Hacker Sammlung.