02.01.2017 Views

Wyzwania informatyki bankowej 2016

wyzwania_informatyki_bankowej_0

wyzwania_informatyki_bankowej_0

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Technologia sandbox i jej omijanie<br />

Od pewnego czasu modna jest technologia sandbox do wykrywania złośliwego<br />

oprogramowania. Istnieją nawet produkty oparte tylko o tę technologię.<br />

Jest to, niestety, kolejny smutny dowód na to, że bezpieczeństwem rządzi<br />

czasami moda a nie rozsądek. Po pierwsze, w samej technologii nie ma nic<br />

nowego. Firmy antywirusowe stosowały ją już od pierwszej połowy lat 90.<br />

ubiegłego wieku i robiły to wtedy z całkiem niezłymi rezultatami. Ówczesne<br />

złośliwe oprogramowanie było jednak pod wieloma względami bardzo prymitywne,<br />

podobnie jak i systemy operacyjne, które należało emulować aby<br />

uzyskać sandbox. Oczywiście jakość emulacji środowiska wykonania wpływa<br />

na jakość sandbox. Sandbox, czyli piaskownica, to bowiem nic innego jak<br />

stworzenie kontrolowanego środowiska wykonania – zazwyczaj częściowo<br />

lub całościowo emulowanego. Do tak przygotowanego środowiska wstrzykuje<br />

się kolejne podejrzane próbki, które mogą być złośliwym oprogramowaniem.<br />

Następnie na podstawie jego analizy behawioralnej – np. dostępu do<br />

plików, używanych funkcji API – automatycznie jest podejmowana decyzja,<br />

czy dany program jest złośliwy czy nie. W teorii jest to świetne rozwiązanie,<br />

w praktyce niestety okazuje się ono zawodne, bowiem autorom złośliwego<br />

oprogramowania jest niezwykle łatwo się przed tego typu rozwiązaniami<br />

bronić. Co więcej, część technik utrudniających analizę kodu złośliwego oprogramowania<br />

może być także użyte przeciwko technologii sandbox. Oto kilka<br />

przykładów mechanizmów ochronnych stosowanych przez złośliwe oprogramowanie:<br />

• Wykrywanie obecności maszyny wirtualnej, technologii wirtualizacyjnej lub<br />

emulatora – każde oprogramowanie, takie jak VMWare, VirtualBox, QEMU<br />

czy bochs zostawia charakterystyczne ślady w systemie, który emuluje lub<br />

dla którego tworzy warstwę wirtualizacyjną (w przypadku hypervisorów).<br />

Najbardziej trywialnym jest sprawdzenie konfiguracji sprzętowej oraz wersji<br />

firmware’u. Innym przykładem może być szukanie charakterystycznych<br />

dla VMWare czy VirtualBox zainstalowanych rozszerzeń. Bardziej zaawansowane<br />

metody analizują stan pamięci i procesorów.<br />

• Wykrywanie uruchomienia pod kontrolą automatycznej maszyny wirtualnej<br />

lub emulatora za pomocą wywołań funkcji systemowych i analizy<br />

struktur systemu operacyjnego. Jeżeli mamy do czynienia ze środowiskiem<br />

sztucznie wytworzonym, np. za pomocą emulatora, to emulowany<br />

Cybersecurity – moda, mit czy rzeczywistość?<br />

167

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!