
Sicherheitstests in Ihrer CI durchführen
Dieser Artikel ist auch auf Brasilianisches Portugiesisch verfügbar.
huskyCI ist ein Open-Source-Tool, das Sicherheitstests orchestriert und alle Ergebnisse in einer Datenbank für weitere Analysen und Metriken zentralisiert. Es kann statische Sicherheitsanalysen in Python (Bandit und Safety), Ruby (Brakeman), JavaScript (Npm Audit und Yarn Audit), Golang (Gosec), Java (SpotBugs plus Find Sec Bugs), und HCL (TFSec) durchführen. Es kann auch Repositorys auf Geheimnisse wie AWS Secret Keys, Private SSH-Keys und viele andere mit GitLeaks überprüfen.
Entwickler können eine neue Stufe in ihren CI-Pipelines einrichten, um auf Schwachstellen zu prüfen:

Wenn Sicherheitsprobleme im Code gefunden werden, können die Schwere, die Sicherheit, die Datei, die Zeile und viele weitere nützliche Informationen angezeigt werden, wie im folgenden Beispiel:
[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
Sie können huskyCI testen, indem Sie eine lokale Umgebung mit Docker Compose einrichten, wie in dieser Anleitung beschrieben.
Alle Anleitungen und die vollständige Dokumentation finden Sie auf der offiziellen Dokumentationsseite.
Lesen Sie unseren Leitfaden zum Mitwirken, um mehr über unseren Entwicklungsprozess zu erfahren, wie Sie Fehlerbehebungen und Verbesserungen vorschlagen können und wie Sie Ihre Änderungen an huskyCI erstellen und testen.
Wir haben einige Kanäle für Kontakte, zögern Sie nicht, uns zu kontaktieren unter:
Dieses Projekt existiert dank aller Mitwirkenden. Ihr seid großartig! ❤️🚀
huskyCI ist unter der BSD 3-Clause "New" oder "Revised" Lizenz lizenziert.