Máquina aislada Virtualbox

(1/3) > >>

Mosqueperro:
Buenas tardes, estoy buscando la mejor opción para crear una máquina lo más aislada posible.
Necesitaría tuviera salida a red, por lo que desactivar la tarjeta de red no lo veo una opción viable.

No tengo pensando descargar ningún malware ni programa raro, pero estoy haciendo pruebas y me gustaría dar con la configuración más efectiva y aislada que sea posible. Aunque soy consciente que siendo una VMs no será posible aislarla al 100%.
Gracias.

Mosqueperro:
¿Alguien puede echarme una mano?

Manudan85:
Quitas la red de virtualbox, insertas un usb wifi y lo pasas a la maquina virtual. Ahora ya tienes el adaptador de red wifi en la maquina virtual, instalas drivers si es necesario y te conectas por wifi a tu red directamente.
De nada

Eleкtro:
A falta de que puedas recibir ayuda por parte de usuarios con experiencia profesional en cuestiones avanzadas de seguridad (ya que quiero dejar claro que mi experiencia es personal, yo no trabajo profesionalmente en ámbitos de seguridad), y habiendo dejado claro que no ves factible desactivar la tarjeta de red, te lanzo unas cuantas sugerencias para incrementar la eficacia de aislamiento, empezando por instalar el siguiente software gratuito (freeware y freemium respectivamente):

Cloudflare WARP (VPN):
 - https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/download-warp/
Cita de: ChatGPT

WARP cifra todo el tráfico de Internet, lo que ayuda a proteger la privacidad de los usuarios y evita la interceptación de datos por parte de terceros, como hackers o proveedores de servicios de Internet.

Además de cifrar el tráfico de Internet, WARP también incluye protección contra amenazas en línea, como malware, phishing y ataques de suplantación de identidad.

Sandboxie Plus:
 - https://sandboxie-plus.com/downloads/
Cita de: ChatGPT

Sandboxie Plus crea un entorno virtual en el que se pueden ejecutar programas de forma aislada del sistema operativo principal. Esto significa que cualquier acción realizada dentro de Sandboxie Plus, como la instalación de programas o la descarga de archivos, no afectará al sistema principal.

Al ejecutar programas dentro de Sandboxie Plus, cualquier malware o amenaza potencial que se encuentre en esos programas se mantendrá dentro del entorno virtual y no podrá afectar al sistema operativo principal. Esto proporciona una capa adicional de seguridad para el sistema.

Y, adicionalmente, podrías instalar un antivirus dedicado o utilizar el que viene integrado con Windows, en modo de escaneo en tiempo real.


En torno a la conectividad de red y, en caso de que no necesites mantener la conectividad activa durante todo el tiempo que dure la sesión de la VM, entonces podrías utilizar un script (mediante un archivo de acceso directo "*.lnk" para hacer la tarea más fácil) para deshabilitar los servicios de Windows de red y/o desactivar los adaptadores de red cuando no te sea realmente necesario mantener activa la conectividad.

Puedes usar, por ejemplo, estos scripts VBS para deshabilitar y rehabilitar los dispositivos de red en la VM:

