Unkown-User
Πολύ δραστήριο μέλος


Προγραμματιστικοί μπελάδες part1 (ή αλλιώς πώς πνίγηκα σε 5 γραμμές κώδικα.)
Λοιπόν. Αυτό που θέλω να κάνω είναι το εξής. Να φτιάξω μία wordlist με όλους τους πιθανούς αριθμούς κινητών τηλεφώνων. Δηλαδή από:
6930000000 - 6959999999 και από 6970000000 μέχρι 6999999999
Πανεύκολο σκέφτηκα.
Για την ακρίβεια
6930000000 -6939999999 - Wind
6940000000 -6949999999 - Vodafone
6950000000 -6959999999 - Vodafone
696 --Κενό οπότε το παραλείπουμε
6970000000 - 6979999999 - Cosmote
6980000000 - 6989999999 - Cosmote
6990000000 - 6999999999 - Q
Οπότε συγκεντρωτικά βγαίνει το
6930000000 - 6959999999 και από 6970000000 μέχρι 6999999999
Όσοι με ξέρετε θα σας έχω πρήξει με το πόσο καλά μου έκατσε ως γλώσσα προγραμματισμού η Delphi. Η δημιουργία του GUI είναι υπόθεση λίγων δευτερολέπτων...
Τέλος πάντων, ανοίγω το RAD Studio, φτιάχνω μια vlc form, φτιάχνω και ένα Tbutton και μετά πάω να γράψω τι να κάνει όταν πατάω αυτό το Tbutton.
Υπέροχα...
AssignFile (myfile, 'wordlist.txt');
ReWrite (myfile);
For i:=6930000000 to 6959999999 do
WriteLn (myfile, i);
For i:=6970000000 to 6999999999 do
WriteLn (myfile, i);
CloseFile (myFile);
με τις οποίες εντολές φτιάχνω ένα txt αρχείο με όνομα wordlist, και πάω και στην αρχή του προγράμματος και δηλώνω και ως μεταβλητή το ,myfile το οποίο είναι TextFile και το i ως integer
var
myfile: TextFile;
i: integer;
Μια χαρά έγινε compile (0 errors και 0 warnings, ουάου!), και πατάω το περίφημο Tbutton για δημιουργία της wordlist. Περιμένω λίγη ωρίτσα και προκύπτει ένα αρχείο txt των 700 περίπου ΜΒ. Μία χαρά σκέφτομαι, (έχω ήδη και μεγαλύτερες wordlists), αλλά προφανώς δεν μπορούσα να το ανοίξω για να το ελένξω γιατί κανένα πρόγραμμα που είχα εγκατεστημένο δεν μπορούσε να ανοίξει τόσο μεγάλο txt αρχείο.
(Ακολουθεί τμήμα κειμένου το οποίο μπορεί να παραλειφθεί) (Αφορά σπάσιμο WPA2)
Bootarw backtrack, βάζω την wlan0 σε monitor mode, spoofarw και την mac μου για παν ενδεχόμενο, αρχίζω να μαζεύω πακέτα, κάποια στιγμή συνδέεται ένας client, τον κάνω deauthenticate, κάνει auth και εγώ κλεβω το handshake και πάμε για την dictonary attack με την wordlist που έχω φτιάξει.
(Τέλος κειμένου που μπορεί να παραλειφθεί)
Τρέχω airκρακ-ng και βλέπω ότι δοκιμάζει άσχετους (αρνητικούς κι όλας) αριθμούς. (
Κατεβάζω κατι για να ανοίξω το txt των 700 mb (την wordlist που είχα φτιάξει), το ανοίγω και όντως είχε ασχετους αριθμούς μέσα.
Ανοίγω τον κώδικα του προγράμματος, κοιτάω τις επαναληπτικές, σωστές. Δοκιμάζω for i:=1 το 10 writeln (myfile, i) και μου το βγάζει σωστά (τους αριθμούς απ το 1 μέχρι το 10). Βάζω from 6930000000 to 6959999999 και μου βγάζει το ίδιο αρχείο με τους αρνητικούς που μ έβγαζε και πριν.
Σκέφτομαι λίγο.. Λες το i που έχω δηλώσει ως integer να μην μπορεί να πάρει τόσο μεγάλους αριθμούς? Πθανότατα, σκέφτομαι.. Googlarw γρήγορα και βλέπω ότι παραδόξως είχα δίκιο. Το i ως integer παίρνει τιμές από :
-2,147,483,648 μέχρι 2,147,483,647, ενώ εγώ του ζητούσα να παίρνει μεγαλύτερες τιμές (αρχίζοντας από την 6.930.000.000.)
Πάω πάνω στην δήλωση μεταβλητών και δηλώνω το i ως Ιnt64 (i:=Ιnt64).
Σημείωση: Το i ως int64 μπορεί να πάρει τιμές από -9,223,372,036,854,775,808 μέχρι 9,223,372,036,854,775,807.
Χαρούμενος βάζω compile.. Πατάω το Tbutton... Δεν άργησε καθόλου να δημιουργήσει το text file πράγμα που με παραξένεψε. Πάω να ανοίξω την wordlist μου.. Μέγεθος 0 bytes.
Σκατά λέω.. Κοιτάω τον κώδικα πάλι, δηλώνω το i ως integer πάλι, και βάζω άλλες επαναλληπτικές στις οποίες το i παίρνει μικρότερες (ΔΕΚΤΕΣ) τιμές, κάνω compile, και η wordlist είναι σωστή (με τα νέα δεδομένα)
Αλλάζω το i ως int64 .. Σκατά.. Μέγεθος 0 byte. Το αφήνω ως int64 και μικραίνω στις επαναλληπτικές το μέγεθος του i. Πάλι Μέγεθος 0 byte.
(Τμήμα κειμένου που επίσης μπορεί να παραληφθεί)
Τέσπα, επειδή είχα αρχίσει να ψιλονευριάζω βάζω το i integer και γράφω
For i:=30000000 to 59999999 do
WriteLn (myfile, i+6900000000);
For i:=70000000 to 99999999 do
WriteLn (myfile, i+6900000000);
Αφού το i δεν μπορεί να πάρει τιμές μεγαλύτερες από περίπου 2.000.000.000 να του βάλω να παίρνει μικρότερες τιμές, και στο τέλος όταν γράφει την γραμμή στο txt να προσθέτει και 6900000000. Δείτε κ ένα παράδειγμα:
Το i αρχικά παίρνει την τιμή 30000000. Όταν πάει να γραφτεί στο txt θα προστεθούν σε αυτό και 6900000000 και άρα θα γίνει 6930000000, δηλαδή αριθμός κινητού που θέλουμε.
Μετά το i θα γίνει 30000001 και αν του προστεθούν και 6900000000 όντως θα γίνει 6930000001.. Hell yeah baby! Τα καταφέραμε.. Compile με συνοπτικές διαδικασίες. Ελένχουμε μετά την λίστα και ΝΑΙ ΕΙΝΑΙ ΣΩΣΤΗ.
(Τέλος τμήματος κειμένου που επίσης μπορεί να παραληφθεί)
Aπό εκεί και πέρα γιατί όταν έβαζα το i ως int64 δεν έβγαζε τιμές στο txt? Έχω μείνει με την απορία..
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
thewatcher
Εκκολαπτόμενο μέλος


Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
West_Emperor
Νεοφερμένο μέλος



Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Zed
Διάσημο μέλος



Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Φιλιον_Τερας
Διάσημο μέλος


καμμενο πασκαλιτζη της σχολης μας
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
piou*
Εκκολαπτόμενο μέλος


Δεν καταλαβαινω πως αντεχεις ν ασχολεισαι.

Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Anarki
Διάσημο μέλος


Ο καθένας με τον πόνο του, η δική μου παρατήρηση είναι οτι με την φορητότητα δεν ισχύει πλέον αυτή η αντιστοιχίαΓια την ακρίβεια
6930000000 -6939999999 - Wind
6940000000 -6949999999 - Vodafone
6950000000 -6959999999 - Vodafone
696 --Κενό οπότε το παραλείπουμε
6970000000 - 6979999999 - Cosmote
6980000000 - 6989999999 - Cosmote
6990000000 - 6999999999 - Q

Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
michael92
Πολύ δραστήριο μέλος


Μόνο JS ξέρω τι να κάνουμε :p
Απλά κάνεις το loop του στυλ :
<script>
for (i=0; i < 10000000; i++) {
document.write("694" + i + "<br>")
}
</script>
αποθηκεύεις ως html και πατάς run :p
Ξέρω θα μου πεις έτσι θα βγάλει και 69412 για αριθμό για παράδειγμα, συνεπώς πρέπει να θέσεις .length attribute, αλλά αυτό είναι πρόβλημα σου. Αυτά είναι όσα ξέρω :p
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Unkown-User
Πολύ δραστήριο μέλος



Ο καθένας με τον πόνο του, η δική μου παρατήρηση είναι οτι με την φορητότητα δεν ισχύει πλέον αυτή η αντιστοιχία![]()
To "ο καθένας με τον πόνο του" που αναφερόταν?

(δεν φταίω εγώ, που μου βάζουν wpa2 και για κωδικό τον αριθμό του κινητού του!)
Πολλοι αριθμοι, λιγα δευτερολεπτα, ο εγκεφαλος μου καηκε.
Δεν καταλαβαινω πως αντεχεις ν ασχολεισαι.Χαρα στο κουραγιο σου.
Βίτσια είναι αυτά!

Με javascript είναι πανεύκολο να το κάνεις πάντως :p
Μόνο JS ξέρω τι να κάνουμε :p
Απλά κάνεις το loop του στυλ :
<script>
for (i=0; i < 10000000; i++) {
document.write("694" + i + "<br>")
}
</script>
αποθηκεύεις ως html και πατάς run :p
Ξέρω θα μου πεις έτσι θα βγάλει και 69412 για αριθμό για παράδειγμα, συνεπώς πρέπει να θέσεις .length attribute, αλλά αυτό είναι πρόβλημα σου. Αυτά είναι όσα ξέρω :p
Ρε, ξέρω να το κάνω σε 20 γλώσσες, το θέμα μου είναι γιατί με το i ως Int64 δεν έγραφε στο txt.
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Anarki
Διάσημο μέλος



Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Unkown-User
Πολύ δραστήριο μέλος


Ο καθένας με τον πόνο του, η δική μου παρατήρηση είναι οτι με την φορητότητα δεν ισχύει πλέον αυτή η αντιστοιχία![]()
E, ναι, νταξ, αλλά προφανώς ο στόχος δεν είναι η αντιστοιχεία αλλά το να έχει η wordlist όλες τους αριθμούς κινητών...

Αναφερόταν στο οτι όλα τα σχόλια είναι άκυρα, όπως και το δικό μου που θα ακολουθούσε![]()
Ε, κλασσικά, αυτό είναι το συνηθισμένο

Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.



Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Unkown-User
Πολύ δραστήριο μέλος


κ εγω για τη φορητοτητα ηθελα να γραψω αλλα ειπα αστο καλυτερα μη με βρισει που λεω ασχετα![]()
Μου αρέσει που όλοι κολλήσατε στην φορητότητα

Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Anarki
Διάσημο μέλος


Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Eruyomo
Πολύ δραστήριο μέλος



Το μόνο που μπορώ να σκεφτώ είναι οτι δεν μπορείς να κάνεις cast την int64 σε string.
Πάντως, δεν καταλαβαίνω γιατί κάνεις τόσο μεγάλο εύρος;
Πρώτον, δοκίμασε long unsigned int και δεύτερον σπάσε το loop στα 690xx 691xx 692xx
ωστε να γλιτώσεις περιπτώσεις στο μέγεθος, που είναι standard.
Επίσης, το πιο βολικό για αυτά τα πράγματα είναι το bash

#!/bin/bash
for i in `seq 6930000000 6959999999`
do
echo "" >> wordlist.txt
done
for i in `seq 6970000000 6999999999`
do
echo "" >> wordlist.txt
done
Τώρα που το βλέπω, καν script δεν χρειάζεσαι.
$ seq 6930000000 6959999999 >> words.txt
$ seq 6970000000 6999999999 >> words.txt
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Unkown-User
Πολύ δραστήριο μέλος


Γιατί να κάνεις κάτι σε γλώσσα προγραμματισμού που μπορείς να το κάνεις με ένα απλό bash script;![]()
Εγώ δεν ξέρω τι είναι αυτά ΤΑ linux.. Αυτά είναι πράγματα του Σατανα..
Πέρα απ την πλάκα , προτίμησα γλώσσα προγραμματισμού, και να φτιάξω και πλήρες GUI γιατί σκοπός δεν ήταν η δημιουργία μόνο μιας wordlist αλλά ενός προγράμματος που να κάνει merge 2 ή περισσότερες wordlists και να διαγράφει τις διπλοεγγραφές, να κάνει κεφαλαίο το πρώτα γράμμα από μία wordlist, να τα κάνει όλα κεφαλαία, να έχει leet filters δηλαδή να παίρνει μία wordlist με ονόματα :
password
root
admin
και να την κάνει
p@$$w0rd
r00t
@dmin
και πολλά άλλα ωραία, απλά σ εσάς έγραψα μόνο το τμήμα που με προβλημάτισε..

Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Eruyomo
Πολύ δραστήριο μέλος


Μα δεν χρειάζεται να χεις linux, υπάρχει και το cygwin.Εγώ δεν ξέρω τι είναι αυτά ΤΑ linux.. Αυτά είναι πράγματα του Σατανα..
Δοκίμασε τότε την python και τα dictionaries της.Πέρα απ την πλάκα , προτίμησα γλώσσα προγραμματισμού, και να φτιάξω και πλήρες GUI γιατί σκοπός δεν ήταν η δημιουργία μόνο μιας wordlist αλλά ενός προγράμματος που να κάνει merge 2 ή περισσότερες wordlists και να διαγράφει τις διπλοεγγραφές, να κάνει κεφαλαίο το πρώτα γράμμα από μία wordlist, να τα κάνει όλα κεφαλαία, να έχει leet filters δηλαδή να παίρνει μία wordlist με ονόματα :
password
root
admin
και να την κάνει
p@$
r00t
@dmin
και πολλά άλλα ωραία, απλά σ εσάς έγραψα μόνο το τμήμα που με προβλημάτισε..![]()
Ή αν θες κάτι πιο extreme, δοκίμασε perl.
Η pascal παραείναι γερασμένη για κάτι τέτοια.
Edit:
Σε python (τρέχει και σε windows):
#!/usr/bin/python
def main():
string="";
f = open("wordlist.txt","w");
for i in range(6930000000,6959999999):
string = string + str(i) + "n";
for i in range(6970000000,6999999999):
string = string + str(i) + "n";
f.write(string);
f.close();
if __name__=="__main__":
main();
Αλλιώς όπου string=string +... το αλλάζεις με f.write(...)
Edit: μου φαγε το \ στο \n ...
#!/usr/bin/python
def main():
f=open("wordlist.txt","w");
for i in range(6930000000,6959999999):
f.write(str(i) + "\n");
for i in range(6970000000,6999999999):
f.write(str(i) + "\n");
f.close();
if __name__=="__main__":
main();
Σημείωση: Το μήνυμα αυτό γράφτηκε 16 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Χρήστες Βρείτε παρόμοια
-
Φορτώνει...
-
Το forum μας χρησιμοποιεί cookies για να βελτιστοποιήσει την εμπειρία σας.
Συνεχίζοντας την περιήγησή σας, συναινείτε στη χρήση cookies στον περιηγητή σας.