Vyhledávání na webu

Jak chránit pevné a symbolické odkazy v CentOS/RHEL 7


V Linuxu jsou pevné a měkké odkazy odkazovány na soubory, které jsou velmi důležité, pokud nejsou chráněny velmi dobře, jakékoli zranitelnosti v nich mohou být zneužity uživateli se zlými úmysly nebo útočníky.

Běžnou chybou zabezpečení je závod o symbolické odkazy. Jedná se o bezpečnostní chybu v softwaru, ke které dochází, když program nezabezpečeně vytváří soubory (zejména dočasné soubory) a uživatel se zlými úmysly může vytvořit symbolický (měkký) odkaz na takový soubor.

Přečtěte si také: Jak vytvořit pevný a symbolický odkaz v Linuxu

To se prakticky děje; program zkontroluje, zda dočasný soubor existuje nebo ne, v případě, že ne, soubor vytvoří. Ale v tomto krátkém časovém období mezi kontrolou souboru a jeho vytvořením může útočník případně vytvořit symbolický odkaz na soubor a on nebo ona nemá povolen přístup.

Když tedy program běží s platnými oprávněními, vytvoří soubor se stejným názvem, jaký vytvořil útočník, doslova vytvoří cílový (spojený) soubor, ke kterému měl útočník v úmyslu získat přístup. To by tedy mohlo útočníkovi poskytnout cestu ke krádeži citlivých informací z účtu root nebo ke spuštění škodlivého programu v systému.

Proto vám v tomto článku ukážeme, jak zabezpečit pevné a symbolické odkazy před uživateli se zlými úmysly nebo hackery v distribucích CentOS/RHEL 7.

V systému CentOS/RHEL 7 existuje zásadní bezpečnostní funkce, která umožňuje vytváření odkazů nebo následování programů pouze v případě, že jsou splněny některé podmínky popsané níže.

Pro pevné odkazy

Aby uživatel systému vytvořil odkaz, musí být splněna jedna z následujících podmínek.

  • uživatel může odkazovat pouze na soubory, které vlastní.
  • uživatel musí mít nejprve přístup pro čtení a zápis do souboru, na který chce odkazovat.

Pro Symbolické odkazy

Procesy mohou sledovat pouze odkazy, které jsou mimo světově zapisovatelné (ostatní uživatelé mohou zapisovat) adresáře, které mají lepivé bity, nebo musí platit jedna z následujících skutečností.

  • proces následující po symbolickém odkazu je vlastníkem symbolického odkazu.
  • vlastník adresáře je zároveň vlastníkem symbolického odkazu.

Povolit nebo zakázat ochranu na pevných a symbolických odkazech

Důležité je, že ve výchozím nastavení je tato funkce povolena pomocí parametrů jádra v souboru /usr/lib/sysctl.d/50-default.conf (hodnota 1 znamená povolení ).

fs.protected_hardlinks = 1
fs.protected_symlinks = 1

Pokud však z jednoho nebo druhého důvodu chcete tuto funkci zabezpečení zakázat; vytvořte soubor s názvem /etc/sysctl.d/51-no-protect-links.conf s těmito možnostmi jádra níže (hodnota 0 znamená vypnout).

Všimněte si, že 51 v názvu souboru (51-no-protect-links.conf), musí být načten po výchozím souboru, aby se přepsala výchozí nastavení.

fs.protected_hardlinks = 0
fs.protected_symlinks = 0

Uložte a zavřete soubor. Poté použijte příkaz níže k provedení výše uvedených změn (tento příkaz ve skutečnosti načte nastavení z každého konfiguračního souboru systému).

sysctl --system
OR
sysctl -p  #on older systems

Možná byste si také rádi přečetli následující články.

  1. Jak chránit heslem soubor Vim v Linuxu
  2. 5 „chattr“ příkazů, aby se důležité soubory staly IMMUTABLE (nezměnitelnými) v Linuxu

To je vše! Prostřednictvím formuláře pro zpětnou vazbu níže můžete posílat své dotazy nebo sdílet jakékoli myšlenky týkající se tohoto tématu.