Bezpečnostní

Jak nastavit vězení Linux Chroot

Jak nastavit vězení Linux Chroot
Zejména ty, které se věnují kritickým službám, vyžadují systémy Linux, aby mohly pracovat s odbornými znalostmi, a základní bezpečnostní opatření.

Bohužel i po přijetí zásadních bezpečnostních opatření si bezpečnostní zranitelnosti stále nacházejí cestu do zabezpečených systémů. Jedním ze způsobů, jak spravovat a chránit váš systém, je omezení možného poškození, jakmile dojde k útoku.

V tomto tutoriálu probereme postup používání chroot vězení ke správě poškození systému v případě útoku. Podíváme se na to, jak izolovat procesy a podprocesy do konkrétního prostředí s falešnými oprávněními root. Tímto způsobem omezíte proces na konkrétní adresář a odepřete přístup k dalším oblastem systému.

Stručný úvod do chroot vězení

Chroot vězení je metoda izolace procesů a jejich podprocesů z hlavního systému pomocí falešných oprávnění root.

Jak již bylo zmíněno, izolace konkrétního procesu pomocí falešných oprávnění root omezuje škody v případě škodlivého útoku. Chrootované služby jsou omezeny na adresáře a soubory v jejich adresářích a po restartu služby nejsou trvalé.

Proč používat chroot vězení

Hlavním účelem chroot vězení je jako bezpečnostní opatření. Chroot je také užitečný při obnově ztracených hesel připojením zařízení ze živých médií.

Nastavení chroot vězení má různé výhody a nevýhody. Tyto zahrnují:

Výhody

Nevýhody

Jak vytvořit základní chroot vězení

V tomto procesu vytvoříme základní chroot vězení se 3 příkazy omezenými na tuto složku. To pomůže ilustrovat, jak vytvořit vězení a přiřadit různé příkazy.

Začněte vytvořením hlavní složky. Tuto složku si můžete představit jako složku / v hlavním systému. Název složky může být jakýkoli. V našem případě tomu říkáme / chrootjail

sudo mkdir / chrootjail

Tento adresář použijeme jako falešný kořen obsahující příkazy, které mu přiřadíme. S příkazy, které použijeme, budeme vyžadovat adresář bin (obsahuje spustitelné soubory příkazu) a atd., adresář (obsahující konfigurační soubory příkazů).

Ve složce / chrootjail vytvořte tyto dvě složky:

sudo mkdir / chrootjail / etc, bin

Dalším krokem je vytvoření adresářů pro dynamicky propojené knihovny pro příkazy, které chceme zahrnout do vězení. V tomto příkladu použijeme příkazy bash, ls a grep.

Pomocí příkazu ldd zobrazte seznam závislostí těchto příkazů, jak je znázorněno níže:

sudo ldd / bin / bash / bin / ls / bin / grep

Pokud nejste ve složce bin, musíte předat úplnou cestu k příkazům, které chcete použít. Například ldd / bin / bash nebo ldd / bin / grep

Z výše uvedeného výstupu ldd potřebujeme adresáře lib64 a / lib / x86_64-linux-gnu. V adresáři vězení vytvořte tyto složky.

sudo mkdir -p / chrootjail lib / x86_64-linux-gnu, lib64

Jakmile máme vytvořené adresáře dynamické knihovny, můžeme je vypsat pomocí stromu, jak je znázorněno níže:

Jak budeme postupovat, začnete mít jasnou představu o tom, co chroot vězení znamená.

Vytváříme prostředí podobné běžnému kořenovému adresáři systému Linux. Rozdíl je v tom, že v tomto prostředí jsou povoleny pouze konkrétní příkazy a přístup je omezen.

Teď, když jsme vytvořili koš. atd., lib a lib64, můžeme přidat požadované soubory do příslušných adresářů.

Začněme s binárními soubory.

sudo cp / bin / bash / chrootjail / bin && sudo cp / bin / ls / chrootjail / bin && sudo cp / bin / grep / chrootjail / bin

Po zkopírování binárních souborů pro příkazy, které potřebujeme, vyžadujeme knihovny pro každý příkaz. K zobrazení souborů, které chcete zkopírovat, můžete použít příkaz ldd.

Začněme s bash. Pro bash vyžadujeme následující knihovny:

/ lib / x86_64-linux-gnu / libtinfo.tak.6
/ lib / x86_64-linux-gnu / libdl.tak.2
/ lib / x86_64-linux-gnu / libc.tak.6
/ lib64 / ld-linux-x86-64.tak.2

Místo toho, abychom kopírovali všechny tyto soubory jeden po druhém, můžeme použít jednoduchou smyčku for ke zkopírování každé knihovny ve všech knihovnách do / chrootjail / lib / x86_64-linux-gnu

Zopakujme tento proces pro příkaz ls i grep:

Pro příkaz ls:

Pro příkaz grep:

Dále v adresáři lib64 máme jednu sdílenou knihovnu napříč všemi binárními soubory. Můžeme jej jednoduše zkopírovat pomocí jednoduchého příkazu cp:

Dále upravme hlavní přihlašovací soubor bash (umístěný v / etc / bash.bashrc v Debianu), abychom mohli vyladit výzvu bash podle našich představ. Pomocí jednoduchých echo a tee příkazů, jak je znázorněno:

sudo echo 'PS1 = "CHROOTJAIL #"' | sudo tee / chrootjail / etc / bash.bashrc

Po dokončení všech výše uvedených kroků se můžeme přihlásit do prostředí vězení pomocí příkazu chroot, jak je znázorněno.

sudo chroot / chrootjail / bin / bash

S výzvou získáte oprávnění root, podobná těm, která byla vytvořena ve výše uvedeném příkazu echo and tee.

Jakmile se přihlásíte, uvidíte, že máte přístup pouze k příkazům, které jste zadali při vytváření vězení. Pokud požadujete více příkazů, musíte je přidat ručně.

POZNÁMKA: Jelikož jste zahrnuli bash shell, budete mít přístup ke všem bash integrovaným příkazům. To vám umožní opustit vězení pomocí příkazu exit.

Závěr

Tento výukový program se zabýval tím, co je chroot vězení a jak jej můžeme použít k vytvoření izolovaného prostředí z hlavního systému. Techniky popsané v příručce můžete použít k vytvoření izolovaných prostředí pro kritické služby.

Chcete-li procvičit, co jste se naučili, zkuste vytvořit vězení apache2.

NÁZNAK: Začněte vytvořením kořenového adresáře, přidejte konfigurační soubory (etc / apache2), přidejte kořen dokumentu (/ var / www / html), přidejte binární soubor (/ usr / sbin / apache2) a nakonec přidejte požadované knihovny (ldd / usr / sbin / apache2)

Hry Vulkan pro uživatele Linuxu
Vulkan pro uživatele Linuxu
S každou novou generací grafických karet vidíme, že vývojáři her posouvají hranice grafické věrnosti a přibližují se k fotorealismu. Ale navzdory vešk...
Hry OpenTTD vs Simutrans
OpenTTD vs Simutrans
Vytvoření vlastní simulace dopravy může být zábavné, uvolňující a mimořádně lákavé. Proto se musíte ujistit, že vyzkoušíte co nejvíce her, abyste našl...
Hry Výukový program OpenTTD
Výukový program OpenTTD
OpenTTD je jednou z nejpopulárnějších her pro obchodní simulaci. V této hře musíte vytvořit skvělé dopravní podnikání. Začnete však na začátku kolem r...