|
You last visited: Today at 00:48
Advertisement
Brute Force
Discussion on Brute Force within the C/C++ forum part of the Coders Den category.
03/31/2012, 19:13
|
#1
|
elite*gold: 0
Join Date: Mar 2012
Posts: 26
Received Thanks: 3
|
Brute Force
Hi,ich krieg es nicht hin einen "Brute Force" Algorithmus in C++ zu schreiben.
Das Prog soll alle Möglichkeiten von Zahlenkombinationen ausgeben.
Bsp.
Zahlen: 1,2
Stellenanzahl: 2
Das soll ausgegeben werden:
12
11
21
22
Man soll die Zahlen und Stellenanzahl eingeben können.
Könnt ihr mir einen Rat geben,wie das geht?
|
|
|
03/31/2012, 19:30
|
#2
|
elite*gold: 5
Join Date: Sep 2006
Posts: 385
Received Thanks: 218
|
Spoonfeeding ist hier nicht so angesagt.
Zeig doch ersteinmal was du bisher gemacht hast und erklär was du dir dabei gedacht hast.
Falls du selber basteln willst ein paar dezente Hinweise:
Schleife
Modulo Operator (%)
if
|
|
|
03/31/2012, 20:12
|
#3
|
elite*gold: 0
Join Date: May 2009
Posts: 827
Received Thanks: 471
|
|
|
|
03/31/2012, 21:34
|
#4
|
elite*gold: 1
Join Date: Jul 2005
Posts: 553
Received Thanks: 451
|
Ein Bruteforce-Algorithmus besteht allerdings nicht aus reiner Permutation:
Bruteforce 112 -> 113 -> 114 -> ...
Permutation 112 -> 121 -> 211 -> ...
Hatte mal 'nen kleinen MD5 Bruteforcer geschrieben:
So sah meine Funktion aus, die den String erstellt:
Code:
; in bl kommt die Anfangs- und in bh die Endlänge
; z.B. 3 und 4 => 000 -> zzzz
; _string_var ist einfach ein Char-Array
_09az:
inc bh
mov al,'0'
mov edi,_string_var
movzx ecx,bl
rep ******
mov byte [edi],0
mov esi,_string_var
mov edi,.loop
jmp .print
align 4
.reset:
mov esi,_string_var
mov edi,.loop
.loop:
mov al,[esi]
mov cl,[esi]
cmp al,'z'
je .bound
inc cl
cmp al,'9'
je .toa
.set:
mov [esi],cl
.print:
; _string_var enthält den String
jmp edi
align 4
.bound:
mov byte [esi],'0'
mov al,[esi+1]
mov edi,.reset
inc esi
test al,al
jnz .loop
inc bl
mov word [esi],30h
cmp bl,bh
jnz .print
jmp not_found
align 4
.toa:
mov cl,'a'
jmp .set
|
|
|
03/31/2012, 21:40
|
#5
|
elite*gold: 0
Join Date: Mar 2012
Posts: 26
Received Thanks: 3
|
äh assembler kann ich jetzt nicht wirklich lesen ...
ich frag mich nur wie es geht,dass der string länger wird und der bruteforce trotzdem funktioniert?
So hab ichs mir gedacht:
char bstr[30];
bstr[0] = 'A';
bstr[1] = 'A';
for(bstr[0];bstr[0]!='z';bstr[0]++)
{
for(bstr[1];bstr[1]!='z';bstr[1]++)
{
cout << bstr << endl;
}
bstr[1] = 'A';
}
Aber das geht nicht,wenn man die chars und die Stellen frei wählen kann.
|
|
|
03/31/2012, 22:00
|
#6
|
elite*gold: 0
Join Date: May 2009
Posts: 827
Received Thanks: 471
|
Sowas vllt.?
EDIT: doch nich...
EDIT2: Jetzt aber (hoffentlich)
EDIT3: jaja Macht der Java-Gewohnheit. Den Speicher sollte man vllt wieder freiräumen iwann...
Code:
#include <iostream>
#include <algorithm>
#include <cstring>
void rekPerm(int pos, int* numbers, int len, int places)
{
for(int i = pos+1; i <= len-places+1; i++)
{
int* buffer = new int[places];
buffer[0] = numbers[pos];
for(int j = 1; j < places; j++)
{
buffer[j] = numbers[i+j-1];
}
std::sort(buffer,buffer+places);
do
{
for(int k = 0; k < places; k++)
{
std::cout << buffer[k] << " ";
}
std::cout << "\n";
}while(std::next_permutation(buffer,buffer+places));
delete[] buffer;
}
pos++;
if(pos <= len-places)
rekPerm(pos, numbers, len, places);
}
int main()
{
int numbers[] = { 1, 2, 3, 4 };
const int numbersLength = 4;
const int places = 3;
rekPerm(0, numbers, numbersLength, places);
return 0;
}
|
|
|
04/01/2012, 18:29
|
#7
|
elite*gold: 0
Join Date: Mar 2012
Posts: 26
Received Thanks: 3
|
ok, danke für deine Mühe (falls du das selber geschrieben hast)!
|
|
|
04/01/2012, 18:44
|
#8
|
elite*gold: 0
Join Date: May 2009
Posts: 827
Received Thanks: 471
|
Ja das habe ich selbst geschrieben, sonst wäre das kaum so unglaublich umständlich und wirr. Und dass es fehlerfrei ist, kann auch nicht garantiert werden. Hatte kein Blatt Papier zur Hand. Das ist mehr oder weniger in meinem Kopf entstanden, was btw. der totale brainfuck war.
|
|
|
|
Similar Threads
|
Brute Force
12/04/2012 - Metin2 Private Server - 30 Replies
hi
gibt es eine möglichkeit, ein programm mit dem ich passworter knacken kann wenn ich z.B. bei metin den acc-id kenne dass ich dann in das pw feld ein brute force programm "reinlege" und es mir das pw knackt????
bitte keine beleidigungen ich habe nicht vor accs zu klauen sondern nur meinen alten metin acc wiederzubeleben nachdem ich meine e-mail gelöscht und mein pw vergessen hab^^
|
brute force(really need)
09/24/2009 - PW Hacks, Bots, Cheats, Exploits - 1 Replies
who will be generous and has worker brute force for pw, send me in PM please, I swear that it will not leave in public, it's need for to restore the password from an account on Russian server :(
|
WoW Brute Force ?
06/27/2009 - World of Warcraft - 5 Replies
Hi,
Ich hab seit einiger Zeit mein eigenen WoW Server am laufen . Nun wollt ich mal testen wie sicher mein Admin pw ist . Gibst für WoW ne Art Brute force Attack?
|
brute force on sql
06/05/2008 - General Coding - 7 Replies
hello,
i hope this is the right tread
recently my private server for a game called tibia was hacked into and messed about i found out the person who done it and i would like to return the favour to his server,
a friend of mine manged to do this in a few mins to some other servers but i would like to know myself how to do it
basically i want to retrieve the username and password to a phpadmin
using brute force but with having little knowlegde if any about how to a private msg or a...
|
All times are GMT +2. The time now is 00:48.
|
|