přejít na obsah přejít na navigaci

Linux E X P R E S, Správa linuxového serveru: Rootkity

Správa linuxového serveru: Rootkity

debain_notext.png

Když se útočníkovi podaří proniknout na váš server a získat patřičná práva, obvykle nainstaluje tzv. rootkit, tedy sadu nástrojů pro snadnější ovládnutí kompromitovaného počítače. Co přesně rootkity jsou a jak se jim bránit, to se dozvíte v tomto dílu seriálu.


Úvod

Rootkit je sada nástrojů zajišťující několik věcí. Nejčastěji se v souvislosti s nimi zmiňuje skrývání přítomnosti útočníka (a rootkitu samotného) v systému. Děje se tak obvykle modifikací standardních nástrojů jako ps, ls, netstat tak, aby neukazovaly soubory, procesy a síťová spojení patřící rootkitu nebo jeho „uživateli“.

Funkce rootkitu ale také obvykle zahrnují vytvoření zadních vrátek, tedy mechanismu, kterým může útočník získat do kompromitovaného systému pozdější přístup. Rookit také může provádět různé „šmírování“, tedy např. zaznamenávání přístupových údajů uživatelů, když se přihlašují, zaznamenávání stisků kláves atd. Kromě toho může obsahovat i nástroje na zametání stop, mazání logů a realizaci nejrůznějších typů útoků.

Jiný druh rootkitů používá místo modifikace systémových nástrojů LKM, tedy modulů jádra, které lze za běhu systému zavést. Po zavedení příslušného modulu může rootkit skrýt svou přítomnost efektivněji, modifikací systémových volání (syscall). Tím si zajistí, že bez ohledu na použitý nástroj nebudou komponenty rootkitu vidět.

Rootkity nejsou pouze doménou unixových systémů – existují i v systémech od společnosti Microsoft. Takové rootkity byly dokonce jednou využity společností Sony BMG jako „ochrana“ proti kopírování hudebních CD. Postiženo bylo dle Wikipedie přes sto titulů. Aby toho ještě nebylo málo, časem vyšlo najevo, že součástí „ochrany“ proti kopírování bylo i využití softwaru chráněného GNU/GPL a GNU/LGPL licencí, který byl samozřejmě využit v rozporu s licencí. Některé laptopy patrně sužuje nebo sužoval rootkit v BIOSu, který uměl zpřístupnit NTFS oddíl a nainstalovat se do Windows po spuštění počítače. Oficiálním důvodem byla údajně snaha o možnost vystopování ukradených notebooků, bohužel za cenu kompromitace systému a možnosti jedné firmy vzdáleně ovládat kvanta počítačů (ano, tomu se obvykle říká botnet). Ale to jen tak na okraj. Jak je vidět, rootkity se mohou dostat do vašeho systému nejrůznějšími cestami, nikoliv nezbytně ze sítě. Mohou být součástí instalovaného proprietárního softwaru, ale mohou být klidně i součástí svobodného softwaru, který někdo poupraví.

Běžná prevence

Do běžné prevence patří všechna základní pravidla zabezpečení serverů, tedy především znalost konfigurace daného serveru, všeho, co na něm běží, přehled o dění na něm (čtení logů). Sledování dění kolem Linuxu, zejména pak kolem vámi používané distribuce, sledování bezpečnostních hlášení. Pravidelná aktualizace, resp. alespoň brzká aplikace bezpečnostních záplat, dále izolace běžících služeb - buď pomocí oprávnění, nebo pomocí chrootu či virtualizace. Řízení přístupu k souborům a službám, použití firewallu. Silná hesla, omezený přístup k SSH (pouze z vnitřní sítě, VPN či z konkrétní IP adresy). Vhodné zacházení s uživateli, poskytování minima práv nutných k jejich činnosti. Pravidelné zálohování a testování záloh.

Důležité je mít pod kontrolou veškerý software, který na server instalujete. Riziko obecně představuje software stažený mimo distribuční repozitáře (které, alespoň v případě Debianu, mají všechny balíčky podepsané, takže není jednoduché je podvrhnout). Nedávno podobný problém postihl FTP server vsftpd, kam útočník propašoval zadní vrátka. Kdo si důsledně kontroloval GPG podpisy, popřípadě kontrolní součty, přišel na to. Rozhodně tedy software mimo distribuční repozitáře podrobte dostatečné kontrole, kontrolujte podpisy i kontrolní součty.

Napadení distribučních repozitářů je velmi málo pravděpodobné, i když ne úplně nemožné. Obvykle však něco podobného nelze přehlédnout, pokud alespoň trochu sledujete aktuality kolem Linuxu či vaší distribuce, jelikož se kolem toho nepochybně strhne patřičná bouře.

Vzdálené logování

Jelikož většinou logy sledujete pomocí nástrojů jako Logwatch nebo Logcheck, které zasílají zprávy jednou za delší dobu, není pro útočníka problém případné stopy v logu smazat hned po průniku (příslušný rootkit mu v tom může dokonce pomoci). Tomuto může zabránit technika zvaná vzdálené logování, tedy zasílání kopií všech zpráv na patřičně zabezpečený vzdálený server, a to okamžitě. V takovém případě, i když útočník smaže hlášky z napadeného serveru, hlášky uložené na vzdáleném, logovacím serveru, zůstanou k dispozici.

V případě syslogd (balíček sysklogd) nastavíte vzdálené logování následujícím způsobem. Na serveru (počítači, který bude přijímat hlášky ze vzdálených systémů) je potřeba povolit příjem zpráv v souboru /etc/default/syslogd, takto (změna se projeví po restartu logovacího démona):

SYSLOGD="-r"

Síťová komunikace probíhá na UDP portu 514, lze tedy doporučit vytvořit příslušná pravidla firewallu k omezení přístupu jen na ty počítače, ze kterých chcete přijímat logované hlášky.

Poté je třeba nastavit klienty. V případě těch je třeba upravit hlavní konfigurační soubor syslogu, tedy /etc/syslog.conf. Zde postačí místo cílového souboru pro uložení logovaných hlášek zapsat zavináč následovaný jménem nebo IP adresou serveru, takto:

*.=info;*.=notice;*.=warn;\
        auth,authpriv.none;\
        cron,daemon.none;\
        mail,news.none          @server.example.org

Po restartu logovacích démonů na klientech by mělo vzdálené logování fungovat a logy na serveru by se měly začít plnit hláškami z klientů. Jelikož hostname bývá součástí hlášek, není problém od sebe odlišit jak jednotlivé klienty, tak hlášky samotného serveru.

Nástroje pro sledování změn v souborech

Existují nástroje, které sledují změny v kritických souborech, a umožňují tak případnou kompromitaci systému detekovat. Mezi zástupce patří např. Tripwire nebo Aide.

Detektory rootkitů

Detektory rootkitů jsou specializované nástroje, které využívají nejrůznější techniky pro zjištění přítomnosti rootkitů v systému. Umí zjistit přítomnost známých rootkitů, ale hledají kromě stop konkrétních rootkitů i obecné stopy, tudíž teoreticky dokáží odhalit i přítomnost některých neznámých rootkitů. Je vhodné je používat spolu s nástroji pro sledování změn v souborech (viz výše). Mezi zástupce patří chkrootkit a rkhunter.

Závěr

Rootkity představují jedno z možných rizik, nikoliv však jediné. I když se útočníkovi nepodaří získat roota, stále má možnost nainstalovat nástroje sloužící k pozdějšímu snadnému přístupu (pomocí uživatelské cron tabulky zajistí jejich spuštění po restartu serveru), stejně jako nástroje určené pro útoky na jiné servery. Často se k tomu využívá IRC bot, který se přihlásí do nějaké chatovací místnosti, kde pak útočník vhodným příkazem zajistí provedení příslušných akcí (DDoS útok atd.). Jediná „dobrá“ zpráva v tomto případě je, že bez práva roota jsou síťová spojení i tyto procesy viditelné minimálně všemi ostatními uživateli.

V příštím díle představím podrobněji detektory rootkitů a osvětlím obecný postup, co dělat v případě kompromitace systému.

Nahoru

Odkazy

Příspěvky

Správa linuxového serveru: Rootkity
mnicky 15. 07. 2011, 13:37:55
Odpovědět  Odkaz 
k vyssie zmienenym antirootkitom by som pridal este: unhide

Přidat názor

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Top články z OpenOffice.cz

Michal Dočekal

GNU/Linuxový nadšenec a zastánce svobodného softwaru. Jeho pracovní náplň zahrnuje správu několika linuxových serverů. Snaží se být aktivním členem linuxové komunity, dlouhodobě vytváří dokumentaci pro začínající uživatele Linuxu.


  • Distribuce: Arch Linux
  • Grafické prostředí: Awesome

| blog



Public Relations

I ve velké firmě je místo pro startupového ducha

Michal BroučekMichal Brouček pracuje v plzeňské pobočce společnosti Siemens Advanta dva a půl roku jako softwarový inženýr a vedoucí vývojového týmu. Svou práci si velmi pochvaluje. Kromě technických záležitostí má na starosti i spokojenost svých kolegů v týmu a zajišťování celkové pohody na pracovišti. 

Pokračování ...



Public Relations

Safetica spustila SaaS verzi svého bezpečnostního softwaru s pravidelným předplatným

safeticaMladá tech­no­lo­gic­ká spo­leč­nost Safe­tica, která stojí za stej­no­jmen­ným soft­warem na ochra­nu před úniky dat (DLP – Data Loss Pre­ven­tion) a vnitř­ní­mi hroz­ba­mi (ITP – In­sid­er Threat Pro­tec­tion), tento rok spus­ti­la ostrý pro­voz nové SaaS ver­ze své­ho pro­duk­tu – Safe­tica NXT. Ta fun­gu­je pří­mo z clou­du bez potře­by in­s­ta­la­ce na za­ří­ze­ní a pla­tí se pro­s­třed­nict­vím pra­vi­del­né­ho před­plat­ného.

Pokračování ...


Redakční blog

Pavel Fric

Pavel Fric, 10. April

Zapojte se do tvorby distribuce Mageia

Podílejte se na vytváření balíčků pro Mageiu, dělejte, co je potřeba, staňte se baličem


Pavel Fric

Pavel Fric, 13. March

Lollypop

Lollypop je hudební přehrávač navržený, jak ukazuje jeho podoba, aby výborně zapadl do pracovního...


Pavel Fric

Pavel Fric, 26. February

QElectroTech

Kreslení elektrotechnických i jiných výkresů


Všechny blogy »


Public Relations

Malá bedýnka velkých možností vCube AiO TSP – kompaktní, ekonomické, bezpečné IT

vCubeV této malé kostce se skrývá vše, co potřebuje firemní IT. Systém vCube AiO, byť je kompaktní, poskytne nekompromisní výkon. Má silné procesory, dostatek operační paměti, velká výkonná úložiště, pro komunikaci využívá rychlou 10Gbit síť. Systém poskytuje dostatečný výkon pro provoz firemních virtuálních serverů a uživatelských pracovních stanic.

Pokračování ...