Hallo Peter,
ich habe den grössten Teil Deines Postings der Übersicht halber hier gelöscht, er steht ja noch in voller Grösse einen Schritt weiter oben
Hast du eigentlich verstanden wie der Trick mit dem berühmten
„Bufferoverrun“ funktioniertja, ich glaube schon, obwohl ich kein Programmierer bin.
und wie einfach man das verhindern kann?
Nein. aber klär mich auf. Ich lerne immer gern dazu
Eigentlich ist ein Bufferoverrun ein typischer Anfängerfehler.
Wenn Du es sagst.
Also ein kleines Beispiel (dieses hat Sasser verwendet):
TCP/IP kann Datenblöcke bis zu 64 kB übertragen.
Du hast jetzt irgend ein Protokoll entwickelt welches aber nur
Datenblöcke mit maximal 4 kB benutzt.
Zur Bearbeitung einer Meldung musst du diese in eine Variable
im RAM ablegen, dazu siehst du 4kB vor, weil ja keine
grösseren Meldungen vereinbart sind.
Wenn dir ein Datenblock vom TCP/IP übergeben wird, übernimmst
du die Längenangabe von TCP/IP und kopierst die Daten in deine
Variable.
Ein erfahrener Programmierer überprüft aber zuerst, ob die
Variable auch Platz für die Daten hat. Andernfalls
überschreibst du 60 kB im RAM welche hinter deiner Variablen
im Speicher abgelegt sind.
Im Fall Sasser, war in diesem Bereich Programmcode abgelegt.
Sasser hat nun einfach einen übergrossen Datenblock versendet
und im hinteren Teil seinen Programmcode so abgelegt, dass er
genau den bestehenden Code überschrieben hat.
Nur durch den Empfang eines solchen Datenblocks wurde dann
dein PC zum Zombie !! Alles ganz OHNE IE und OE und Brain.exe
hat da auch keine Chance was versehentlich anzuklicken.
Wollte noch mal auf das Buffoverrun zurückkommen.
Danke für Dein einleuchtendes Beispiel.
Wie kann man es verhindern? Wenn ich recht verstanden habe, trifft die Schuld den Programmierer, der eine Abfrage ‚vergessen‘ hat, die überprüft, ob die Variable oder der Array in den Stack passt, primitiv ausgedrückt.
Und nach Deinem Beispiel kann der User selbst, der ein solches Programm mit einer offenen Hintertür benutzt, rein gar nichts gegen Eindringlinge, die diese Tür ausnutzen tun? ich meine, ausser den üblichen Schutzmassnahmen.
Aber grade beim Beispiel Sasser hat sich doch gezeigt, dass er erfolgreich bekämpft werden konnte, und zwar ohne Neuinstallation. Ich meine nachdem Microsoft die Lücke endlich durch ein Update geschlossen hattte. okok, ich will jetzt nicht erneut darauf rumhacken, aber meine Meinung habe ich trotzdem nicht geändert.
Ich glaube, ich halte mich in Zukunft aus den Malware-Diskussionen einfach raus (das hier war sowieso eine Ausnahme) und überlass euch das Feld 
cu
Seni
))) Ok, ich gebe zu, ich hab´ noch ne Kiste mit WIN98.