Nous apportons à Internet une machine virtuelle publique QEMU sans carte réseau et essayons d'exploiter

Il y a des moments où un utilisateur heureux d'une machine virtuelle publique peut rencontrer le fait que la machine virtuelle n'a pas accès à Internet. L'utilisateur dispose d'un processeur, d'une mémoire, d'un disque avec un système d'exploitation, d'interfaces de base, d'un port d'accès à distance, et c'est tout.


Dans ce cas, l'hébergeur peut également être compris, il est plus facile pour lui de désactiver l'accès à Internet aujourd'hui afin de ne pas épuiser demain son cerveau sur l'activité des utilisateurs sur Internet, car divers offensés et offensés par l'utilisateur commenceront tout d'abord à trier les choses avec l'hébergeur. Par exemple, dans certains pays, la pratique du blocage avant procès des adresses IP de l'hôte est répandue, ce qui n'affecte pas l'utilisateur malveillant, mais les utilisateurs innocents.


Nouvelle méthode Internet


Auparavant, afin d'amener une machine virtuelle sans réseau sur Internet, le client ne pouvait transférer qu'un périphérique USB physique qui distribue Internet à partir de son adresse: modem, adaptateur réseau.


Aujourd'hui, un utilisateur peut transférer des ports vers un serveur VPN ou proxy par analogie avec SSH. Pour cela, il est nécessaire que les trois côtés du client, de l'hôte et de la machine virtuelle soient assemblés sur la base du code FlexVDI, c'est-à-dire qu'il est nécessaire de reconstruire et d'installer des packages logiciels utilisés pour l'accès à distance via le protocole Spice.


FlexVDI est une version améliorée du protocole d'accès à distance SPICE ouvert et une couche supplémentaire d'abstraction de la société du même nom. Tout le code nécessaire est disponible dans les dépôts github .


Connexion


Pour recevoir un client Spice de FlexVDI, un utilisateur Linux peut soit compiler le client manuellement, soit effectuer plusieurs actions sur l'image appImage du client:


Vous devez d'abord télécharger l'image appImage du client à partir du site officiel, en faire un fichier exécutable et le décompresser en utilisant la commande:


./flexvdi-linux-client-2.2.15-x86_64.AppImage --appimage-extract 

Une fois la commande exécutée, les fichiers image seront situés dans le répertoire squashfs-root du répertoire contenant le fichier. Nous sommes intéressés par le client épicé, mais l'exécution directe du fichier échoue car l'application essaie d'utiliser des bibliothèques situées dans le système et non dans l'image. Pour exécuter épicé, créez une copie du fichier AppRun. Dans le fichier de copie à la fin, commentez ou supprimez la ligne:


  ./python2.7 ./flexvdi_launcher.pyc "$@" 

et à la place nous ajoutons une ligne du formulaire:


 ./spicy --uri=spice://vpla.umvirt.com?port=6060 -R 3128:127.0.0.1:3128 --spice-debug 

Ici, vous pouvez configurer la connexion au port d'accès distant via le protocole Spice à la machine virtuelle publique RetroGamer sur le serveur vpla.umvirt.com et transférer le port 3128 de Squid à la machine virtuelle avec une sortie d'informations de débogage.


Nous enregistrons le fichier, installons le serveur proxy Squid et vérifions son fonctionnement à l'aide d'un navigateur.


Voici une capture d'écran de la fenêtre des paramètres du serveur proxy pour Firefox:



Si le navigateur fonctionne correctement avec le proxy, réservez l'accès à la machine virtuelle et exécutez le fichier de lancement créé avec la sortie redirigée vers le fichier, par exemple comme ceci:


 ./myApp > spicy.log 

Les messages suivants doivent apparaître dans le fichier journal:


 (spicy:10702): GSpice-DEBUG: port-forward.c:183 Created new port forwarder 

et


 (spicy:10702): GSpice-DEBUG: port-forward.c:231 Associate guest (null), port 3128 -> 127.0.0.1 port 3128 

Si le message n'apparaît pas, cela signifie que sur l'hôte ou dans la machine virtuelle, le code des packages d'épices d'origine n'est pas remplacé par le code Flexvdi.


Dans une machine virtuelle:


  1. nous vérifions la redirection de port avec la commande:
     ss -atnl 
  2. vérifier l'absence de réseau avec la commande:
     ip addr 

Dans les paramètres du navigateur, nous prescrivons les mêmes paramètres pour le serveur proxy.



Vérification de l'accès au réseau


Nous vérifions l'adresse IP, par exemple, sur http://umvirt.com/agentinfo



Nous vérifions la possibilité d'ouvrir des sites, par exemple, ouvrir le site de minage en ligne " Coinhive ".



Comme vous pouvez le voir, la machine virtuelle est non seulement allée en ligne à partir de l'adresse du client, mais a également permis de démarrer le processus d'exploration de données.


Une vidéo du processus de connexion est disponible sur Youtube .

Source: https://habr.com/ru/post/fr431598/


All Articles