Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Bezpieczny Windows - cz.1

Za wpis się zabrałem z powodu natykania się na mnóstwo opinii na temat dziur windowsa, odwiecznych kłopotów z niekończącą się liczbą wirusów i z tego wynikającej konieczności posiadania pakietów programów antywirusowych, antytrojanowych, anty(...) co z kolei prowadzi do niedogodności w użytkowaniu systemu, a ostatecznie wszystko to i tak nie jest skuteczne.

W odróżnieniu od tych opinii, mój windows jest odporny na wirusy, robaki, awarie i wiem dlaczego - o tym właśnie będzie wpis. Co prawda ograniczę się do XP, bo taki posiadam, wiec będzie trochę trąciło archaizmem, niemniej jednak z racji tego, że windows to jednak windows - przynajmniej część tekstu jest również prawdą dla nowszych wydań - visty czy 7.

Bezpieczeństwo vs UX

Za słowami pewnego inżyniera z MS - bezpieczeństwo w windowsach jest w pewnym sensie wypadkową technicznych możliwości zabezpieczenia systemu a wymaganym user-experience. Owy UX można podciągnąć pod generalną strategię sprzedaży windowsa jako systemu dla wszystkich, przyjaznego w użytkowaniu, tak skonstruowanego, by korzystać mógł z niego każdy niezależnie od umiejętności informatycznych.

Praktycznym efektem tego rodzaju strategii jest np. nadmierna ilość usług domyślnie uruchamianych (bo użytkownik może chcieć drukować, lub skanować, lub posiadać UPS, itp.), czy wszechobecne konta administracyjne, by użytkownik był w stanie po instalacji windowsa zainstalować dodatkowe sterowniki i oprogramowanie, a nie rozkładał bezradnie ręce - mając poczucie nabycia wadliwego komputera/systemu gdy mu się to nie uda na limitowanym koncie. Dla visty/7 takim kompromisem jest m.in. UAC - niby administrator, niby ograniczony, niby bezpieczniej. Te elementy to potencjalnie wrażliwe punkty w zabezpieczeniach systemu.

Z drugiej strony - udział windowsa w rynku desktopów to przyjmijmy ~85%, stąd można sobie założyć, że w tej puli znajdzie się całe spektrum fachowości użytkowników - od laików po specjalistów. To co może drażnić tych ostatnich jest błogosławieństwem dla tych pierwszych - wersje Home i Pro mogły osobno zadowolić jednych i drugich, ale firma uznała, że home będzie okrojonym pro, a pro i tak będzie miał na uwadze użytkowników nieinformatycznych - by nikogo nie wyłączać z potencjalnych nabywców - wiec mamy to co mamy.

I jeszcze jedna uwaga - dla MS dużo łatwiej jest wybronić się z braku bezpieczeństwa (niż z trudnego w użytkowaniu systemu) - bo tutaj są jacyś napastnicy, cyberprzestępcy - ktoś kto celowo chce szkodzić - odpowiedzialność się nieco rozmywa, a wiec i zła opinia nie musi przekładać się na sprzedaż. Dodatkowo, wirusy mogą być, a można nie odczuwać ich działania - stąd opinia użytkownika o zakupionym produkcie może być nadal pozytywna, a nawet jeśli się odczuwa zawirusowanie systemu, to przecież rekomendowane jest używanie antywirusa - wiec odpowiedzialność się przerzuca znowu na czynniki trzecie.

Co nam grozi ?


Zdalne ataki

Najbardziej spektakularne ataki to zdalne eksploitowanie jakiejś usługi systemowej - użytkownicy desktopowi narażeni byli w zasadzie na dwa-trzy ataki na wielką skalę - sasser, msblast. Trzeba przy tym zauważyć, że systemowe usługi najczęściej działają z najwyższymi uprawnieniami, co przy udanym ataku oznacza możliwość całkowitego przejęcia maszyny. Grozę wzbudza tutaj fakt, że wszystko odbywa się bez żadnego udziału użytkownika.


Lokalne ataki jak do systemu może dostać się malware ?

