Nadzorca kodu
Jak wynika z raportu opracowanego w 2006 r. przez firmę Symantec, naprawienie typowego błędu w oprogramowaniu zajmuje średnio aż miesiąc. Aby temu zaradzić (przynajmniej częściowo), zespół Martina Rinarda z MIT założył firmę Determina, której zadaniem jest stworzenie "nieśmiertelnego, nienaruszalnego programu", czyli porcji kodu zdolnej do wychwytywania wadliwego działania innych procesów i korygowania go. Naukowcy właśnie pochwalili się swoimi pierwszymi osiągnięciami.
Program stworzony przez zespół Rinarda, nazwany ClearView, działa na poziomie kodu binarnego, czyli zestawu instrukcji docierających bezpośrednio do poszczególnych podzespołów komputera. Pozwala to na uniknięcie konieczności ingerowania w kod źródłowy, a więc zestaw poleceń zapisanych bezpośrednio przez człowieka. Jest to ważne, gdyż kod źródłowy bardzo często jest tajny, zaś wytworzony na jego bazie kod binarny można z łatwością monitorować.
Zadaniem ClearView jest obserwowanie danych przepływających pomiędzy poszczególnymi komponentami komputera i wychwytywanie ich potencjalnie niebezpiecznych cech. Po "namierzeniu" podejrzanej porcji danych problem jest analizowany, po czym stosowana jest jedna z kilku zaprogramowanych korekt, uznana przez program za optymalną. Jeżeli wykorzystane rozwiązanie zawiedzie, aplikuje się kolejne tak długo, aż osiągnie się bezpieczne wyjście z sytuacji zagrożenia.
Program opracowany przez badaczy z MIT radzi sobie szczególnie dobrze wtedy, gdy obserwuje równocześnie wiele kopii tego samego programu uruchomionych na różnych komputerach. Kopie ClearView uruchomione na poszczególnych maszynach mogą się bowiem ze sobą komunikować, a każda z nich może dostosować własne działanie do wyników zastosowanych wcześniej rozwiązań.
Jeden z pierwszych testów nowej technologii przeprowadzono z wykorzystaniem przeglądarki Firefox. Przedstawiciele Determina zatrudnili niezależną grupę hakerów, których zadaniem było podjęcie 10 prób wstrzyknięcia szkodliwego kodu do przeglądarki. W siedmiu przypadkach ClearView wprowadził łatki zabezpieczające przeglądarkę, a we wszystkich dziesięciu udało się co najmniej odrzucić rozwiązania, które nie rokowały naprawieniem błędu.
Co jest jednak najważniejsze, za każdym razem udało się uniknąć bardziej szkodliwych konsekwencji, takich jak wyciek poufnych informacji z komputera ofiary, zaś jedyną konsekwencją niedoszłego ataku było wyłączenie przeglądarki oraz zablokowanie jego działania na kilka minut, w czasie których ClearView próbował odnaleźć i zastosować optymalną łatkę.
Jak twierdzi Rinard, program rozwijany przez jego zespół mógłby posłużyć do nawiązania aktywnej współpracy pomiędzy użytkownikami i twórcami oprogramowania, której efektem mogłoby być szybsze korygowanie błędów w stosowanych przez nas aplikcjach. Ponieważ do działania ClearView wystarcza analiza jawnego kodu binarnego, na rozwiązanie takie mogliby przystać nawet liderzy branży IT, często bardzo sceptyczni wobec ujawniania choćby fragmentów kodu źródłowego własnych programów.
Komentarze (1)
programista, 1 listopada 2009, 20:08
Liderzy IT raczej wolą stosować inne "dobre" rozwiązania, które są bardziej ukryte dla użytkownika, w zasadzie działają jak wirusy np. SecuRom, ale że sony się ułożyło za kaskę z Symantec to norton oczywiście będzie go miał na liście "zaufanych" aplikacji, no i wszyscy są szczęśliwi prawda, po co zmieniać stary dobry układ.