Disable_Network_Adapters.vbs
Código
Set objShell = CreateObject("WScript.Shell")
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2"
Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapter",,48)
For Each objItem in colItems
   If objItem.NetConnectionStatus = 2 Then
       strInterfaceName = objItem.NetConnectionID
       objShell.Run "netsh interface set interface """ & strInterfaceName & """ admin=disable", 0, True
   End If
Next

Enable_Network_Adapters.vbs
Código
Set objShell = CreateObject("WScript.Shell")
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapter",,48)
For Each objItem in colItems
   If objItem.NetConnectionStatus = 0 Then
       strInterfaceName = objItem.NetConnectionID
       objShell.Run "netsh interface set interface """ & strInterfaceName & """ admin=enable", 0, True
   End If
Next

También puedes utilizar programas gratuitos como Net Disabler, que residen en forma de icono en la bandeja del sistema (system tray) y sirven como atajo para llevar a cabo esa tarea de forma especializada:

 - https://www.sordum.org/9660/net-disabler-v1-1/

Cita de: sordum.org

Technically, you can control internet by running netsh interface command in command prompt window to enable and disable the network connection that has the internet access. But This method can be easily circumvented and does not offer a guarantee. If you want to disable Internet connectivity for some time or on some events, you can easily do it with Net Disabler it is a small portable Freeware tool, you can use it to quickly turn the Internet off or on again.

3. Disconnecting from the internet can limit the impact of the malware it is a security technique known as an “air gap”. By separating the computer from any network makes it more secure.


Por último, y en caso de que tengas carpetas compartidas en la VM que apunten vulnerablemente a tu sistema operativo huésped (host), podrías utilizar un script (de nuevo mediante un archivo de acceso directo "*.lnk") para montar/desmontar la unidad virtual en la VM cuando no te sea realmente necesario mantener acceso a tu sistema operativo mediante esas carpetas compartidas, ya que son visibles para un malware.

Puedes usar, por ejemplo, estos scripts VBS para desconectar y reconectar la unidad de red en la VM:

Disconnect_Network_Drive.vbs
Código
Set objNetwork = CreateObject("WScript.Network")
objNetwork.RemoveNetworkDrive "Z:", True, True

Reconnect_Network_Drive.vbs
Código
Set objNetwork = CreateObject("WScript.Network")
objNetwork.MapNetworkDrive "Z:", "\\vmware-host\Shared Folders"

Nota: Estos scripts requieren ser modificados, ya que logicamente la letra de unidad y la ruta UNC cambiarán dependiendo de tu configuración y si estás usando VMWare u otro software de virtualización.

EDITO: Una adaptación para hallar y desmontar todas las unidades de red:

Disconnect_All_Network_Drives.vbs
Código
Option Explicit
 
Dim objNetwork, objShell, unmountedDrives
Dim colDrives, i, drive, path, msg
 
Set unmountedDrives = CreateObject("System.Collections.ArrayList")
 
Set objNetwork = CreateObject("WScript.Network")
Set colDrives = objNetwork.EnumNetworkDrives
For i = 0 to colDrives.Count - 1 Step 2
   drive = colDrives.Item(i)
   path  = colDrives.Item(i+1)
   objNetwork.RemoveNetworkDrive drive, True, True
   unmountedDrives.Add drive & vbTab & """" & path & """"
Next
 
Set objShell = CreateObject("WScript.Shell")
If unmountedDrives.Count = 0 Then
   msg = "No active network drives were found."
   objShell.Popup msg, 0, "Warning: Network Drives", 48
 
Else
   msg = "The following network drives were unmounted:" & vbCrLf & vbCrLf
   For Each drive In unmountedDrives
       msg = msg & drive & vbCrLf & vbCrLf
   Next
   objShell.Popup msg, 0, "Info: Network Drives", 64
   unmountedDrives.Clear()
End If

Mosqueperro:
Cita de: Eleкtro en 17 Marzo 2024, 19:30 pm

A falta de que puedas recibir ayuda por parte de usuarios con experiencia profesional en cuestiones avanzadas de seguridad (ya que quiero dejar claro que mi experiencia es personal, yo no trabajo profesionalmente en ámbitos de seguridad), y habiendo dejado claro que no ves factible desactivar la tarjeta de red, te lanzo unas cuantas sugerencias para incrementar la eficacia de aislamiento, empezando por instalar el siguiente software gratuito (freeware y freemium respectivamente):

Cloudflare WARP (VPN):
 - https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/download-warp/
Sandboxie Plus:
 - https://sandboxie-plus.com/downloads/
Y, adicionalmente, podrías instalar un antivirus dedicado o utilizar el que viene integrado con Windows, en modo de escaneo en tiempo real.


En torno a la conectividad de red y, en caso de que no necesites mantener la conectividad activa durante todo el tiempo que dure la sesión de la VM, entonces podrías utilizar un script (mediante un archivo de acceso directo "*.lnk" para hacer la tarea más fácil) para deshabilitar los servicios de Windows de red y/o desactivar los adaptadores de red cuando no te sea realmente necesario mantener activa la conectividad.

Puedes usar, por ejemplo, estos scripts VBS para deshabilitar y rehabilitar los dispositivos de red en la VM:

Disable_Network_Adapters.vbs
Código
Set objShell = CreateObject("WScript.Shell")
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2"
Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapter",,48)
For Each objItem in colItems
   If objItem.NetConnectionStatus = 2 Then
       strInterfaceName = objItem.NetConnectionID
       objShell.Run "netsh interface set interface """ & strInterfaceName & """ admin=disable", 0, True
   End If
Next

Enable_Network_Adapters.vbs
Código
Set objShell = CreateObject("WScript.Shell")
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapter",,48)
For Each objItem in colItems
   If objItem.NetConnectionStatus = 0 Then
       strInterfaceName = objItem.NetConnectionID
       objShell.Run "netsh interface set interface """ & strInterfaceName & """ admin=enable", 0, True
   End If
Next

También puedes utilizar programas gratuitos como Net Disabler, que residen en forma de icono en la bandeja del sistema (system tray) y sirven como atajo para llevar a cabo esa tarea de forma especializada:

 - https://www.sordum.org/9660/net-disabler-v1-1/


Por último, y en caso de que tengas carpetas compartidas en la VM que apunten vulnerablemente a tu sistema operativo huésped (host), podrías utilizar un script (de nuevo mediante un archivo de acceso directo "*.lnk") para montar/desmontar la unidad virtual en la VM cuando no te sea realmente necesario mantener acceso a tu sistema operativo mediante esas carpetas compartidas, ya que son visibles para un malware.

Puedes usar, por ejemplo, estos scripts VBS para desconectar y reconectar la unidad de red en la VM:

Disconnect_Network_Drive.vbs
Código
Set objNetwork = CreateObject("WScript.Network")
objNetwork.RemoveNetworkDrive "Z:", True, True

Reconnect_Network_Drive.vbs
Código
Set objNetwork = CreateObject("WScript.Network")
objNetwork.MapNetworkDrive "Z:", "\\vmware-host\Shared Folders"

Nota: Estos scripts requieren ser modificados, ya que logicamente la letra de unidad y la ruta UNC cambiarán dependiendo de tu configuración y si estás usando VMWare u otro software de virtualización.

EDITO: Una adaptación para hallar y desmontar todas las unidades de red:

Disconnect_All_Network_Drives.vbs
Código
Option Explicit
 
Dim objNetwork, objShell, unmountedDrives
Dim colDrives, i, drive, path, msg
 
Set unmountedDrives = CreateObject("System.Collections.ArrayList")
 
Set objNetwork = CreateObject("WScript.Network")
Set colDrives = objNetwork.EnumNetworkDrives
For i = 0 to colDrives.Count - 1 Step 2
   drive = colDrives.Item(i)
   path  = colDrives.Item(i+1)
   objNetwork.RemoveNetworkDrive drive, True, True
   unmountedDrives.Add drive & vbTab & """" & path & """"
Next
 
Set objShell = CreateObject("WScript.Shell")
If unmountedDrives.Count = 0 Then
   msg = "No active network drives were found."
   objShell.Popup msg, 0, "Warning: Network Drives", 48
 
Else
   msg = "The following network drives were unmounted:" & vbCrLf & vbCrLf
   For Each drive In unmountedDrives
       msg = msg & drive & vbCrLf & vbCrLf
   Next
   objShell.Popup msg, 0, "Info: Network Drives", 64
   unmountedDrives.Clear()
End If




Muchísimas gracias por tu respuesta, gran trabajazo.
He estado echándole un vistazo a todo, me ha llamado mucho la atención Sandboxie, aunque por lo que he visto, lo óptimo sería ejecutarlo en una máquina virtual (quizás es eso lo que me querías decir) porque si quieres ejecutar un software en Sanboxie, tienes que instalarlo previamente en el SO anfitrión, al menos es lo que he visto en varios vídeos. Corrígeme si no es así por favor.
Muchas gracias.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente