Como usar en windows volume shadow copy con python

¡Hola! No son pocas veces las que se ha hablado de VSS (volume shadow copy de Windows) y las ventajas y riesgos que conlleva. En esta ocasión vamos a hablar de como se puede realizar un backup de cualquier fichero de windows tanto del sistema como del usuario. Hay muchos ficheros  que no pueden ser leídos y escritos al estar en zonas protegidas del sistema, con VSS(volume shadow copy de Windows) ese problema no existe ya que los ficheros no están ubicados en la zona restringida del sistema y la protección está desactivada para ellos.

import win32com.client
import os
from shutil import copyfile
def vssList():
   wcd=win32com.client.Dispatch("WbemScripting.SWbemLocator")
   wmi=wcd.ConnectServer(".","root\cimv2")
   obj=wmi.ExecQuery("SELECT * FROM win32_ShadowCopy")
   return [x.DeviceObject for x in obj]
   
def vssCreate():
   wmi=win32com.client.GetObject("winmgmts:\\\\.\\root\cimv2:Win32_ShadowCopy")
   createmethod = wmi.Methods_("Create")
   createparams = createmethod.InParameters
   createparams.Properties_[1].value="c:\\"
   results = wmi.ExecMethod_("Create",createparams)
   return results.Properties_[1].value

if __name__ == "__main__":
   print(vssCreate())
   list = vssList()
   copyfile("{0}\\Windows\\System32\\drivers\\etc\hosts".format(list[0]), "c:\\nuevo")
   

 

Con este método se puede implementar un sistema de copias de seguridad a partir de los VSS de windows. También puede servir como forma de hacerse persistente en un sistema tras explotarlo, ya que muchos antivirus no incluyen por defecto en sus escaneos del sistema los VSS. Esto puede usarse de la siguiente forma tras explotar el sistema:

  1. Se compromete el sistema y se copia el binario a la ubicación definitiva
  2. Se lanza la creación de VSS (volume shadow copy de Windows)

De esta forma ya tenemos una copia «segura» del binario malicioso en el sistema.

Esto también es usado por los ransomware, lo que hacen es lanzar una copia con VSS y cifrar los ficheros a partir de esta borrando los originales del disco. De modo que en ocasiones es posible recuperar los ficheros a partir de estos VSS si hemos sido infectados por unos de estos malwares y estos malwares no borran los VSS después de cifrar los ficheros.

Es importante que si un sistema ha sido infectado y se va a «limpiar» y a seguir usando (yo no so partidario de esto, soy partidario de reinstalar) le purguen los VSS para evitar que resurja el problema.

Deja una respuesta