Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Argus — Framework de análisis estático de propagación de datos (taint analysis) por etapas para flujos de trabajo de GitHub Actions. Detecta vulnerabilidades de inyección de código mediante el rastreo de datos contaminados (taint-tracking) y un clasificador de impacto, generando informes SARIF para la seguridad de CI/CD. | Kitploit
Herramientas/GitHubGitHub/purs3lab/argus
Análisis EstáticoAnálisis de VulnerabilidadesAnálisis de CódigoDevSecOpsSeguridad de Cadena de SuministroPapers e InvestigaciónAprendizaje y Educación
GitHubpurs3lab/argus

Argus

Ver Repositorio
5415hace 2 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →

Acerca de

Framework de análisis estático de propagación de datos (taint analysis) por etapas para flujos de trabajo de GitHub Actions. Detecta vulnerabilidades de inyección de código mediante el rastreo de datos contaminados (taint-tracking) y un clasificador de impacto, generando informes SARIF para la seguridad de CI/CD.

Compartir

Argus

Este repositorio contiene el código de nuestro artículo de USENIX Security '23 "ARGUS: A Framework for Staged Static Taint Analysis of GitHub Workflows and Actions". Argus es una herramienta integral de análisis de seguridad diseñada específicamente para GitHub Actions. Construido con el objetivo de mejorar la seguridad de los flujos de trabajo CI/CD, Argus utiliza técnicas de rastreo de flujo de datos (taint-tracking) y un clasificador de impacto para detectar vulnerabilidades potenciales en los flujos de trabajo de GitHub Actions.

Visita nuestro sitio web - secureci.org para más información.

Características

  • Rastreo de flujo de datos (Taint-Tracking): Argus utiliza algoritmos sofisticados para rastrear el flujo de datos potencialmente no confiables desde fuentes específicas hasta destinos críticos de seguridad dentro de los flujos de trabajo de GitHub Actions. Esto permite la identificación de vulnerabilidades que podrían conducir a ataques de inyección de código.

  • Clasificador de Impacto: Argus clasifica las vulnerabilidades identificadas en clases de gravedad Alta, Media y Baja, proporcionando una comprensión más clara del impacto potencial de cada vulnerabilidad identificada. Esto es crucial para priorizar los esfuerzos de mitigación.

Uso

Este script de Python proporciona una interfaz de línea de comandos para interactuar con repositorios de GitHub y acciones de GitHub.

root@kitploit:~
python argus.py --mode [mode] --url [url] [--output-folder path_to_output] [--config path_to_config] [--verbose] [--branch branch_name] [--commit commit_hash] [--tag tag_name] [--action-path path_to_action] [--workflow-path path_to_workflow]

Parámetros:

  • --mode: El modo de operación. Elija 'repo' o 'action'. Este parámetro es obligatorio.
  • --url: La URL de GitHub. Use USERNAME:TOKEN@URL para repositorios privados. Este parámetro es obligatorio.
  • --output-folder: La carpeta de salida. El valor predeterminado es '/tmp'. Este parámetro es opcional.
  • --config: El archivo de configuración. Este parámetro es opcional.
  • --verbose: Modo verbose. Si se proporciona esta opción, el nivel de registro se establece en DEBUG. De lo contrario, se establece en INFO. Este parámetro es opcional.
  • --branch: El nombre de la rama. Debe proporcionar exactamente uno de: --branch, --commit, --tag. Este parámetro es opcional.
  • --commit: El hash del commit. Debe proporcionar exactamente uno de: --branch, , . Este parámetro es opcional.

Ejemplo:

Para usar este script e interactuar con un repositorio de GitHub, puede ejecutar un comando como el siguiente:

root@kitploit:~
python argus.py --mode repo --url https://github.com/username/repo.git --branch master

Esto ejecutaría el script en modo repo en la rama master del repositorio especificado.

Cómo usar

Argus se puede ejecutar dentro de un contenedor Docker. Para hacerlo, siga los pasos:

  • Instale Docker y Docker Compose
    • apt-get -y install docker.io docker-compose
  • Clone la rama release de este repositorio
    • git clone <>
  • Construya el contenedor Docker
    • docker-compose build
  • Ahora puede ejecutar Argus. Ejemplo de ejecución:
    • docker-compose run argus --mode {mode} --url {url to target repo}
  • Los resultados estarán disponibles dentro de la carpeta results

Visualización de Resultados SARIF

Puede ver los resultados SARIF a través de un visor en línea o con una extensión de Visual Studio Code (VSCode).

  1. Visor en línea: El Visor Web SARIF es una herramienta en línea que permite visualizar archivos SARIF. Puede cargar su archivo SARIF (argus_report.sarif) directamente en el sitio web para ver los resultados.

  2. Extensión de VSCode: Si prefiere usar VSCode, puede instalar la extensión SARIF Viewer. Después de instalar la extensión, puede abrir su archivo SARIF (argus_report.sarif) en VSCode. Los resultados aparecerán en el panel SARIF Explorer, que proporciona una vista detallada y navegable de los resultados.

Recuerde manejar el archivo SARIF con cuidado, especialmente si contiene información sensible de su código.

Solución de problemas

Si hay un problema con la necesidad de autorización de GitHub para ejecutarse, puede proporcionar username:TOKEN en la variable de entorno GITHUB_CREDS. Esto se utilizará para todas las solicitudes realizadas a GitHub. Tenga en cuenta que no almacenamos esta información en ningún lugar, ni creamos nada en la cuenta de GitHub; solo la usamos para clonar los repositorios.

Contribuciones

Argus es un proyecto de código abierto y agradecemos las contribuciones de la comunidad. Ya sea reportando un error, sugiriendo una característica o escribiendo código, ¡siempre apreciamos sus contribuciones!

Citar Argus

Si usa Argus en su investigación, por favor cite nuestro artículo:

root@kitploit:~
  @inproceedings{muralee2023Argus,
    title={ARGUS: A Framework for Staged Static Taint Analysis of GitHub Workflows and Actions},
    author={S. Muralee, I. Koishybayev, A. Nahapetyan, G. Tystahl, B. Reaves, A. Bianchi, W. Enck, 
      A. Kapravelos, A. Machiry},
    booktitle={32st USENIX Security Symposium (USENIX Security 23)},
    year={2023},
  }

Licencia

Argus está licenciado bajo la Licencia GPL.

Descargar herramienta
--commit
--tag
  • --tag: La etiqueta. Debe proporcionar exactamente uno de: --branch, --commit, --tag. Este parámetro es opcional.
  • --action-path: La ruta (relativa) a la acción. No puede proporcionar --action-path en modo repo. Este parámetro es opcional.
  • --workflow-path: La ruta (relativa) al flujo de trabajo. No puede proporcionar --workflow-path en modo action. Este parámetro es opcional.