Debian : Troller le RSSI avec Trolldeb

Dans le cadre de mon travail j’ai accès à des données sensibles. Il arrive que le RSSI (Responsable de la Sécurité des Systèmes d’Information) fasse un export de tous les paquets installé sur les postes Linux pour vérifier que rien ne compromets la sécurité. Il est possible de s’amuser un peu avec ça.

Comme mon ordinateur est sous Debian, je vais créer mon propre paquet Debian avec un nom qui devrait faire bondir le RSSI.

Le paquet va s’appeler troll.deb. Je créé d’abord son arborescence du projet :

mkdir -p trolldeb/DEBIAN

Ensuite je créé le fichier trolldeb/DEBIAN/control, qui contient toutes les métadonnées du paquet. Son contenu est :

Package: bitcoin-bittorent-counterstrike-dota-crack-diablo-fortnite-hack-keygen-keylogger-leagoflegend-lol-megaupload-monero-nocd-nordvpn-piratebay-popcorntime-starcraft-steam-tartiflette-tor-youporn
Version: 0.0
Priority: optional
Architecture: all
Maintainer: PALC <contact@palc.fr>
Description: Salut Sébastien, comment ça va ?

J’ai mis le minimum vital pour que ça compile sans erreur. La variable Package correspond au nom qu’aura le paquet une fois installé. À ce niveau je me suis lâché. La variable Description apparaît à côté du nom du paquet quand on les listes. (question bonus : devinez comment s’appelle le RSSI)

Il ne reste plus qu’à créer le paquet :

$ dpkg-deb --build trolldeb
dpkg-deb: building package 'bitcoin-bittorent-counterstrike-dota-crack-diablo-fortnite-hack-keygen-keylogger-leagoflegend-lol-megaupload-monero-nocd-nordvpn-piratebay-popcorntime-starcraft-steam-tartiflette-tor-youporn' in 'trolldeb.deb'.

Et ensuite on l’installe :

$ sudo dpkg -i trolldeb.deb
Sélection du paquet bitcoin-bittorent-counterstrike-dota-crack-diablo-fortnite-hack-keygen-keylogger-leagoflegend-lol-megaupload-monero-nocd-nordvpn-piratebay-popcorntime-starcraft-steam-tartiflette-tor-youporn précédemment désélectionné.
(Lecture de la base de données... 269570 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de trolldeb.deb ...
Dépaquetage de bitcoin-bittorent-counterstrike-dota-crack-diablo-fortnite-hack-keygen-keylogger-leagoflegend-lol-megaupload-monero-nocd-nordvpn-piratebay-popcorntime-starcraft-steam-tartiflette-tor-youporn (0.0) ...
Paramétrage de bitcoin-bittorent-counterstrike-dota-crack-diablo-fortnite-hack-keygen-keylogger-leagoflegend-lol-megaupload-monero-nocd-nordvpn-piratebay-popcorntime-starcraft-steam-tartiflette-tor-youporn (0.0) ...

Et voilà le travail ! Un beau paquet qui devrait faire bondir le RSSI :

$ dpkg -l | grep bitcoin
ii bitcoin-bittorent-counterstrike-dota-crack-diablo-fortnite-hack-keygen-keylogger-leagoflegend-lol-megaupload-monero-nocd-nordvpn-piratebay-popcorntime-starcraft-steam-tartiflette-tor-youporn 0.0 all Salut Sébastien, comment ça va ?

 

 

Linux : monter une image disque ISO contenant plusieurs partitions

Dans le cadre de mon travail j’ai dû monter une image ISO contenant plusieurs partitions. Il s’agissait de l’image disque d’une VM s’étant fait pirater, sur laquelle je devais faire des investigations. Si on fait un bête mount, ça ne marche pas :

$ sudo mount image.iso /mnt/
mount: /mnt: mauvais type de système de fichiers, option erronée, superbloc erroné sur /dev/loop0, page de code ou programme auxiliaire manquant, ou autre erreur.

Il faut procéder autrement. D’abord j’utilise fdisk pour récupérer les informations de base sur l’image ISO.

$ sudo fdisk image.iso

J’utilise la commande p pour avoir les informations :

Commande (m pour l'aide) : p
Disque image.iso : 50 GiB, 53687091200 octets, 104857600 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xe483a6f1

Périphérique Amorçage   Début       Fin  Secteurs Taille Id Type
image.iso1               2048   3905535   3903488   1,9G 82 partition d'échange Linux / Solaris
image.iso2   *        3905536 104857599 100952064  48,1G 83 Linux

Ici je vous qu’il y a deux partitions. La première c’est du swap, elle ne m’intéresse pas. La deuxième est la partition système, c’est celle là que je veux monter. J’ai besoin de récupérer trois informations : Taille de secteur, Début et Id. Dans mon cas, c’est respectivement 512, 3905536 et 83.

Id est un code indiquant le type formatage de la partition. Dans mon cas je sais ça correspond ext4, mais si on ne le sait pas, il suffit de faire la commande l pour lister les types existants :

Commande (m pour l'aide) : l

 0  Vide            24  NEC DOS         81  Minix / Linux a bf  Solaris        
 1  FAT12           27  TFS WinRE masqu 82  partition d'éch c1  DRDOS/sec (FAT-
 2  root XENIX      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  usr XENIX       3c  récupération Pa 84  OS/2 cachée ou  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux étendue   c7  Syrinx         
 5  Étendue         41  PPC PReP Boot   86  NTFS volume set da  Données non-FS 
 6  FAT16           42  SFS             87  NTFS volume set db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux plaintext de  Dell Utility   
 8  AIX             4e  2e partie QNX4. 8e  LVM Linux       df  BootIt         
 9  Amorçable AIX   4f  3e partie QNX4. 93  Amoeba          e1  DOS access     
 a  Gestionnaire d' 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/W        
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor      
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad hi ea  Alignement Rufu
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         eb  BeOS fs        
 f  Étendue W95 (LB 54  OnTrackDM6      a6  OpenBSD         ee  GPT            
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        ef  EFI (FAT-12/16/
11  FAT12 masquée   56  Golden Bow      a8  UFS Darwin      f0  Linux/PA-RISC b
12  Compaq diagnost 5c  Priam Edisk     a9  NetBSD          f1  SpeedStor      
14  FAT16 masquée < 61  SpeedStor       ab  Amorçage Darwin f4  SpeedStor      
16  FAT16 masquée   63  GNU HURD ou Sys af  HFS / HFS+      f2  DOS secondaire 
17  HPFS/NTFS masqu 64  Novell Netware  b7  BSDI fs         fb  VMware VMFS    
18  AST SmartSleep  65  Novell Netware  b8  partition d'éch fc  VMware VMKCORE 
1b  W95 FAT32 masqu 70  DiskSecure Mult bb  Boot Wizard mas fd  RAID Linux auto
1c  W95 FAT32 masqu 75  PC/IX           bc  Acronis FAT32 L fe  LANstep        
1e  W95 FAT16 masqu 80  Minix ancienne  be  Amorçage Solari ff  BBT

Ensuite on peut quitter fdisk avec q :

Commande (m pour l'aide) : q

Maintenant il ne reste plus qu’à utiliser mount pour monter l’image ISO, mais en spécifiant l’offset de début de la partition qui nous intéresse. Ça se fait en multipliant les valeurs Taille de secteur et Début récupérées plus tôt. Dans notre cas : 3905536 × 512 = 1999634432

sudo mount -t ext4 -o loop,offset=1999634432 image.iso /mnt/