[ MladenIsakovic @ 07.02.2007. 15:14 ] @
Kako je Richard Stiennon napisao u svom blogu , što je sistem komplikovaniji, to ga je teže učiniti sigurnim. Kao mera "komplikacija" u ovom slučaju je broj sistemskih poziva. Što ih više ima, veća je mogućnost da je jedan od njih ranjiv, a samim tim, potencijalna meta napada.
Evo i ilustracije poziva kod Apache-a na Linuxu i IIS na Windows serveru . Prosudite sami šta je komplikovanije/manje sigurno.

Vest preneta sa LugoNS-a
[ fearless @ 08.02.2007. 07:10 ] @
Ne vidim vise svrhu pokretanja ovakvih tema. Sad ce doci cynique i pokopati te zivog argumentima i onda
ce se tema oduziti na vise strana (posle druge strane skrece se u nekom desetom pravcu, posle trece
idu vredjanja i tako dalje...).
[ Ivan Dimkovic @ 08.02.2007. 08:32 ] @
Da, broj ranjivosti IIS-a 6 vs. Apache bas potvrdjuje ovu "teoremu" :)
[ Mitrović Srđan @ 08.02.2007. 09:53 ] @
Neee Dimkovicu apache je popularniji pa je vise podlozan exploatisanju ;)
[ cynique @ 09.02.2007. 10:05 ] @
IIRC, već je netko bio ostavio taj link na ovom podforumu.

Teško da se broj pozvanih sistemskih poziva može uzeti kao kvalitativna mjera "inherentne nesigurnosti". Po tom bi rasuđivanju neki mikrokernel sa po 10-ak sistemskih poziva bio neusporedivo sigurniji od bilo kojeg monolitnog OS-a. Pitanje je samo na koji je način exploitabilni buffer overflow u sistemskom pozivu manje opasan o exploitabilnog buffer overfowa u user-mode gradivnoj komponenti OS-a. Ja ne vidim baš nijedan, volio bih da me netko prosvijetli :)

Nadalje, jedna jako važna sitnica koju autor ovog bloga ne spominje, jest da IIS ima kernel-mode HTTP procesor (http.sys) preko kojeg komunicira preko specijalnih sistemskih poziva (koje registrira sa KeAddSystemServiceTable() sa Index=IIS_SERVICE_INDEX) kako bi poboljšao performanse. Apache nema kernel-mode komponentu i stoga je jako glupo mjeriti broj korištenih sistemskih poziva dvaju aplikacija koje toliko odudaraju u dizajnu, i zaključak generalizirati na cijelu platformu. Ista linija zaključivanja vrijedi i ovdje - sigurnosni propust u HTTP parseru jednako je opasan u oba servera, bez obzira nalazio se u sistemskom pozivu ili user-mode biblioteci.

Također, ovi priloženi grafovi izgledaju kao da su generirani iz IDA-e preko WinGraph plugina, a sve što taj graf kaže jest odnos međuovisnosti između funkcija, ne "broj pozvanih sistemskih poziva". Stvarno me zanima odakle autoru takav zaključak.

U praksi se sigurnost mjeri ovako:

http://secunia.com/graph/?type=adv&period=all&prod=1438

http://secunia.com/graph/?type=adv&period=all&prod=73