Was ist ein Buffer Overflow (Pufferüberlauf)?

Ein Pufferüberlauf tritt ein, wenn ein Programm mit zu vielen Daten gefüttert wird. Dabei werden andere Teile des Computerspeichers überschrieben, was zu Fehlern oder Abstürzen führt.

Einige Programme sind nicht darauf ausgelegt, mehr Daten zu erhalten, als sie verarbeiten können. Wenn das passiert, geht ihnen der Speicherplatz aus und sie überschreiben versehentlich Teile des Speichers, die das Betriebssystem eigentlich für andere Zwecke vorgesehen hat. Pufferüberlauf-Angriffe nutzen diese Schwäche aus und versuchen gezielt, Programme mit Daten zu überfüttern. So kann unter Umständen nicht autorisierter Code ausgeführt oder das System lahmgelegt werden.

Entgegen der landläufigen Meinung kommt es nicht nur bei Diensten (z. B. Windows-Betriebssystemen) oder zentralen Programmen zu Pufferüberläufen. Sie können in jeder Anwendung auftreten.

Quelle: Sophos