211service.com
Pięta achillesowa twojego komputera
Komputery często muszą być podłączone do drukarek, aparatów fotograficznych, dysków flash USB i innego sprzętu, ale niewielkie programy umożliwiające komunikację z tymi urządzeniami peryferyjnymi, znane jako sterowniki urządzeń, mają złą reputację. Eksperci uważają, że awarie sterowników urządzeń są odpowiedzialne za około 85 procent awarii na komputerach z systemem Windows, a źle napisane sterowniki urządzeń mogą również wprowadzać luki w zabezpieczeniach w inny sposób chronionym komputerze. Częścią problemu jest to, że sterownik urządzenia nie może być łatwo zbadany przez nikogo spoza firmy, która go utworzyła.
Sterowniki urządzeń są okropne, mówi Witalij Chipounov , badacz w laboratorium systemów niezawodnych w Ecole Polytechnique Federale de Lausanne (EPFL) w Szwajcarii. Na Doroczna Konferencja Techniczna Usenix w zeszłym tygodniu w Bostonie Chipounov zademonstrował narzędzie programowe, które może pomóc chronić komputery przed podejrzanymi sterownikami, identyfikując problemy, zanim dotrą one do systemu użytkownika.
Narzędzie Chipounova może testować sterowniki urządzeń bez konieczności dostępu do podstawowego kodu. Działa, ładując sterownik do wirtualnego komputera i symulując jego zachowanie, sprawdzając problemy, takie jak nagłe zawieszanie się lub awarie. Narzędzie działa bez komunikowania się z odpowiednim rzeczywistym elementem sprzętu. Mimo to, symulując sposób, w jaki sprzęt współdziała ze sterownikiem, może pokazać, jak kierowca zareaguje po podłączeniu do wadliwego elementu sprzętu. Gdy narzędzie znajdzie problem, może dostarczyć informacji o przyczynie, które mogą pomóc w zidentyfikowaniu rozwiązania.
Badacze pracowali z sześcioma popularnymi sterownikami urządzeń napisanymi dla systemu Windows i znaleźli 14 poważnych błędów. Niektóre z testowanych sterowników uzyskały certyfikat zgodności z systemem Windows firmy Microsoft. Naukowcy twierdzą, że pokazuje to, że ich narzędzie może poprawić certyfikacje sterowników urządzeń. Eksperymenty ujawniły wzór w sposobie, w jaki niektóre powiązane sterowniki zawiodły, co sugeruje, że odpowiedzialni dostawcy sprzętu mogli skopiować kod z jednego wadliwego sterownika urządzenia do drugiego. Przynajmniej powinni skopiować i wkleić kod, który działa, żartuje Chipounov.
Ważnym problemem jest stabilność i bezpieczeństwo sterowników urządzeń Vinod Ganapathy , adiunkt informatyki na Uniwersytecie Rutgers. Mówi, że na komputerach z systemem Linux, Mac i Windows sterowniki urządzeń mają zazwyczaj takie same uprawnienia, jak sam system operacyjny. Wiele z tych sterowników jest napisanych przez zewnętrznych dostawców i nie są one poddawane takim samym testom jak system operacyjny. Niektóre sterowniki urządzeń publikowane w sieci Web są modyfikowane tak, aby zawierały złośliwy kod.
Złośliwe sterowniki urządzeń mogą wykonywać różne nikczemne działania, takie jak ukrywanie obecności szkodliwych programów i szpiegowanie ruchu sieciowego, mówi Ganapathy. Niegroźne, ale podatne na ataki sterowniki urządzeń również stwarzają podobne zagrożenia, ponieważ atakujący może przejąć luki w zabezpieczeniach w celu wykonania tego samego rodzaju złośliwych działań.
Inni badacze pracują nad różnymi sposobami zwiększenia bezpieczeństwa sterowników urządzeń. Ganapatia i Michael Swift na przykład na Uniwersytecie Wisconsin-Madison opracowali sposoby implementacji sterowników tak, aby były odizolowane od jądra systemu operacyjnego.
Badacze EPFL chcą umożliwić użytkownikom samodzielne testowanie kierowców. Obecna wersja ich narzędzia wymaga dużej wiedzy technicznej, więc nadaje się do użytku tylko przez dostawców sprzętu lub oprogramowania, którzy mogą jej używać do debugowania lub certyfikowania sterowników. Ale wizja naukowców polega na tym, aby użytkownicy końcowi mogli zdecydować, czy zainstalować sterownik, czy nie. Mówią, że narzędzie można dodać do systemu operacyjnego. Może automatycznie przedstawić użytkownikowi przycisk Testuj teraz dla nowych sterowników, pozwalając im sprawdzić problemy, zanim się pojawią.