sábado, 26 de noviembre de 2016

Como Crear Un Payload USB

En este breve tema les mostrare un código hecho por mi en VBScript (un Payload) que ejecuta un bat almacenado en una usb.
Primero busque en google que era un payload y encontré que en la pagina de wikipedia nos dice lo siguiente:

En seguridad computacional, el payload se refiere a la parte del malware que realiza la acción maliciosa.
En el análisis de software malicioso como gusanos, virus o Troyanos, se refiere a los resultados del ataque del software.

La parte maliciosa que aremos sera cargar x programa que se encuentra en nuestra USB con permisos de administrador cada ves que sea insertada en nuestra PC.

Para eso nuestro payload deberá ejecutarse en nuestra PC cada ves que encienda y con permisos de administrador.

Para poder conseguir permisos de administrador tuve que recurrir a un tema anterior aquí el link si quieren he charle un vistazo:

http://elblogdeflamer.blogspot.mx/2016/05/conseguir-permisos-de-administrador-por.html


Bueno aquí les dejo el código con una breve explicación de cada linea y separe un poco las lineas para que no se mirara todo junto:


option explicit
on error resume next  
' aqui le desimos que si hay un error que siga la ejecucion'

dim shell,system,usb,disco,bat,vf 
' declaramos variables'

set shell = createobject("wscript.shell") 
' creamos el objecto shell'

set system = createobject("scripting.filesystemobject")  
' creamos el objecto system'


bat="sus\polo.bat"  
'AQUI PONES LA RUTA DE EL BAT EN LA USB'


if not(system.fileexists("wxs.exe")) then
' preguntamos si existe wxs.exe '
  
   system.copyfile wscript.fullname,"wxs.exe"  
   ' copiamos el wscript adonde se encuentra nuestro vbs con el nombre wxs'
end if 


comprovar  ' funcion insistente que nos dara permisos de administrador'

while true  
' ciclo while infinito'

   set usb = system.drives  
   ' obtenemos la lista de drives conectados  ' 
   
   for each disco in usb  
   ' recoremos la lista de drives con un ciclo for   '
   
      if disco.drivetype=1 then    
  ' preguntamos si el drives es una USB '
   
         if disco.SerialNumber = "273197608" then 
  'aqui preguntamos si es nuestro usb (CAMBIAS ESTO POR TU ID DE USB)'
   
            if system.fileexists(disco.RootFolder & bat) then 
 ' preguntamos si existe el archivo bat'
   
  shell.run "cmd.exe /c " & disco.RootFolder & bat ,0 
        'ejecutamos el bat en modo oculto ' 
      
  while system.driveexists(disco.RootFolder) and err = 0  
    ' ciclo while que pregunta si no sea desconectado nuestra usb'
      
     wscript.sleep 1000 
    'pausa de 1 segundo'
      
   wend 
               err.number=0 
    ' reiniciamos los errores a 0'
      
            end if   
         end if 
      end if
   next
wend

function comprovar
   dim process,list,s,service,objShell 
   'declaramos las variables de la funcion'
   
   Set process =GetObject("winmgmts:") 
   ' creamos un objecto winmgmts'
   
   Set list= process.instancesof("win32_process") 
   ' obtenemos la lista de procesos'
   
   
   s=0 
   ' inicializamos a  0'
   
   
   For Each service In list  
   'ciclo for donde recorremos la lista de procesos en busca de nuestra copia de wscript '
   
   
      if service.name="wxs.exe" then 
  ' pregunta si se esta ejecutando wxs.exe'
   
   
         s=s+1   
   ' si entra al if quiere desir que se esta ejecutando wxs.exe entonses a la variable s se le aumenta 1'
   
   
      end if
   next
   
   if s=0 then 
 ' pregunta si s vale 0 quiere desir que no se esta ejecutando wxs'
   
   
      Set objShell = CreateObject("Shell.Application") 
  'crea un objeto application'
   
   
      objShell.ShellExecute "wxs.exe ", Chr(34) & WScript.ScriptFullName & Chr(34) & " RunAsAdministrator", "", "runas", 0  
  ' se autoejecuta este script con permisos de administrador'
   
   
      comprovar 
  ' y buelve a yamarse el metodo comprovar hasta que el usuario conseda los permisos de administrador'
   end if
end function




ya que tengan copiado el código, lo pegan en bloc de notas y lo aguardan con la extencion ".vbs" yo lo nombre "Payload.vbs"

ahora si quieren saber su numero id de usb aquí les dejo este otro programa


option explicit

dim system,usb,unidad

set system = createobject("scripting.filesystemobject")
unidad=inputbox("Ingresa La Letra De La Unidad" & vbcrlf & vbcrlf & "Ejemplo1--- E  Ejemplo2--- E:    Ejemplo3--- E:\")

if unidad <> "" then
   if system.driveexists(unidad) then
      set usb = system.getdrive(unidad)
      msgbox "Unidad Expecificada: " & usb.rootfolder & vbcrlf & vbcrlf & "Con Nombre: " & usb.volumename & vbcrlf & vbcrlf & "Su Numero Serie Es: " & usb.SerialNumber
   else
      msgbox "Unidad Ingresada No Existente",,"Aviso De Error"
   end if    
else
   msgbox "No Se Ingreso Ninguna Unidad",,"Aviso De Error"
end if



Igual que el anterior lo copian y lo pegan con la extencion ".vbs" y al ejecutar este ultimo programa nos preguntara lo siguiente:




en este cuadro de texto tendrán que ingresar la letra de unidad, tienen 3 diferentes modos de hacerlo

La pura letra de la unidad
1)  E

La letra de la unidad acompañada de los dos puntos
2)  E:

Y por ultimo pueden ingresar la letra de la unidad junto con los 2 puntos seguido de la barra inversa
3)  E:\


los 3  modos funcionan y como respuesta nos manda lo siguiente





Ahora si quieren que su payload se inicie cuando encienda la computadora tendrán que añadirlo al registro.

Abrimos el regedit y nos iremos hasta la sub-clave

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

y agregamos una nueva cadena dando clic derecho y aparecerá lo siguiente




Ustedes pueden ponerle el nombre que ustedes quieran yo le pondre "payload" y para ponerle el valor damos doble clic sobre el y ponemos la ruta del payload así:




por ultimo presionamos aceptar y cuando se inicie nuestra pc nuestro payload se ejecutara y empezara a buscar nuestra usb para ejecutar el bat que se encuentra en el

bueno saludos flamer y creo que eso es todo



No hay comentarios.:

Publicar un comentario