Virtuelle Maschine verstecken

FatManStanding

Lt. Junior Grade
Registriert
Aug. 2021
Beiträge
379
hi,

ich hab diverse seiten gefunden wie man die tatsache, dass ein programm in einer virtuellen maschine läuft verbergen kann, innerhalb gewissen grenzen und meist nur auf windows-gäste bezogen. teilweise gibt es auch nur lösungen für bestimmte programme. ich nutze vor allem virtualbox aber eher aus gewohntheit. gibt es eine "generelle" möglichkeit die VM so anzulegen, dass sie überhaupt nicht zu erkennen ist? vielleicht schon direkt beim anlegen der VM (der installation des gast-os)? unter vbox oder vmware vermute ich mal nicht, das hätte ich vermutlich gefunden, aber vllt. bei qemu? das scheint weniger verbreitet aber genauso mächtig zu sein?
 
Mir erschließt sich der Sinn nicht! Was soll das Verstecken bewirken?
 
Vielleicht nicht redliche Anwendungsfälle, sonst hätte man sie uns wohl verraten 😈
Ergänzung ()

Aber mal im Ernst: Ob nun VirtualBox oder Hyper-V, der VM Host "sieht" immer alle VM Clients.
 
Hackintosh hat sowas zumnindest früher gebraucht. Einfach mal googeln wie man sowas installiert.
 
@ella_one Könnte man benutzen um die Zeit von Scammern zu vergeuden, wie es z.B. Kitboga oder Scammer Paypack auf YouTube machen. Die Scammer schauen gern in den Geräte-Manager um zu schauen, ob das OS in einer VM läuft. Evtl. erkennen irgendwelche Spiele/Programme die VM und verweigern den Dienst um mögliche Bots zu erkennen. Ohne weitere Infos seitens des TEs aber alles nur geraten.
 
@MyPVR Korrekt, das hab ich zumindest so aus dem Startpost verstanden.
FatManStanding schrieb:
gibt es eine "generelle" möglichkeit die VM so anzulegen, dass sie überhaupt nicht zu erkennen ist?
Falls es nicht darum ging, entschuldigung, my bad :)
 
@dahkenny Kein Ding, der TE hat's eh nicht genauer beschrieben. Wollte es nur unterscheiden können.
 
Also so wie ich es verstehe soll die Software, die innerhalb der VM läuft, nicht erkennen, dass sie in einer VM läuft.

Ich würde sagen: Eine Software, die das erkennen möchte, wird es immer erkennen können. Teilweise ist es ja sogar für die korrekte Funktionsweise notwendig (Stichwort Treiber).
 
tollertyp schrieb:
Also so wie ich es verstehe soll die Software, die innerhalb der VM läuft, nicht erkennen, dass sie in einer VM läuft.

richtig.

tollertyp schrieb:
Ich würde sagen: Eine Software, die das erkennen möchte, wird es immer erkennen können. Teilweise ist es ja sogar für die korrekte Funktionsweise notwendig (Stichwort Treiber).

anwendungsfälle, die auf eine bestimmte hardware oder bestimmte treiber angeweisen sind laufen in der regel eh nicht oder nur schlecht in einer VM.

es gibt wie schon geschrieben spiele die dann den dienst verweigern oder programme (testversionen) die generell nicht in einer VM laufen wollen. ich glaube powerdvd oder windvd oder beide waren so ein fall. software mancher streaming-portale auch.
 
ella_one schrieb:
Mir erschließt sich der Sinn nicht! Was soll das Verstecken bewirken?
Um Software laufen zu lassen die VMs verweigert.
dahkenny schrieb:
Könnte man benutzen um die Zeit von Scammern zu vergeuden, wie es z.B. Kitboga oder Scammer Paypack auf YouTube machen.
Da geht es aber darum, dass der User nicht erkennt ob es sich um eine VM handelt. Dazu genügt es einfach die Einträge die auf eine VM hinweisen zu ändern. Je nachdem was eine Software abfragt genügt das aber nicht, da die virtuelle Hardware trotzdem erkannt werden kann.

QEMU hat eine Full System Virtualisierung. Allerdings wird es wahrscheinlich auch wieder einen Weg geben um das zu erkennen.
 
Z.b. bei Nvidia ist das auch ganz interessant.

Ich wollte mit einer GeForce 1060 einige Spielereien mit Python, cuda, tensorflow etc. In einer Linux VM durchführen.

Der Nvidia Linux Treiber merkt, dass es in einer VM läuft mit durchgereichter Nvidia GeForce Grafikkarte und verweigert den Dienst - ich solle doch eine nVidia Tesla kaufen.

Frechheit.
 
  • Gefällt mir
Reaktionen: pvcf
Ich meine die Treiber die innerhalb der VM notwenidg sind.

Beispiel Hyper-V-VM:
1629623174565.png

1629623188998.png

1629623201145.png

1629623212146.png

1629623224259.png

1629623232042.png

1629623245140.png


Nur als Beispiel... mag sein, dass es bei VirtualBox und VMware nicht so deutlich ist. Gleichzeitig gibt es da aber glaube ich die kuriosen Eigenheiten mitunter, dass das Mainboard angeblich einen Intel-Chipsatz hat aber ein AMD-Prozessor vorhanden ist.

Edit: Irgendwas ist mit meinem System komisch, die Screenshots haben krasse Artefakte und die Schrift ist auch merkwürdig bei mir :-)
Nach dem Posten waren die Artefakte abeer weg oO
 

Anhänge

  • 1629623182762.png
    1629623182762.png
    24,2 KB · Aufrufe: 226
Diese Hyper-V Geräte gibt es bei qemu/KVM/Xen nicht. Da werden z.B. Intel und Realtek Netzwerkkarten emuliert, sowie Intel SATA Controller etc.

Aber die BIOS Strings verraten es. Bei Xen gibt es da glaube ich die Funktion "Copy Host Bios Strings".
Das hilft beim Verstecken, dadurch ist die VM aber -soweit ich weiß- nicht mehr auf anderen Hosts lauffähig.
 
Grundsätzlich hängt es erst mal davon ab, wie die VM-Erkennung überhaupt stattfindet. Wenns nur einfache Abfragen sind (z.B. der Hardware oder der Treiber) so lässt sich sowas verschleiern. Man kann dem System in der VM da so ziemlich alles vorgaukeln. Das ist ja auch gerade der Witz an einer VM.
Das größte Problem ist eher herauszubekommen, wie das betreffende Programm die VM erkennt. Kriegt man hin, kann aber unter Umständen kompliziert sein.

Richtig schwierig wird es, wenn die Erkennung eben nicht durch triviale Sachen a-la "wir gucken mal nach dem BIOS-String" etc. erfolgt. Zum Beispiel über Timings von bestimmten Operationen. Solche Sachen lassen sich noch viel schwieriger austricksen.

Wobei ich mir grundsätzlich die Frage stellen würde, ob ich ein Programm überhaupt betreiben will was mir Vorschriften machen möchte, wo und wie ich es ausführen darf. Grundsätzlich ist das schlechter Stil und gibt kein gutes Bild von der Software ab.
 
Zurück
Oben