2017-05-18 18:48:17 +02:00
|
|
|
# File di esempio; copialo e cambialo
|
|
|
|
title: Pacioccare con gli ELFi
|
|
|
|
text: |
|
|
|
|
|
|
|
|
L'idea è quella di ripercorrere le tecniche per patchare un file in formato
|
|
|
|
ELF che negli anni (quindi è una cosa anche un po' retro e storiografica
|
|
|
|
volendo) virus writer, backdooratori di professione e hobbisty hanno
|
|
|
|
escogitato (tipo backdoor factory o quello che fa, o meglio forse non fa,
|
|
|
|
msfvenon con l'opzione `-x` e `-k` nella versione framework, quella pro non so
|
|
|
|
cosa faccia, per capirsi ).
|
|
|
|
|
|
|
|
L'elenco non so se completo di quello che io ho letto in giro si potrebbe fare per celarsi all'interno di
|
|
|
|
un file in formato ELF, ripreso da un libello molto figo uscito l'anno scorso, _Linux binary analysis_
|
2017-05-20 23:39:07 +02:00
|
|
|
|
|
|
|
* silvio cesare .text infection
|
|
|
|
* reverse .text infection
|
|
|
|
* .data infection
|
|
|
|
* pt_note to pt_load infection
|
|
|
|
|
|
|
|
Poi c'e' il problema di come deviare il flusso di esecuzione sul codice
|
|
|
|
introdotto e tornare indietro
|
|
|
|
|
|
|
|
modificare l'entry point, plt, got .ctors, .dtors, altro
|
|
|
|
|
|
|
|
Poi se volete ci sarebbe la questione di come infettare un processo gia'
|
|
|
|
caricato in memoria...
|
|
|
|
|
|
|
|
Insomma queste cose qui
|
|
|
|
|
|
|
|
Tutta sta roba andrebbe fatta usando il linguaggio che volete, aggeggiando un
|
|
|
|
file elf, forkando o threaddando (o anche no se complica troppo, pero' allora
|
|
|
|
il codice deve fare cose che non implichino che poi l'eseguibile originale non
|
|
|
|
parta) e preservandone la funzionalita'. La cosa sarebbe su piattaforme intel
|
|
|
|
amiche a 64 bit. Quindi magari si tratta di prendere cose che funzionavano
|
|
|
|
sulle piattaforme a 32 bit e rifarle funzionare per quelle a 64, oppure di
|
|
|
|
mostrare come funziona il codice di robe che gia' lo fanno, cmq l'analisi del
|
|
|
|
codice e' interessante, se non si limita a "ho trovato questo tool che lo
|
|
|
|
lancio e lui fa cose, pero' non so bene come".
|
|
|
|
Poi sabato, non troppo tardi che a me viene sonno, si vede che e' venuto
|
|
|
|
fuori, all'interno di una chiaccherata in cui si spiegano un po' ste cose, i
|
|
|
|
principi, il codice, che si e' riusciti a fare, cosa no, no stress, no ansia
|
|
|
|
da prestazione. Io mi accollo di guidare la discussione e le spiegazioni
|
|
|
|
teoriche per quanto mi riesce e di far vedere che ho partorito. L'idea e'
|
|
|
|
quella di capire meglio queste robe su linux, per essere piu' consapevoli e
|
|
|
|
credibili quando ne parliamo, perche' le nostre analisi siano approfondite e
|
|
|
|
quindi anche le nostre idee a riguardo abbiano piu' peso.
|
2017-05-18 18:48:17 +02:00
|
|
|
# Se ancora non è stata assegnata una stanza al talk, lasciala vuota. Non usare un valore tipo "qualunque" o
|
|
|
|
# cose del genere, che ci si incasina tutto
|
|
|
|
#room: antani
|
2017-06-03 00:09:25 +02:00
|
|
|
room: A
|
2017-05-18 18:48:17 +02:00
|
|
|
# Ci vanno le virgolette intorno! altrimenti 17.30 viene interpretato come un numero decimale
|
2017-05-23 16:56:24 +02:00
|
|
|
duration: 60
|
2017-06-03 00:09:25 +02:00
|
|
|
time: "21.00"
|
|
|
|
day: 0
|
2017-05-23 16:56:24 +02:00
|
|
|
#tags:
|
|
|
|
# - tante
|
|
|
|
# - cose
|
|
|
|
# - belle
|
2017-05-18 18:48:17 +02:00
|
|
|
# Devono essere dei link validi!
|
2017-05-23 16:56:24 +02:00
|
|
|
#links:
|
2017-05-18 18:48:17 +02:00
|
|
|
# mail dovrebbe contenere un link alla mail con cui il talk è stato proposto
|
|
|
|
# così si può sapere chi contattare e se c'è stata una discussione
|
|
|
|
mail: http://lists.autistici.org/message/20170518.153524.53e16c3e.en.html
|
|
|
|
contacts:
|
|
|
|
- ginox
|
|
|
|
|
|
|
|
# Devi usare UTF-8, non t'inventare scuse, sappiamo ndo abiti
|
|
|
|
# vim: set fileencoding=utf-8:
|