Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
gosec — Go-Sicherheitsprüfer | Kitploit
Tools/GitHubGitHub/securego/gosec
Statische Code-Analyse (SAST)SchwachstellenanalyseCode-AnalyseDevSecOpsTop in Code-Analyse Nr.9Top in Statische Code-Analyse (SAST) Nr.6
GitHubsecurego/gosec

gosec

Go-Sicherheitsprüfer

Repository anzeigen
8.9k701122vor 20h 8mVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

gosec - Go Security Checker

Untersucht Quellcode auf Sicherheitsprobleme, indem der Go-AST und die SSA-Codedarstellung gescannt werden.

Schnellzugriffe

  • GitHub Action
  • Lokale Installation
  • Schnellstart
  • Häufige Nutzungsmuster
  • Regeln auswählen
  • Ausgabeformate

Funktionen

  • Musterbasierte Regeln zur Erkennung häufiger Sicherheitsprobleme in Go-Code
  • SSA-basierte Analysatoren für Typkonvertierungen, Slice-Grenzen und Krypto-Probleme
  • Taint-Analyse zur Verfolgung des Datenflusses von Benutzereingaben zu gefährlichen Funktionen (SQL-Injection, Command-Injection, Path Traversal, SSRF, XSS, Log-Injection, SMTP-Injection, SSTI, unsichere Deserialisierung, Open Redirect)

Lizenz

Lizenziert unter der Apache License, Version 2.0 (die „License"). Sie dürfen diese Datei nur in Übereinstimmung mit der License verwenden. Eine Kopie der License erhalten Sie hier.

Projektstatus

CII Best Practices Build Status Coverage Status GoReport GoDoc Docs Downloads GHCR Slack go-recipes

Installation

GitHub Action

Sie können gosec wie folgt als GitHub Action ausführen:

Verwenden Sie das versionierte Tag mit @master, das an die neueste stabile Version gebunden ist. Dies gewährleistet ein stabiles Verhalten.

name: Run Gosec
on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master
jobs:
  tests:
    runs-on: ubuntu-latest
    env:
      GO111MODULE: on
    steps:
      - name: Checkout Source
        uses: actions/checkout@v3
      - name: Run Gosec Security Scanner
        uses: securego/gosec@master
        with:
          args: ./...

Projekte mit privaten Modulen scannen

Wenn Ihr Projekt private Go-Module importiert, müssen Sie die Authentifizierung konfigurieren, damit gosec die Abhängigkeiten abrufen kann. Legen Sie die folgenden Umgebungsvariablen in Ihrem Workflow fest:

  • GOPRIVATE: Eine durch Kommas getrennte Liste von Modulpfad-Präfixen, die als privat betrachtet werden sollen (z. B. github.com/your-org/*).
  • GITHUB_AUTHENTICATION_TOKEN: Ein GitHub-Token mit Lesezugriff auf Ihre privaten Repositories.
name: Run Gosec
on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master
jobs:
  tests:
    runs-on: ubuntu-latest
    env:
      GO111MODULE: on
      GOPRIVATE: github.com/your-org/*
      GITHUB_AUTHENTICATION_TOKEN: ${{ secrets.PRIVATE_REPO_TOKEN }}
    steps:
      - name: Checkout Source
        uses: actions/checkout@v3
      - name: Run Gosec Security Scanner
        uses: securego/gosec@v2
        with:
          args: ./...

Integration in die Code-Scanning

Sie können Code-Analyse-Tools von Drittanbietern in das GitHub-Code-Scanning integrieren, indem Sie Daten als SARIF-Dateien hochladen.

Der Workflow zeigt ein Beispiel für die Ausführung von gosec als Schritt in einem GitHub-Action-Workflow, der die Datei results.sarif ausgibt. Anschließend lädt der Workflow die Datei results.sarif mit der Aktion upload-sarif zu GitHub hoch.

name: "Security Scan"

# Run workflow each time code is pushed to your repository and on a schedule.
# The scheduled workflow runs every at 00:00 on Sunday UTC time.
on:
  push:
  schedule:
  - cron: '0 0 * * 0'

jobs:
  tests:
    runs-on: ubuntu-latest
    env:
      GO111MODULE: on
    steps:
      - name: Checkout Source
        uses: actions/checkout@v3
      - name: Run Gosec Security Scanner
        uses: securego/gosec@v2
        with:
          # we let the report trigger content trigger a failure using the GitHub Security features.
          args: '-no-fail -fmt sarif -out results.sarif ./...'
      - name: Upload SARIF file
        uses: github/codeql-action/upload-sarif@v2
        with:
          # Path to SARIF file relative to the root of the repository
          sarif_file: results.sarif

Go-Analyse

Das Paket goanalysis stellt einen golang.org/x/tools/go/analysis.Analyzer für die Integration mit Tools bereit, die die standardmäßige Go-Analyseschnittstelle unterstützen, wie etwa BazeIs nogo- Framework:

nogo(
    name = "nogo",
    deps = [
        "@com_github_securego_gosec_v2//goanalysis",
        # add more analyzers as needed
    ],
    visibility = ["//visibility:public"],
)

Lokale Installation

gosec erfordert Go 1.25 oder neuer.

go install github.com/securego/gosec/v2/cmd/gosec@latest

Schnellstart

# Scan all packages in current module
gosec ./...

# Write JSON report
gosec -fmt json -out results.json ./...

# Write SARIF report for code scanning
gosec -fmt sarif -out results.sarif ./...

Exit-Codes

  • 0: Scan ohne nicht unterdrückte Befunde/Fehler abgeschlossen
  • 1: mindestens ein nicht unterdrückter Befund oder Verarbeitungsfehler
  • Verwenden Sie -no-fail, um immer 0 zurückzugeben

Verwendung

Gosec kann so konfiguriert werden, dass nur eine Teilmenge der Regeln ausgeführt wird, bestimmte Dateipfade ausgeschlossen werden und Berichte in verschiedenen Formaten erzeugt werden. Standardmäßig werden alle Regeln gegen die angegebenen Eingabedateien ausgeführt. Um rekursiv ab dem aktuellen Verzeichnis zu scannen, können Sie ./... als Eingabeargument angeben.

Verfügbare Regeln

gosec enthält Regeln aus diesen Kategorien:

  • G1xx: allgemeine Probleme bei sicherem Coding (zum Beispiel fest codierte Anmeldedaten, unsichere Verwendung, HTTP-Härtung, Cookie-Sicherheit)
  • G2xx: Injektionsrisiken bei der Konstruktion von Abfragen/Templates/Befehlen
  • G3xx: Risiken bei Datei- und Pfadverarbeitung (Berechtigungen, Traversal, temporäre Dateien, Archiv-Extraktion)
  • G4xx: Schwächen in Krypto und TLS
  • G5xx: blockierte Importe
  • G6xx: Go-spezifische Korrektheits-/Sicherheitsprüfungen (zum Beispiel Range-Aliasing und Slice-Grenzen)
  • G7xx: Taint-Analyse-Regeln (SQL-Injection, Command-Injection, Path Traversal, SSRF, XSS, Log-, SMTP-Injection, SSTI, unsichere Deserialisierung und Open Redirect)

Die vollständige Liste, Regelbeschreibungen und die Konfiguration pro Regel finden Sie in RULES.md.

Ausgemusterte Regeln

Tool herunterladen