Bezpečnost v Unixu

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Bezpečností v Unixu je myšlena bezpečnost v unixových nebo unix-like operačních systémech. Bezpečné prostředí je dosahováno nejen návrhem konceptu těchto operačních systémů, ale také s pomocí pozorných uživatelů a administrátorských praktik.

Návrh konceptu

Přístupová práva

Jedním ze základních znaků těchto systémů je systém přístupových práv. Všechny soubory v unixových souborových systémech mohou dovolovat různý přístup k souborům na základě určených přístupových práv. +more Přístupová práva souboru jsou obvykle nastavována pomocí příkazu chmod a zobrazované příkazem ls. Například: -r-xr-xr-x 1 root wheel 745720 Nov 28 2011 /bin/sh Unixová práva povolují přístup k souboru různým uživatelům - uživatelé mohou tvořit skupiny a ty mají různá přístupová práva. Složitější unixové souborové systémy obsahují Access control list (seznam kontroly přístupu) - koncept, který umožňuje udělovat práva vícero uživatelům nebo skupinám. Např. : /pvr [u::rwx,g::r-x,o::r-x/u::rwx,u:Petr:rwx,g::r-x,m::rwx,o::r-x] V tomto příkladě, který je výsledkem příkazu chacl, jsou uživateli Petr udělená zapisovací práva na složku /pvr.

Skupiny uživatelů

Uživatelé Unixových operačních systémů často patří do skupin se specifickými přístupovými právy. To umožňuje seskupovat uživatele podle toho, jak velká práva mají mít. +more Mnoho unixových implementací přidává další úroveň ochrany vyžadováním členství ve wheel user privileges group, pokud chtějí používat příkaz su.

Problémy

Většina unixových a unix-like systémů má účet nebo skupinu, která uživateli umožňuje kompletní kontrolu nad systémem. Takovýto účet se nazývá root. +more Pokud přístup k tomuto účtu získá nechtěný uživatel, znamená to úplný průnik do systému. Pro administraci systému je ale účet root nutný a z bezpečnostních důvodů není užíván pro běžné potřeby. Používání tohoto účtu lze monitorovat. Kdo zná televizní postavu Supermana, může si účet root představit pomocí následujícího příkladu: ::Uživatel root účtu je jako Superman, přičemž má i běžný účet - jako Clark Kent. Clark Kent se stává Supermanem jen tehdy, když je to potřebné k záchraně lidí. Poté se znovu vrátí do svého "převleku". Root přístup by měl být používaný stejně.

Uživatelské a administrativní techniky

Unix má velmi mnoho nástrojů, které dokážou zlepšit bezpečnost, pokud jsou uživateli a administrátory správně použity.

Hesla

Výběr silného hesla a jeho střežení jsou pravděpodobně nejdůležitější věci, které může uživatel udělat pro zvýšení bezpečnosti Unixu. V Unixových systémech jsou nejdůležitější informace o hesle uloženy v souboru /etc/passwd. +more Tento soubor udržuje přehled o uživatelích a jejich hlavních nastavení. Hesla, respektive hashe hesel, mohou být také uloženy v tomto souboru. Záznamy v /etc/passwd zastupují vždy jeden řádek a mají následující formu: nickname:password_hash:UserID:GroupID:Complete_Name:home_dir:shell_bin Například: xfze:$1$zuW2nX3sslp3qJm9MYDdglEApAc36r/:1000:100:José Carlos D. S. Saraiva:/home/xfze:/bin/bash Od doby kdy všichni uživatelé musí mít práva na čtení tohoto souboru (aby systém mohl zkontrolovat přihlašovací heslo), vznikl jeden bezpečnostní problém: každý si mohl číst hashe uživatelských hesel. K vyřešení tohoto problému vznikl soubor /etc/shadow k uložení hashe hesel, ke kterému práva na čtení má pouze root. Při utajovaní hesel, druhá položka v řádku v souboru /etc/passwd (hash hesla) je nahrazená "x", která říká systému, aby našel příslušné heslo ze souboru /etc/shadow. Soubor /etc/shadow obvykle obsahuje právě dvě hodnoty: xfze:$1$zuW2nX3sslp3qJm9MYDdglEApAc36r/::::: Zbylá políčka v souboru /etc/shadow obsahují: # Minimální počet dní mezi změnami hesla # Maximální počet dní, než musí být heslo změněné # Počet dní s varováním předtím než musí být heslo změněné # Počet dní, po kterých musí být heslo změněné, jinak se účet stane nepoužitelný # Datum (vyjádřené jako počet dní od 1. ledna 1970) kdy platnost účtu vyprší Tyto hodnoty mohou být použité na zvýšení Unixové bezpečnosti přinucením uživatele zabývat se hesly.

Uživatelé a účty

Administrátoři by měli okamžitě mazat staré nepoužívané účty. * su, sudo, ssh

Softwarová údržba

Patchování

Operační systémy, stejně jako každý software, mohou obsahovat chyby žádající opravy nebo mohou být vylepšované přidáváním nových funkcí. Bezpečné patchování operačního systému vyžaduje, aby software pocházel z důvěrného zdroje a nebyl pozměněn před zabalením do balíčku. +more Mezi běžné metody pro ověřovaní, zdali patche nebyly pozměněny, patří použití kryptografického hashe, MD5 nebo použití read-only média. Z bezpečnostního úhlu pohledu, specifikace metody balení, jako je například RPM Package Manager formát původně z Red Hat Linuxu, nejsou až tak důležité jako zabezpečení integrity samotného patche.

Distribuce zdrojových kódů

Distribuce zdrojových kódů umožňuje prohledat kód z důvodu podezřelého obsahu. Minusem ale je, že uživatel musí být schopný vykonat bezpečnostní analýzu kódu sám.

RPM Balíčky

Linuxové distribuce, které používají RPM Package Manager formát pro zabezpečení základní funkcionality a softwarových updatů, využívají MD5 a GPG pro zabezpečení obsahu. Hodnoty hashe jsou zabaleny spolu se soubory RPM a ověřované když je balík instalován.

Debian Balíčky

Linuxové distribuce, které používají Debian . deb balíkovací formát pro zabezpečení základní funkcionality a softwarových updatů, využívají GPG podpisy pro zabezpečení obsahu. +more Podpis je vypočítaný v momentě, kdy je balík vyrobený a ověřovaný později, kdy je balík instalován.

Ostatní prodejci a distribuce

Bez ohledu na prodejce nebo distribuci, všechny softwarové distribuce by měly poskytovat mechanismus na ověření, zdali je software legitimní a nebyl modifikován od data, kdy byl původně zabalen.

Služby

Nepotřebný software by neměl být instalován ani konfigurován v systému. Software, který není dlouho využíván, by měl být kompletně odstraněn. +more Identifikace běžných služeb * netstat -na * lsof * nmap * sockstat -4 (FreeBSD) Příkazy inetd a xinetd se chovají jako tzv. super-servery pro síťové protokoly, např. rlogin, telnet, FTP atd. Vypnutí nepotřebných služeb * použitím chkconfig na Red Hat Linux * použitím /etc/rc. conf a /usr/local/etc/rc. d na FreeBSD (/etc/rc. local) * použitím rc-update na Gentoo Linux Tento přístup je běžně nazýván tzv. proaktivní bezpečností. Existují operační systémy, které jsou tzv. přirozeně bezpečné. Mimo jiné, volné BSD distribuce (FreeBSD, NetBSD a OpenBSD) jsou proaktivně bezpečné. Příklad výstupu příkazu netstat na NetBSD 3. 0 pracovní stanici: $ netstat -a Active Internet connections (including servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost. smtp *. * LISTEN tcp 0 0 *. ssh *. * LISTEN Active Internet6 connections (including servers) Proto Recv-Q Send-Q Local Address Foreign Address (state) tcp6 0 0 localhost. smtp *. * LISTEN tcp6 0 0 *. ssh *. * LISTEN Active UNIX domain sockets Address Type Recv-Q Send-Q Inode Conn Refs Nextref Addr c0d10d80 dgram 0 0 0 c0cd8680 0 c0cb7000 -> /var/run/log c0cb7000 dgram 0 0 0 c0cd8680 0 0 -> /var/run/log c0cd8680 dgram 0 0 cb9639e8 0 c0d10d80 0 /var/run/log.

Následující příklad je z BSD systému: $ sockstat -4 USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS root sendmail 569 4 tcp localhost. smtp *. +more* root sshd 593 4 tcp *. ssh *. *.

Ukazuje, že na tomto stroji služba SSH naslouchá veřejnému síťovému rozhraní počítače. Sendmail naslouchá jen loopback rozhraní. +more Přístup k službě může být dále omezený použitím firewallu.

Reference

Externí odkazy

[url=https://web. archive. +moreorg/web/20061004152353/http://www. dsm. fordham. edu/~moniot/Classes/InternetWebF00/unix-security/unix-security. html]Model Unixové bezpečnosti pro administraci web serveru[/url] Robert K. Moniot 2000 * [url=https://web. archive. org/web/20060624041651/http://www. alw. nih. gov/Security/Docs/network-security. html]Přehled architektury UNIX Network Security (síťové bezpečnosti Unixu)[/url] Robert B. Reinhardt 1993 * [url=http://blog. anantshri. info/2007/08/27/how-to-change-root-password-in-debian/]Jednoduchý návod na změnu hesla v Debianu[/url] - povinné čtení pro administrátory, pokud se chtějí vyhnout crackerům * [url=https://web. archive. org/web/20060613193649/http://andercheran. aiind. upv. es/toni/unix/index_en. html]Materiály k bezpečnosti Unixu[/url].

Kategorie:Unix Kategorie:Počítačová bezpečnost

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top