Relro

Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Relro

RELRO staan vir Relocation Read-Only, en dit is 'n veiligheidskenmerk wat in binêre lêers gebruik word om die risiko's wat verband hou met GOT (Global Offset Table) oorskrywings te verminder. Laat ons die konsep opbreek in sy twee onderskeie tipes vir duidelikheid: Gedeeltelike RELRO en Volledige RELRO.

Gedeeltelike RELRO

Gedeeltelike RELRO neem 'n eenvoudiger benadering om die veiligheid te verbeter sonder om die binêre lêer se prestasie aansienlik te beïnvloed. Deur die GOT bo die program se veranderlikes in die geheue te posisioneer, mik Gedeeltelike RELRO daarop om te voorkom dat buffer-oorvloeiings die GOT bereik en dit beskadig.

Dit voorkom nie dat die GOT misbruik word deur willekeurige skryf kwesbaarhede nie.

Volledige RELRO

Volledige RELRO verhoog die beskerming deur die GOT en .fini_array afdeling heeltemal alleen-lees te maak. Wanneer die binêre lêer begin, word al die funksie-adresse opgelos en in die GOT gelaai, daarna word die GOT as alleen-lees gemerk, wat enige wysigings daaraan tydens uitvoering voorkom.

Die afweging met Volledige RELRO is egter in terme van prestasie en aanvangstyd. Omdat dit al die dinamiese simbole by aanvang moet oplos voordat die GOT as alleen-lees gemerk word, kan binêre lêers met Volledige RELRO wat geaktiveer is, langer laaitye ervaar. Hierdie addisionele aanvangsoorskot is waarom Volledige RELRO nie standaard in alle binêre lêers geaktiveer word nie.

Dit is moontlik om te sien of Volledige RELRO geaktiveer is in 'n binêre lêer met:

readelf -l /proc/ID_PROC/exe | grep BIND_NOW

Omgang

Indien Volle RELRO geaktiveer is, is die enigste manier om dit te omseil om 'n ander manier te vind wat nie vereis dat daar in die GOT-tabel geskryf word om willekeurige uitvoering te kry nie.

Let daarop dat LIBC se GOT gewoonlik Gedeeltelike RELRO is, sodat dit verander kan word met 'n willekeurige skryf. Meer inligting in Mikpunt libc GOT inskrywings.

Last updated