Biztonság

A Linux Chroot Jail telepítése

A Linux Chroot Jail telepítése
Különösen a kritikus szolgáltatásokra szánt Linux-rendszerek szakértői szintű ismereteket igényelnek a munkához és az alapvető biztonsági intézkedésekhez.

Sajnos, még a létfontosságú biztonsági intézkedések megtétele után is, a biztonsági rések még mindig biztonságos rendszerekbe jutnak. A rendszer kezelésének és védelmének egyik módja a támadás bekövetkeztével lehetséges károk korlátozása.

Ebben az oktatóanyagban megvitatjuk a chroot börtön használatát a rendszer károsodásainak kezelésére támadás esetén. Megvizsgáljuk, hogyan lehet hamis root jogosultságokkal elkülöníteni a folyamatokat és az alfolyamatokat egy adott környezettől. Ezzel korlátozhatja a folyamatot egy adott könyvtárra, és megtagadja a hozzáférést a rendszer többi területéhez.

Rövid bevezetés a chroot börtönbe

A chroot börtön a folyamatok és azok alfolyamatainak elkülönítése a fő rendszertől hamis root jogosultságok alkalmazásával.

Mint említettük, egy adott folyamat hamis root jogosultságokkal történő elkülönítése korlátozza a károkat egy rosszindulatú támadás esetén. A chrootált szolgáltatások a könyvtárakra és a fájljaikra korlátozódnak, és a szolgáltatás újraindításakor nem állandóak.

Miért kell használni a chroot börtönt

A chroot börtön fő célja biztonsági intézkedés. A Chroot akkor is hasznos, ha az elveszett jelszavakat helyreállítja eszközök élő médiából történő csatlakoztatásával.

A chroot börtön beállításának számos előnye és hátránya van. Ezek tartalmazzák:

Előnyök

Hátrányok

Hogyan lehet létrehozni egy alap Chroot börtönt

Ebben a folyamatban létrehozunk egy alap chroot börtönt, 3 paranccsal, amelyek az adott mappára korlátozódnak. Ez segít szemléltetni a börtön létrehozását és a különféle parancsok hozzárendelését.

Először hozzon létre egy fő mappát. Ezt a mappát úgy gondolhatja, mint a / mappát a fő rendszerben. A mappa neve bármi lehet. Esetünkben / chrootjail-nek hívjuk

sudo mkdir / chrootjail

Ezt a könyvtárat fogjuk használni hamis gyökérként, amely tartalmazza a hozzá rendelt parancsokat. Az általunk használt parancsokkal megköveteljük a bin könyvtárat (amely tartalmazza a parancs futtatható fájljait) és az stb., könyvtár (amely tartalmazza a parancsok konfigurációs fájljait).

A / chrootjail mappában hozza létre ezt a két mappát:

sudo mkdir / chrootjail / stb., bin

A következő lépés könyvtárak létrehozása a dinamikusan összekapcsolt könyvtárak számára a börtönbe beilleszteni kívánt parancsokhoz. Ebben a példában a bash, ls és grep parancsokat fogjuk használni.

Az ldd paranccsal sorolja fel a parancsok függőségeit, az alábbiak szerint:

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

Ha nem a kuka mappában van, akkor meg kell adnia a használni kívánt parancsok teljes elérési útját. Például: ldd / bin / bash vagy ldd / bin / grep

A fenti ldd kimenetből szükségünk van a lib64 és / lib / x86_64-linux-gnu könyvtárakra. A börtön könyvtárban hozza létre ezeket a mappákat.

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

Miután létrehoztuk a dinamikus könyvtárkönyvtárakat, egy fa segítségével felsorolhatjuk őket, az alábbiak szerint:

Ahogy haladunk, tiszta képet kap arról, hogy mit jelent a chroot börtön.

A Linux rendszer normál gyökérkönyvtárához hasonló környezetet hozunk létre. A különbség az, hogy ebben a környezetben csak meghatározott parancsok engedélyezettek, és a hozzáférés korlátozott.

Most, hogy létrehoztuk a kukát. stb., A lib és a lib64 fájlok hozzáadhatják a szükséges fájlokat a megfelelő könyvtárakba.

Kezdjük a bináris fájlokkal.

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

Miután átmásoltuk a szükséges fájlok bináris fájljait, szükségünk van az egyes parancsok könyvtáraira. Az ldd paranccsal megtekintheti a másolni kívánt fájlokat.

Kezdjük a bash-val. A bash esetében a következő könyvtárakra van szükségünk:

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

Ahelyett, hogy ezeket a fájlokat egyesével másolnánk, használhatunk egy egyszerű for ciklust az összes könyvtár minden könyvtárának másolásához a / chrootjail / lib / x86_64-linux-gnu könyvtárba

Ismételjük meg ezt a folyamatot mind az ls, mind a grep paranccsal:

Az ls parancshoz:

A grep parancshoz:

Ezután a lib64 könyvtárban van egy megosztott könyvtár az összes bináris fájlban. Egyszerűen másolhatjuk egy egyszerű cp paranccsal:

Ezután szerkesszük a fő bash bejelentkezési fájlt (az / etc / bash könyvtárban található).bashrc a Debianban), hogy kedvünkre csíphessük a bash parancsot. Egyszerű echo és tee parancsok használata az alábbiak szerint:

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

Miután elvégeztük az összes fenti lépést, bejelentkezhetünk a börtönbe a chroot paranccsal, az ábra szerint.

sudo chroot / chrootjail / bin / bash

A fenti echo és tee parancsban létrehozottakhoz hasonló parancssorral kap root jogosultságokat.

Miután bejelentkezett, látni fogja, hogy csak a börtön létrehozásakor kapott parancsokhoz férhet hozzá. Ha több parancsra van szüksége, manuálisan kell hozzáadnia őket.

JEGYZET: Mivel tartalmazza a bash shellt, hozzáférhet az összes bash beépített parancshoz. Ez lehetővé teszi, hogy kilépjen a börtönből az exit paranccsal.

Következtetés

Ez az oktatóanyag kitért arra, hogy mi is a chroot börtön, és hogyan használhatjuk azt arra, hogy elszigetelt környezetet hozzunk létre a fő rendszerből. Az útmutatóban tárgyalt technikákkal elszigetelt környezeteket hozhat létre a kritikus szolgáltatásokhoz.

A tanultak gyakorlásához próbáljon meg létrehozni egy apache2 börtönt.

CÉLZÁS: Először hozzon létre egy gyökérkönyvtárat, adja hozzá a konfigurációs fájlokat (etc / apache2), adja hozzá a dokumentum gyökerét (/ var / www / html), adja hozzá a bináris fájlt (/ usr / sbin / apache2), végül adja hozzá a szükséges könyvtárakat (ldd / usr / sbin / apache2)

Shadow of the Tomb Raider for Linux Tutorial
A Shadow of the Tomb Raider a Tomb Raider sorozat tizenkettedik kiegészítője - az Eidos Montreal által létrehozott akció-kaland játék franchise. A ját...
Az FPS növelése Linux alatt?
Az FPS jelentése Képkocka másodpercenként. Az FPS feladata a videolejátszások vagy játékteljesítmények képkockasebességének mérése. Egyszerű szavakkal...
A legnépszerűbb Oculus App Lab játékok
Ha Oculus fülhallgató-tulajdonos, akkor tisztában kell lennie az oldalsó töltéssel. Az oldaltöltés a nem áruházi tartalom fejhallgatóra történő telepí...