Il Wednesday 09 April 2008 00:17:27 [EMAIL PROTECTED] ha scritto: > On Tue, Apr 08, 2008 at 11:29:01PM +0200, gollum1 wrote: > > Non funziona con entrambi i pezzi di codice, non mi ? molto chiaro il > > codice che hai fatto... vediamo se sono riuscito a capirlo... > > Uhmm da me funziona, e tra le altre cose si evince dai nomi delle > funzioni presenti che si tratta di un footer.php si un wordpress :)
sì, infatti era un utente del forum di WP che chiedeva che era questa cosa, e mi sono incuriosito più per la questione "informatica" che per un interesse vero e proprio del contenuto (i miei temi sono fatti in casa, e non uso codice offuscato) > prendo un codice, lo trasformo gzippo, lo trasformo in base64, ne faccio > un rot13, prendo cio' ch e' uscito e ripeto tutta l'operazione da > capo... e cosi' via per 42 volte. quindi avevo capito correttamente il tuo procedimento... > Quindi io non faccio altro che fare un ciclo con l'operazione inversa, > trasformo l'eval in print_r() pulendo eventuali <? ?> che romperebbero > poi, faccio un ob_start per far si che eval() della mia stringa > trasformata con la print_r possa essere catturata in una stringa, > controllo se pulendo ulteriormente <? e simili inizia con eval, se si > ripeto l'operazione e cosi' via fino a quando non e' piu iniziante con > eval. A quel punto so di avere il codice "vero" e lo printo. qui ho dovuto andare a riguardarmi il manuale di php, non mi ricordavo per nulla le funzioni ob_ (ma ce ne sono tante altre che non conosco o fatico a ricordare, i manuali servono per quello no?) > > evidentemente si ferma all'ultimo ciclo, perch? in uscita ho ancora il > > codice offuscato... > > Be l'ho scritto grezzamente in due secondi, ovviamente si puo' far di > meglio, comunque se semplicemente pigli anche a mano, cambi eval con > print_r e redirigi su un file, avrai ancora codice offuscato, ripeti il > cambio di eval con print_r e salvi su un terzo file.. e cosi' via per 42 > volte, alla fine avrai il codice in chiaro. certo, questo dopo il suggerimento del primo post e dopo essermi letto il tuo ero riuscito a capirlo, che dovevo continuare in modo ricorsivo, ma mi interessava vedere se esisteva un sistema meno "manuale"... > Assolutamente corretto. Offuscare il codice in quel modo e' > semi-inutile, serve solo a fermare persone che di php davvero non > conoscono NULLA (ok, non sono poche), ma chi ha un minimo di esperienza > o comunque basi di programmazione anche scarse e' in grado di ricavarne > tranquillamente il sorgente, al costo di far fare la bellezza di 42 eval > e trasformazioni varie che ovviamente appesantiscono molto il tutto. > > Insomma, e' inutile e dannoso. Esistono poi altri metodi migliori, > molti proprietari e anche qualcuno open source come l'estensione > bcompiler che sta in pear, che fondamentalmente si basano sul > byte-compilare il codice php con un'operazione one-way only. In quel > modo risalire al codice sorgente *preciso* e' impossibile, anche queste > operazioni sono comunque reversabili lavorando in maniera piu' "interna" > a php, ma almeno garantiscono un livello di sicurezza piu' elevato ( per > quanto lo si possa elevare non e' comunque assoluto ) ad un costo > computazionale decisamente inferiore. in passato mi avevano chiesto qualcosa del genere, ma non mi ci sono mai messo seriamente, non mi è mai interessato poi tanto il discorso di offuscamento del codice, lo trovo alquanto anti-opensource.... > comunque: > dedalo:/home/nextime/MAIL/allegati> ./a.php [...] ti ringrazio, ero comunque riuscito a vederlo tramite quel sito di cui ti ho lasciato il link nel precedente post, il mio interesse era rimasto puramente "accademico". Byez -- Gollum 1 Tessssssoro, dov'é il mio tesssssssoro...

