Detecta URLs maliciosas con Web Risk

Antes de comenzar

Configura la autenticación y habilita la API de Web Risk

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.
  3. To initialize the gcloud CLI, run the following command:

    gcloud init
  4. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Enable the Web Risk API:

    gcloud services enable webrisk.googleapis.com
  7. Install the Google Cloud CLI.
  8. To initialize the gcloud CLI, run the following command:

    gcloud init
  9. Create or select a Google Cloud project.

    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  10. Make sure that billing is enabled for your Google Cloud project.

  11. Enable the Web Risk API:

    gcloud services enable webrisk.googleapis.com

Usa las API

Cuando uses las API de Web Risk, asegúrate de estar familiarizado con el Acuerdo de Nivel de Servicio y los límites de uso de Web Risk.

Para comenzar a usar Web Risk, consulta los siguientes temas:

¿Qué API es mejor para mí? ¿Lookup o Update?

Web Risk proporciona dos API diferentes con las que puedes realizar la integración. Estas API son la API de Lookup y la API de Update. Ambas API proporcionan la misma información. Es decir, si una URL se identificó como maliciosa. La API de Lookup es la más fácil de usar. Con la API de Lookup, puedes enviar una consulta a Web Risk por cada URL que desees verificar.

La API de Update es más compleja, pero tiene algunas propiedades convenientes. Si usas la API de Update, mantendrás una base de datos local. Puedes consultar esta base de datos para verificar si una URL es maliciosa. Esta base de datos actúa como un filtro de Bloom. Es decir, puede haber falsos positivos (una URL se identifica como maliciosa, pero no lo es), pero no debería haber falsos negativos (una URL se identifica como no maliciosa, pero sí lo es). Debido a esto, rara vez se contacta a los servidores de Web Risk y solo se los contacta para confirmar las coincidencias y aclarar los falsos positivos. En la mayoría de los casos, cuando verifiques una URL con la API de Update, no necesitarás contactar a los servidores de Web Risk. Se espera que contactes a los servidores de Web Risk solo cuando actualizas la base de datos local y cuando confirmas si una URL es dañina.

En resumen, usa la API de Lookup si deseas una configuración rápida y fácil. Usa la API de Update si necesitas una verificación de URL de menor latencia.

Elige las funciones de cliente adecuadas

Si elegiste usar la API de Update, es posible que no necesites implementar la especificación completa. Hay algunas funciones que se diseñaron para clientes ampliamente distribuidos (como navegadores web) que son optimizaciones excesivas en muchos casos empresariales.

Hay algunas funciones que pueden ignorarse para facilitar la integración.

Estas son las soluciones de integración de Web Risk en orden de complejidad

  1. Usa la API de Lookup
  2. Cliente de la API de Update básico
  3. Cliente de la API de Update mediante las diferencias
  4. Cliente de la API de Update mediante las diferencias comprimidas de RICE

Usa la API de Lookup

El uso de la API de Lookup tiene la complejidad más baja. Cuando haya una URL potencialmente sospechosa, solo llama a la API de Lookup con la URL para ver un veredicto. La canonicalización y el formato de la URL son controlados por el servidor Web Risk. Esta solución debería ser válida para la mayoría de los clientes, a menos que la latencia promedio supere los requisitos.

Cliente de la API de Update básico

La API de Update requiere la complejidad adicional de administrar una base de datos local y URLs canonicalizadas antes de las consultas.

En una integración de cliente típica con Web Risk, un cliente aplicará diferencias de bases de datos para mantenerse actualizado. La lógica de aplicación de diferencias puede tardar un poco en implementarse de manera correcta, por lo que, en los casos más simples, recomendamos que los clientes omitan las diferencias y soliciten una base de datos nueva y completa a Web Risk en cada ciclo. Esta base de datos también se almacenará en la memoria para realizar consultas eficientes. Para solicitar un restablecimiento completo de la base de datos, deja el campo versionToken en blanco en la solicitud threatLists.computeDiff. Esta solución debe ser válida para los clientes, a menos que la latencia de sincronización de la base de datos o de ancho de banda supere los requisitos.

Usa la API de Update y solicita actualizaciones de diferencias

Esta solución tiene la complejidad agregada de aplicar la lógica de diferencias a la base de datos local. Para obtener más información, consulta Diferencias de la base de datos. Usar diferencias reducirá el ancho de banda a expensas de la complejidad, en comparación con la solicitud de una base de datos nueva en cada ciclo. Una actualización completa de la base de datos puede ser de unos pocos megabytes. Esta solución debería bastar para la mayoría de los clientes empresariales.

Usa la API de Update y solicita actualizaciones de diferencias codificadas en RICE

Esta solución es la integración de cliente más eficiente posible. La codificación RICE comprime los tamaños de las diferencias y reduce aún más el ancho de banda de actualización. El objetivo de esta solución es que la usen los clientes con más limitaciones de ancho de banda. Un ejemplo en el que esto puede ser relevante es si las consultas de Web Risk se incorporaron en una app para teléfonos. Sin duda, los usuarios de esa app agradecerían poder usar una solución de ancho de banda más bajo si necesitan actualizar la base de datos mediante datos telefónicos. Para obtener más información, consulta Compresión.