Windows XP Service Pack 2 (Teil 7): Schutz vor Pufferüberläufen

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 889741 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel ist Teil 7 zum Thema Windows XP Service Pack 2 - Schritt für Schritt. In diesem Teil erhalten Sie Informationen über den neuen Schutz vor Pufferüberläufen.

Um die anderen Kapitel aufzurufen, nutzen Sie bitte die Links am Ende des Artikels.

Folgend sind die Kapitel, die sich mit diesem Thema befassen:
Teil 1:  Mehr Sicherheit - mit Service Pack 2
Teil 2:  Service Pack 2 installieren
Teil 3:  Das neue Sicherheitscenter
Teil 4:  Automatische Updates
Teil 5:  Virenschutz
Teil 6:  Die Windows Firewall
Teil 7:  Schutz vor Pufferüberläufen
Teil 8:  Verbesserungen in Internet Explorer und Outlook Express
Teil 9:  Probleme? Service Pack 2 deinstallieren
Alles erweitern | Alles schließen

Auf dieser Seite



Pufferüberläufe gehören zu den berüchtigtsten Angriffsformen aus dem Internet. Sie beruhen auf der einfachen Tatsache, dass ein Programmierer Speicherplatz für eine Variable reserviert und ihm dabei ein Fehler unterläuft.

So kann ein Anwender zum Beispiel später eine Eingabe machen, die viel mehr Zeichen umfasst als eigentlich vorgesehen sind. Dabei werden auch benachbarte Speicherstellen beschrieben, die mit der Variablen gar nichts zu tun haben. Im Normalfall wird das Programm einfach abstürzen, ein Angreifer aber kann die Schwachstelle nutzen, um die Kontrolle über Ihren Rechner zu erlangen.

Bild minimierenBild vergrößern
puffer1


Wie funktioniert ein Pufferüberlauf?

Um zu verstehen, was da im einzelnen passiert, sind ein paar technische Kenntnisse nötig.

Ein Computersystem verfügt über einen gewissen Bestand an Arbeitsspeicher (RAM), den alle Anwendungen gemeinsam nutzen. Damit hier nichts durcheinander kommt, hat Windows eine spezielle Speicherverwaltung, die festhält, welche Bereiche gerade verwendet werden. Startet eine Anwendung neu, wird ihr freier Speicher zugewiesen.

Dieser Speicher ist in 3 Teile aufgeteilt:
  • Das Codesegment: hier liegen die ausführbaren Befehle die zu der Anwendung gehören.
  • Das Datensegment: hier liegen die Daten, die zu der Anwendung gehören.
  • Der Stack (Teil des Datensegments): hier liegt alles, was für Programmfunktionen von Belang ist, Parameter, Puffer, die die lokalen Variablen speichern und vor allem die Rücksprungadresse, die angibt, wo im Programm weitergemacht wird, wenn die Funktion abgearbeitet ist.

    Bild minimierenBild vergrößern
    puffer2


    Da auch die Eingaben eines Anwenders als Variablen erfaßt werden, gelangt alles, was er eintippt, direkt auf dem Stack. Normalerweise geht das so in Ordnung. Kann aber aufgrund eines Programmierfehlers die Puffergrenze verletzt werden, läßt sich der Stack leicht manipulieren. Wird nämlich die Eingabe geschickt gewählt, kann der gesamte Bereich, der für die lokalen Variablen vorgesehen ist, mit Anweisungen überschrieben werden und die anschließende Rücksprungadresse so geändert werden, dass sie auf den Anfang des schädlichen Codes zeigt. Das Programm macht also nicht wie vorgesehen weiter, sondern folgt den Zielen des Angreifers.

    Bild minimierenBild vergrößern
    puffer3


Was macht die Datenausführungsverhinderung?

Die Datenausführungsverhinderung (DEP, Data Execution Prevention) überprüft nun, ob Ihre Programme den Systemspeicher sicher verwenden. Hierfür markiert die Ausführungsschutzsoftware (alleine oder in Zusammenarbeit mit kompatiblen Mikroprozessoren) Datenspeicherbereiche als "nicht ausführbar". Sollte dennoch eine Anwendung versuchen, Code in einem derart geschützten Bereich auszuführen, beendet die Datenausführungsverhinderung das Programm und benachrichtigt Sie. Dies geschieht auch dann, wenn es sich nicht um böswilligem Code handelt.

Nach der Installation von SP2 ist die Datenausführungsverhinderung nur für wichtige Programme und Dienste des Betriebssystems aktiviert, denn es ist damit zu rechnen, dass nicht alle Software reibungslos mit der Datenausführungsverhinderung zusammenarbeitet. Wollen Sie die Sicherheit erhöhen, können Sie die Datenausführungsverhinderung grundsätzlich aktivieren und für einzelne Programme und Dienste Ausnahmen definieren.

So aktivieren Sie die Datenausführungsverhinderung für alle Programme:

  1. Klicken Sie auf Start und dann auf Systemsteuerung.
  2. Doppelklicken Sie auf System.

    Bild minimierenBild vergrößern
    puffer4


  3. Wählen Sie die Registerkarte Erweitert und klicken Sie im Bereich Systemleistung auf Einstellungen.

    Bild minimierenBild vergrößern
    puffer5


  4. Klicken Sie auf das Register Datenausführungsverhinderung und aktivieren Sie die Option Datenausführungsverhinderung für alle Programme und Dienste mit Ausnahme der ausgewählten aktivieren und klicken Sie auf OK.

    Bild minimierenBild vergrößern
    puffer6


  5. Die Änderung wird erst nach einem Neustart wirksam. Bestätigen Sie die Information mit OK, klicken Sie noch einmal auf OK und starten Sie Ihren Rechner neu.

So definieren Sie Ausnahmen

Sollten dann einige Programme Schwierigkeiten machen, definieren Sie sie als Ausnahmen.
  1. Navigieren Sie zur Registerkarte Datenausführungsverhinderung.
  2. Klicken Sie auf Hinzufügen.
  3. Suchen und markieren Sie die entsprechende Programmdatei, klicken Sie auf Öffnen und dann auf OK.
  4. Klicken Sie auf OK, dann noch einmal auf OK und starten Sie Ihren Rechner neu.

So deaktivieren Sie die Datenausführungsverhinderung

Sollte Ihr Rechner prinzipiell Probleme mit der Datenausführungsverhinderung haben, können Sie diese auch komplett deaktivieren. Dazu müssen Sie die boot.ini-Datei bearbeiten.
  1. Kontrollieren Sie zunächst die Ordneroptionen. Klicken Sie auf Start und Systemsteuerung und doppelklicken Sie dann auf Ordneroptionen.

    Bild minimierenBild vergrößern
    puffer8


  2. Vergewissern Sie sich, dass alle Ordner und alle Systemdateien angezeigt werden.

    Bild minimierenBild vergrößern
    puffer9


  3. Starten Sie Ihren Computer im abgesicherten Modus. Drücken Sie hierzu die F8-Taste, sobald der POST (Power On Self Test) beendet ist.
  4. Benutzen Sie die Pfeiltasten, um die Option Abgesicherter Modus auszuwählen. Drücken Sie anschließend die Eingabetaste.
  5. Wählen Sie dann das zu startende Betriebssystem und drücken Sie wieder die Eingabetaste.
  6. Öffnen Sie im Arbeitsplatz das Laufwerk C:\. Suchen Sie die Datei boot.ini.
  7. Machen Sie vorsichtshalber eine Sicherheitskopie von boot.ini. Klicken Sie die Datei mit der rechten Maustaste an und wählen Sie Kopieren. Klicken Sie dann mit der rechten Maustaste an eine freie Stelle und wählen Sie Einfügen.
  8. Klicken Sie dann die Datei boot.ini mit der rechten Maustaste an und wählen Sie Eigenschaften.

    Bild minimierenBild vergrößern
    puffer10


  9. Deaktivieren Sie das Attribut Schreibgeschützt und klicken Sie auf OK (oder drücken Sie die Eingabetaste).

    Bild minimierenBild vergrößern
    puffer11


  10. Klicken Sie auf Start und Ausführen und geben Sie notepad c:\boot.ini ein. Klicken Sie anschließend auf OK.

    Bild minimierenBild vergrößern
    puffer12


  11. Ändern Sie die Option NoExecute=xxxxx in NoExecute=AllwaysOff.

    Bild minimierenBild vergrößern
    puffer13


    Bild minimierenBild vergrößern
    puffer14


  12. Speichern Sie boot.ini, setzen Sie wieder den Schreibschutz und starten Sie Ihren Rechner neu.

Informationsquellen

Die weiteren Teile des Themas Windows XP Service Pack 2 - Schritt für Schritt sind:
Teil 1 Mehr Sicherheit mit Service Pack 2

Teil 2 Service Pack 2 installieren

Teil 3 Das neue Sicherheitscenter

Teil 4 Automatische Updates

Teil 5 Virenschutz

Teil 6 Die Windows Firewall

Teil 7 Schutz vor Pufferüberläufen (dieser Artikel)

Teil 8 Verbesserungen in Internet Explorer und Outlook Express

Teil 9 Probleme? SP2 deinstallieren

Eigenschaften

Artikel-ID: 889741 - Geändert am: Dienstag, 4. Juli 2006 - Version: 1.3
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Windows XP Home Edition Service Pack 2 (SP2)
  • Microsoft Windows XP Professional Service Pack 2 (SP2)
Keywords: 
kbhowto kbstepbystep KB889741
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com