
Suivi de l'historique des événements USB sous GNU/Linux
usbrip (hérité de « USB Ripper », et non de « USB R.I.P. ») est un outil de forensique simple doté d'une interface en ligne de commande qui vous permet de suivre les artefacts de périphériques USB (c'est-à-dire l'historique des événements USB) sur des machines Linux.
Table des matières :
usbrip est un petit logiciel qui analyse les données de journaux Linux : la sortie de journalctl ou le contenu des fichiers /var/log/syslog* (ou /var/log/messages*). Sur la base des données collectées, usbrip peut construire des tableaux d'historique des événements USB avec les colonnes suivantes :
De plus, il peut également :
-s* Créer des stockages protégés (archives 7-Zip) pour sauvegarder automatiquement et accumuler les événements USB à l'aide du planificateur cron.Méthode 1. Installer avec pip :
~$ sudo -H python3 -m pip install -U usbrip
~$ usbrip -h
Méthode 2. Installer la version de pointe avec install.sh (recommandé, fonctionnalités supplémentaires disponibles) :
~$ sudo apt install python3-venv p7zip-full -y
~$ git clone https://github.com/snovvcrash/usbrip && cd usbrip
~/usbrip$ sudo -H installers/install.sh
~/usbrip$ cd
~$ usbrip -h

Docker (*DÉMO UNIQUEMENT !*)
~$ docker run --rm -it snovvcrash/usbrip
usbrip prend en charge deux types d'horodatages à analyser dans les fichiers journaux système :
"%b %d %H:%M:%S", ex. "Jan 1 00:00:00"). Ce type d'horodatage ne fournit pas l'information sur l'année."%Y-%m-%dT%H:%M:%S.%f%z", ex. "1970-01-01T00:00:00.000000-00:00").Si vous avez journalctl installé, il n'y a rien à craindre car il peut convertir les horodatages à la volée. Sinon, la structure syslog souhaitée peut être obtenue en définissant le format RSYSLOG_FileFormat dans la configuration de rsyslog.
/etc/rsyslog.conf :$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
.conf personnalisé pour usbrip :~$ echo '$ActionFileDefaultTemplate RSYSLOG_FileFormat' | sudo tee /etc/rsyslog.d/usbrip.conf
~$ sudo rm -f /var/log/syslog* /var/log/messages*
~$ sudo systemctl restart rsyslog
Premièrement, usbrip vérifiera s'il est possible de vider les événements système en utilisant journalctl comme option la plus portable. Si ce n'est pas le cas, il recherchera et analysera les fichiers journaux système /var/log/syslog* ou /var/log/messages*.
storage)Pour simplifier, convenons que toutes les commandes où le préfixe ~/usbrip$ apparaît sont exécutées dans le répertoire ~/usbrip créé à la suite d'un git clone :
~$ git clone https://github.com/snovvcrash/usbrip
~$ cd usbrip
~/usbrip$ pwd
install.shEn plus de l'installation avec pip, usbrip peut également être installé avec le script personnalisé installers/install.sh.
Lors de l'utilisation de install.sh, certaines fonctionnalités supplémentaires deviennent disponibles :
storage – définir une tâche cron pour sauvegarder les événements USB selon un planning (un exemple de tâche cron se trouve dans usbrip/cron/usbrip.cron).⚠️ Avertissement : si vous utilisez la planification cron, vous devez configurer le crontab avec sudo crontab -e afin de forcer l'exécution du sous-module storage update en tant que root. Les mots de passe de stockage sont conservés dans /var/opt/usbrip/usbrip.ini et sont accessibles uniquement par root par défaut.
Pour installer usbrip avec install.sh, utilisez :
~/usbrip$ sudo -H installers/install.sh [-l/--local] [-s/--storages]
~/usbrip$ cd
~$ usbrip -h
-l est activé, les dépendances Python sont résolues à partir de paquets .tar locaux (répertoire 3rdPartyTools) au lieu de PyPI.-s est activé, non seulement le projet usbrip est installé, mais aussi la liste des périphériques USB de confiance, les stockages d'historique et de violations sont créés.Une fois l'installation terminée, vous pouvez supprimer le répertoire ~/usbrip.
Lorsqu'il est installé avec install.sh, usbrip utilise les chemins suivants :