Vor ein paar Tagen hab ich den Quellcode eines trojanischen Pferdes gefunden und ein bisschen damit gespielt. Ich war echt überrascht, wie bequem diese Hackerei geworden ist.
Wenn das Ding gestartet ist, hinterlässt es nur noch ein unauffälliges
5480 pts/2 S 0:00 <defunct>
in der Prozessliste, verbindet sich zu einem IRC-Server und meldet sich dort in einem passwortgeschützten Channel an. Sein Nick dort ist ein zufälliger Name, falls der besetzt ist, wählt er einen anderen. Und dann hat man ein ganz normales Interface und kann mit ihm und seinen Kollegen auf den anderen befallenen Rechnern chatten. sogar eine Hilfefunktion hat er eingebaut (mein Text ist rot, "ACPMBBOX" heisst mein Trojaner):
Du sprichst jetzt in #test
ACPMBBOX (~RELHX@localhost) hat #test betreten
!ACPMBBOX HELP
TSUNAMI
= Special packeter that wont be blocked by most firewalls
PAN
= An advanced syn flooder that will kill most network drivers
UDP = A udp flooder
UNKNOWN = Another non-spoof udp flooder
NICK = Changes the nick of the client
SERVER = Changes servers
GETSPOOFS = Gets the current spoofing
SPOOFS = Changes spoofing to a subnet
DISABLE = Disables all packeting
ENABLE = Enables all packeting
KILL = Kills the client
DIE = Let's the client die slowly
GET
= Downloads a file off the web and saves it onto the hd
KILLALL = Kills all current packeting
HELP = Displays this
IRC = Sends this command to the server
SH = Executes a command
!ACPMBBOX SPOOFS 10.11.12
!ACPMBBOX SH ls -l
insgesamt 148
max max 31059 2007-08-02 22:36 defunct
max max 27964 2007-08-02 22:34 defunct.c
test test 27969 2007-08-02 22:34 defunct.c~
max max 39312 2007-07-30 18:04 fullroot.txt
max max 1682 2007-08-02 09:45 fullroot.txt.short
Wie man sieht, kann der Trojaner also auch ganz beliebige Shell-Befehle ausführen, eine Download-Funktion bringt er auch schon mit.
Als vollwertiger User mit Shell-Account kann man auf dem Rechner des Opfers schon richtig schön arbeiten. Man kann Mails verschicken, Homepages bauen, nach Dateien suchen und die irgendwohin versenden, Werkzeuge für weitere Hackversuche runterladen und von diesem Rechner aus weiter in andere Rechner eindringen.
Falls man es schafft, eine lokale Lücke im System zu finden und dort root-Rechte zu erlangen, hat der Trojaner noch ein paar Angriffstools dabei, um einen feindlichen Rechner mit Paketen zu fluten. das ganze natürlich nicht mit der richtigen IP-Adresse des Opfers, sondern mit einer ausgedachten (im Fall oben die 10.11.12.xxx). Die vier angebotenen Flutverfahren waren im Test allerdings nicht sehr wirkungsvoll. "TSUNAMI" klang so vielversprechen hat aber leider garnichts gemacht und "UNKNOWN" hat sein Zeitlimit nicht eingehalten. Aber dafür hat man ja eine ganze Schar von Trojanern, mit denen man sich im Chat unterhalten kann. Die Masse machts.
Die Verbreitung des Tools passiert über eine inzwischen bekannte und hoffentlich überall gepatchte
Lücke in Confixx. Dort konnte man unter bestimmten Bedingungen PHP-Dateien von fremden Servern auf den Server des Opfers übertragen und dort ausführen. Diese PHP-Datei "fullroot.txt" hat dann ein C-Programm (eben dieses "defunct.c") ausgepackt und compiliert und ein paar Verzeichnisse durchprobiert, in der man diese Datei ablegen kann. Ich verwende Confixx zwar nicht, hab aber die Zugriffsversuche in den Logfiles verfolgt und konnte die Datei dann von Hand holen.
Die Motivation des Programmierers ist mir nicht klar. Spielkind, Chatkrieger oder echter Krimineller, alles ist möglich. Die Spur führt zu CS-Spielern in Franken, aber ganz sicher bin ich mir da nicht. Ich würde auch nichts allzu böses unterstellen. Jemand, der statt
char key[]="SoUrCeD";
sowas schreibt
key[4]=(key[6]=(key[5]='a'+4)-1^32)-1;
key[0]=(key[3]=(key[1]='o')+3)-31;
key[2]='X'-3;
key[7]=0;
hat einfach Stil und Gefühl für sprachliche Eleganz. Sojemand kann kein schlechter Mensch sein!
PS: Ich würde ja gern den Quellcode veröffentlichen, aber leider
geht das bald nicht mehr wegen § 202c. Dank unseres Gesetzgebers muss jetzt einfach jeder warten, bis er sich selbst einen Schädling eingefangen hat, bevor er ihn sich ansehen darf...