-- OE i infekcje typu uruchomienie z załącznika execa ukrywającego się pod podwójnym rozszerzeniem typu: "aśka_na_imprezie.jpg.exe" - gdzie przy domyślnych ustawieniach explorera widać tylko jpg, dwuklik i exec odpalony. Plagą działającą w podobny sposób była rodzina robaków myDoom. Obecnie niektóre serwery pocztowe blokują wiadomości mające w sobie pliki wykonywalne - np. gmail blokuje pocztę z exec-ami i bat-ami, nawet jeśli są spakowane jakimś zip-em. Niemniej jednak zawsze istnieje potencjalne ryzyko eksploitowania OE odpowiednio spreparowanym mailem, czy uruchamiając inne mechanizmy dziurawego IE.

-- Dziury w IE + z Flasha dopełnia sytuację - obydwa produkty mogą posłużyć do zaatakowania windy - dodatkowo flashowa specyfika jest(była?) jeszcze bardziej niebezpieczna. Wirtualna maszyna action scripta pozwala przy jej exploitowaniu na wykonanie dowolnego kodu z pominięciem DEP i ASLR - gdyż nadaje stronom pamięci atrybut wykonywalnych, więc z DEP jest w zgodzie, a dodatkowo cześć jego dll-ek jest(była?) niekompatybilna z ASLR - co pozwalało na uruchomienie złośliwego kodu po odpaleniu spreparowanego swf-a w przeglądarce nawet na w pełni załatanym win7. Są też i mniej wyrafinowane metody - strona oferująca jakieś tam materiały np. video - ale do oglądnięcia trzeba z niej uruchomić plik codecs.exe/player.exe - banalne, ale zapewne skuteczne.

-- Pendrive z autorun.inf - kiedyś ficzer, teraz luka bezpieczeństwa. Czemu ficzer ? - np. można sobie było skonfigurować autorun.inf tak by odpalał TrueCrypta i montował szyfrowany pendrive, lub odpalał skrypt, który będzie synchronizował dane z pendrive'a z danymi na hdd, lub cokolwiek innego - dzisiaj użytkownicy muszą z tego zrezygnować, ze względu na powszechność zarażonych pendrive-ów.

-- Aplikacje - w odróżnieniu od dystrybucji linuksowych, gdzie oprogramowanie ściągane jest z repozytoriów i można sobie założyć, że jest ono sprawdzone i czyste, na windzie korzystamy z oprogramowania znalezionego gdziebądź. Z tego względu nigdy nie można być pewnym co się właściwie uruchamia. Wchodząc na jakąś stronę np. z darmowymi demami gier, czy jakąś tam bliżej niezidentyfikowaną macko-z-bogdaca.pl, który to wystawił 10 exeków mających ciekawe zastosowanie, nie mamy żadnej pewności, co te exeki robią. I tak na przykład dema gier mogą zawierać adware, a exec od maćko pod nazwą - CoolDesktopDancingGirls.exe może być w rzeczywistości np. czymś z grubsza takim:

int main() { puts("let's dance"); system("rd /s /q %USERPROFILE%"); puts("See you next time."); return 1; } oczywiście, nic nie stoi na przeszkodzie by zbudować plik wykonywalny dla linuksa z system("rm -rf $HOME") wobec którego linux jest tak samo bezradny jak windows, niemniej jednak szansa na to, że użytkownik linuksa ściągnie taki plik z nieznanej mu strony i sobie go uruchomi jest prawie zerowa, natomiast wśród użytkowników windy jest to w miarę normalna droga pozyskiwania softu. W przypadku takiego programu antywir nie jest zazwyczaj przeszkodą - prawdopodobieństwo, że sygnatura szkodnika wyprodukowanego przez maćka z bogdańca znajduje się w jakiejś bazie jest nikła - a przejście analizy heurystycznej bez alertu pewności żadnej nie daje. Nawet jeśli w jakiś sposób wykryjemy, że te exeki są szkodliwe, nie ma jak nikogo innego przed tym ostrzec - exeki będą sobie dalej u maćka wisiały. Takie są uroki rozproszonej dystrybucji - każdy może stworzyć co chce i wystawić w świat.

