Este artículo también se puede leer en portugués brasileño.
HuskyCI es una herramienta de código abierto que orquesta las pruebas de seguridad y centraliza todos los resultados en una base de datos para un análisis y métricos más detallados. Puede realizar un análisis de seguridad estática en Python (Bandit and Safety), Ruby (Brakeman), JavaScript (Auditoría de NPM y Auditoría de Yarn), Golang (GOSEC), Java (Spotbugs Plus Find Sec Bugs) y HCl (TFSEC). También puede auditar repositorios para secretos como AWS Secret Keys, private SSH Keys y muchos otros que usan Gitleaks.
Los desarrolladores pueden configurar una nueva etapa en sus tuberías de CI para verificar si hay vulnerabilidades:

Si se encuentran problemas de seguridad en el código, se puede mostrar la gravedad, la confianza, el archivo, la línea y mucha más información útil, como se ejemplifica:
[HUSKYCI][*] poc-python-bandit -> https://github.com/globocom/huskyCI.git
[HUSKYCI][*] huskyCI analysis started! yDS9tb9mdt4QnnyvOBp3eVAXE1nWpTRQ
[HUSKYCI][!] Title: Use of exec detected.
[HUSKYCI][!] Language: Python
[HUSKYCI][!] Tool: Bandit
[HUSKYCI][!] Severity: MEDIUM
[HUSKYCI][!] Confidence: HIGH
[HUSKYCI][!] Details: Use of exec detected.
[HUSKYCI][!] File: ./main.py
[HUSKYCI][!] Line: 7
[HUSKYCI][!] Code:
6
7 exec(command)
8
[HUSKYCI][!] Title: Possible hardcoded password: 'password123!'
[HUSKYCI][!] Language: Python
[HUSKYCI][!] Tool: Bandit
[HUSKYCI][!] Severity: LOW
[HUSKYCI][!] Confidence: MEDIUM
[HUSKYCI][!] Details: Possible hardcoded password: 'password123!'
[HUSKYCI][!] File: ./main.py
[HUSKYCI][!] Line: 1
[HUSKYCI][!] Code:
1 secret = 'password123!'
2
3 password = 'thisisnotapassword' #nohusky
4
[HUSKYCI][SUMMARY] Python -> huskyci/bandit:1.6.2
[HUSKYCI][SUMMARY] High: 0
[HUSKYCI][SUMMARY] Medium: 1
[HUSKYCI][SUMMARY] Low: 1
[HUSKYCI][SUMMARY] NoSecHusky: 1
[HUSKYCI][SUMMARY] Total
[HUSKYCI][SUMMARY] High: 0
[HUSKYCI][SUMMARY] Medium: 1
[HUSKYCI][SUMMARY] Low: 1
[HUSKYCI][SUMMARY] NoSecHusky: 1
[HUSKYCI][*] The following securityTests were executed and no blocking vulnerabilities were found:
[HUSKYCI][*] [huskyci/gitleaks:2.1.0]
[HUSKYCI][*] Some HIGH/MEDIUM issues were found in these securityTests:
[HUSKYCI][*] [huskyci/bandit:1.6.2]
ERROR: Job failed: exit code 190
Puede probar HuskyCI configurando un entorno local usando Docker Compose siguiendo esta guía.
Todas las guías y la documentación completa se pueden encontrar en la página de documentación oficial.
Lea nuestra guía contribuyente para aprender sobre nuestro proceso de desarrollo, cómo proponer las correcciones de errores y las mejoras, y cómo construir y probar sus cambios en HuskyCI.
Tenemos algunos canales para contactar, no dude en comunicarse con nosotros en:
rafaveira3 | Krlier | spimpaov | joserenatosilva | Gabriel-Cantergiani |
marcelomagina | nettoclaudio | ERERSONBRILHANTE | Gabhendm | mdjunior |
fguisso | vitorio | Rodrigo-Brito | Gustavocovas | abzcoding |
LZAKHAROV | itepifanio | Victorpalmeira | muelles derretidos | localleon |
Jimmy1134 | HenriqueBonadio-lz | vfiebig | gitero | Renatoaquino |
Raytdc | rafaelrubbioli | rafaelsq | ragoso | Aranhams |
Este proyecto existe gracias a todos los contribuyentes. ¡Rock! ❤️
Huskyci tiene licencia bajo la licencia "nueva" o "revisada" BSD 3 cláusula.