dostupnost syscallu stat64
Pavel Kankovsky
peak na argo.troja.mff.cuni.cz
Sobota Červen 5 12:46:55 CEST 2004
On Fri, 4 Jun 2004, Kasparek Tomas wrote:
> > potreboval bych zjistit, zda je syscall stat64 (lstat64) dostupny.
[...]
> pokd by to melo byt za behu, tak bych se podival na nejake rootkity co se
> napojuji na systemova volani jak je hledaji ony a tutuo tchniku pripadne
> pouzil (ale za behu to snad nepotrebujete)
Ale fuj.
Pokud je ukolem zjistit podporu syscallu stat64 v jadre, pak je spravne
reseni proste provest syscall(__NR_stat64,...). Pokud to vrati ENOSYS, pak
to ten syscall nezna. Pokud vrati neco jineho, pak ho zna. (Jediny problem
by mohl nastat u nekoho, kdo by si svevolne na __NR_stat64 umistil nejaky
soukromy syscall, ale to je problem toho dotycneho.)
Pokud je ukolem zjistit pritomnost funkce stat64() v pouzite verzi
libc.so.6, pak je v prvni rade potreba upozornit, ze zadou takovou funkci
neni mozno v libc.so.6 najit, protoze v dynamicke knihovne je misto ni
__xstat64() (propojovaci dily lze najit v /usr/lib/libc_nonshared.a).
Ale kdyz uz vime spravne jmeno, pak lze pouzit volani dlsym(RTLD_DEFAULT,
symbol) (viz dlsym(1)).
--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