Thejuster 945 Segnala messaggio Inviato July 20, 2015 Per chi fosse curioso ieri ero a casa con mia moglie con la febbre e mi sono un pò divertito a far piangere la calcolatrice di microsoft XD Questo video mostra una delle tantissime tecniche di Reversing Engineer e Hacking / Cracking di programmi. Ovviamente questo video è una millesima parte delle tecniche utilizzate. Ci sono tanti ma tanti sistemi e cose molto più complicate. questo è solo una manipolazione di un programma. Anche se non si avvicina nemmeno minimamente al mio mak tool. nel mak tool è tutt'altra storia. Lì si agisce sulla memoria della CPU alterando indirizzi di memoria e sovrascrivendo valori esadecimali un esempio è del tipo: 1189148691 secondo voi cosa significa? Se può sembrarvi veramente ma veramente strano in quei numeri c'è scritto Juster. o quanto possiamo definire un valore del tipo 0xD022575 che potrebbe essere un puntatore ad un indirizzo variabile. vabbè XD è molto difficile da spiegare e sopratutto dire degli offset a cosa servono e come si trovano. Ci vorrebbe tanto ma tantissimo tempo per spiegarvi tutto. questo sistema non funziona su tutti i computer, perché windows ha diverse Build. basta una build diversa per non funzionare più quindi è inutile che provate a riprodurlo anche perché ho una build abbastanza vecchiotta di win8. Ma vi ho lasciato il video per farvi affascinare su questo mondo e mostrarvi cosa si può fare conoscendo questo lato oscuro della programmazione. Buona visione 3 Shiki Ryougi, Ally e MrSte reacted to this Condividi questo messaggio Link di questo messaggio Condividi su altri siti
Shiki Ryougi 216 Segnala messaggio Inviato July 20, 2015 Interessantissimo *-* A me ha sempre affascinato questo lato oscuro della programmazione... Ma mai mi sono messa davvero sopra a imparare qualcosa Non so manco se sono capace d'imparare davvero xD Ma di certo mi affascina ^.- Condividi questo messaggio Link di questo messaggio Condividi su altri siti
Denzel 250 Segnala messaggio Inviato July 20, 2015 si dice Reverse Engineering, Reversing Hacking non è una definizione giusta, non vuol dire niente. Condividi questo messaggio Link di questo messaggio Condividi su altri siti
Thejuster 945 Segnala messaggio Inviato July 20, 2015 Si Denzel, ho sbagliato a scrivere manca una barra doveva essere Reversing / Hacking Voglio spiegare per bene questo concetto. Reversing Engineer è quello che ho fatto nel video. Risalire al codice sorgente Assembly, visualizzare le procedure e riuscire a manipolare una determinata applicazione o riuscendo ad aggiungerci operazioni non consentite normalmente. da wikipedia L'ingegneria inversa (spesso si usa il termine retro ingegneria) consiste nell'analisi dettagliata del funzionamento, progettazione e sviluppo di un oggetto (dispositivo, componente elettrico, meccanismo, software, ecc.) al fine di produrre un nuovo dispositivo o programma che abbia un funzionamento analogo, magari migliorando o aumentando l'efficienza dello stesso, senza in realtà copiare niente dall'originale; inoltre, si può tentare di realizzare un secondo oggetto in grado di interfacciarsi con il primo[1]. Hacking può singificare tante cose. dal verbo inglese hack significa manomettere o manipolare un software alle proprie esigenze. per quanto le persone ritengono che questo termine sia rivolto solo a chi pratica atti illeciti e del tutto sbagliato. per questo motivo poi è nata la definizione White Hat. Ci sono case di software che ingaggiano hacker per valutare la sicurezza dei propri software. chi pratica operazioni illecite è definito cyber criminale e non hacker. da wikipedia La parola hacking deriva dal verbo inglese to hack, che significa intaccare. Colui che pratica l'hacking viene identificato come hacker: il suo obiettivo è solitamente quello di acquisire un'approfondita conoscenza del sistema su cui interviene, per poi essere in grado di accedervi o adattarlo alle proprie esigenze. Tale atteggiamento assume maggiore rilevanza se si considera che di frequente le informazioni tecniche e le potenzialità di un sistema non vengono interamente rese note dal produttore, o addirittura in certi casi vengono volutamente occultate e protette (per motivi industriali e commerciali o per tutelarne la sicurezza e l'affidabilità) Cosa ho fatto nel programma? ( Non visibile nel video ) Punto 1. Reversing: Risalire al codice macchina dell'applicazione per monitorare le eventuali istruzioni di chiamata e spostato tra registri dei vari valori Interrogando il puntatore base che punta ad un indirizzo di memoria variabile per poi recuperarne il suo indirizzo ed i relativi Offset di calcolo. Punto 2. Hack Manomettere il programma a ricevere determinate istruzioni da me chiamate tramite l'invio di particolari messaggi esadecimali. 0x78 potrebbe essere un 4, mentre 0x80 potrebbe essere "+" e così via. Ma non si trovano elementi del genere se non prima di aver fatto un reversing del codice sorgente. Condividi questo messaggio Link di questo messaggio Condividi su altri siti
MrSte 1110 Segnala messaggio Inviato July 20, 2015 Quando la noia prende il sopravento xDDD Tu devi far piangere Paint e Clippy è______é quella è convinta di sapere tutto quanto xD Scherzi a parte, Justino se un giorno farai un Emulatore per RPG Maker XP, VX, VX Ace sappi che prima o poi la Microsoft sarà tua XDDD 1 Thejuster reacted to this Condividi questo messaggio Link di questo messaggio Condividi su altri siti
•Miha• 211 Segnala messaggio Inviato July 20, 2015 Justino ma perché non fai una bella versione per Mac dei vari Rpg Maker? O: Tornerebbe comodissima ;w; 1 MrSte reacted to this Condividi questo messaggio Link di questo messaggio Condividi su altri siti
MrSte 1110 Segnala messaggio Inviato July 20, 2015 Confermo xD, cosi quando starò a scuola userò RPG Maker VX Ace in versione Mac, e poi appena viene la prof, salvo al volo e mi rimetto su Illustrator xDDD Condividi questo messaggio Link di questo messaggio Condividi su altri siti
Thejuster 945 Segnala messaggio Inviato July 20, 2015 A quello ancora non ci sono arrivato XD è abbastanza complicato creare un emulatore. Perché ogni sistema operativo ha un suo assembly dedicato. Anche su windows esempio tra x86 e x64 cambiano parecchie cose. I tipi che realizzano questi emulatori conoscono entrambi i sistemi e quindi per loro e abbastanza facile fare un porting da un os all'altro. Ma ci sono comunque emulatori diversi esempio Virtual Box che io lo uso spesso. Virtual Box consente di emulare un'altro sistema operativo. esempio avviare Windows 8 in Mac. ecc. ecc. così si può utilizzare tranquillamente rpgmaker da mac emulando windows. oppure ci sono altri software molto simili e gratuiti come esempio RpgBoss http://rpgboss.com/ Molto simile ad Rpgmaker 2003 con grafica del vx ace e con BS Laterale. Mi sembra poi che questi siano riusciti a fare qualcosa http://rpgosx.tumblr.com/ 1 MrSte reacted to this Condividi questo messaggio Link di questo messaggio Condividi su altri siti
Denzel 250 Segnala messaggio Inviato July 22, 2015 E' impossibile fare un porting di un programma di cui non si ha il codice sorgente, specialmente se questo è stato ideato per un'architettura specifica. Il problema non risiede soltanto nel set istruzioni del processore (conseguentemente la traduzione in assembly che avviene a basso livello), ma ci sono tematiche molto difficili da gestire come l'assegnazione della memoria di caching, il paging, gli standard delle librerie secondo cui è fatta la build del programma (es. POSIX) e potrei citare molto altro ma per brevità mi fermo. In molti casi l'emulazione fa più danni che altro, in quanto simulazione di un ambiente che non può essere per definizione uguale a quello concepito per l'esecuzione delle librerie\programmi necessari al funzionamento del software. I risultati sono mediocri, e la qualità discutibile. Per il discorso di hacking e la reverse engineering, so già cosa significa, studio queste cose da quando molti di quelli che sono qui giocavano con paint dopo scuola. 1 MrSte reacted to this Condividi questo messaggio Link di questo messaggio Condividi su altri siti
MrSte 1110 Segnala messaggio Inviato July 22, 2015 Effettivamente è vero, mi capita di emulare qualche gioco per il VX Ace su Android con l'emulatore Neko, e spesso da un sacco di problemi. Come l'ambiente per i tileset che sono un messi ad cazzum, alcuni script non vengono caricati e tante altre cose. Quel programma sta da quasi 2 anni alla 1.25 (credo) studio queste cose da quando molti di quelli che sono qui giocavano con paint dopo scuola. Mi mancano quei tempi, quando scrivevi il tuo nome con i brillantini xDDD Dannato Windows98 sappi che ti ho odiato dal profondo del mio cuore <3 Condividi questo messaggio Link di questo messaggio Condividi su altri siti
kaine 1857 Segnala messaggio Inviato July 22, 2015 Io ci gioco ancora con paint u__uComunque leggendo spesso vari topic sui forum esteri sulle patch di rpgmaker, questo problema qua è saltato fuori varie volte, e solitamente si aggira il problema convertendo in little endian. Condividi questo messaggio Link di questo messaggio Condividi su altri siti
Denzel 250 Segnala messaggio Inviato July 23, 2015 Certo, cambiando little endian\big endian si risolve il problema, però dobbiamo sempre tenere presente che convertire la codifica comporta un costo computazionale che a prima vista per singolo statement è irrisorio, ma applicata ricorsivamente produce effetti che non sono trascurabili per nulla. Condividi questo messaggio Link di questo messaggio Condividi su altri siti
Thejuster 945 Segnala messaggio Inviato July 23, 2015 Convertire grandi mammoni in piccoli indiani non e' certo la soluzione piu efficace Condividi questo messaggio Link di questo messaggio Condividi su altri siti