Nigdy nie korzystałem z usług dr. Sieć. Nie mam pojęcia, jak to działa. Nie przeszkodziło mi to jednak napisać do niego szeregu autotestów (a jedynie lenistwo nie przeszkodziło mi w napisaniu stu kolejnych):
Test instalacji dr. Sieć;
Testuj pod kątem ograniczania dostępu do urządzeń wymiennych (dysków flash);
Testuj ograniczenie dostępu do katalogu między programami;
Test ograniczenia dostępu do katalogu pomiędzy użytkownikami systemu (kontrola rodzicielska).
Te i wiele innych testów można sprzedać jak świeże bułeczki i to nie tylko w związku z Dr. Web i to nie tylko w odniesieniu do programów antywirusowych. W tym artykule powiem Ci, jak to zrobić.
Szkolenie
Do testów będziemy potrzebować maszyny wirtualnej z systemem Windows na pokładzie. Przygotowałem go ręcznie, wykonując na nim następujące manipulacje:
Właściwie zainstalowałem system Windows 10 Pro x64;
Podczas instalacji utworzyłem głównego użytkownika „testo” z hasłem „1111”;
Włączono automatyczne logowanie dla tego użytkownika;
Do automatyzacji testów wykorzystam platformę Testo. Co to jest i jak z niego korzystać, możesz przeczytać tutaj. Musimy teraz zaimportować gotową maszynę wirtualną do autotestów. Bardzo łatwo to zrobić:
Tutaj zakłada się, że /path/to/win10.qcow2 - to jest ścieżka na dysk maszyny wirtualnej, którą przygotowałem ręcznie. Tutaj kończą się przygotowania i rozpoczyna się akcja.
Test nr 1 – Zainstaluj Dr. Sieć!
Najpierw musimy rozwiązać kwestię przeniesienia zestawu dystrybucyjnego Dr. Web na maszynę wirtualną. Możesz to zrobić (na przykład) za pomocą dysku flash:
Wszystko, co musimy zrobić, to zainstalować Dr. Sieć do tatusia ${DR_WEB_DIR} (dokładną wartość tego parametru ustalimy przy uruchomieniu testo). A Testo sam zadba o to, aby ten instalator trafił na pendrive.
Teraz możemy właściwie zacząć pisać test. Na razie zacznijmy test od prostych rzeczy: włącz maszynę wirtualną (po utworzeniu zostanie wyłączona), poczekaj, aż pojawi się pulpit, włącz pendrive i otwórz jego zawartość poprzez Eksploratora:
Zrzut ekranu na końcu scenariusza
Możesz oczywiście uruchomić instalator bezpośrednio stąd, z samego dysku flash. Ale lepiej róbmy wszystko uczciwie – skopiujemy instalator na pulpit i stamtąd go uruchomimy. Jak możemy skopiować plik? Jak dana osoba mogłaby to zrobić?
Zrzut ekranu przedstawiający nadal kopiowany plik
To wszystko, kopiowanie zostało zakończone pomyślnie! Teraz możesz zamknąć okno za pomocą dysku flash i usunąć go:
Zrzut ekranu po zamknięciu Eksploratora
Teraz, gdy instalator znajduje się na pulpicie, musimy go kliknąć dwukrotnie, aby rozpocząć proces instalacji. A sama instalacja sprowadza się do prostego klikania przycisków i pól wyboru i nie jest zbyt interesująca:
Zrzut ekranu na końcu instalacji
Zakończymy nasz test ponownym uruchomieniem. Na koniec nie zapomnij sprawdzić, czy po ponownym uruchomieniu na pulpicie pojawiła się ikona z Dr. Sieć:
Zrzut ekranu po ponownym uruchomieniu
Dobra robota! Zautomatyzowaliśmy instalację programu antywirusowego Dr. Sieć! Zróbmy sobie przerwę i zobaczmy jak to wygląda w dynamice:
Przejdźmy do testowania funkcji.
Test nr 2 - Ograniczanie dostępu do dysków flash
Pierwszą funkcją na liście jest ograniczanie dostępu do dysków flash. Aby to zrobić, zaplanujmy dość prosty test:
Spróbujmy włożyć pendrive'a i stworzyć tam pusty plik - powinno zadziałać. Wyjmijmy dysk flash;
Włączmy blokowanie urządzeń wymiennych w Dr. Centrum bezpieczeństwa sieci;
Włóżmy ponownie dysk flash USB i spróbujmy usunąć utworzony plik. Akcja musi zostać zablokowana.
Utwórzmy nowy dysk flash, włóż go do systemu Windows i spróbujmy utworzyć folder. Co może być prostszego?
Zrzut ekranu na końcu scenariusza
Utwórz nowy plik tekstowy za pomocą menu kontekstowego Eksploratora:
Zrzut ekranu po zmianie nazwy pliku
Odłączamy dysk flash, zrób to bezpiecznie:
Teraz jesteśmy przekonani, że pendrive'a można użyć, co oznacza, że możemy zacząć go blokować w Dr Security Center. Sieć. Aby to zrobić, musisz najpierw otworzyć Centrum zabezpieczeń:
Zrzut ekranu okna Centrum zabezpieczeń
Zauważmy, że aby otworzyć dowolną aplikację w systemie Windows należy wykonać praktycznie te same czynności (kliknąć w pasek wyszukiwania, poczekać aż pojawi się okno z popularnymi aplikacjami, wpisać nazwę interesującej nas aplikacji, poczekać aż pojawi się w listę i na koniec naciśnij Enter). Dlatego też tę grupę akcji można rozdzielić na makro open_app, do którego jako parametr zostanie przekazana nazwa aplikacji, którą chcemy otworzyć:
To makro przyda nam się później.
Pierwszą rzeczą, którą zrobimy, będzie otwarcie Centrum bezpieczeństwa doktora. WWW - włącz możliwość wprowadzania zmian:
Teraz kliknijmy trochę menu i przejdźmy do menu „Konfiguruj reguły dostępu do urządzenia”. W tym menu zaznacz pole „Blokuj nośniki wymienne”.
Zrzut ekranu okna Urządzenia i dane osobiste
Spróbujmy teraz otworzyć dysk flash:
Zrzut ekranu komunikatu o błędzie
W ten sposób, krok po kroku, napisaliśmy pierwszy test testujący bardzo namacalną funkcję w Dr. Sieć. Czas zrobić sobie przerwę i pomedytować, patrząc na rezultaty naszej pracy:
Test nr 3 - Różnicowanie dostępu do katalogu pomiędzy programami
Główną ideą tego przypadku testowego jest sprawdzenie pracy dr. Web podczas ograniczania dostępu do określonego folderu. W szczególności musisz chronić folder przed wszelkimi zmianami, ale dodaj wyjątek dla programu innej firmy. Właściwie sam test wygląda następująco:
Zainstalujemy w systemie operacyjnym program innej firmy, dla którego nieco później dodamy wyjątek podczas uzyskiwania dostępu do chronionego folderu. Dzisiejszym programem dnia innej firmy jest menedżer plików FreeCommander;
Tworzymy folder z plikiem, który będziemy chronić ze wszystkich sił;
Otwórzmy Centrum Bezpieczeństwa Doktora. Web i włącz tam ochronę tego folderu;
Ustawmy wyjątek dla FreeCommander;
Spróbujmy w zwykły sposób usunąć plik z chronionego folderu (za pomocą Eksploratora Windows). To nie powinno działać;
Spróbujmy usunąć plik za pomocą FreeCommandera. Powinno działać.
No cóż, dużo pracy. Im szybciej zaczniemy, tym szybciej skończymy.
Punkt pierwszy: instalacja FreeCommandera nie różni się zbytnio od instalacji Dr.Web. Zwykła procedura: włożono dysk flash, uruchomiono instalator i tak dalej. Pomińmy to i przejdźmy od razu do ciekawszych rzeczy.
Jeśli nadal jesteś zainteresowany instalacją FreeCommander
Zacznijmy od czegoś prostego: utwórz dysk flash, w którym umieścimy zestaw dystrybucyjny FreeCommander, a następnie w teście włożymy pendrive do systemu operacyjnego i otworzymy go:
Następnie kilka kliknięć, aby rozpocząć instalację:
Instalacja nie jest zbyt interesująca, po prostu kliknij wszędzie „Dalej”, a na koniec nie zapomnij wyłączyć pól wyboru przeglądania ReadMe i natychmiastowego uruchamiania FreeCommandera
Test kończymy zamykając wszystkie okna i wyjmując pendrive.
Gotowe!
Do pracy z dr. Web, utwórzmy nowy test dr_web_restrict_program, który będzie opierał się na wyniku poprzedniego testu win10_install_freecommander.
Zacznijmy test od utworzenia folderu Protected na pulpicie:
Zrzut ekranu po utworzeniu folderu
Przejdź do folderu Chronione i utwórz tam plik my_file.txt, który będzie pełnił rolę chronionego pliku:
Och, powinienem to też przedstawić w formie makra, ale cóż…
Zrzut ekranu po utworzeniu pliku
Świetnie, teraz musisz włączyć ochronę folderów. Podążamy znaną ścieżką i otwieramy Dr. Web, nie zapomnij włączyć trybu zmiany. Następnie przejdź do menu „Zapobieganie utracie danych”.
Zrzut ekranu okna Zapobieganie utracie danych
Popracujmy trochę myszą i dodaj nasz folder Chroniony do listy chronionych:
Cóż, teraz musimy ustawić wyjątek dla dostępu do folderu dla FreeCommander. Trochę więcej pracy z myszą:
Zrzut ekranu z dodanym programem wyjątków
Teraz dokładnie zamknij wszystkie okna i spróbuj usunąć plik „my_file.txt” w standardowy sposób:
Zrzut ekranu z wiadomością od Dr.Web
Ale nic nie wyszło - to znaczy, że dr. Sieć naprawdę zadziałała! Połowa testów już za nami, ale nadal musimy sprawdzić, czy wyjątek dla FreeCommander będzie działać. Aby to zrobić, otwórz FreeCommander i przejdź do folderu Chronione:
Zrzut ekranu okna FreeCommandera
Cóż, spróbujmy usunąć plik mój_plik.txt:
Zrzut ekranu po usunięciu pliku
Wyjątek FreeCommander działa!
Dobra robota! Duży i złożony przypadek testowy - a wszystko jest zautomatyzowane. Trochę zrelaksowany:
Test nr 4 – Kontrola rodzicielska
Ten ostatni przypadek testowy na dziś zbudujemy w następujący sposób:
Stwórzmy nowego użytkownika MySuperUser;
Zalogujmy się pod tym użytkownikiem;
Utwórzmy plik my_file.txt w imieniu nowego użytkownika;
Otwórzmy Centrum Bezpieczeństwa Doktora. Web i włącz kontrolę rodzicielską dla tego pliku;
W ramach kontroli rodzicielskiej ograniczymy prawa użytkownika MySuperUser do utworzonego przez niego pliku;
Spróbujmy odczytać i usunąć plik my_file.txt w imieniu MySuperUser i spójrz na wynik.
Nie będę tutaj podawać skryptu testowego. Jest zbudowany na tej samej zasadzie, co poprzednie testy: aktywnie współpracujemy z myszą i klawiaturą. Jednocześnie nie ma dla nas znaczenia, co zautomatyzujemy – czy będzie to Dr.Web, czy też utworzymy nowego użytkownika w Windowsie. Zobaczmy jednak, jak wyglądałoby przeprowadzenie takiego testu:
wniosek
→ Możesz zajrzeć do źródeł wszystkich testów tutaj
Co więcej, możesz uruchomić wszystkie te testy na własnej maszynie. Aby to zrobić, będziesz potrzebować interpretera skryptu testowego Testo. Możesz go pobrać tutaj.
Dr. Sieć okazała się niezłym treningiem, ale z Waszych życzeń chciałbym czerpać inspiracje do dalszych exploitów. Napisz w komentarzach swoje sugestie dotyczące tego, jakie autotesty chciałbyś zobaczyć w przyszłości. W kolejnym artykule postaram się je zautomatyzować, zobaczymy co z tego wyjdzie.