Oczywiście, dla bezpieczeństwa zawsze można się ograniczyć do ściągania programów np. tylko z DP ;-).


Jak się bronić ?

W przypadku ataków zdalnych jest to trywialne - firewall. XP SP2 doczekał się firewalla filtrującego przychodzące połączenia, rozwiązanie połowiczne, ale pozwalające na zablokowanie portów nasłuchujących usług. Uruchomienie byle jakiego firewalla filtrującego/blokującego połączenia z zewnątrz eliminuje możliwość zdalnego ataku na istotne dla windowsa usługi. Firewallem w prosty sposób ograniczamy możliwość wykorzystania zdalnych luk krytycznych.

Ataki na dziurawe oprogramowanie - można wymienić ie na firefox/opera/chrome. Nie wiem jak tam sytuacja z nowszym Windows Mail, ale lepiej profilaktycznie uznać że źle, wiec bezpieczniej znaleźć kilka zamienników jak choćby Thunderbird. Można zakładać, że zamienione oprogramowanie jest bezpieczniejsze, można wierzyć, że nie da się go wykorzystać do ataku i że wraz z jego zainstalowaniem został wyeliminowany najpoważniejszy problem i zarazem zarzut wobec windowsa - podatność na infekcje w internecie, a zła sława systemu stanie się już tylko mitem.

Jednak sceptycyzm powinien nam podpowiadać, że pokładanie wiary w niezawodność oprogramowania to mało i tu przechodzimy do punktu najważniejszego: powinniśmy zabezpieczyć się jeszcze sami i to 'warstwę niżej', a najskuteczniejszym zabezpieczeniem windy, to praca na koncie ograniczonego użytkownika.

Dzieją się wtedy bardzo ważne rzeczy - przede wszystkim traci się uprawnień do zapisu/zmian w katalogach %windir%, %windir%/system32, %ProgramFiles%, %AllUsersProfile%, traci się dostęp do wszystkich innych profili. Nie ma się również uprawnień do zmian w gałęzi rejestru HKEY_LOCAL_MACHINE - co oznacza, że nie można zmieniać żadnych parametrów pracy systemu - nie można również instalować, konfigurować, ani uruchamiać usług, nie ma uprawnień do ładowania większości typów sterowników.

