|
miccio.87 |
Esercizi dell'esame di lab (28 giugno) |
04-07-2011 16:01 |
|
|
miccio.87 |
.consigliere.
Registered: Oct 2007
Posts: 115 (0.02 al dì)
Location:
Corso:
Anno:
Time Online: 2 Days, 1:14:59 [...]
Status: Offline
Edit | Report | IP: Logged |
Esercizi dell'esame di lab (28 giugno)
ciao a tutti...ho aperto questo thread per cercare di capire insieme gli esercizi che c'erano da fare all'esame...
iniziamo con i primi (BIN)...sinceramente, tranne il primo, non sapevo proprio da dove partire...avreste idee?
poi c'era quello che bisognava scoprire la password ("hack**")...si trattava di un attacco con brute fore, giusto? io ho provato a generare un file con tutte le possibili password, ma non riesco a capire il comando che bisogna digitare da shell...
e invece sulle sqli? come li avete risolti?
Last edited by miccio.87 on 04-07-2011 at 16:13
|
04-07-2011 16:01 |
|
|
| |
|
miccio.87 |
BIN2...idee?
... |
05-07-2011 17:05 |
|
|
miccio.87 |
.consigliere.
Registered: Oct 2007
Posts: 115 (0.02 al dì)
Location:
Corso:
Anno:
Time Online: 2 Days, 1:14:59 [...]
Status: Offline
Edit | Report | IP: Logged |
BIN2...idee?
can you set my cookie with 0xDEADC0DE?
hint: the buffer is at address 0xffab48e8
the cookie is at address 0xffab48f8
send my your data:
|
05-07-2011 17:05 |
|
|
| |
|
miccio.87 |
possibile che nessuno è riuscito a svolgere gli e ... |
09-07-2011 16:19 |
|
|
miccio.87 |
.consigliere.
Registered: Oct 2007
Posts: 115 (0.02 al dì)
Location:
Corso:
Anno:
Time Online: 2 Days, 1:14:59 [...]
Status: Offline
Edit | Report | IP: Logged |
possibile che nessuno è riuscito a svolgere gli esercizi della categoria BIN durante l'esame? anche se non volete scrivere la soluzione potreste almeno indicare il modo per arrivarci?
|
09-07-2011 16:19 |
|
|
| |
|
pagabuc |
l'idea di fondo è che il C ti lascia fare ciò ch ... |
10-07-2011 16:47 |
|
|
pagabuc |
.simpatizzante.
Registered: Jun 2010
Posts: 10 (0.00 al dì)
Location:
Corso: Informatica F1X
Anno: 1
Time Online: 6:33:45 [...]
Status: Offline
Edit | Report | IP: Logged |
l'idea di fondo è che il C ti lascia fare ciò che vuoi.
lascio per scontato che tu abbia una minima idea di come funziona lo stack,call,ret.
Domanda:
se tu dichiari un char* buffer[5] ,e lo vuoi utilizzare per salvare(ad esempio con una strcpy) una parola presa in input,e l'utente ti inserisce una parola di 10 caratteri?
Il C "se ne frega",non fà controlli(es java ti solleva un buffer overflow).
Lui prende quei dieci caratteri e li inizia a scrivere indiscriminatamente in memoria,partendo dall'indirizzo buffer.
Ora distinguiamo due casi:
1)sei andato a sovrascrivere cose "importanti"(es. indirizzo di ritorno): quando verrà eseguita la ret dalla strcpy,carichi in eip l'indirizzo di ritorno corrotto dai 5 caratteri di overflow=>tipicamente segmentation fault.(o shell,se salti ad un shellcode! =) ).
2)sei andato a sovrascrivere tue zone di memoria(es variabli),che non causano "problemi".
prendi come esempio bin2.
lo stack cresce verso l'altro,e si presume che il tuo input sia salvato nel buffer,che inizia a ..8e8.Quindi:
0xffab48f8 - 0xffab48e8 = 16 in decimale.
Se inserisci 20 caratteri,gli ultimi 4 saranno scritti in 8f8,8f9....
quindi l'idea è:dare in input una stringa di 16 caratteri a caso,e attaccarci DEADC0DE,in modo che finisca nella posizione richiesta.
due piccoli problemi:
quando salvi D in memoria,non salvi D ma il suo esa.
l'architettura è little endian.
ti consiglio "The art of exploitation",spiega le cose moolto bene.
spero di averti dato almeno una vaga idea,ma è meglio se approfondisci sul libro!
buon divertimento.
|
10-07-2011 16:47 |
|
|
| |
|
miccio.87 |
ciao pagabuc, grazie per la risposta
... |
10-07-2011 19:16 |
|
|
miccio.87 |
.consigliere.
Registered: Oct 2007
Posts: 115 (0.02 al dì)
Location:
Corso:
Anno:
Time Online: 2 Days, 1:14:59 [...]
Status: Offline
Edit | Report | IP: Logged |
ciao pagabuc, grazie per la risposta
con l'idea ci sono, nel senso ho capito come funziona il buffer overflow...xò non riesco a capire cosa debba scrivere nel'esercizio...
ho provato con questo, ma dice che non è esatto:
python -c " print '\xaa\xaa\xbb\xbb\xcc\xcc\xdd\xdd\xed\x0c\xda\xed'
;"
|
10-07-2011 19:16 |
|
|
| |
|
pagabuc |
xed\x0c\xda\xed??
... |
11-07-2011 10:38 |
|
|
pagabuc |
.simpatizzante.
Registered: Jun 2010
Posts: 10 (0.00 al dì)
Location:
Corso: Informatica F1X
Anno: 1
Time Online: 6:33:45 [...]
Status: Offline
Edit | Report | IP: Logged |
xed\x0c\xda\xed??
sicuro? =)
con little endian memorizzi dal byte meno significativo al byte piu significativo,non è esattamente quello che stai facendo tè!
(http://en.wikipedia.org/wiki/Endianness)
la cosa migliore,è usare gdb,cosi vedi davvero cosa finisce in memoria.
spiegarlo è piu difficile che provare,comunque ti serviranno un paio di comandi(google ftw):
-disass (nel nostro caso dissass main)
-breakpoint (metti un breakpoint,magari prima della call strcpy).
-i classici run e continue.
-qualcosa del tipo: x/32x "indirizzodimemoria" (per vedere lo stato della memoria -> 32 byte dall'indirizzo che gli passi).
se vuoi un consiglio,dai un occhio al libro(consigliato da Alessandro e Aristide),e dedicagli anche un po di tempo,è molto istruttivo/divertente!
|
11-07-2011 10:38 |
|
|
| |
|
miccio.87 |
xde\xc0\xad\xde ?
... |
11-07-2011 16:16 |
|
|
miccio.87 |
.consigliere.
Registered: Oct 2007
Posts: 115 (0.02 al dì)
Location:
Corso:
Anno:
Time Online: 2 Days, 1:14:59 [...]
Status: Offline
Edit | Report | IP: Logged |
xde\xc0\xad\xde ?
mi sto rompendo la testa su questo esercizio...e invece per quanto riguarda gli esercizi di sqlinjection? anche lì ero riuscito a fare solo il primo :-(
|
11-07-2011 16:16 |
|
|
| |
|
pagabuc |
[url]http://it.wikipedia.org/wiki/Ordine_dei_byte# ... |
11-07-2011 18:02 |
|
|
| |
|
miccio.87 |
quindi non è sbagliato quello che ho scritto...
... |
11-07-2011 19:27 |
|
|
miccio.87 |
.consigliere.
Registered: Oct 2007
Posts: 115 (0.02 al dì)
Location:
Corso:
Anno:
Time Online: 2 Days, 1:14:59 [...]
Status: Offline
Edit | Report | IP: Logged |
quindi non è sbagliato quello che ho scritto...
es. 0x01234567 diventa: 0x67 0x45 0x23 0x01
nel nostro caso invece 0xDEADC0DE diventa: 0xDE 0xC0 0xAD 0xDE
sbaglio?
|
11-07-2011 19:27 |
|
|
| |
|
gennaro |
info esame.. |
12-07-2011 10:55 |
|
|
gennaro |
ANZIANOTTO
Registered: Apr 2004
Posts: 65 (0.01 al dì)
Location: milano
Corso: comunicazione digitale
Anno: secondo
Time Online: 1 Day, 16:27:37 [...]
Status: Offline
Edit | Report | IP: Logged |
info esame..
Ho scritto la stessa cosa in 3 thread diversi, nessuno si è ancora degnato di rispondermi....ci prova ancora una volta qua
volevo sapere a chi l'ha già fatto come è andato l'esame, se era difficile etc in particolare mi interessa sapere dell'ESAME DI LABORATORIO, per quello di teoria ho visto già in un altro thread che ci sono già abbastanza informazioni a riguardo
potete brevemente descrivere come era strutturato:
quanto tempo c'era a disposizione?
cosa si poteva utilizzare (il mitico google era a disposizione? )
quanti esercizi c'erano?
c'era un esercizio x ogni tipologia (Buffer overflow, sql, gpg, xxs etc) o solo alcuni?
insomma un po' in generale e le vostre impressioni sulla difficoltà in proporzione a quello ke ci hanno insegnato nelle lezioni di lab
grazie a tutti
|
12-07-2011 10:55 |
|
|
| |
|
pagabuc |
6 ore di prova,
... |
12-07-2011 20:01 |
|
|
pagabuc |
.simpatizzante.
Registered: Jun 2010
Posts: 10 (0.00 al dì)
Location:
Corso: Informatica F1X
Anno: 1
Time Online: 6:33:45 [...]
Status: Offline
Edit | Report | IP: Logged |
6 ore di prova,
si poteva navigare,
esercizi:
4 binari(buffer overflow)
2 su gpg
2 rete
4 sqli.
se lo vuoi passare bene ti devi sbattere,in 1 ora alla settimana non combini molto.
|
12-07-2011 20:01 |
|
|
| |
|
gennaro |
|
|
gennaro |
ANZIANOTTO
Registered: Apr 2004
Posts: 65 (0.01 al dì)
Location: milano
Corso: comunicazione digitale
Anno: secondo
Time Online: 1 Day, 16:27:37 [...]
Status: Offline
Edit | Report | IP: Logged |
ok
pagabuc mi sembra che tu te ne intenda molto:
tu personalmente come ti sei preparato all'esame?
cioè io ho seguito tutte le lezioni, sono andato a tutti i lab, ho studiato su slide, appunti che ho preso e libro...ma x esempio x quanto riguardo laboratorio (ke nn ho ancora dato) se mi fossi trovato davanti ad esercizi di buffer overflow, ke è un argomento ke è stato appena accennato a lezione e a lab secondo da quanto mi ricordo neanche....di sicuro nn sarei riuscito a farne neanche uno
tu hai studiato su qualche altro libro o hai qualche altro sito di riferimento ke può aiutare a passare l'esame?
|
13-07-2011 09:24 |
|
|
| |
|
pagabuc |
"The art of exploitation" di Erikson,consigliato d ... |
15-07-2011 15:28 |
|
|
pagabuc |
.simpatizzante.
Registered: Jun 2010
Posts: 10 (0.00 al dì)
Location:
Corso: Informatica F1X
Anno: 1
Time Online: 6:33:45 [...]
Status: Offline
Edit | Report | IP: Logged |
"The art of exploitation" di Erikson,consigliato da Alessandro e Aristide.
chi cerca trova.
per l'esame basta il primo paragrafo sui bof,dopo le cose diventano moolto pro..ma anche piu divertenti!
|
15-07-2011 15:28 |
|
|
| |
|
All times are GMT. The time now is 10:19. |
|
|
|
|
|
|
|
| |
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|