./+DEINSTALL: Permission denied

Miroslav Lachman 000.fbsd at quip.cz
Wed May 31 14:31:33 CEST 2006


Diky za tak obsahlou odpoved!

Dan Lukes wrote:
> 	Zadne "vyse popsane" pripady se v tomto emailu neobjevily.
[...]


Tim "vyse popsane" jsem mel na mysli pripad, kdy nekdo pres FTP/HTTP 
nahraje na server soubor, ktery se pak pomoci diry v SW pokusi spustit. 
Chapu, ze je to hodne obecne, ale slo mi o ten typ utoku.
U awstats slo konkretne o to, ze se nahral nejaky soubor do docasneho 
adresare (v zavislosti na konfiguraci systemu/daemonu to bylo patrne 
/tmp nebo /var/tmp) a z neho se pak pokusi soubor spustit s opravnenim 
http daemona / cgi scriptu. Vse to bylo zpusobeno nedostatecnym 
osetrenim vstupnich parametru cgi scriptu, takze se pres neho daly 
spoustet "libovolne prikazy".
Neco podobneho se patrne muze stat (v obecne rovine) s jakymkoliv PHP 
scriptem (PHP je na vsech tech serverech v provozu a nekde je bohuzel 
bez safe_mode, ktery jinak omezuje nainstalovanou webaplikaci takovym 
zpusobem, ze je nefunkcni)
Ale chapu, ze se na obecny pripad, neda konkretne odpovedet, takze to 
asi uz nechame byt.

> 
> 	Ty ve skutecnosti hledas zpusob, jak se branit proti nespecifikovanym 
> (nekonkretnim) napadenim. A na to neexistuje konkretni rada - jen 
> nekonkretni. Maximalne omezit pro jednotlive komponenty OS rozsah 
> cinnosti, ktere mohou delat (a co nejvice je od sebe co izolovat 
> navzajem).

Ano, pokousim se nastavit system tak, aby pripadny utok byl co nejvice 
obtizny. Tedy omezit vsechno na funkcni minimum. Do nedavna jsem 
povazoval nosuid a noexec na /var/db za jeste fungujici omezeni, ted 
pozoruji, ze pro neco uz je to problem omezujici normalni funkcnost 
systemu, takze bud nosuid a noexec prestanu pouzivat, nebo to vyresim 
symlinkem / samostatnou partition.

> 	Muzu ti na toto tema doporucit docela peknou prednasku ;-)

Prednasku si necham mile rad doporucit a bude-li to v mych casovych / 
financnich moznostech, rad se ji zucastnim.

>>Ma napriklad 
>>smysl zacit studovat ACL / MAC? (mam o tom jen velice povrchni predstavu)
> 
> 
> 	Urcite to ma smysl. Jsou to metody, jak "jemne" nastavovat prava. 
> Napriklad s pomoci mac_portacl (man mac_portacl) lze dosahnout toho, ze 
> proces bude schopen zacit sitove poslouchat na konkretnim sitovem portu 
> s cislem nizsim nez 1024 bez toho, ze bude potrebovat bezet jako 
> superuzivatel. 
[...]
> 	Treba takove anonymous-only FTP je typickym kandidatem na provoz v 
> tomto rezimu. A WWW server muze byt docela dobre hned druhym. I named je 
> naprosto jasny kandidat. S trochou prace i sendmail.


ACL a MAC mam uz dlouho na seznamu "zajimavych zalezitosti k 
prozkoumani", jen jsem na to do dnes nenasel dostatek casu, takze tomu 
aspon ted priradim vyssi prioritu.
V souvislosti s tim portem < 1024 bych mel jeste jednu otazku - od 
FreeBSD 5.1 je mozne pouzit sysctl:
net.inet.ip.portrange.reservedlow
net.inet.ip.portrange.reservedhigh

cimz by se dalo napriklad umoznit beh Apache a FTP bez potreby spousteni 
jako root. Samozrejme to pak zase znamena i nejake riziko v tom, ze i 
neprivilegovany uzivatel muze spustit sluzby na techto portech. je v tom 
vsak nejake realne riziko prevazujici nad prinosem u stroje, kde krome 
administratora nema nikdo jiny shellaccount?

Pripadne druha otazka na Apache a ProFTPd - lze je pri prenastaveni 
net.inet.ip.portrange.* nebo pri pouziti mac_portacl spoustet bez 
rootovskych prav aniz by bylo potreba je nejak upravovat (rekompilace / 
zmena konfigurace) (predpokladam, ze to lze, ale kdyby se v konferenci 
vyskytoval nekdo, kdo s tim ma osobni zkusenosti, tak uvitam pripadne 
rady / poznatky)

Miroslav Lachman



More information about the Users-l mailing list