Skocz do zawartości
Forum Kopalni Wiedzy
KopalniaWiedzy.pl

Celowo wprowadzają błędy do programów

Rekomendowane odpowiedzi

Każdego roku największe koncerny wydają olbrzymie kwoty na wyszukiwanie i naprawianie błędów w swoich programach. Używają w tym celu zautomatyzowanych narzędzi analizujących kod źródłowy oprogramowania. Problem jednak w tym, że nikt nie wie, ile dziur umyka uwadze takich narzędzi, nie można zatem stwierdzić, na ile są one skuteczne.

Naukowcy z New York University, MIT oraz Northeastern University postanowili podejść do problemu wydajności narzędzi debugujących w nietypowy sposób. Celowo dodają do kodu źródłowego tysiące błędów i sprawdzają, jak z ich wyszukiwaniem radzą sobie popularne narzędzia. W tym celu stworzyli oprogramowanie LAVA (Large-Scale Automated Vulnerability Addition), które masowo wprowadza błędy do kodu. Przeprowadzone przez uczonych eksperymenty nie napawają optymizmem. Okazuje się, że wiele popularnych narzędzi do wyszukiwania błędów zauważa zaledwie 2% dziur w oprogramowaniu.

Profesor Brendan Dolan-Gavitt z NYU wyjaśnia, że efektywność debuggerów opiera się na dwóch wskaźnikach - liczbie fałszywie negatywnych oraz fałszywie pozytywnych alarmów. Jednak bez znajomości całkowitej liczby prawdziwych błędów nie można tak naprawdę stwierdzić, na ile dane narzędzie jest efektywne. Jedynym sposobem na ocenienie efektywności narzędzia debugującego jest kontrolowanie liczby błędów w kodzie. Właśnie to próbujemy robić za pomocą LAVA - wyjaśnia Dolan-Gavitt.

Błędy wprowadzane przez LAVA mają podobne cechy, co prawdziwe błędy znajdowane w programach komputerowych. LAVA została jednak przystosowana też do wprowadzania nowych rodzajów błędów po to, by sprawdzić, jak debuggery poradzą sobie z problemami, z którymi dotychczas nie spotykały się lub na które natrafiały rzadko. Naukowcy obiecują, że publicznie udostępnią wyniki swoich badań. Co więcej, w ciągu najbliższych tygodni chcą rozpocząć projekt, w ramach którego twórcy oprogramowania będą mogli otrzymać kod z wprowadzonymi błędami, za pomocą używanych przez siebie narzędzi spróbują znaleźć te błędy i na tej podstawie otrzymają informację, na ile skuteczne są ich narzędzia.


« powrót do artykułu

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)

Nie za wiele zrobili, odkryli. A już artykuł.

Edytowane przez thikim

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

I pewnie już kilka doktoratów się szykuje w tym temacie. :P Swoją drogą tu bardziej chodziło o testy statyczne kodu aplikacji niż debuggery, bo to inna bajka.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...