Skip to main content

Buffer Overflow

Co oznacza Buffer Overflow?>>>>>>>>>>>>>>>>>>>>>>>>>>

Tak zwany Buffer Overflow lub przepełnienie stosu jest błędem w programowaniu.

Błąd programowania

W pewnych okolicznościach ten błąd programistyczny prowadzi do przepełnienia bufora komputera danymi. Konkretnie oznacza to, że dane nie są przechowywane w przeznaczonym do tego buforze, ale także nadpisują miejsca w pamięci, które w ogóle nie są przeznaczone do przechowywania tych danych, co w większości przypadków prowadzi do awarii programu. Hakerzy często wykorzystują tę lukę do przejęcia kontroli nad systemem lub do zainstalowania złośliwego oprogramowania.

Jak powstaje strona Buffer Overflow?

W każdym programie komputerowym zmienne są przechowywane lokalnie w segmencie w czasie działania programu. Po uruchomieniu programu tworzone są trzy różne segmenty, a mianowicie:

  • segment kodu
  • segment danych (sterta)
  • segment stosu

W tym kontekście segment stosu odgrywa szczególnie ważną rolę, ponieważ jest on używany jako bufor podczas wykonywania programu i znajduje się w górnej części przestrzeni adresowej. Jeśli mają zostać pobrane starsze segmenty danych, stos musi zostać najpierw opróżniony. W tym momencie może dojść do przepełnienia stosu. Dzieje się tak dlatego, że może się zdarzyć, że program wypełni zmienną danymi, które są większe niż dostępna przestrzeń dyskowa w zmiennej. Wynikiem tego jest Buffer Overflow, co w większości przypadków prowadzi do awarii programu.


Masz jeszcze jakieś pytania?

Prosimy o kontakt z nami


Dalsze treści