Cómo escanear en busca de virus a través de un servicio de API antivirus

La Web está llena de páginas maliciosas. Desafortunadamente, estos también pueden existir en los sitios de sus clientes/proveedores.

Hoy en día, ningún negocio carece de alguna integración que se alimente o proporcione información al sitio web de un cliente o proveedor. Por supuesto, su empresa no existiría sin estos servicios, pero a veces es una amenaza debido a estos servicios. Los sitios externos con los que interactúa pueden tener contenido malicioso (ya sea instalado a propósito o comprometido por un tercero), y si ese contenido llega al lugar predeterminado, las consecuencias pueden ser desastrosas.

¿No podemos escanear sitios web en busca de páginas maliciosas manualmente?

Puede parecer que un desarrollador competente debería poder escanear páginas en busca de vulnerabilidades. Desafortunadamente, esto ni siquiera se acerca a la realidad por muchas razones:

  • Los desarrolladores no se especializan en detección/seguridad. Su experiencia es en la construcción de software complejo mediante la unión de muchos subsistemas más pequeños; en otras palabras, simplemente no tienen el conjunto de habilidades.
  • Incluso si te encontraras con un desarrollador lo suficientemente talentoso, la tarea simplemente sería demasiado. Una página web típica rica en funciones contiene miles de líneas de código: unirlas todas para resolver el panorama general, así como las pequeñas lagunas, es nada menos que una pesadilla. ¡También podrías ordenarle a alguien que se coma un elefante entero para el almuerzo!
  • Para reducir los tiempos de carga de la página, los sitios web a menudo comprimen y minimizan sus archivos CSS y JavaScript. Esto da como resultado un lío de código tan espeso que es perfectamente imposible de leer.

¿Qué crees que hace este código? :kappa: (Fuente elgg.org)

Si esto todavía parece legible, es porque las buenas almas decidieron preservar los nombres de las variables en un contexto amplio. Pruebe el código fuente de jQuery, que alguien puede alojar en su sitio web y manipular (dos líneas en algún lugar de este lío):

Sin mencionar que la fuente tiene cerca de 5,000 líneas de código. 😎

Este es solo un único script del que estamos hablando. Una página web suele tener entre 5 y 15 secuencias de comandos adjuntas y es probable que esté trabajando con entre 10 y 20 páginas web en total. Imagina tener que hacer esto todos los días. . . O peor aún, ¡unas cuantas veces al día!

Afortunadamente, es posible escanear URL de forma rápida y sencilla a través de las API. Puede escanear no solo páginas web, sino también archivos que se le proporcionan para descargar. Veamos algunas de las herramientas API que lo ayudan a hacer esto. Y, oh, dado que se trata de API, los esfuerzos de su desarrollador se verán mucho mejor si les pide que creen una herramienta de exploración de sitios web utilizando estas API. 😀

Riesgo web de Google

No es de extrañar que un verificador de páginas web provenga de la empresa que prácticamente posee Internet (todas sus páginas web, quiero decir). Pero hay una trampa: Riesgo web de Google todavía está en beta y está disponible en solicitud solamente. Estar en beta significa más cambios importantes.

Aún así, dado que la API es bastante sencilla, su desarrollador puede abordar cualquier cambio utilizando una herramienta de monitoreo de API y unos minutos de tiempo de desarrollo. 🙂

Usar la API también es súper fácil. Para verificar una sola página usando la línea de comando, simplemente envíe una solicitud de la siguiente manera:

curl -H "Content-Type: application/json" "https://webrisk.googleapis.com/v1beta1/uris:search?key=YOUR_API_KEY&threatTypes=MALWARE&uri=http%3A%2F%2Ftestsafebrowsing.appspot.com%2Fs%2Fmalware.html"

Si la solicitud fue exitosa, la API responde con el tipo de vulnerabilidad en la página:

{
  "threat": {
    "threatTypes": [
      "MALWARE"
    ],
    "expireTime": "2019-07-17T15:01:23.045123456Z"
  }
}

Como puede ver, la API confirma que se sabe que la página contiene malware.

Tenga en cuenta que la API de riesgo web de Google no realiza un diagnóstico a pedido en una URL o archivo de su elección. Consulta una lista negra mantenida por Google basada en los resultados de la búsqueda e informa e informa si la URL está en esa lista negra o no. En otras palabras, si esta API dice que una URL es segura, es seguro asumir que es bastante segura, pero no hay garantías.

VirusTotal

VirusTotal es otro servicio genial que puede usar para escanear no solo URL, sino también archivos individuales (en ese sentido, lo pongo por encima de Google Web Risk en términos de utilidad). Si está ansioso por probar el servicio, solo diríjase al sitio web y, justo en la página de inicio, hay una opción para comenzar.

Si bien VirusTotal está disponible como una plataforma gratuita creada y seleccionada por una comunidad dinámica, ofrece una versión comercial de su API. Estos son los motivos por los que desearía pagar por el servicio premium:

  • Tasa de solicitud flexible y cuota diaria (a diferencia de las meras cuatro solicitudes por minuto para la API pública)
  • El recurso enviado es analizado por VirusTotal por su antivirus y se devuelve información de diagnóstico adicional.
  • Información basada en el comportamiento sobre los archivos que envíe (los archivos se colocarán en diferentes entornos de espacio aislado para monitorear actividades sospechosas)
  • Consulte la base de datos de archivos de VirusTotal para varios parámetros (se admiten consultas complejas)
  • SLA estricto y tiempos de respuesta (los archivos enviados a VirusTotal a través de la API pública se ponen en cola y tardan un tiempo considerable en analizarse)

Si elige la API privada de VirusTotal, puede ser una de las mejores inversiones que haya hecho en un producto SaaS para su empresa.

Escanii

Otra recomendación para las API de escáner de seguridad es Escanii. Es una API REST simple que puede escanear documentos/archivos enviados en busca de amenazas. ¡Piense en él como un escáner de virus bajo demanda que se puede ejecutar y escalar sin esfuerzo!

Estas son las ventajas que ofrece Scanii:

  • Capaz de detectar malware, scripts de phishing, contenido de spam, contenido NSFW (Not Safe For Work), etc.
  • Se basa en Amazon S3 para facilitar el escalado y el almacenamiento de archivos sin riesgos.
  • Detecte texto ofensivo, inseguro o potencialmente peligroso en más de 23 idiomas.
  • Un enfoque simple, sencillo y enfocado para el escaneo de archivos basado en API (en otras palabras, sin funciones innecesariamente «útiles»)

Lo realmente bueno es que Scanii es un metamotor; es decir, no realiza escaneos por sí solo, sino que utiliza un conjunto de motores subyacentes para el trabajo preliminar. Es un gran activo ya que no tiene que estar atado a un motor de seguridad en particular, lo que significa que no necesita preocuparse por los cambios de API rotos y demás.

Veo a Scanii como una gran ayuda para las plataformas que dependen del contenido generado por el usuario. Otro caso de uso es el de escanear archivos generados por un proveedor de servicios en el que no puede confiar al 100%.

metadefensor

Para algunas organizaciones, escanear archivos y páginas web en un solo punto final no es suficiente. Tienen un flujo de información complejo y ninguno de los puntos finales puede verse comprometido. Para esos casos de uso, metadefensor es la solución ideal.

Piense en Metadefender como un guardián paranoico que se encuentra entre sus activos de datos centrales y todo lo demás, incluida la red. Digo «paranoico» porque esa es la filosofía de diseño detrás de Metadefender. No puedo describir esto mejor que ellos, así que aquí va:

La mayoría de las soluciones de seguridad cibernética se basan en la detección como su función de protección principal. El saneamiento de datos de MetaDefender no depende de la detección. Asume que todos los archivos podrían estar infectados y reconstruye su contenido mediante un proceso seguro y eficiente. Admite más de 30 tipos de archivos y genera archivos seguros y utilizables. La desinfección de datos es extremadamente eficaz para prevenir ataques dirigidos, ransomware y otros tipos de amenazas de malware conocidas y desconocidas.

Hay algunas características interesantes que ofrece Metadefender:

  • Prevención de pérdida de datos: en términos simples, esta es la capacidad de anular y salvaguardar la información confidencial detectada dentro del contenido del archivo. Por ejemplo, Metadefender ofuscará un recibo en PDF con el número de tarjeta de crédito visible.
  • Implemente localmente o en la nube (¡dependiendo de cuán paranoico sea!).
  • Examine más de 30 tipos de formatos de archivo (zip, tar, rar, etc.) y 4500 trucos de suplantación de identidad de tipo de archivo.
  • Implementaciones multicanal: asegure solo los archivos o utilice el correo electrónico, la red y el control de inicio de sesión.
  • Flujos de trabajo personalizados para aplicar diferentes tipos de canales de escaneo basados ​​en reglas personalizadas.

Metadefender incluye más de 30 motores, pero los abstrae muy bien, por lo que nunca tendrá que pensar en ellos. Si es una empresa mediana o grande que no puede permitirse pesadillas de seguridad, Metadefender es una gran opción.

Urlscan.io

Si se ocupa principalmente de páginas web y siempre ha querido conocer más a fondo lo que hacen detrás de escena, Urlscan.io es una excelente arma en tu arsenal.

La cantidad de información que arroja Urlscan.io es impresionante. Entre otras cosas, puedes ver:

  • Un número total de direcciones IP contactadas por la página.
  • Lista de geografías y dominios a los que la página envió información.
  • Tecnologías utilizadas en el front-end y back-end del sitio (no se hacen afirmaciones de precisión, ¡pero es alarmantemente preciso!).
  • Información de dominio y certificado SSL
  • Interacciones HTTP detalladas junto con la carga útil de la solicitud, nombres de servidores, tiempos de respuesta y mucho más.
  • Redirecciones ocultas y solicitudes fallidas
  • Enlaces salientes
  • Análisis de JavaScript (variables globales utilizadas en los scripts, etc.)
  • Análisis de árbol DOM, contenido de formularios y más.

Así es como se ve todo:

La API es simple y directa, lo que le permite enviar una URL para escanear, así como verificar el historial de escaneo de esa URL (es decir, escaneos realizados por otros). Considerándolo todo, Urlscan.io proporciona una gran cantidad de información para cualquier empresa o individuo interesado.

SUCURI

SUCURI es una plataforma muy conocida en lo que respecta al escaneo en línea de sitios web en busca de amenazas y malware. Lo que quizás no sepas es que tienen un API REST también, permitiendo que el mismo poder sea aprovechado programáticamente.

No hay mucho de qué hablar aquí, excepto que la API es simple y funciona bien. Por supuesto, Sucuri no se limita a una API de escaneo, así que mientras lo hace, le recomiendo que consulte algunas de sus potentes funciones como escaneo del lado del servidor (básicamente, proporciona las credenciales de FTP, inicia sesión y escanea todos los archivos en busca de amenazas).

Quttera

Nuestra última entrada en esta lista es Quttera, que ofrece algo ligeramente diferente. En lugar de escanear el dominio y las páginas enviadas a pedido, Quttera también puede realizar un monitoreo continuo, lo que lo ayuda a evitar vulnerabilidades de día cero.

La API REST es simple y potente y puede devolver algunos formatos más que JSON (XML y YAML, por ejemplo). Se admiten subprocesos múltiples completos y simultaneidad en los escaneos, lo que le permite ejecutar múltiples escaneos exhaustivos en paralelo. Dado que el servicio se ejecuta en tiempo real, es invaluable para las empresas que se dedican a ofertas de misión crítica donde el tiempo de inactividad significa la desaparición.

Conclusión

Las herramientas de seguridad como las que se tratan en este artículo son simplemente una línea adicional de defensa (o precaución, por así decirlo). Al igual que un programa antivirus, estos pueden hacer muchas cosas, pero no hay forma de que puedan proporcionar un método de escaneo a prueba de fallas. Eso es simplemente porque un programa escrito con intenciones maliciosas es lo mismo para la computadora que el escrito para un impacto positivo: ambos solicitan recursos del sistema y realizan solicitudes de red; el diablo está en el contexto, que no es para que las computadoras funcionen con éxito.

Dicho esto, estas API brindan una cobertura de seguridad sólida que es deseable en la mayoría de los casos, ¡tanto para sitios web externos como para el suyo! 🙂