web-dev-qa-db-fra.com

Comment rechercher un fichier inconnu de 1,5 Go nommé "Sudo" dans mon répertoire personnel Linux?

J'ai trouvé un fichier dans mon répertoire personnel nommé "Sudo". Il fait 1,5 Go et je ne sais pas d'où il vient.

-rw-r--r--  1 foo foo 1598296064 Aug  9 11:22 Sudo

Quelqu'un a-t-il des conseils sur la façon de poursuivre l'enquête sur ce dossier? Je crains que mon ordinateur ne soit compromis, mais je veux toujours savoir à quoi je fais face.

Voici ce que j'ai fait jusqu'à présent:

  • Fonctionnement file Sudo affiche "Sudo: données".
  • Fonctionnement strings Sudo a montré une grande quantité de données aléatoires.
  • Fonctionnement which Sudo pointe vers le fichier Sudo dans /usr/bin/Sudo

S'il s'agit d'un binaire exécutable, je prévois de l'exécuter, mais je pourrais le transférer sur une machine virtuelle avant de le faire. J'ai une connaissance limitée de gdb donc je peux au moins l'inspecter.

67
Karlo Licudine

Vous l'avez probablement fait par accident avec une commande Shell bâclée. J'ai fait des trucs comme ça moi-même. En conséquence, il est probablement rempli de données inoffensives. Voici quelques raisons pour lesquelles je suppose que c'est pas malveillant:

  1. 1,5 Go serait un virus extrêmement volumineux. Étant donné que les virus sont généralement transmis sur un réseau, plus c'est petit, mieux c'est.
  2. Ce n'est pas exécutable.
  3. Les logiciels malveillants cachent généralement bien mieux que cela.
  4. file pense que ce n'est qu'un fichier de données.

Bien sûr, rien de tout cela ne prouve qu'il n'est pas malveillant (alias les virus ne sont pas ont pour être petits, ce n'est pas parce qu'il n'est pas exécutable qu'il ne pourrait pas faire partie d'une charge utile malveillante) , et parfois ils ne prennent pas la peine de se cacher), mais je soupçonne que cela est inoffensif. C'est probablement trop vieux, mais je verrais si votre historique de bash va au jour/heure en question.

Je me rends compte que je ne vous ai donné aucune indication sur la façon d'analyser le fichier, mais vous avez déjà frappé les principaux assistants (file et strings), et ils n'ont pas aidé! Un fichier rempli de données aléatoires provenant d'une commande erronée expliquerait ce que vous voyez, et a probablement plus de chances de générer un fichier nommé Sudo dans votre répertoire personnel que les logiciels malveillants, IMO.

144
Conor Mancone

Quelqu'un a-t-il des conseils sur la façon de poursuivre l'enquête sur ce dossier?

Puisque file ne reconnaît pas les "données" comme un exécutable, il sera difficile d'essayer d'analyser dynamiquement (en l'exécutant) à moins que vous ne trouviez le point d'entrée approprié.

Un autre outil Linux standard que vous pourriez essayer est:

stat

Cela vous donnera un peu plus d'informations sur les métadonnées que ce que vous pouvez voir avec juste la liste des répertoires.

Un autre outil que vous pourriez essayer est:

binwalk

qui peut fournir une analyse des fichiers binaires comme les images du firmware. Par exemple, si le fichier binaire contient un système de fichiers, binwalk peut le reconnaître.

Encore un autre outil disponible gratuitement sur Linux est "The Sleuth Kit". Si le fichier binaire se trouve être une image disque brute ou des données de système de fichiers, vous pouvez essayer de le traiter avec "The Sleuth Kit".

Vous pouvez également essayer de déposer le binaire dans IDA (le " Interactive Disassembler " de Hexrays - une version freeware est disponible) pour voir si IDA peut le comprendre. Mais si file ne le reconnaît pas, je n'espère pas trop que l'IDA le fera.

25
hft

Je commencerais par history | grep Sudo à partir du terminal et regardez les commandes Sudo les plus récentes pour voir si certaines sont malformées.

  • C'est votre répertoire personnel.
  • Vous n'avez pas dit qu'il avait une propriété spéciale, donc je suppose que vous en êtes le propriétaire.
  • C'est presque certainement une commande Shell bâclée, donc vous l'avez probablement faite à partir du terminal.
  • Cela pourrait être quelque chose de créé par un script mais il est assez rare de mettre des commandes "Sudo" dans un script.
  • Il se montre ouvertement et évidemment, donc vous l'auriez probablement remarqué si vous n'aviez pas créé récemment.
25
Dark Matter

Je pense que les autres réponses couvrent déjà presque tout (et ont déjà résolu le mystère). Une autre chose à essayer si vous n'êtes toujours pas sûr de la supprimer est de faire un test de cri. Vous n'obtiendrez pas nécessairement une résolution quant à la source du fichier, mais vous pouvez être certain qu'il est sûr de le supprimer.

Renommez le fichier en quelque chose d'autre et voyez si quelque chose se passe. Certaines choses à surveiller sont

  1. Le fichier est recréé. Cela signifie que quelque chose de récent l'a fait et il serait peut-être plus facile de découvrir quoi grâce à l'historique ou aux journaux de bash.
  2. Quelque chose plante. Selon la fréquence à laquelle les programmes se bloquent, cela peut être un hareng rouge, mais cela peut également être un indice quant à la source du fichier.

D'autres méthodes pour effectuer un test de scream seraient de supprimer toutes les autorisations d'accès afin que personne ne puisse lire ou écrire dans le fichier, ou de corrompre le fichier.

MODIFIER

Comme le souligne Daniel, renommer le fichier ne fonctionnera pas si le processus a toujours le fichier ouvert. Si le fichier est ouvert, vous pouvez voir tous les fichiers ouverts avec lsof, ou vous pouvez trouver les identifiants de processus des processus qui ont le fichier ouvert à l'aide de fuser. ps donnera alors plus d'informations sur les processus.

> fuser Sudo
/home/bob/Sudo:  3132  7070
> ps 3132 7070
  PID TTY      STAT   TIME COMMAND
 3132 ?        R    203:50 pdflatex
 7070 ?        Sl     0:45 evince
11
spyr03

Vous pouvez essayer "hexdump -C -n 512" pour voir si quelque chose vous apparaît dans le vidage binaire ou ascii. Il peut s'agir d'un mélange de données binaires et de données texte. Comme un wget d'un script que vous avez mal tapé, le vidage hexadécimal peut vous permettre de voir une partie du script.

5
Sam

Vous pouvez également essayer head et voir les premières lignes du fichier. Les premiers caractères pourraient révéler quelque chose sur le type de fichier. Voir nombre magique pour plus d'informations.

1
d-b

Vous pouvez suivre la voie simple et directe: installer un antivirus et analyser le fichier. Ce n'est pas une solution parfaite, mais c'est un point de départ et au moins cela vous donnerait au moins un peu de tranquillité d'esprit à ce sujet.

Je suis en fait un peu surpris que personne ne l'ait suggéré.

Je ne sais pas quelle distribution vous utilisez, mais je suis sûr qu'il existe de nombreuses solutions antivirus qui fonctionneraient. Du haut de ma tête, je voudrais essayer ClamAV pour quelque chose comme ça, semble facile à installer.

0
Radu Murzea