I file Tema di Windows (aero.msstyles) possono essere caricati di spyware nelle loro risorse, in particolare negli script dell'interfaccia utente

2

Versione breve: argomento

Versione dettagliata:

Voglio utilizzare uno specifico tema di terze parti per Windows. Sto già usando una soluzione open source che ho compilato per disabilitare la restrizione di Window su Themes.

In passato, quando si utilizzavano mod correlate a temi di terze parti che vengono con DLL (ad esempio authui.dll per l'interfaccia utente ui o imageres.dll per le icone di sistema di modding), evito di usare DLL sconosciute semplicemente copiando le DLL sconosciute risorse correlate ai temi (come Bitmap, gruppi di icone o script dell'interfaccia utente) alla sua controparte vergine MS Dll. Chiamo questo innesto di risorse, dove le risorse vengono cambiate ma gli elementi eseguibili di DLL o ex sono lasciati in pace.

Tornando al tema che voglio installare, ho usato sha256 hashing per determinare che solo aero.msstyles, che è anche modificabile da resource hacker. Così ho fatto la stessa cosa che faccio di solito e ho trasferito le risorse dal tema di terze parti agli aero.msstyles di Windows. Il problema è che mi sono imbattuto in un tipo di risorsa che non sono in grado di leggere o conoscere il contenuto di. Si chiama VARIANTE. Da alcuni esperimenti effettuati su una VM, sembra essere una sorta di script UI binario che l'hacker di risorse non è in grado di decompilare. Di solito mi piace poter leggere qualsiasi script UI che trasferisco ma non riesco a farlo con questo.

Ciò costituirebbe un rischio reale per la sicurezza? Gli script UI possono essere caricati con un qualche tipo di exploit? Mi sembra improbabile dal momento che la funzione di un file di tema (msstyle) è di coordinare l'aspetto dell'interfaccia utente del sistema, ma non ne so abbastanza del funzionamento interno dell'intero sistema tematico per essere sicuro. Ho pensato di ottenere un altro punto di vista prima di prendere il tema fuori dalla Macchina Virtuale.

    
posta thebunnyrules 05.05.2017 - 23:24
fonte

1 risposta

3

Ho usato vBinDiff per confrontare il codice esadecimale del binario VARIANT / NORMAL modificato con quello del tema originale. È inoltre possibile copiare i binhe e salvarli in due file di testo che si desidera confrontare con WinMerge.

vBinDiff e WinMerge evidenzieranno quali modifiche e quali aggiunte / sottostrutture sono state apportate ai binari, visualizzandole fianco a fianco. Ho letto le differenze, il 90% di esse non erano più grandi di 4 ottali (4 byte), in genere quello che ci si aspetterebbe di vedere quando si modificano i colori usando un editor esadecimale. La più grande divergenza è stata aggiunta a 32 byte di codice.

Ci sono due possibili spiegazioni per una tale aggiunta: (1) l'autore ha aggiunto risorse di immagini extra e ha aggiunto le voci necessarie per farvi riferimento, (2) c'è una sorta di codice indesiderato che è stato inserito.

Per affrontare la possibilità di 2, ho fatto una ricerca per vedere come può essere ottenuto un piccolo codice trojan. Quanto è probabile che un trojan sia stato inserito in 32 byte se sono stati compilati gli script dell'interfaccia utente? Ho trovato alcune menzioni di un vecchio virus 17 byte dell'era DOS chiamato triviale che ho ignorato subito perché sarebbe diventato evidente molto rapidamente, dato il suo comportamento noto. Per quanto riguarda i trojan a pieno titolo con capacità di backdoor e download, il più piccolo che ho trovato è stato 20kb (trojan tinba), scoperto nel 2012. C'è anche Catchy32 che è ancora considerato un Trojan ma con funzionalità più semplici e molto specifiche e quello di circa 580 byte ( reference ). Sulla base di queste informazioni, ho stabilito che è altamente improbabile (se non impossibile) inserire il codice in 32 byte di codice e stabilire che la risorsa in questione è pulita.

Intendiamoci, questo non risponde alla domanda che ho posto, ma si avvicina molto. Ho pensato di condividerlo.

    
risposta data 08.05.2017 - 04:21
fonte

Leggi altre domande sui tag