elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  filnspect [VBS]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: filnspect [VBS]  (Leído 3,654 veces)
Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
filnspect [VBS]
« en: 5 Mayo 2009, 18:19 pm »

Buenas ...

Bueno, hace un tiempo y tras una consulta en el sub de seguridad se me ocurrió crear un pequeño script para consultar de manera automática sobre el origen de determinados archivos/librerías, para lo cual hacía uso de la web :http://www.fileinspect.com/, la cual esta en beta para ya muestra tener una buena bbdd :P

El caso es que en ese momento el script fue resultado de algunos minutos de aburrimiento, pero luego de analizarlo un poco más detenidamente me pareció que me podía resultar útil, así que lo he ido modificando en mi beneficio :D y lo comparto a continuación :P

Código
  1. 'by Novlucker
  2. Set objxmlHTTP = CreateObject("Microsoft.XMLHTTP")
  3. Set objfso = Createobject("Scripting.filesystemobject")
  4.  
  5. If wscript.arguments.count <> 2 then
  6. Ayuda()
  7. End if
  8.  
  9. Format = Ucase(wscript.arguments(0))
  10.  
  11. Select case Format
  12. case "/F"
  13. Set FromFolder = objfso.getfolder(wscript.arguments(1))
  14. Set FileList = FromFolder.files
  15. If FileList.count = 0 then
  16. Msgbox "La carpeta seleccionada no contiene ningún archivo", 64, "Informe"
  17. wscript.quit
  18. End if
  19. case "/A"
  20. If objfso.fileexists(wscript.arguments(1)) then
  21. Set FromFile = objfso.opentextfile(wscript.arguments(1),1)
  22. FileList = Split(FromFile.readall,vbnewline)
  23. FromFile.close
  24. Else
  25. Msgbox "El archivo seleccionado no existe", 16, "Informe"
  26. wscript.quit
  27. End if
  28. case "/L"
  29. FileList = Split(wscript.arguments(1),",")
  30. case "/P"
  31. Set Taskmgr = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery ("select * from Win32_Process")
  32. Dim Taskname(): Redim Preserve Taskname(Taskmgr.count-1)
  33. For Each T in Taskmgr
  34. Taskname(n) = T.name
  35. n = n+1
  36. Next
  37. FileList = FilterAray(Taskname)
  38. case else
  39. Ayuda()
  40. End Select
  41.  
  42. For Each F in FileList
  43.  
  44. If Format = "/F" then
  45. URLF = "http://www.fileinspect.com/fileinfo/" & LCase(Replace(F.name,".","-"))
  46. F = F.name
  47. Else
  48. URLF = "http://www.fileinspect.com/fileinfo/" & LCase(Replace(F,".","-"))
  49. End if
  50.  
  51. objxmlHTTP.open "GET", URLF, 0
  52. objxmlHTTP.send()
  53. Do while objxmlHTTP.readystate <> 4
  54. wscript.sleep 200
  55. Loop
  56. response = objxmlHTTP.responsetext
  57.  
  58. blogcopy = instr(1,response,"id=""blog-copy-text""",1)
  59.  
  60. If blogcopy > 0 then
  61. Startd = instr(blogcopy, response,">",1)+1
  62. Endd = instr(Startd, response,"<",1)
  63.  
  64. Definition = mid(Response,Startd,Endd-Startd)
  65. Definition = replace(Definition,"&lt;", "<")
  66. Definition = replace(Definition,"&gt;", ">")
  67. Definition = replace(Definition,"&quot;", """")
  68.  
  69. wscript.echo Definition
  70. Else
  71. wscript.echo "</p><table cellpadding=""0"" cellspacing=""0"" width=""100%"" bgcolor=#737CA1><tr><td><a style=""color:#000000;font-size:15px;color=white;text-decoration:none;font-family:Arial;border:0px;""<b>" & F & ": Archivo desconocido</b></a></td></tr></table>"
  72. End if
  73.  
  74. Next
  75.  
  76. Function FilterAray(Aray)
  77. dim auxAray()
  78. For Each A in Aray
  79. Match = False
  80. On error resume next
  81. Newlength = ubound(auxAray) + 1
  82. If err.number > 0 then
  83. Redim Preserve auxAray(0)
  84. auxAray(0) = A
  85. err.clear
  86. On error goto 0
  87. End if
  88. For Each E in auxAray
  89. If A = E then
  90. Match = True
  91. Exit For
  92. End if
  93. Next
  94. If Match = False then
  95. Redim Preserve auxAray(Newlength)
  96. auxAray(Newlength) = A
  97. End if
  98. Next
  99. FilterAray = auxAray
  100. End Function
  101.  
  102. Sub ayuda()
  103. wscript.echo vbnewline & "Uso: cscript.exe/nologo " & wscript.scriptname & " [formato] [parametro]" & vbnewline & _
  104. vbnewline & chr(9) & "Formato" & chr(9) & "Parametro" & vbnewline & chr(9) & "/F" & chr(9) & "Ruta Carpeta" & vbnewline & _
  105. chr(9) & "/A" & chr(9) & "Ruta Archivo (Conteniendo listado)" & vbnewline & chr(9) & "/L" & chr(9) & "Lista de archivos separados por coma" & vbnewline & _
  106. chr(9) & "/P" & chr(9) & "Análisis de procesos en ejecución (Cualquier valor)" & vbnewline & vbnewline & "Ejemplos:" & vbnewline & chr(9) & "cscript.exe/nologo " & _
  107. wscript.scriptname & " /F" & " C:\WINDOWS" & vbnewline & chr(9) & "cscript.exe/nologo " & wscript.scriptname & " /A" & _
  108. " C:\Archivos.txt" & vbnewline & chr(9) & "cscript.exe/nologo " & wscript.scriptname & " /L" & " ""mstsc.exe,syskey.exe,appmgr.dll""" & _
  109. vbnewline & chr(9) & "cscript.exe/nologo " & wscript.scriptname & " /P -"
  110. wscript.quit
  111. End Sub

El script debe de lanzarse desde línea de comandos pasando los parámetros correspondientes, los cuales pueden verse en la ayuda (tanto desde ms-dos como con doble click)

Ej:
Código
  1. C:\Documents and Settings\Novlucker\Escritorio>cscript//nologo "filnspect.vbs" > Reporte.html

Como se ve además hay que redireccionar la salida (>) a un archivo de extensión html

Así se ve el resultado:

Saludos ;D

Post original: Error de permisos al modificar msconfig

Edito
:La web bajo la cual se realizaban las consultas, ha cambiado MUCHO la manera en la que se visualizan los archivos, por lo que ha dejado de ser funcional  :-\


« Última modificación: 16 Junio 2009, 05:50 am por Novlucker » En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
aaronduran2


Desconectado Desconectado

Mensajes: 790



Ver Perfil WWW
Re: filnspect [VBS]
« Respuesta #1 en: 6 Mayo 2009, 00:38 am »

Como te tienen dicho en otros posts, deberías hacer una recopilación de todos tus códigos, son buenísimos  :)


