7‑Zip po cichu dostał ważną nowość. Będzie bezpieczniej
Archiwizer i menedżer plików 7-Zip rozwija się bardzo powoli. Twórcy zależy na stabilności, a nie innowacji. Doczekaliśmy się jednak ważnego usprawnienia w zakresie bezpieczeństwa.
System Windows stosuje bardzo ciekawy zabieg do oznaczania plików "pochodzących z internetu". Przeglądarka Internet Explorer do każdego pobranego pliku dodaje element Zone.Identifier zawierający informację z jakiej strefy zabezpieczeń pochodzi. Koncepcja strefy zabezpieczeń jest bardzo stara, wywodzi się z programu Internet Explorer 4.
Przeglądarka klasyfikuje każdy otwierany obszar jako należący do jednej z pięciu stref: Internet, intranet, adresy uprzywilejowane, adresy objęte restrykcjami oraz strefa lokalna ("ten komputer").
Każda z tych stref ma przypisany zbiór ustawień wstępnych. Dotyczą one rzeczy dziś zupełnie zapomnianych lub przestarzałych, jak ClickOnce, .NET Framework uruchamiany bezpośrednio ze strony, Java i kontrolki ActiveX. Poza nimi, wśród ustawień znajdziemy rzeczy których wyłączenie jest w ogóle niemożliwe w innych przeglądarkach, jak ochrona XSS i IFRAME. Dzisiejsze przeglądarki internetowe (w tym Edge) nie stosują stref zabezpieczeń - całą łączność traktują tak samo.
Uniknąć blokady
Mimo to, one także oznaczają pliki pobrane z internetu za pomocą znacznika Zone.Identifier. Windows pliki "z internetu" traktuje nieco inaczej niż pozostałe. Dokumenty Office otworzą się w widoku chronionym. Skrypty poproszą o odblokowanie (w trybie nieinteraktywnym po prostu się nie uruchomią). Programy także poproszą o odblokowanie, a ponadto rozpoczną konsultację SmartScreen i poproszą antywirusa o dedykowany skan.
Archiwa ZIP oznaczone jako pochodzące z internetu, jeżeli zostaną rozpakowane przez systemowy Eksplorator Plików (jeden z najgorszych istniejących otwieraczy ZIP), spropagują swoje oznaczenie do plików pochodzących z archiwum. Podobnie zachowa się WinRAR. Dotychczas jednak 7-Zip tak nie robił. Pozwalało to "wyprać" złośliwy plik pakując go do archiwum. Wypakowany, był już nieoznaczony, a więc zaufany.
Wersja 22.00, wydana po cichu w zeszłym tygodniu, zawiera nową, domyślnie wyłączoną funkcję, pozwalającą propagować Zone.Identifier do plików pochodzących z rozpakowywanego archiwum. Dzięki niej, użytkownicy 7-Zipa będą bezpieczniejsi: niezaufane archiwa będą rozpakowywane do niezaufanych plików. System nie zezwoli na bezwarunkowe wykonywanie skryptów i makr tylko w plikach "bezpiecznych" tylko wskutek pochodzenia z ZIP-a.
Wskazane jest więc zaktualizować program 7-Zip do wersji 22.00, a w nim wybrać Narzędzia ➡ Opcje ➡ 7-Zip. Tam z kolei ustawić "Propagate Zone.Id" na "Tak".
ADS
Swoją drogą, w jaki sposób Windows oznacza pliki jako pobrane? Wszak modyfikacja samego pliku zmieniłaby jego sumę kontrolną, co nie wchodzi w grę. Istotnie - zamiast tego wykorzystywana jest mało znana cecha systemu plików NTFS. Każdy plik na partycji w owym systemie może się składać z wielu strumieni. Zawsze istnieje co najmniej jeden: ten zawierający sam plik. Poza nim mogą się znajdować strumienie alternatywne (ADS). Zone.Identifier jest właśnie takim strumieniem.
Eksploratory plików zawsze prezentują tylko główny strumień, programistycznie da się jednak dostać do pozostałych. Przeniesienie pliku na nośnik FAT32 skończy się utratą alternatywnych strumieni, podobnie jak wysłanie go przez sieć (nie używając udziałów udostępnionych). Strumienie ADS to jedna z metod ukrywania złośliwego oprogramowania.
Kamil J. Dudek, współpracownik dobreprogramy.pl