J'ai fini par utiliser un deuxième Mac pour faire une analyse avec la machine douteuse démarrée en mode cible.
Ma procédure de numérisation réelle était
0) (fait avant d'utiliser le mode cible) mettre à jour le système et les applications sur les deux machines aux versions actuelles
1) comparer les fichiers sur les deux machines en utilisant ce script:
DIRS = (Applications Library mach_kernel bin "private/etc" sbin usr);
# en laissant de côté / opt car il semble contenir uniquement des éléments de MacPorts
pour répertoire dans $ {DIRS [@]}; faire
# diff: récursif, il suffit de savoir si les fichiers diffèrent
diff -r -q --speed-large-files "$ 1 / $ répertoire" "$ 2 / $ répertoire";
fait;
1.1) J'ai utilisé un éditeur de texte puissant (vim) pour donner un sens à la sortie. Ma stratégie de base était simplement d'organiser les lignes de sortie par les deux premiers niveaux de la structure du répertoire en utilisant le pliage de code basé sur l'indentation. Cette technique nécessite une certaine connaissance informatique générale et spécifique à POSIX, en particulier pour différencier les différences "correctes" des différences potentiellement dangereuses.
2) J'ai exécuté chkrootkit
en utilisant la commande
sudo ./chkrootkit -q -r /Volumes/system/
2.1) chkrootkit
a donné la sortie suivante. Ces indications semblent être dues à l'exécution de l'analyse sur un disque cible et / ou aux différences entre les différents systèmes d'exploitation pris en charge par chkrootkit
.
erreur: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strings: impossible de mapper le fichier: /Volumes/system/ (argument non valide)
erreur: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strings: impossible de mapper le fichier: /Volumes/system/ (argument non valide)
non testé
non testé
impossible d'ouvrir le fichier wtmp /Volumes/system/wtmp
non testé: fichier wtmp et/ou lastlog introuvable(s)
2.2) Pour que chkrootkit
compile, j'ai dû décommenter une ligne dans le Makefile
. C'est clairement indiqué dans le Makefile
. Voir ici pour plus d'informations.
RÉSUMÉ
Je pense que cette analyse a été efficace (étant donné l'état propre du système d'analyse). Cependant, cette méthode présente quelques inconvénients:
- Elle suppose que l'ordinateur d'analyse est propre
- Elle nécessite un autre Mac (évidemment)
- Il peut être extrêmement difficile de trouver un câble FireWire à 9 broches
Si vous n'avez pas de Mac supplémentaire disponible, voici quelques alternatives à cette approche:
-
Il est possible d'installer un système d'exploitation propre d'OSX sur un lecteur USB. Pour ce faire, vous démarrez la machine en maintenant enfoncées les touches commande-option-R pour effectuer une récupération sur Internet. Cela contourne le contenu du disque et utilise le code du firmware pour installer OSX à partir des serveurs d'Apple. Apparemment, vous pouvez simplement brancher un lecteur USB et le choisir comme cible d'installation; ensuite, vous pouvez démarrer la machine à partir du lecteur USB et exécuter des analyses sur le disque système. L'inconvénient ici est qu'il s'agit d'un téléchargement de > 5 Go, donc vous feriez mieux d'avoir une connexion Internet rapide (ou de la patience).
-
J'aurais également pu retirer le disque de la machine et le placer dans un boîtier de disque dur. Les avantages ici sont que je n'aurais pas eu besoin d'utiliser un Mac pour l'analyser, et que je n'aurais pas eu à trouver un câble FireWire à 9 broches. Bien sûr, si je n'avais pas utilisé un Mac pour l'analyser, je n'aurais pas pu utiliser ma première méthode d'analyse (le diff
).