miércoles, 27 de marzo de 2019

Virus Total .. security community .. Analyze out-date !

Virus Total ..  security community .. Analyze out-date !
...

...
Comparto otra que se me ocurrio . . XD . . cuando realizo analisis en Virus Total (VT). . El problema de entrar solo por ver resultados . . como lo hago yo frecuentemente con PowerShell-CMD ( Bloggeado como lo realice hace mucho ya ) . . .. y lo hago asi simplemente por la flojera de poner uno por uno las urls-IPs y soy algo paranoico  XD. . . XD . . pero he notado con mas calma que varios analisis son demasiados viejos . .  no se les ha realizado un nuevo analisis hasta en varios años .. .. ..


...
Por lo que ahora estoy buscando ..::
- Obtener fecha de analisis (por si no se ha analizado nunca; necesita un loop)
- Pedir hacer un reanalizado si supera 60 dias (muchos son analisis muy viejos; pero no quiero andar re-analizando todo denuevo .. XD )
- Ver resultados de los engines AVs
...
... En lineas punteadas lo propuesto; para PowerShell ..::
# ------------------------------------------
# Ventana; para probar .. de aqui se puede automatizar con un BAT
[void][Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic')
$title = 'IP-URL VT Analisis'
$msg = 'Analisis a IP-URL :'
$IP = [Microsoft.VisualBasic.Interaction]::InputBox($msg, $title)
# ------------------------------------------
# loop por si no ha sido escaneando por VT nunca la IP.
Write-Host " = = = = = = = = = = = = = = = = = = = = = = = = = "
Write-Host "  .. mas de un intento de Analisis significa que no ha sido Analizado "
$counter = 1
while (($counter -lt 3) -and !(Test-Path "result-vt.tmp")) {
Write-Host " Intento VT  $counter "
$Uri = $IP | foreach {"https://www.virustotal.com/es/url/submission/?force=1&url=" + $_ }
$web = Invoke-WebRequest -Proxy 'http://127.0.0.1:8118' -Uri $Uri
$lines = @(".+last-analysis-date..\d+", "detection-ratio..\d+", ".+btn-url-reanalyse.", ".+btn-url-view-last-analysis.")
$web.tostring() -split "[`r`n]" | select-string -Pattern $lines | Foreach-Object {$_ -Replace('^.+id=','')} | Foreach-Object {$_ -Replace('\/span.+$','')} | Set-Content "result-vt.tmp"
Start-Sleep -s 4
$path = "result-vt.tmp"
$counter++
}
# VT detection-ratio
$dr = get-content "result-vt.tmp" | select-string -Pattern '.detection-ratio..\d+'
#
# viendo fecha de analisis
$VTdate = get-content "result-vt.tmp" | select-string -Pattern 'last-analysis-date' | Foreach-Object {$_ -Replace('^.+date..','')} | Foreach-Object {$_ -Replace('\s\d+\:\d+\:\d+.$','')}
$Newdate = Get-Date -format yyyy-MM-dd
$VTdays = (New-TimeSpan -Start $VTdate -End $Newdate).Days
Write-Host " - - - - -  - - - - - - - - - - - - - - - - - - - - "
Write-Host " IP: $IP    Fecha: $VTdate    Deteccion: $dr"
Write-Host " $VTdate  han transcurridos $VTdays dias desde el ultimo analisis"
#
#  si el analisis es mas viejo de 60 dias se reanalizar de lo contrario solo se veran resultados
if ($VTdays -gt 60) {
# analisis es viejo Reanalizando
Write-Host " El analisis tiene mas de 60 dias; es viejo; pidiendo a VT reanalisis "
$VTreanalizar = get-content "result-vt.tmp" | select-string -Pattern '^.btn-url-reanalyse.' | Foreach-Object {$_ -Replace('^.+href=..','')} | Foreach-Object {$_ -Replace('..$','')}
$Urir = $VTreanalizar | foreach {"https://www.virustotal.com/" + $_ }
Invoke-WebRequest -Proxy 'http://127.0.0.1:8118' -Uri $Urir | Out-Null
# Refresh
Start-Sleep -Seconds 10
# ver nuevos resultados
$web = Invoke-WebRequest -Proxy 'http://127.0.0.1:8118' -Uri $Uri
$lines = @(".+last-analysis-date..\d+", "detection-ratio..\d+", ".+btn-url-view-last-analysis.")
$web.tostring() -split "[`r`n]" | select-string -Pattern $lines | Foreach-Object {$_ -Replace('^.+id=','')} | Foreach-Object {$_ -Replace('\/span.+$','')} | Set-Content "resultN-vt.tmp"
#
# esperando; recheck every 3 seconds que aparesca el archivo o se cumpla la cuenta
$counter = 0
while (($counter -lt 3) -and !(Test-Path "resultN-vt.tmp")) {
$counter++
start-sleep 3 }
#
# VT detection-ratio
$Ndr = get-content "resultN-vt.tmp" | select-string -Pattern '.detection-ratio..\d+'
$VTdate = get-content "resultN-vt.tmp" | select-string -Pattern 'last-analysis-date' | Foreach-Object {$_ -Replace('^.+date..','')} | Foreach-Object {$_ -Replace('\s\d+\:\d+\:\d+.$','')}
Write-Host " IP: $IP    Fecha: $VTdate    Deteccion: $Ndr"
#
# "viendo analisis; Detecciones . . . . . . . . . . . . "
$VTVerA = get-content "resultN-vt.tmp" | select-string -Pattern 'btn-url-view-last-analysis' | Foreach-Object {$_ -Replace('^.+href=..es.url.','ui/urls/')} | Foreach-Object {$_ -Replace('\/analysis.+$','?relationships=last_serving_ip_address,network_location') }
$UriVerA = $VTVerA | foreach {"https://www.virustotal.com/" + $_ }
$web = Invoke-WebRequest -Proxy 'http://127.0.0.1:8118' -Uri $UriVerA
$web.tostring() -split "[`r`n]" | select-string -Pattern '.result.: .[abd-tvz].+' -Context 6,0 | Set-Content "vt-vanalisis.tmp"
#
get-content "vt-vanalisis.tmp" -ErrorAction SilentlyContinue | Where-Object {$_ -notmatch 'category'} | Where-Object {$_ -notmatch 'engine_'} | Where-Object {$_ -notmatch 'method'} | Foreach-Object {$_ -Replace('{$','') } | Write-Host
}
else {
# fecha bien viendo analisis
# "viendo analisis; Detecciones . . . . . . . . . . . . "
$VTVerA = get-content "result-vt.tmp" | select-string -Pattern 'btn-url-view-last-analysis' | Foreach-Object {$_ -Replace('^.+href=..es.url.','ui/urls/')} | Foreach-Object {$_ -Replace('\/analysis.+$','?relationships=last_serving_ip_address,network_location') }
$UriVerA = $VTVerA | foreach {"https://www.virustotal.com/" + $_ }
$web = Invoke-WebRequest -Proxy 'http://127.0.0.1:8118' -Uri $UriVerA
$web.tostring() -split "[`r`n]" | select-string -Pattern '.result.: .[abd-tvz].+' -Context 6,0 | Set-Content "vt-vanalisis.tmp"
#
get-content "vt-vanalisis.tmp" -ErrorAction SilentlyContinue | Where-Object {$_ -notmatch 'category'} | Where-Object {$_ -notmatch 'engine_'} | Where-Object {$_ -notmatch 'method'} | Foreach-Object {$_ -Replace('{$','') } | Write-Host
#
}
Write-Host " = = = = = = = = = = = = = = = = = = = = = = = = = "
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Borrar temporales .tmp
Remove-Item *.tmp -ErrorAction SilentlyContinue
# Limpíar variables
Clear-variable -Name "Ipp", "IP", "Uri", "lines", "web", "VTdate", "Newdate", "VTdays", "VTreanalizar", "VTVerA", "counter", "path" -ErrorAction SilentlyContinue
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
...
Como lucen los resultados ..::


...
Como lucen los resultados; mas ejemplos  ..::
...
 = = = = = = = = = = = = = = = = = = = = = = = = =
  .. mas de un intento de Analisis significa que no ha sido Analizado
 Intento VT  1
 - - - - -  - - - - - - - - - - - - - - - - - - - -
 IP: 195.226.197.50    Fecha: 2019-02-22    Deteccion: "detection-ratio">2/66<
 2019-02-22  han transcurridos 33 dias desde el ultimo analisis
                  "Avira":
>                     "result": "malware"
                  "Forcepoint ThreatSeeker":
>                     "result": "malicious"
 = = = = = = = = = = = = = = = = = = = = = = = = =
 = = = = = = = = = = = = = = = = = = = = = = = = =
  .. mas de un intento de Analisis significa que no ha sido Analizado
 Intento VT  1
 - - - - -  - - - - - - - - - - - - - - - - - - - -
 IP: 188.65.74.163    Fecha: 2019-02-22    Deteccion: "detection-ratio">4/66<
 2019-02-22  han transcurridos 33 dias desde el ultimo analisis
                  "Avira":
>                     "result": "malware"
                  "BitDefender":
>                     "result": "malware"
                  "Forcepoint ThreatSeeker":
>                     "result": "malicious"
                  "Sophos":
>                     "result": "malicious"
 = = = = = = = = = = = = = = = = = = = = = = = = =
 = = = = = = = = = = = = = = = = = = = = = = = = =
  .. mas de un intento de Analisis significa que no ha sido Analizado
 Intento VT  1
 - - - - -  - - - - - - - - - - - - - - - - - - - -
 IP: 203.63.5.190    Fecha: 2019-03-12    Deteccion: "detection-ratio">5/66<
 2019-03-12  han transcurridos 15 dias desde el ultimo analisis
                  "Avira":
>                     "result": "malware"
                  "BitDefender":
>                     "result": "malware"
                  "CyRadar":
>                     "result": "malicious"
                  "Dr.Web":
>                     "result": "malicious"
                  "Sophos":
>                     "result": "malicious"
 = = = = = = = = = = = = = = = = = = = = = = = = =
 = = = = = = = = = = = = = = = = = = = = = = = = =
  .. mas de un intento de Analisis significa que no ha sido Analizado
 Intento VT  1
 - - - - -  - - - - - - - - - - - - - - - - - - - -
 IP: 109.196.143.136    Fecha: 2019-03-20    Deteccion: "detection-ratio">5/66<
 2019-03-20  han transcurridos 7 dias desde el ultimo analisis
                  "Avira":
>                     "result": "malware"
                  "Dr.Web":
>                     "result": "malicious"
                  "Forcepoint ThreatSeeker":
>                     "result": "malicious"
                  "Kaspersky":
>                     "result": "phishing"
                  "Sophos":
>                     "result": "malicious"
 = = = = = = = = = = = = = = = = = = = = = = = = =
= = = = = = = = = = = = = = = = = = = = = = = = =
  .. mas de un intento de Analisis significa que no ha sido Analizado
 Intento VT  1
 - - - - -  - - - - - - - - - - - - - - - - - - - -
 IP: 5.135.115.100    Fecha: 2019-03-01    Deteccion: "detection-ratio">1/66<
 2019-03-01  han transcurridos 26 dias desde el ultimo analisis
                  "Sophos":
>                     "result": "malicious"
 = = = = = = = = = = = = = = = = = = = = = = = = =
 = = = = = = = = = = = = = = = = = = = = = = = = =
  .. mas de un intento de Analisis significa que no ha sido Analizado
 Intento VT  1
 - - - - -  - - - - - - - - - - - - - - - - - - - -
 IP: 95.9.94.216    Fecha: 2017-03-10    Deteccion: "detection-ratio">0/64<
 2017-03-10  han transcurridos 747 dias desde el ultimo analisis
 El analisis tiene mas de 60 dias; es viejo; pidiendo a VT reanalisis
 IP: 95.9.94.216    Fecha: 2019-03-27    Deteccion: "detection-ratio">0/66<
= = = = = = = = = = = = = = = = = = = = = = = = =
  .. mas de un intento de Analisis significa que no ha sido Analizado
 Intento VT  1
 - - - - -  - - - - - - - - - - - - - - - - - - - -
 IP: 190.74.182.132    Fecha: 2016-08-07    Deteccion: "detection-ratio">0/68<
 2016-08-07  han transcurridos 962 dias desde el ultimo analisis
 El analisis tiene mas de 60 dias; es viejo; pidiendo a VT reanalisis
 IP: 190.74.182.132    Fecha: 2019-03-27    Deteccion: "detection-ratio">0/66<
 = = = = = = = = = = = = = = = = = = = = = = = = =
 = = = = = = = = = = = = = = = = = = = = = = = = =
  .. mas de un intento de Analisis significa que no ha sido Analizado
 Intento VT  1
 - - - - -  - - - - - - - - - - - - - - - - - - - -
 IP: 173.161.0.227    Fecha: 2016-12-14    Deteccion: "detection-ratio">0/68<
 2016-12-14  han transcurridos 833 dias desde el ultimo analisis
 El analisis tiene mas de 60 dias; es viejo; pidiendo a VT reanalisis
 IP: 173.161.0.227    Fecha: 2019-03-27    Deteccion: "detection-ratio">0/66<
 = = = = = = = = = = = = = = = = = = = = = = = = =
...
Los resultados muestran el tipo de malware que espera tras la puerta . . XD . .en las pruebas se utilizaron IPs señaladas como proxis-servers . . XD . . es un mundo peligroso.
..
Mis Scripts son algo sucios . . ya que los hago a pausas . . y aveces cambio de parecer . . voy y vengo frecuentemente . . y en cuanto arrancan los dejo libre . . XD . . XD



No hay comentarios.:

Publicar un comentario