Program, który nie działa na żadnym z dobrze znanych, uprzywilejowanych kont

Żaden kod nie jest wolny od usterek. Jeśli jest napisany od zera, zawiera po prostu inne usterki, które mogą być mniej lub bardziej szkodliwe. Mogą też być identyczne ludzie często myślą w podobny sposób, więc zdarza się, że różni programiści popełniają te same błędy (opis eksperymentu badającego powstawanie usterek w programach znajdziesz w artykule Knighta, Levesona i St. Jeana, A LargeScale Experirnmt in NVersion Programming, FaultTolerant Computing Systems Conference 15).

Jest napisany na podstawie starego, dobrze przetestowanego kodu. Cały czas ujawniają się nowe problemy w starym kodzie. Co gorsza, stare problemy, które dotychczas nie zostały wykorzystane, zaczynają być celem ataków. Program będący od dawna w obiegu, zapewne nie jest podatny na niegdyś popularne ataki, ale trudno na tej podstawie wyrokować o jego odporności na ataki przyszłe.

Nie działa jako root/Administrator/LocalSystem. Program, który nie działa na żadnym z dobrze znanych, uprzywilejowanych kont, wcale nie musi być bezpieczny. Zyskujesz przynajmniej tyle, że jeśli wpadnie w amok, nie będzie miał pełnej kontroli nad twoim komputerem. Nie oznacza to bynajmniej, że możesz czuć się bezpieczny. Na przykład bez względu na wykorzystywane konto użytkownika, system doręczania poczty musi zapisywać wiadomości w skrzynkach pocztowych użytkowników. Jeśli napastnik przejmie kontrolę nad systemem doręczania poczty, będzie mógł zapełnić dyski albo sfałszować pocztę, niezależnie od konta używanego przez system. Wiele systemów pocztowych ma znacznie większe możliwości.

Usługi działające jako „nieuprzywilejowani” użytkownicy sprawiają dwa odrębne problemy. Pierwszy polega na tym, że przywileje wymagane do działania usługi wiążą się z ryzykiem. System pocztowy musi doręczać pocztę, a to jest z natury niebezpieczne.

Leave a reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>