RH Linux7.1: dva shelly v init[S] !?? (dlouhe)
Pavel Kankovsky
peak na argo.troja.mff.cuni.cz
Neděle Listopad 11 21:10:54 CET 2001
On Tue, 6 Nov 2001, Milan Kerslager wrote:
> U prepisu spustenych programu je to jinak. Pokud byste prepsal spustenou
> binarku, mohla by po vypadku stranky padnout na drzku (tj. do RAM by se
> zavedlo uplne neco jineho, nez by tam melo byt). Linuxove jadro tento
> problem resi tak, ze prepsat spusteny program proste nelze. Muzete ho ale
> prejmenovat a pak vytvorit binarku novou (tj. pri dalsim spusteni se
> spusti novy program).
>
> U knihoven tento mechanismus neni, ale mel by v nejake forme byt byt.
> Problem je v tom, ze kdyby to slo chranit stejne (tj. mmapovane soubory),
> byl by to snadny cil na DoS utok. Proto by to melo byt kombinovano s
> execute flagem, ktery neumozni takto ovlivnovat treba logy.
K mmap() lze pridat MAP_DENYWRITE, coz je ostatne presne to, co provadi
execve(). A opravte mne, jestli se mylim, ale to presne znemozni vsem
ostatnim do souboru zapisovat. Coz skutecne zpusobi DoS, ovsem neni to
uplna katastrofa, protoze logy uz vetsinou nekdo ma otevrene na zapis, a
tudiz to na nelze provest.
--Pavel Kankovsky aka Peak [ Boycott Microsoft--http://www.vcnet.com/bms ]
"Resistance is futile. Open your source code and prepare for assimilation."
Další informace o konferenci Linux