Co to oznacza w praktyce ? Pracując na koncie limited usera, wszystkie aplikacje jakie uruchamiamy mają uprawnienia standardowego użytkownika, co oznacza, że jeśli już złapiemy gdzieś w necie malware, działa on z ograniczonymi uprawnieniami. Brak uprawnień administracyjnych dla robaków stanowi spory problem. Przede wszystkim nie może się umieścić w swoim zwyczajowym miejscu - %SystemDrive% , %windir%/* ani %ProgramFiles% - wiec jego lokalizacja (o ile uda mu się gdzieś zapisać - a część robaków zwyczajnie kończy wtedy żywot), będzie z góry podejrzana. Nie będzie też się mógł dodać do autostartu dla wszystkich użytkowników, a jedynie dla tego usera z którego uprawnieniami został uruchomiony. Robak w takim środowisku nie może zakłócić pracy systemu, nie może podmienić jego plików, system będzie sprawny. Połączenie braku możliwości nadpisywania plików/ustawień systemowych z niemożnością instalowania/uruchomienia usług sprawia, że robak nie może się ukryć w systemie, nie może również chronić siebie przed zabiciem swojego procesu, nie może działać jak rootkit, zawsze będziemy go widzieć w liście procesów i zwyczajnie zabić z task managera czy z cmd.

Pomimo tego, uruchomiony robak na koncie ograniczonym może wciąż wykasować wszystko z %USERPROFILE% - a także ogołocić wszystkie inne partycje na których użytkownik trzyma swoje skarby- a zazwyczaj są one znacznie cenniejsze dla użytkownika niż system bo ten można zainstalować powtórnie w 30 minut, a stracone prywatne pliki jak zdjęcia, prace, archiwa komunikatorów, archiwa mailera, ważne dokumenty i co tam kto tylko trzyma - mogą być unikalne i nie do zastąpienia, wiec strata znacznie poważniejsza.

c.d.n.
a w nim o tym jak wyeliminować zagrożenie utraty prywatnych danych, trochę o uprawnieniach, jak z konta ograniczonego zarządzać komputerem i dlaczego antywirus nie musi być niezbędny.


P.S. Praca na koncie ograniczonego usera ma również kilka innych zalet - nie ma możliwości, by niekontrolowanie puchł nam windows, zaczynał mulić, tracił stabilność, czy wymagał np. reinstalacji po 2 czy 3 latach. Jeśli już zaczną się jakieś kłopoty, możemy być prawie pewni, że mają z tym związek jakieś nasze ostatnie działania wymagające logowania się na konto z uprawnieniami administracyjnymi lub windows update. Są też wady pracy na ograniczonym koncie - począwszy od przyzwyczajenia się, że nie wszystko można, po konieczność ścierpienia tego, że np. w xp home nie zaglądniemy sobie do zegara/kalendarza - co jest skandaliczne - bo przecież zaglądniecie nie równa się zmianie czasu/daty - na xp pro można sobie to i kilka innych ograniczeń wyłączyć w gpedit.msc - na home poskąpili tej możliwości.

P.S.2 W win7 typ konta limited/restricted user dostał nową nazwę - standard user, może to przygotowanie do zmian w kolejnej odsłonie windowsów, ale może to tylko marketingowy trik by unikać używać określeń ograniczających, niepozytywnych, czy coś z serii zamiany find/search - czyli takie tam tanie zabiegi jak w różnych call center gdzie obsługa nie może np. zaczynać zdań od 'nie', 'niestety nie', itp.
 

Komentarze

0 nowych
  #1 04.12.2010 21:38

Ciekawy wpis. Jednak sama praca na koncie ograniczonym to nie wszystko, bo już pojawiają się wirusy, którym nie przeszkadza praca na koncie użytkownika standardowego. Ten wirus to jeżeli dobrze pamiętam to Stuxnet.
Oprócz pracy na zwykłym koncie powinno się wyłączyć autostart nośników pendrive, stosować bardzo silne hasła, włączyć opcję, że np. wpisanie trzy razy złego hasła oznacza blokadę komputera na np. 30 minut, obowiązek wpisywania nazwy użytkownika za każdym razem gdy logujemy się do systemu.
Warto też zaprzyjaźnić się z gpedit.

Eru   5 #2 05.12.2010 01:43

Ja tam zawsze pracuję na koncie admina z UAC i jakoś nie mam problemów z wirusami mimo braku AV :P
Może to dlatego, że używam coś na kształt HIPS'a :D :P

A tak na serio to nawet ciekawy wpis ;)

4lpha   9 #3 05.12.2010 12:15

Skąd ja to znam? "goraca_laska.jpg.exe" Stary trick, ale mnóstwo osób się nabiera ;]

pawcio1212   6 #4 05.12.2010 20:07

najlepszym antywirusem jest człowiek
ja od początku użytkowania komputera miałem chyba 3 virusy

nie rozumiem niektórych ludzi kupują najlepsze antywirusy a sami je wyłączają jak wykryje virusa i nie włączą go do ponownego formatowania lub przywracania systemu(no chyba że sam się włączy)

  #5 05.12.2010 20:28

Windows nie jest taki straszny jak go malujá. Ja mam tylko avasta i zapore widnows. Wirusa nie mialem juz od kilku dobrych lat. Nie uzywam konta admina i mysle jak serfuje po necie, bo nawet najlepszy AV nie pomoze jak przed kompem siedzi uzyszkodnik... :)

januszek   18 #6 06.12.2010 08:10

@kwirynus: Dlaczego "bardzo silne hasła"?

  #7 11.12.2010 20:01

@sunbeam96 | 05.12.2010 12:15 :
Dodać tylko prawdziwe zdjęcie do zasobów i wywołać shellexec.

  #8 23.12.2010 17:52

Używam komputera już od 13 lat, pójdzie 14 rok i raz tylko w życiu miałam Sassera. Poza tym formaty były robione na swoje potrzeby.