En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: filnspect [VBS]
« Respuesta #2 en: 6 Mayo 2009, 06:43 am »

Gracias  ;D

Estoy viendo que otras opciones más le puedo agregar que pueda resultar útil  :P (al menos a mi XD)

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
EddyW

Desconectado Desconectado

Mensajes: 187



Ver Perfil WWW
Re: filnspect [VBS]
« Respuesta #3 en: 6 Mayo 2009, 17:26 pm »

Citar
Definition = replace(Definition,""", """")
Esa linea me fue mal es la linea 59 despues lo edite y le aunmente una comilla que creo que faltaba y recien funciono..asi:
Citar
Definition = replace(Definition,"""", """")
Creo que faltaba no se, pero asi recien me funciono..
bueno lo demas esta muy bien me funciona perfecto..  :)
SaluDOS!!!
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: filnspect [VBS]
« Respuesta #4 en: 6 Mayo 2009, 17:52 pm »

Ju  :-X, estas seguro de haber copiado mi code? porque si te fijas, la línea 59 no tiene eso, sino que tiene Definition = replace(Definition,"&quot;", """"), es más, lo que comentas no esta en ningún sitio  :xD

Saludos
« Última modificación: 6 Mayo 2009, 18:00 pm por Novlucker » En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
EddyW

Desconectado Desconectado

Mensajes: 187



Ver Perfil WWW
Re: filnspect [VBS]
« Respuesta #5 en: 6 Mayo 2009, 17:59 pm »

Ju :-X, estas seguro de haber copiado mi code? porque si te fijas, la línea 59 tiene eso, sino que tiene Definition = replace(Definition,""", """"), es más, lo que comentas no esta en ningún sitio :xD

Saludos
Si acabo de darme cuenta, creo que hay algunos errores en esto, copie el code y lo pege en el Block de notas pero lo pego todo en una linea..
luego puse citar en tu post y lo copie de ahi por esa razon salio asi..
no se si sera solo ami pero al copiar el code asi y pegarlo lo pega en una sola linea todo sin salto de linea, pero igual ya lo puse correctamente y funciona bien..
SaluDOS!!!
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: filnspect [VBS]
« Respuesta #6 en: 6 Mayo 2009, 18:02 pm »

A que adivino que navegador utilizas? IExplorer:rolleyes:

En iexplorer ocurre eso cuando copias un code, en Firefox no ocurre  :P

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
EddyW

Desconectado Desconectado

Mensajes: 187



Ver Perfil WWW
Re: filnspect [VBS]
« Respuesta #7 en: 6 Mayo 2009, 18:11 pm »

A que adivino que navegador utilizas? IExplorer? :rolleyes:

En iexplorer ocurre eso cuando copias un code, en Firefox no ocurre :P

Saludos
Por desgracia si estoy usando IExplorer, no estoy en mi PC, en la mia uso Google Crome es mucho mas liviano y rapido y no sucede esto como en esta cosa..
SaluDOS!!!
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: filnspect [VBS]
« Respuesta #8 en: 11 Mayo 2009, 16:43 pm »

Simplemente comentar que como dije antes, estaba viendo que más le podía agregar al script, por lo que he añadido el parámetro "/P", el cual toma como input los procesos ejecutandose en la PC  :D , para lo cual entre otras cosas he debido de agregar una función para filtrar valores repetidos en la "colección"

Código
  1. C:\Documents and Settings\Novlucker\Escritorio>cscript/nologo filnspect.vbs
  2.  
  3. Uso: cscript.exe/nologo filnspect.vbs [formato] [parametro]
  4.  
  5.        Formato Parametro
  6.        /F      Ruta Carpeta
  7.        /A      Ruta Archivo (Conteniendo listado)
  8.        /L      Lista de archivos separados por coma
  9.        /P      Análisis de procesos en ejecución (Cualquier valor)
  10.  
  11. Ejemplos:
  12.        cscript.exe/nologo filnspect.vbs /F C:\WINDOWS
  13.        cscript.exe/nologo filnspect.vbs /A C:\Archivos.txt
  14.        cscript.exe/nologo filnspect.vbs /L "mstsc.exe,syskey.exe,appmgr.dll"
  15.        cscript.exe/nologo filnspect.vbs /P -
  16.  
  17. C:\Documents and Settings\Novlucker\Escritorio>

Saludos  :P

P.d: Tener en cuenta de que puede servir para dar un primer vistazo, pero solo para eso, ya que el análisis en si se basa en el nombre de ejecutables, y si nos referimos a malware, este puede tomar el nombre de ejecutables legítimos
« Última modificación: 11 Mayo 2009, 17:08 pm por Novlucker » En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines