Co dalej z luką w ładowaniu plików DLL?

Co dalej z luką w ładowaniu plików DLL?

Grzegorz Niemirowski
25.08.2010 21:27, aktualizacja: 27.08.2010 15:04

Od kilku dni głośno jest o luce, która powoduje, że możliwe jest załadowanie przez aplikację szkodliwego pliku DLL. Wygląda na to, że problem nie zostanie szybko rozwiązany.

Niebezpieczeństwo wynika głównie ze źle napisanych aplikacji, które ładując biblioteki DLL nie korzystają z w pełni kwalifikowanych ścieżek i przeszukują także katalog bieżący. Może się tak dziać z winy określonego fragmentu kodu w programu lub też użycia niewłaściwej funkcji API systemu Windows. Problem leżał po stronie Microsoftu w przypadku starych, niewspieranych już wersji Windows. Tam funkcja API przeznaczona doładowania plików DLL wykonywała to w niebezpieczny sposób.

Teraz więc problem uporania się z zagrożeniem spoczywa na barkach twórców poszczególnych programów. Microsoft będzie ich powiadamiał o niebezpieczeństwie za pomocą Microsoft Vulnerability Research Program. Korporacja opublikowała także poradnik dosyć szczegółowo opisujący całe zagadnienie. Powstał także artykuł pomagający programistom zaimplementować bezpieczne ładowanie bibliotek. Pokazano także jak sprawdzić czy aplikacja nie próbuje załadować pliku DLL z katalogu bieżącego. Microsoft zapowiedział także, że sprawdzi własne aplikacje pod kątem opisywanej podatności i w razie potrzeby wyda dla nich stosowne łatki.

Tak więc nie mamy do czynienia z typową dziurą w systemie operacyjnym, na którą zostanie wydana poprawka rozwiązująca problem. Zamiast tego jest wiele niepoprawnie napisanych aplikacji, w tym autorstwa Microsoftu, na które ich twórcy będą musieli wydać łatki. Będzie się więc można spodziewać sporej ilości nowych wirusów, atakujących głównie najpopularniejsze z podatnych programów. Z drugiej strony w celu przeprowadzenia ataku atakujący musi nakłonić ofiarę do otwarcia przygotowanego przez siebie katalogu (sieciowego poprzez SMB lub WebDAV albo pendrive'a) przy użyciu dziurawego programu. Użytkownik może więc być bezpieczny jeśli będzie pamiętać aby nie otwierać zewnętrznych lokalizacji z wnętrza aplikacji. Oczywiście najlepiej jest po prostu dokonać aktualizacji swoich programów gdy tylko stosowne poprawki zostaną wydane.

Aktualizacja, 25.08.2010, 23:37 Microsoft udostępnił aktualizację, która pozwala wyłączyć wyszukiwanie plików DLL w katalogu bieżącym. Sama jej instalacja niczego nie zmienia ale sprawia, że będzie brany pod uwagę klucz rejestru sterujący przeszukiwaniem katalogów. Tak więc po instalacji poprawki trzeba ustawić odpowiednią wartość wpisu. Można wyłączyć uwzględnianie katalogu bieżącego, wyłączyć dla katalogów zdalnych, wyłączyć dla katalogów WebDAV lub włączyć (ustawienie domyślne). Szczegółowy opis konfiguracji jest opisany w odpowiednim artykule. Należy podkreślić, że udostępniona przez Microsoft poprawka wpływa na aplikacje korzystające z funkcji LoadLibrary oraz LoadLibraryEx, nie wpłynie więc na programy odnajdujące biblioteki w inny sposób.

Programy

Zobacz więcej
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (24)