Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Didattica > Didattica in generale > Archivio > Progetto della sicurezza di rete
 
hwk3 -- dove le trovo le corrispondenze?
Clicca QUI per vedere il messaggio nel forum
axj
Potrebbe sembrare un dubbio stupido, ma mentre pensavo al secondo esercizio del hwk, e eleaboravo il parser, nonostante sembrasse andare tutto bene, mi sono ritrovato davanti all'amletico dubbio.... una volta che l'ho riconosciuto il token.... con quale codice lo converto l'assembly.....

Devo forse utilizzare qualche tool come hexdump.....?... e il parser deve essere universale, o riferito solamente all'altro esercizio.....

Grazie anticipatamnete, nella speranza di riuscire ad ultimare il tutto per domenica

jeppojeps
"scrivere un programma C che genera in output il codice binario del programma relativo allo shellcode, usando il formato esadecimale"

Leggendo il testo, io ho interpretato che si doveva prendere in input l'hex e trasformarlo in binario, e non di prendere in input l'assembly


....quindi ho agito così:

objdump -d shellcode.o

ti trovi un output con le istruzioni in hex dello shellcode, io ho creato un file che contiene i dati hex e la descrizione del comando assembly.

con fgets() leggo il file riga per riga e poi con strtok separo e converto l'hex in binario....

Tu pensi che si debba convertire direttamente l'assembly in binario?

ddrandom
jeppojeps anche io ho interpretato l'esercizio come te, ma non serve convertire in binario, il testo dice "in forma esadecimale".

Una cosa come hai fatto a mettere l'output di objdump in un file?

axj
la domanda vera non è come ha fatto a metterlo in un file, e come ha fatto a farlo in C....

Se potessi usare la shell sarebbe tutto più semplice:
objdump -d programma.o >> filehex

Ma se faccio così dove lo utilizzo il C?

jeppojeps
Io mi sono arrangiato chiamando la execve e facendo la redirezione dell'output di objdump in un file...certo magari con più tempo si poteva fare di meglio....

Golcondese
Il prof. a lezione ha detto che va fatto un piccolo assembler quindi è giusta l'interpretazione di axj.

Nvideo
concordo pienamente: bisogna implementare un piccolo assemblatore.
Se volete potete consultare la terza parte della videolezione, dal minuto 36.
Ciao ciao

axj
non per essere critico, ma penso che non ci riuscirò per il fine settimana.... le mie conoscienze di parsing si fermano a tantom tanto, tanto tempo orsono...... io proverò fin dove riesco, alla peggio mi darà un votaccio.... non sarà ne il primo ne l'ultimo. Devo colmare alcune mie lacune, prima di poter fare in scioletezza una cosa di questo tipo. Comunque faccio i miei complimenti a chi è riuscito a fare il tutto nell'arco di una settimana. Io sinceramente non credo ce la farò.

Riguarderei volentieri le video lezioni, ma motivi di estrema burocrazia me lo impediscono.

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate