Je savais que le code source du malware Mirai était sorti, et je voulais simplement savoir comment il avait été fait, alors je l'ai analysé en étant amateur. jgamblin/Mirai-Source-Code: Leaked Mirai Source Code for Research/IoC Development Purposes
Ce n'est pas seulement un code spécialement malveillant, c'est juste une description des commandes Unix couramment utilisées que je ne connaissais pas. D'ailleurs, puisqu'il s'agit d'un code d'enquête, ** les abus sont strictement interdits **.
/scripts/cross-compile.sh
if [ "$(id -u)" != "0" ]; then
echo "This script must be run as root" 1>&2
exit 1
fi
#Les utilisateurs normaux renvoient des numéros
$ id -u
501
#Renvoie 0 pour l'utilisateur root
$ sudo id -u
0
Commande Linux [id] Afficher l'ID utilisateur et l'ID de groupe - Introduction à Linux --Webkaru
echo
Si vous ajoutez -n
à l'option, elle sera sortie sur une nouvelle ligne.
$ echo -n "Install mysql-server and mysql-client (y/n)? "
Install mysql-server and mysql-client (y/n)?
stty
Ubuntu Manpage: stty --Modifier et afficher les paramètres de ligne sur le terminal
/scripts/cross-compile.sh
old_stty_cfg=$(stty -g)
stty raw -echo
answer=$( while ! head -c 1 | grep -i '[ny]' ;do true ;done )
stty $old_stty_cfg
/scripts/cross-compile.sh
apt-get install -y gcc golang electric-fence
Je comprends que gcc est un compilateur C et que golang est un compilateur de langage Go, Qu'est-ce que «clôture électrique»? C'est devenu.
Outil de détection de corruption de mémoire. Outil de détection en cas de buffer overflow.
Il mémorise la position de départ et la position finale des tableaux dynamiques (tableaux sécurisés par malloc etc.) dans le programme et les arrête à Segfo lorsque le pointeur etc. passe au-dessus de la zone de ces tableaux. Par conséquent, si vous vérifiez le noyau par ce segfo avec un débogueur tel que gdb, vous serez en mesure de savoir instantanément où et dans quel tableau la zone a été compromise.
Langage C: Comment utiliser la clôture électrique de l'outil de détection de corruption de mémoire