Ergebnis 1 bis 5 von 5
  1. #1
    W32.Lovgate
    Registriert seit
    01.07.2007
    Beiträge
    354

    Standard C++ wordlist generator

    Mein selbst programmierter Wordlist-Generator in C++.
    Ist das C++-pendant zu diesem Thread: http://free-hack.com/perl/52676-perl...generator.html

    Hier noch einmal im Pastebin:
    C++ | #include <iostream> #include - C++ wordlist generator - yiJ6jffj - Pastebin.com

    Code:
    #include <iostream>
    #include <fstream>
    #include <string>
    #include <cstring>
    #include <cstdlib>
    
    int number_of_chars;
    char chars_to_use[200];
    
    using namespace std;
    
    ofstream out;
    
    void outputcout(string x, int number_of_chars_left, string separator) {
    
        char c;
            
        if(number_of_chars_left==0) {
            cout << x << separator;    
            return;        
        }
        
        else {    
                for(c=0; c<number_of_chars; c++) {
                    outputcout(x+chars_to_use[c], number_of_chars_left-1, separator);
                }        
        }
    }
    
    void output(string x, int number_of_chars_left, string separator) {
    
        char c;
            
        if(number_of_chars_left==0) {
            out << x << separator;    
            return;        
        }
        
        else {        
                for(c=0; c<number_of_chars; c++) {
                    output(x+chars_to_use[c], number_of_chars_left-1, separator);
                }        
        }
    }
    
    void usage() {
        cerr << "usage: wlg (-l|-w) (no_chars) (chars) [output file]" << endl;
        exit(1);
    }
    
    
    int main(int argc, char *argv[]) {
    
        int how_many;
        string separator;    
            
        if(argc<4)
                usage();
                
        if(!strcmp(argv[1], "-l"))
            separator="\n";
        else if(!strcmp(argv[1], "-w"))
            separator="\r\n";
                    
        how_many=atoi(argv[2]);
        strcpy(chars_to_use, argv[3]);
        number_of_chars=strlen(chars_to_use);
                
        if(argc==4)                
                outputcout("", how_many, separator);    
        
        if(argc==5) {    
                out.open(argv[4]);            
                output("", how_many, separator);
                out.close();    
        }
                
        
        
    }
    Geändert von ]=-antr4xx-=[ (18.04.2010 um 08:23 Uhr)

  2. #2
    Der mit Anatidaephobie Avatar von blackberry
    Registriert seit
    11.07.2008
    Beiträge
    2.350

    Standard

    Nach Sourcecodes verschoben.

    PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
    please do feed the trolls crew and elk
    Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
    "Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
    Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
    An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^

  3. #3
    if(1x<>)!~/^(11+)\1+$/
    Registriert seit
    13.08.2007
    Beiträge
    524

    Standard

    Congratulations for coding a Buffer Overflow...


  4. #4
    W32.Lovgate
    Registriert seit
    01.07.2007
    Beiträge
    354

    Standard

    Meinst du hier:

    Code:
    strcpy(chars_to_use, argv[3]);
    ?

    Wenn man das durch
    Code:
    strncpy(chars_to_use, argv[3], 199);
    ersetzt, ist imo der Overflow weg?

  5. #5
    Trojaner Avatar von luxury11
    Registriert seit
    30.05.2010
    Beiträge
    56

    Standard

    Damit der BufferOverflow nicht ensteht:
    Code:
    strncpy((char*)chars_to_use,(const char*)argv[3],(size_t)strlen((const char*)argv[3])-1)
    Zusätzlich:
    Code:
    char chars_to_use[200] = {0};
    Geändert von luxury11 (31.05.2010 um 06:57 Uhr)

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •