Context
Nous devons trouver d’autres informations :
- Le nom du processus qui a le PID 1254.
- La commande qui a été exécutée le 2020-03-26 23:29:19 UTC.
- Le nombre de connexions unique TCP et UDP passées depuis l’extérieur.
Solution
Pour résoudre cette investigation, nous allons utiliser volatility 3, version 2.27 au minimum.
python3 vol.py -f dmp.mem linux.psscan.PsScan | grep 1254
0x3fdccd80 1251 1254 1176 pool-xfconfd EXIT_DEAD
On voit ici que le nom du programme à qui appartient au PID 1254 est pool-xfconfd, de plus on remarque qu’il c’est terminé de façon anormale, il a planté ou a été tué avec kill.
python3 vol.py -f dmp.mem linux.bash.Bash
...
Volatility 3 Framework 2.27.0
PID Process CommandTime Command
1523 bash 2020-03-26 23:24:18.000000 UTC rm .bash_history
1523 bash 2020-03-26 23:24:18.000000 UTC exit
1523 bash 2020-03-26 23:24:18.000000 UTC vim /home/Lesage/.bash_history
1523 bash 2020-03-26 23:24:27.000000 UTC ss -laupt
1523 bash 2020-03-26 23:26:06.000000 UTC rkhunter -c
1523 bash 2020-03-26 23:29:19.000000 UTC nmap -sS -sV 10.42.42.0/24
1523 bash 2020-03-26 23:31:31.000000 UTC ip -c addr
1523 bash 2020-03-26 23:38:00.000000 UTC swapoff -a
1523 bash 2020-03-26 23:38:05.000000 UTC swapon -a
1523 bash 2020-03-26 23:40:18.000000 UTC ls
1523 bash 2020-03-26 23:40:23.000000 UTC cat LiME.txt
1523 bash 2020-03-26 23:40:33.000000 UTC cd LiME/src/
1523 bash 2020-03-26 23:40:54.000000 UTC
1523 bash 2020-03-26 23:40:54.000000 UTC insmod lime-5.4.0-4-amd64.ko "path=/dmp.mem format=lime timeout=0"
On voit ici qu’a 2020-03-26 23:29:19 UTC que la commande qui a été exécutée est : nmap -sS -sV 10.42.42.0/24.
python3 /vol.py -f dmp.mem linux.sockstat.Sockstat > out.txt
grep ESTABLISHED out.txt | grep TCP | grep -v 127.0.0.1 | awk '{print $2}' | sort | uniq -c | sort -nr
24 ThreadPoolForeg
12 ThreadPoolServi
12 MemoryInfra
12 inotify_reader
12 gmain
12 gdbus
12 chromium
12 Chrome_ChildIOT
2 tor
1 ssh
1 smbclient
1 sh
1 ncat
grep ESTABLISHED out.txt | grep TCP | grep -v 127.0.0.1 | awk '{print $2}' | sort | uniq -c | sort -nr | wc -l
13
La première commande avec volatility 3 on consigne toutes les connexions dans un fichier out.txt.
On filtre toutes les connexions qui on été Réussie.
On garde les connexions TCP et exclue les connexions localhost (127.0.0.1).
On prend la deuxième colonne qui sont les noms des programmes.
On trie les noms et on garde un seul exemplaire et comptant le nombre de fois qu’ils sont apparus.
On trie par ordre croissant, puis décroissant est on affiche les noms.
Même chose que la commande qui affiche les noms, sauf qu’a la fin on compte le nombre de ligne.
Donc ici on a eu 13 programmes unique qui se sont connectés depuis l’extérieur.