Ho finito per utilizzare un secondo Mac per eseguire una scansione con la macchina discutibile avviata in modalità disco di destinazione .
La mia procedura di scansione effettiva era
0) (fatto prima di utilizzare la modalità disco di destinazione) aggiorna il sistema e le app su entrambe le macchine alle versioni correnti
1) confronta i file su entrambe le macchine utilizzando questo script:
DIRS=(Applications Library mach_kernel bin "private/etc" sbin usr);
# leaving out /opt as it seems to just contain MacPorts stuff
for dir in "${DIRS[@]}"; do
# diff: recursive, just output whether files differ
diff -r -q --speed-large-files "$1/$dir" "$2/$dir";
done;
1.1) Ho usato un editor di testo potente (vim) per dare un senso all'output. La mia strategia di base era quella di organizzare le righe di output in base al primo paio di livelli della struttura delle directory utilizzando la piegatura del codice basata su indent. Questa tecnica richiede conoscenze informatiche generali e specifiche di POSIX-ish, in particolare per differenziare le differenze "giuste" dalle differenze potenzialmente pericolose.
2) Ho eseguito chkrootkit
utilizzando il comando
sudo ./chkrootkit -q -r /Volumes/system/
2.1) chkrootkit
ha prodotto il seguente output. Queste indicazioni sembrano essere dovute all'esecuzione della scansione su un disco di destinazione e / oa causa di differenze tra i vari sistemi operativi supportati da chkrootkit
.
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strings: can't map file: /Volumes/system/ (Invalid argument)
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strings: can't map file: /Volumes/system/ (Invalid argument)
not tested
not tested
unable to open wtmp-file /Volumes/system/wtmp
not tested: not found wtmp and/or lastlog file
2.2) Per ottenere chkrootkit
da compilare, ho dovuto decommentare una riga in Makefile
. È chiaramente indicato in Makefile
. Vedi qui per ulteriori informazioni.
SOMMARIO
Mi sento abbastanza sicuro che si trattava di una scansione efficace (dato lo stato pulito del sistema di scansione). Tuttavia, ci sono alcuni aspetti negativi di questo metodo:
- Presume che il computer di scansione sia pulito
- Richiede un altro Mac (ovviamente)
- Può essere dolorosamente difficile trovare un cavo Firewire da 9 pin a 9 pin
Nel caso in cui non si disponga di un Mac aggiuntivo, ecco un paio di alternative a questo approccio:
-
È possibile installare una installazione pulita di OSX su un'unità USB. Per fare ciò, si avvia la macchina tenendo premuto command-option-R per fare un ripristino Internet . Ciò ignora il contenuto del disco e utilizza il codice del firmware per installare OSX dai server Apple. Apparentemente puoi semplicemente collegare un drive USB e scegliere questo come target di installazione; successivamente è possibile avviare la macchina dall'unità USB ed eseguire scansioni sull'unità di sistema. Il rovescio della medaglia è che questo è un download di > 5GB, quindi è meglio avere una connessione Internet veloce (o un po 'di pazienza).
-
Avrei anche potuto estrarre l'unità dalla macchina e inserirla in una custodia per disco rigido. I vantaggi qui sono che non avrei dovuto usare un Mac per scansionarlo e che non avrei dovuto trovare un cavo Firewire da 9 pin a 9 pin. Naturalmente, se non avessi usato un Mac per scansionarlo, non sarei stato in grado di usare il mio primo metodo di scansione (il diff
).