Ich wusste, dass der Quellcode der Malware Mirai veröffentlicht wurde, und ich wollte einfach nur wissen, wie er erstellt wurde, also habe ich ihn als Amateur analysiert. jgamblin/Mirai-Source-Code: Leaked Mirai Source Code for Research/IoC Development Purposes
Nicht nur der besonders schädliche Code, sondern auch die Beschreibung der häufig verwendeten Unix-Befehle, von denen ich nichts wusste. Übrigens, da es sich um einen Untersuchungscode handelt, ist ** Missbrauch strengstens verboten **.
/scripts/cross-compile.sh
if [ "$(id -u)" != "0" ]; then
echo "This script must be run as root" 1>&2
exit 1
fi
#Normale Benutzer geben Nummern zurück
$ id -u
501
#Gibt 0 für Root-Benutzer zurück
$ sudo id -u
0
Linux-Befehl [ID] Benutzer-ID und Gruppen-ID anzeigen - Einführung in Linux - Webkaru
echo
Wenn Sie der Option -n
hinzufügen, wird diese in einer neuen Zeile ausgegeben.
$ echo -n "Install mysql-server and mysql-client (y/n)? "
Install mysql-server and mysql-client (y/n)?
stty
Ubuntu Manpage: stty - Ändern und Anzeigen der Zeileneinstellungen auf dem 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
Ich verstehe, dass gcc ein C-Compiler und golang ein Go-Sprach-Compiler ist. Was ist ein Elektrozaun? Es wurde.
Tool zur Erkennung von Speicherbeschädigungen. Erkennungswerkzeug bei Pufferüberlauf.
Es speichert die Start- und Endposition dynamischer Arrays (durch malloc usw. gesicherte Arrays) im Programm und stoppt sie bei Segfo, wenn der Zeiger usw. über den Bereich dieser Arrays tritt. Wenn Sie den Kern dieses Segfos mit einem Debugger wie gdb überprüfen, können Sie daher sofort erkennen, wo und in welchem Array der Bereich kompromittiert wurde.
C-Sprache: Verwendung des Elektrozauns zur Erkennung von Speicherbeschädigungen