>_ DevTrendspl

Język

Strona główna

Języki

Sekcje

Frontend Backend Mobilne DevOps AI / ML GameDev Blockchain Systemy wbudowane Bezpieczeństwo
Python

Ukryta wirtualizacja: narzędzie do maskowania śladów VM w VirtualBox

Kiedy środowisko wirtualne się zdradza

Czy zdarzyło ci się natrafić na podejrzany plik, który zachowuje się inaczej w maszynie wirtualnej niż na prawdziwym sprzęcie? Wiele nowoczesnych szkodników potrafi wykryć maszyny wirtualne i zmienić swoje zachowanie, aby utrudnić analizę. To właśnie problem, który rozwiązuje skrypt anty-wykrywanie autorstwa Mikaela (nsmfoo).

Czym jest antivmdetection?

To skrypt w Pythonie, który generuje:

  • Szablon konfiguracji VirtualBox (działa na hoście)
  • Skrypt PowerShell do precyzyjnego dostrajania systemu operacyjnego Windows gościa
  • Zrzut DSDT (tabele ACPI)

Główną zaletą jest podejście bez modyfikacji jądra VirtualBox. Wszystkie zmiany są wprowadzane przez standardowe API i ustawienia.

Dla kogo to jest?

  • Analitycy złośliwego oprogramowania
  • Badacze bezpieczeństwa
  • Deweloperzy rozwiązań antywirusowych
  • Entuzjaści cyberbezpieczeństwa

Jak to działa: 5 kluczowych funkcji

  1. Maskowanie funkcji sprzętowych

    • Podszywanie się pod CPU i identyfikator BIOS
    • Generowanie realistycznych dat wydania firmware'u
    • Konfiguracja kontrolera dysku (IDE/SATA)
  2. Randomizacja parametrów systemowych

    • Nazwa komputera i użytkownika
    • Identyfikatory woluminów dysków
    • Schowek
    • Obrazy tapety pulpitu
  3. Tworzenie wiarygodnego środowiska

    • Generowanie dokumentów „śmieciowych"
    • Konfiguracja skojarzeń plików
    • Symulacja aktywności użytkownika
  4. Manipulacja rejestrem Windows

    • Podszywanie się pod ProductId i DigitalProductId
    • Usuwanie śladów kluczy licencyjnych
    • Konfiguracja parametrów Internet Explorera
  5. Elastyczna konfiguracja

    • Wsparcie dla Windows 7 i 10
    • Możliwość określenia własnych list nazw do randomizacji
    • Podział ustawień na wymagające i niewymagające restartu

Szczegóły techniczne implementacji

Skrypt wykorzystuje:

  • Python 3 do generowania szablonów
  • Narzędzia ACPI do pracy z tabelami DSDT
  • Narzędzia systemowe (dmidecode, smartmontools)
  • Windows PowerShell do dostrajania systemu operacyjnego gościa

Architektonicznie rozwiązanie składa się z dwóch części:

  1. Generator szablonów (host)
  2. Skrypt dostrajający (gość)

Praktyczne zastosowania

Scenariusz 1: Analiza złośliwego oprogramowania

Gdy musisz zbadać zachowanie szkodliwego oprogramowania, które sprawdza wskaźniki wirtualizacji.

Scenariusz 2: Testowanie mechanizmów ochronnych

Sprawdzanie, jak dobrze twój produkt wykrywa maszyny wirtualne w scenariuszach pentestowych.

Scenariusz 3: Tworzenie środowisk szkoleniowych

Przygotowywanie realistycznych maszyn wirtualnych na potrzeby kursów bezpieczeństwa informacji.

Przykład konfiguracji

# На хосте
sudo apt install python3-pip libcdio-utils acpica-tools mesa-utils smartmontools
sudo pip3 install -r requirements.txt
wget https://download.sysinternals.com/files/VolumeId.zip
wget https://www.nirsoft.net/utils/devmanview-x64.zip
sudo python3 antivmdetect.py
/bin/bash generated_script.sh my-vm-name

# В гостевой ОС
# После первого запуска PowerShell-скрипта требуется перезагрузка

Ograniczenia

  • Działa tylko z VirtualBox
  • Wymaga ręcznej interwencji dla niektórych ustawień
  • Brak wsparcia dla najnowszych wersji Windows 11

Wynik sprawdzenia Pafish

Podsumowanie: Czy warto spróbować?

Projekt antivmdetection to doskonałe rozwiązanie dla:

  • Badaczy, którzy potrzebują „niewidzialnej" maszyny wirtualnej
  • Specjalistów ds. bezpieczeństwa
  • Każdego, kto pracuje z podejrzanymi plikami wykonywalnymi

Mimo że projekt nie był aktualizowany od 2022 roku, jego podstawowa funkcjonalność pozostaje aktualna. W prostych scenariuszach skrypt działa od razu, a jego modułowa struktura pozwala łatwo dostosować go do własnych potrzeb.

Polecam wypróbowanie, jeśli potrzebujesz:

  • Sprawdzić zachowanie szkodliwego oprogramowania w „realistycznym" środowisku
  • Przetestować swoje systemy wykrywania maszyn wirtualnych
  • Stworzyć laboratorium szkoleniowe na potrzeby kursów analizy złośliwego oprogramowania

Projekt jest dostępny na licencji MIT — możesz swobodnie używać i modyfikować go do swoich zadań.

Powiązane projekty