Starks es un escáner de credenciales estático compatible con YARA que admite formatos de archivos binarios, análisis de archivos anidados, conjuntos de reglas componibles y listas de ignorados e informes SARIF.
Actualmente, STACS admite la descompresión recursiva de archivos tarball, gzip, bzip, zip, 7z, iso, rpm y xz. Debido a que STACS maneja los tipos de archivos detectados en lugar de los nombres de archivo, los formatos de archivo propietarios basados en estos tipos (como imágenes de Docker, APK de Android y archivos JAR de Java) se admiten automáticamente.
STACS está destinado a ser utilizado por cualquier equipo que publique artefactos binarios. STACS permite a los desarrolladores verificar automáticamente sus compilaciones en busca de la inclusión accidental de credenciales estáticas y material clave.
Sin embargo, eso no significa que STACS no pueda ayudar a las aplicaciones SaaS, el software empresarial o incluso el código fuente.
Por ejemplo, STACS se puede usar para buscar credenciales estáticas en imágenes de Docker cargadas en registros de contenedores públicos y privados. También se puede usar para encontrar credenciales compiladas accidentalmente en ejecutables, paquetes de dispositivos móviles y «archivos empresariales» como los que usan los servidores de aplicaciones Java.
STACS detecta credenciales estáticas en tiempo de ejecución utilizando «paquetes de reglas» proporcionados a STACS. Estos paquetes de reglas definen un conjunto de reglas YARA para ejecutar en archivos proporcionados a STACS. Se genera un «descubrimiento» cuando se encuentra una coincidencia con una regla. Estos hallazgos representan credenciales potenciales dentro del archivo y se informan a los desarrolladores para que los corrijan o los «ignoren».
Si se descubre que los resultados son falsos positivos (es decir, coincidencias distintas de las credenciales reales), los desarrolladores pueden generar un conjunto de «listas de ignorados» para asegurarse de que estas coincidencias no aparezcan en informes futuros.
El poder real de STACS proviene de la detección automática y el desempaquetado de archivos anidados, y listas de ignorados componibles y paquetes de reglas.
Para permitir un uso flexible y colaborativo, STAC admite listas de ignorados componibles. Esto permite que las listas de ignorados contengan otras listas de ignorados que permiten formar «árboles de ignorados» en función de criterios organizativos. Estas listas de ignorados son especialmente útiles en organizaciones que utilizan muchos de los mismos marcos o productos. Si un equipo ha marcado un hallazgo como falso positivo, los demás equipos se beneficiarán al no tener que clasificar el mismo hallazgo.
Al igual que las listas de ignorados, los paquetes de reglas se pueden componer. Esto permite a las organizaciones definir un conjunto de reglas básico para que lo usen todos los equipos, al mismo tiempo que permite que los equipos mantengan conjuntos de reglas específicos para sus productos.
La forma más fácil de usar STACS es usar una imagen de Docker publicada en Docker Hub. Sin embargo, STACS también se puede instalar directamente desde PyPI de Python o clonando este repositorio. ¡Consulte la sección correspondiente a continuación para comenzar!
¡Pronto llegará un servicio basado en la nube que permite la integración directa en las canalizaciones de compilación y lanzamiento para detectar credenciales estáticas antes del lanzamiento!
¡Usando las imágenes publicadas, STACS se puede usar para escanear la pieza de trabajo en muy poco tiempo! La imagen STACS Docker proporciona una cantidad de montajes de volumen para los archivos que se escanearán para montarlos directamente en el contenedor de escaneo.
Por ejemplo, para escanear todo en la carpeta actual, puede ejecutar el siguiente comando (Docker debe estar instalado).
ejecución de la ventana acoplable
-RM
–mount type=bind,source=$(pwd),target=/mnt/stacs/input
stacscan/stacs: último
De forma predeterminada, STACS enviará cualquier resultado directamente a STDOUT en formato SARIF y, para mantener el orden, todos los mensajes de registro se enviarán a STDERR. Para casos de uso más avanzados, se proporcionan muchos otros montajes de volumen. Estos permiten al usuario controlar qué paquete de reglas, lista de ignorados y directorio de caché usar.
STACS también se puede instalar directamente desde PyPi de Python.Esto proporciona una stacs
Luego, los desarrolladores pueden usar el comando para escanear el proyecto directamente en su entorno de desarrollo local.
STACS se puede instalar directamente desde PyPi usando el siguiente comando:
pip instalar stac