Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Danyfirex en 15 Mayo 2013, 00:47 am



Título: Función Enviar Archivo VirusTotal (Escanea)
Publicado por: Danyfirex en 15 Mayo 2013, 00:47 am
Hola una función mas.  ;D
Envía muestra recuérdenlo!!!  >:D



Código
  1. ' =================================================================
  2. ' =================================================================
  3. ' => Autor: Pink
  4. ' => Upload file to VirusTotal.com For Scanning
  5. ' => Gracias VirusTotal.com
  6. ' => Fecha : 14|05|2013
  7. ' => Uso: VT_Scan("c:\hola.exe","your_APIKey")
  8. ' => Retorno:
  9. '{"response_code": 1,
  10. ' "verbose_msg": "Scan request successfully queued, come back later for the report",
  11. ' "resource": "999f7d93aa3d4a1a94cccfb4ea96bc2e28fd48020a481aa2dc7e215f3ce27bc0",
  12. ' "scan_id": "999f7d93aa3d4a1a94cccfb4ea96bc2e28fd48020a481aa2dc7e215f3ce27bc0-1324376258",
  13. ' "permalink": "https://www.virustotal.com/file/999f7d93aa3d4a1a94cccfb4ea96bc2e28fd48020a481aa2dc7e215f3ce27bc0/analysis/1324376258/",
  14. ' "sha256": "999f7d93aa3d4a1a94cccfb4ea96bc2e28fd48020a481aa2dc7e215f3ce27bc0",
  15. ' "sha1": "2cc875bca8030d745adfd14388b8c001471c2474",
  16. ' "md5": "4a00e1a3a14e4fec6f2b353b4f20bb73"}
  17. ' =================================================================
  18. ' =================================================================
  19. Option Explicit
  20.  
  21. Function VT_Scan(filepath As String, APIkey As String) As String
  22. Dim boundary As String
  23. Dim Post As String
  24. Dim bytesfinal()  As Byte
  25. Dim bytes() As Byte
  26. Dim Url As String
  27. Dim Http As Object
  28. Dim filedata As String
  29.  
  30. Url = "https://www.virustotal.com/vtapi/v2/file/scan"
  31. boundary = "--------Boundary"
  32.  
  33.  
  34. Open filepath For Binary As #1
  35. ReDim bytes(LOF(1) - 1)
  36. Get #1, , bytes()
  37. Close #1
  38.  
  39. filedata = StrConv(bytes(), vbUnicode)
  40.  
  41. Post = "--" & boundary & vbCrLf & _
  42. "Content-Disposition: form-data; name=" & Chr(34) & "apikey" & Chr(34) & vbCrLf & vbCrLf & _
  43. APIkey & vbCrLf & _
  44. "--" & boundary & vbCrLf & _
  45. "Content-Disposition: form-data; name=" & Chr(34) & "file" & Chr(34) & "; filename=" & Chr(34) & filename(filepath) & Chr(34) & vbCrLf & _
  46. "Content-Type: application/octet-stream" & vbCrLf & vbCrLf & _
  47. filedata & vbCrLf & _
  48. "--" & boundary & "--" & vbCrLf
  49.  
  50. bytesfinal() = StrConv(Post, vbFromUnicode)
  51.  
  52. Set Http = CreateObject("winhttp.winhttprequest.5.1")
  53. Http.Open "POST", Url, False
  54. Http.SetRequestHeader "Content-Type", "multipart/form-data; " & "boundary=" & boundary
  55. Http.Send (bytesfinal())
  56. VT_Scan = Http.Responsetext
  57. Set Http = Nothing
  58. End Function
  59.  
  60.  
  61. Function filename(cadena As String) As String
  62. Dim cadenas() As String
  63. cadenas() = Split(cadena, "\")
  64. filename = cadenas(UBound(cadenas))
  65. End Function
  66.  

Saludos


Título: Re: Función Enviar Archivo VirusTotal (Escanea)
Publicado por: Psyke1 en 26 Mayo 2013, 02:46 am
Estaría guay que parsearas el JSON y devolvieras un objeto con las propiedades del mismo.

DoEvents! :P


Título: Re: Función Enviar Archivo VirusTotal (Escanea)
Publicado por: BlackZeroX en 27 Mayo 2013, 07:46 am
Snif Snif Snif

ya no esta mi url en la firma Snif Snif

Dulces Lunas!¡