Neutron, nuestro motor de IA, obtuvo un 96.75% en el benchmark CyberGym de UC Berkeley. Más información

Ingeniería

Ingeniería

OXO Titan UI: simplificar el escaneo de seguridad para todos

OXO Titan UI integra las capacidades de OXO en una interfaz accesible y democratiza las técnicas avanzadas de escaneo de seguridad. Este artículo recorre el camino de OXO Titan desde el concepto hasta la realidad, destaca sus funcionalidades clave y presenta un ejemplo práctico de flujo de usuario.

Introducción

OXO es un framework de escaneo de seguridad de código abierto conocido por su sencillez. Sin embargo, la potencia y la versatilidad de la interfaz de línea de comandos (CLI) de OXO suelen suponer un reto para los usuarios que no están familiarizados con operaciones complejas en la línea de comandos.

Para solucionarlo, se desarrolló OXO Titan como una interfaz de usuario (UI) intuitiva que transforma la forma de interactuar con OXO. Esta UI OnPrem integra las capacidades de OXO en una interfaz accesible y democratiza las técnicas avanzadas de escaneo de seguridad. Al tender un puente entre la multitud de herramientas complejas y una UI sencilla, OXO Titan agiliza las operaciones y mejora la experiencia del usuario.

Este artículo recorre el camino de OXO Titan desde el concepto hasta la realidad, destaca sus funcionalidades clave y presenta un ejemplo práctico de flujo de usuario. Analizamos cómo esta UI simplifica la configuración y la ejecución de escaneos de vulnerabilidades, lo que la convierte en una herramienta indispensable tanto para profesionales de la seguridad noveles como experimentados.

Funcionalidades clave

OXO Titan UI

OXO Titan UI lleva las capacidades de la API de OXO a una interfaz gráfica, haciéndolas accesibles a un abanico más amplio de usuarios. Puede acceder a la UI ejecutando el comando oxo serve. En la figura siguiente, OXO sirve la UI en http://http://0.0.0.0:3420.

Antes de ejecutar el servidor, instale los requisitos con: pip install ostorlab[serve].

Comando OXO Serve

Gestión de escáneres y escaneos:

En OXO Titan, un escáner es un componente fundamental, ya que es donde se realizan los escaneos. Puede ser una máquina local o externa en la que se ejecuta el servidor de OXO y que funciona de forma independiente, lo que permite personalizarla para cumplir distintos requisitos de seguridad.

Para configurar un escáner, haga clic en el botón de escáneres e introduzca datos como Scanner Endpoint y API Key, que se obtienen al ejecutar el comando oxo serve.

Configuración del escáner

Ejecución de escaneos:

Una vez configurado el escáner, comience a ejecutar escaneos con distintos tipos de activos. Para ejecutar un escaneo, proporcione los siguientes datos:

  • Scanner: seleccione el escáner en el que se ejecutará el escaneo.
  • Title: (opcional) asigne un título o nombre al escaneo.
  • Asset: (obligatorio) especifique el activo que se va a escanear (por ejemplo, una aplicación Android/iOS, una aplicación web, una API o una red).
  • Asset Definition YAML File: opcionalmente, ejecute escaneos sobre varios tipos de activos con este archivo.
  • Agent Group: (obligatorio) seleccione el grupo de agentes en el que se ejecutará el escaneo. Consulte la documentación de grupos de agentes para obtener más información sobre qué es un grupo de agentes y cómo crear uno.

Configuración del escaneo

Después de ejecutar los escaneos, puede acceder a ellos desde un panel intuitivo que ofrece una vista centralizada de toda la actividad de escaneo en los escáneres configurados por el usuario.

Lista de escaneos

Al hacer clic en un escaneo, puede ver sus detalles y las vulnerabilidades reportadas.

Detalles del escaneo

Además, los usuarios pueden almacenar en caché local y exportar los resultados completos de un escaneo haciendo clic en el botón de exportar de la página de detalles del escaneo.

Exportar un escaneo

Consulte la documentación de la UI para obtener más detalles sobre las capacidades de OXO Titan UI.

API de OXO

La API de OXO es una API GraphQL que amplía las capacidades de la interfaz de línea de comandos (CLI) y facilita la realización y la gestión de distintas actividades de escaneo.

Ofrece una serie de funcionalidades que simplifican y mejoran las interacciones del usuario con el framework OXO.

Por ejemplo, para obtener los escaneos y sus vulnerabilidades asociadas con los comandos de la CLI, primero hay que listar los escaneos con oxo scan list y después pasar el ID del escaneo a oxo vulnz list -s <scan_id>. Para ver los detalles de una vulnerabilidad se debe usar oxo vulnz describe -v <vuln_id>.

Sin embargo, una simple consulta GraphQL logra los mismos resultados con la API de OXO. A continuación se muestra cómo consultar los escaneos y sus vulnerabilidades con paginación:

query Scans {
    scans(page: 1, numberElements: 10) {
        scans {
            id
            title
            createdTime
            progress
            vulnerabilities(numberElements: 1, page: 2) {
                vulnerabilities {
                    id
                    technicalDetail
                    riskRating
                    detail {
                        title
                        shortDescription
                        description
                        recommendation
                    }
                }
            }
        }
    }
}

Estos son los principales casos de uso y funcionalidades que ofrece la API de OXO:

Acción Tipo Argumento Comentario
RunScan Mutation title: String, assetIds: [Int]!, agentGroupId: Int!
StopScan Mutation scanId: Int!
DeleteScan Mutation scanId: Int!
ImportScan Mutation file: Upload!, scanId: Int Importa un escaneo desde un archivo zip.
ExportScan Mutation scanId: Int!, exportIde: Boolean Exporta un escaneo a un archivo zip.
CreateAssets Mutation assets: [OxoAssetInputType]!
PublishAgentGroup Mutation agentGroup: OxoAgentGroupCreateInputType!
DeleteAgentGroup Mutation agentGroupId: Int!
Scans Query scanIds: [Int], page: Int, numberElements: Int, orderBy: OxoScanOrderByEnum, sort: SortEnum Consulta los escaneos y las vulnerabilidades reportadas.
Scan Query scanId: Int
AgentGroups Query search: String, page: Int, numberElements: Int, orderBy: AgentGroupOrderByEnum, sort: SortEnum, agentGroupIds: [Int], assetType: AssetTypeEnum Consulta los grupos de agentes con todos los agentes asociados y sus argumentos.

Diseño y arquitectura

Consideremos el siguiente escenario, en el que un usuario gestiona dos escáneres, uno interno y otro externo:

Diseño y arquitectura

Acceso y configuración

El usuario accede a la UI y añade instancias de escáner:

Acceso y configuración

Operaciones de escaneo

El usuario puede realizar acciones como crear escaneos con distintos tipos de activos, entre ellos Android Store para activos de Google Play Store, Android Files como Apk o Aab, iOS Store para activos de Apple App Store, iOS IPA File, Web App para escaneos de aplicaciones web, Web API para escaneos de API accesibles a través de la web, y Network.

Ejecutar un escaneo

Después de ejecutar los escaneos, el usuario puede verlos y revisarlos en la página de lista de escaneos, que incluye pestañas para cada escáner y los escaneos ejecutados en él.

Página de lista de escaneos

A continuación, el usuario puede exportar un escaneo haciendo clic en el botón «Export» de la página de detalles del escaneo. Por ejemplo, vamos a exportar el escaneo del activo web de Reddit desde el escáner externo e importarlo en el escáner local:

Exportar un escaneo

Importar un escaneo

El usuario puede comprobar que el escaneo se ha importado desde la página de lista de escaneos:

Verificar el escaneo

Conclusión

OXO Titan supone una mejora sustancial del framework de código abierto OXO, al ofrecer una interfaz optimizada y fácil de usar que simplifica el escaneo de vulnerabilidades. Al mejorar la accesibilidad y la funcionalidad mediante un diseño intuitivo, OXO Titan permite a los usuarios gestionar varios escáneres, ejecutar escaneos sobre distintos tipos de activos, importar y exportar datos de escaneo y acceder fácilmente a informes detallados. Este avance garantiza que las organizaciones puedan mejorar de forma eficaz su eficiencia operativa y sus capacidades de seguridad dentro del ecosistema OXO.

Etiquetas:

opensource, security, oxo