Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/securego/gosec
स्थैतिक कोड विश्लेषण (SAST)भेद्यता विश्लेषणकोड विश्लेषणDevSecOps
GitHubsecurego/gosec

gosec

Go सुरक्षा जाँचकर्ता

रिपॉजिटरी देखेंवेबसाइट
8.9k70110 दिन पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

gosec - Go सुरक्षा जाँचकर्ता

Go AST और SSA कोड प्रतिनिधित्व को स्कैन करके स्रोत कोड में सुरक्षा समस्याओं की जाँच करता है।

त्वरित लिंक

  • GitHub एक्शन
  • स्थानीय स्थापना
  • त्वरित आरंभ
  • सामान्य उपयोग पैटर्न
  • नियम चयन
  • आउटपुट प्रारूप

विशेषताएँ

  • पैटर्न-आधारित नियम Go कोड में सामान्य सुरक्षा समस्याओं का पता लगाने के लिए
  • SSA-आधारित विश्लेषक प्रकार रूपांतरण, स्लाइस सीमाएँ और क्रिप्टो समस्याओं के लिए
  • दूषण विश्लेषण उपयोगकर्ता इनपुट से खतरनाक कार्यों (SQL इंजेक्शन, कमांड इंजेक्शन, पथ ट्रैवर्सल, SSRF, XSS, लॉग इंजेक्शन, SMTP इंजेक्शन, SSTI, असुरक्षित डी-सीरियलाइज़ेशन, ओपन रीडायरेक्ट) में डेटा प्रवाह को ट्रैक करने के लिए

लाइसेंस

Apache लाइसेंस, संस्करण 2.0 ("लाइसेंस") के तहत लाइसेंस प्राप्त। आप इस फ़ाइल का उपयोग केवल लाइसेंस के अनुपालन में कर सकते हैं। आप लाइसेंस की एक प्रति यहाँ प्राप्त कर सकते हैं।

परियोजना स्थिति

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

स्थापना

GitHub एक्शन

आप gosec को GitHub एक्शन के रूप में निम्नानुसार चला सकते हैं:

@master के साथ संस्करणित टैग का उपयोग करें जो नवीनतम स्थिर रिलीज़ पर पिन किया गया है। यह स्थिर व्यवहार प्रदान करेगा।```yaml 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: ./...

root@kitploit:~
#### निजी मॉड्यूल वाले प्रोजेक्ट्स की स्कैनिंग

यदि आपका प्रोजेक्ट निजी Go मॉड्यूल आयात करता है, तो आपको प्रमाणीकरण कॉन्फ़िगर करना होगा ताकि `gosec` निर्भरताओं को प्राप्त कर सके। अपने वर्कफ़्लो में निम्नलिखित पर्यावरण चर सेट करें:

- `GOPRIVATE`: मॉड्यूल पथ उपसर्गों की अल्पविराम से अलग की गई सूची जिन्हें निजी माना जाना चाहिए
  (जैसे, `github.com/your-org/*`)।
- `GITHUB_AUTHENTICATION_TOKEN`: आपके निजी रिपॉजिटरी तक पढ़ने की पहुंच वाला एक GitHub टोकन।```yaml
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: ./...

कोड स्कैनिंग के साथ एकीकरण

आप तीसरे पक्ष के कोड विश्लेषण उपकरणों को एकीकृत कर सकते हैं GitHub कोड स्कैनिंग के साथ SARIF फ़ाइलों के रूप में डेटा अपलोड करके।

वर्कफ़्लो GitHub एक्शन वर्कफ़्लो में एक चरण के रूप में gosec चलाने का एक उदाहरण दिखाता है जो results.sarif फ़ाइल आउटपुट करता है। वर्कफ़्लो फिर upload-sarif एक्शन का उपयोग करके results.sarif फ़ाइल को GitHub पर अपलोड करता है।```yaml 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

root@kitploit:~
### Go Analysis

`goanalysis` पैकेज एक
[`golang.org/x/tools/go/analysis.Analyzer`](https://pkg.go.dev/golang.org/x/tools/go/analysis)
प्रदान करता है जो मानक Go analysis इंटरफ़ेस का समर्थन करने वाले उपकरणों के साथ एकीकरण के लिए है, जैसे कि Bazel के
[nogo](https://github.com/bazelbuild/rules_go/blob/master/go/nogo.rst)
फ्रेमवर्क:```starlark
nogo(
    name = "nogo",
    deps = [
        "@com_github_securego_gosec_v2//goanalysis",
        # add more analyzers as needed
    ],
    visibility = ["//visibility:public"],
)

स्थानीय स्थापना

gosec को Go 1.25 या नए संस्करण की आवश्यकता है।```bash go install github.com/securego/gosec/v2/cmd/gosec@latest

root@kitploit:~
## त्वरित शुरुआत```bash
# 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 ./...

निकास कोड

  • 0: स्कैन बिना दबाए गए निष्कर्षों/त्रुटियों के समाप्त हुआ
  • 1: कम से कम एक अनदबाया गया निष्कर्ष या प्रसंस्करण त्रुटि
  • हमेशा 0 लौटाने के लिए -no-fail का उपयोग करें

उपयोग

Gosec को केवल नियमों के एक उपसमूह को चलाने, कुछ फ़ाइल पथों को बाहर करने, और विभिन्न प्रारूपों में रिपोर्ट तैयार करने के लिए कॉन्फ़िगर किया जा सकता है। डिफ़ॉल्ट रूप से सभी नियम प्रदान की गई इनपुट फ़ाइलों के विरुद्ध चलाए जाएंगे। वर्तमान निर्देशिका से पुनरावृत्तीय रूप से स्कैन करने के लिए आप इनपुट तर्क के रूप में ./... प्रदान कर सकते हैं।

उपलब्ध नियम

gosec इन श्रेणियों में नियम शामिल करता है:

  • G1xx: सामान्य सुरक्षित कोडिंग मुद्दे (उदाहरण के लिए हार्डकोडेड क्रेडेंशियल, असुरक्षित उपयोग, HTTP हार्डनिंग, कुकी सुरक्षा)
  • G2xx: क्वेरी/टेम्पलेट/कमांड निर्माण में इंजेक्शन जोखिम
  • G3xx: फ़ाइल और पथ हैंडलिंग जोखिम (अनुमतियाँ, ट्रैवर्सल, अस्थायी फ़ाइलें, आर्काइव निष्कर्षण)
  • G4xx: क्रिप्टो और TLS कमजोरियाँ
  • G5xx: ब्लॉकलिस्टेड आयात
  • G6xx: Go-विशिष्ट शुद्धता/सुरक्षा जाँच (उदाहरण के लिए रेंज एलियासिंग और स्लाइस बाउंड्स)
  • G7xx: टेंट विश्लेषण नियम (SQL इंजेक्शन, कमांड इंजेक्शन, पथ ट्रैवर्सल, SSRF, XSS, लॉग, SMTP इंजेक्शन, SSTI, असुरक्षित डिसीरियलाइज़ेशन, और ओपन रीडायरेक्ट)

पूरी सूची, नियम विवरण और प्रति-नियम कॉन्फ़िगरेशन के लिए, RULES.md देखें।

सेवानिवृत्त नियम

  • G105: math/big.Int.Exp के उपयोग का ऑडिट करें - CVE तय हो गया है
  • G307: एक विधि को स्थगित करना जो एक त्रुटि लौटाता है - इस ब्लॉग पोस्ट के विवरण के बावजूद, सुरक्षा मुद्दे को ठीक करने की तुलना में अधिक असुविधा पैदा करना

नियमों का चयन

डिफ़ॉल्ट रूप से, gosec प्रदान की गई फ़ाइल पथों के विरुद्ध सभी नियम चलाएगा। हालांकि, -include= फ्लैग के माध्यम से चलाने के लिए नियमों का एक उपसमूह चुनना संभव है, या -exclude= फ्लैग का उपयोग करके स्पष्ट रूप से बाहर करने के लिए नियमों का एक सेट निर्दिष्ट करना संभव है।```bash

Run a specific set of rules

$ gosec -include=G101,G203,G401 ./...

Run everything except for rule G303

$ gosec -exclude=G303 ./...

root@kitploit:~
### CWE मैपिंग

`gosec` द्वारा पाई गई प्रत्येक समस्या एक
[CWE (सामान्य दुर्बलता गणना)](http://cwe.mitre.org/data/index.html)
में मैप की जाती है, जो कमजोरी को अधिक सामान्य शब्दों में वर्णित करता है। सटीक मैपिंग
[यहाँ](https://github.com/securego/gosec/blob/master/issue/issue.go#L50)
पाई जा सकती है।

### कॉन्फ़िगरेशन

निम्नलिखित अनुसार एक कॉन्फ़िगरेशन फ़ाइल में अनेक वैश्विक सेटिंग्स प्रदान की जा सकती हैं:```JSON
{
    "global": {
        "nosec": "enabled",
        "audit": "enabled"
    }
}
  • nosec: यह सेटिंग कोड बेस में परिभाषित सभी #nosec निर्देशों को ओवरराइट कर देगी कोड बेस में परिभाषित
  • audit: ऑडिट मोड में चलता है जो अतिरिक्त जांचों को सक्षम करता है जो सामान्य कोड विश्लेषण के लिए बहुत अधिक दखल देने वाली हो सकती हैं```bash

Run with a global configuration file

$ gosec -conf config.json .

root@kitploit:~
### पथ-आधारित नियम अपवाद

एकाधिक घटकों वाले बड़े भंडारों को विभिन्न पथों के लिए अलग-अलग सुरक्षा नियमों की आवश्यकता हो सकती है। विशिष्ट पथों के लिए विशिष्ट नियमों को दबाने के लिए `exclude-rules` का उपयोग करें।

**कॉन्फ़िगरेशन फ़ाइल:**```json
{
  "exclude-rules": [
    {
      "path": "cmd/.*",
      "rules": ["G204", "G304"]
    },
    {
      "path": "scripts/.*",
      "rules": ["*"]
    }
  ]
}

CLI Flag:```bash

Exclude G204 and G304 from cmd/ directory

gosec --exclude-rules="cmd/.*:G204,G304" ./...

Exclude all rules from scripts/ directory

gosec --exclude-rules="scripts/.:" ./...

Multiple exclusions

gosec --exclude-rules="cmd/.:G204,G304;test/.:G101" ./...

root@kitploit:~
| Field | Type | Description |
|-------|------|-------------|
| `path` | string (regex) | फ़ाइल पथों से मेल खाने वाला regex |
| `rules` | []string | बहिष्कृत करने के लिए नियम आईडी। `*` सभी के लिए |

#### नियम विन्यास

कुछ नियम विन्यास फ़्लैग भी स्वीकार करते हैं; ये फ़्लैग
[RULES.md](https://github.com/securego/gosec/blob/master/RULES.md) में प्रलेखित हैं।

#### Go संस्करण

कुछ नियमों के लिए एक विशिष्ट Go संस्करण की आवश्यकता होती है जो परियोजना में मौजूद Go मॉड्यूल फ़ाइल से प्राप्त किया जाता है। यदि यह संस्करण नहीं मिल पाता, तो यह Go रनटाइम संस्करण पर फ़ॉलबैक करेगा।

Go मॉड्यूल संस्करण को `go list` कमांड का उपयोग करके पार्स किया जाता है
जो कुछ मामलों में प्रदर्शन में गिरावट का कारण बन सकता है। इस
स्थिति में, पर्यावरण चर
`GOSECGOVERSION=go1.21.1` सेट करके Go मॉड्यूल संस्करण आसानी से प्रदान किया जा सकता है।

### निर्भरताएँ

gosec Go मॉड्यूल का उपयोग करके पैकेज लोड करता है। अधिकांश परियोजनाओं में,
स्कैनिंग के दौरान निर्भरताएँ स्वचालित रूप से हल हो जाती हैं।

यदि निर्भरताएँ गायब हैं, तो चलाएँ:```bash
go mod tidy
go mod download

परीक्षण फाइलों और फ़ोल्डरों को छोड़कर

gosec सभी पैकेजों और आपकी वेंडर निर्देशिका में किसी भी निर्भरता में परीक्षण फाइलों को अनदेखा करेगा।

परीक्षण फाइलों की स्कैनिंग को निम्नलिखित फ्लैग के साथ सक्षम किया जा सकता है:```bash gosec -tests ./...

root@kitploit:~
इसके अतिरिक्त, अतिरिक्त फ़ोल्डरों को निम्नानुसार बाहर रखा जा सकता है:```bash
 gosec -exclude-dir=rules -exclude-dir=cmd ./...

जनरेटेड फ़ाइलों को बाहर करना

gosec डिफ़ॉल्ट जनरेटेड कोड कमेंट के साथ जनरेटेड go फ़ाइलों को अनदेखा कर सकता है।``` // Code generated by some generator DO NOT EDIT.

root@kitploit:~
Please provide the Markdown content you would like me to translate.```bash
gosec -exclude-generated ./...

स्वचालित रूप से कमजोरियों को ठीक करना

gosec AI अनुशंसा के आधार पर सुधार सुझा सकता है। यह एक सुरक्षा खोज के लिए सुझाव प्राप्त करने हेतु AI API को कॉल करेगा।

आप निम्नलिखित कमांड लाइन आर्गुमेंट प्रदान करके इस सुविधा को सक्षम कर सकते हैं:

  • ai-api-provider: AI API प्रदाता का नाम। समर्थित प्रदाता:
    • Atlas Cloud: atlas (डिफ़ॉल्ट मॉडल deepseek-ai/deepseek-v4-flash), atlas-deepseek-v4-flash, atlas-qwen3-coder-next, atlas-kimi-k2.6, या atlas:<model-id> किसी भी Atlas Cloud होस्टेड चैट मॉडल के लिए। Atlas Cloud एक OpenAI-संगत प्रदाता है, जो atlascloud.ai पर उपलब्ध है
    • Gemini: gemini-3-pro-preview (डिफ़ॉल्ट), gemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-lite
    • Claude: claude-sonnet-4-6 (डिफ़ॉल्ट), , , , ,

🎁 Atlas Cloud एक फुल-मोडल AI अनुमान प्लेटफॉर्म है जो डेवलपर्स को वीडियो जनरेशन, इमेज जनरेशन और LLM APIs तक पहुँचने के लिए एक एकल AI API प्रदान करता है। कई विक्रेता एकीकरण प्रबंधित करने के बजाय, आप एक बार कनेक्ट होते हैं और सभी मोडैलिटी में 300+ क्यूरेटेड मॉडलों तक एकीकृत पहुँच प्राप्त करते हैं।

अधिक बजट-अनुकूल API एक्सेस के लिए Atlas Cloud के नए कोडिंग प्लान प्रमोशन को देखें: https://www.atlascloud.ai/console/coding-plan

उदाहरण:```bash

Using Atlas Cloud with the default DeepSeek V4 Flash model

export GOSEC_AI_API_KEY="your_key" export GOSEC_AI_PROVIDER="atlas" gosec ./...

Using Atlas Cloud with an explicit hosted model

GOSEC_AI_API_KEY="your_key"
gosec -ai-api-provider="atlas:qwen/qwen3-coder-next" ./...

Using Gemini

gosec -ai-api-provider="gemini-3-pro-preview"
-ai-api-key="your_key" ./...

Using Claude

gosec -ai-api-provider="claude-sonnet-4-6"
-ai-api-key="your_key" ./...

Using OpenAI

gosec -ai-api-provider="gpt-5.4"
-ai-api-key="your_key" ./...

Using Azure OpenAI

gosec -ai-api-provider="gpt-5.4"
-ai-api-key="your_azure_key"
-ai-base-url="https://your-resource.openai.azure.com/openai/deployments/your-deployment"
./...

Using local Ollama with custom model

gosec -ai-api-provider="llama3.2"
-ai-base-url="http://localhost:11434/v1"
./...

Using self-signed certificate API

gosec -ai-api-provider="custom-model"
-ai-api-key="your_key"
-ai-base-url="https://internal-api.company.com/v1"
-ai-skip-ssl
./...

root@kitploit:~
### कोड को एनोटेट करना

सभी स्वचालित पहचान उपकरणों की तरह, यहाँ भी गलत सकारात्मकता (false positives) के मामले होंगे। ऐसे मामलों में जहाँ gosec एक विफलता की रिपोर्ट करता है जिसे मैन्युअल रूप से सुरक्षित सत्यापित किया गया है, तो कोड को `#nosec` से शुरू होने वाली टिप्पणी से एनोटेट करना संभव है।

`#nosec` टिप्पणी का प्रारूप `#nosec [RuleList] [-- Justification]` होना चाहिए।

`#nosec` टिप्पणी को उस पंक्ति पर रखा जाना चाहिए जहाँ चेतावनी रिपोर्ट की गई है।```go
func main() {
	tr := &http.Transport{
		TLSClientConfig: &tls.Config{
			InsecureSkipVerify: true, // #nosec G402
		},
	}

	client := &http.Client{Transport: tr}
	_, err := client.Get("https://go.dev/")
	if err != nil {
		fmt.Println(err)
	}
}

जब किसी विशिष्ट झूठी सकारात्मकता (false positive) की पहचान की गई हो और उसे सुरक्षित माना गया हो, तो आप कोड के एक भाग में केवल उस एक नियम (या नियमों के एक विशिष्ट सेट) को दबाना (suppress) चाह सकते हैं, जबकि अन्य समस्याओं के लिए स्कैन जारी रख सकते हैं। ऐसा करने के लिए, आप #nosec एनोटेशन के अंदर दबाए जाने वाले नियम(नों) को सूचीबद्ध कर सकते हैं, उदाहरण के लिए: /* #nosec G401 */ या //#nosec G201 G202 G203

आप एनोटेशन के लिए विवरण या औचित्य पाठ (justification text) रख सकते हैं। औचित्य दबाए जाने वाले नियम(नों) के बाद होना चाहिए और दो या अधिक डैश से शुरू होना चाहिए, उदाहरण के लिए: //#nosec G101 G102 -- This is a false positive

वैकल्पिक रूप से, gosec //gosec:disable निर्देश का भी समर्थन करता है, जो #nosec के समान कार्य करता है:```go //gosec:disable G101 -- This is a false positive

root@kitploit:~
कुछ मामलों में आप उन स्थानों पर पुनर्विचार करना चाह सकते हैं जहाँ
`#nosec` या `//gosec:disable` एनोटेशन का उपयोग किया गया है।
स्कैनर को चलाने और किसी भी `#nosec` एनोटेशन को अनदेखा करने के लिए आप निम्नलिखित कर सकते हैं:```bash
gosec -nosec=true ./...

नियम आईडी और औचित्य की आवश्यकता

एनोटेशन को अनजाने में असंबंधित नियमों को दबाने से, या बिना स्पष्टीकरण के जोड़े जाने से रोकने के लिए, gosec दो ऑप्ट-इन फ़्लैग स्वीकार करता है। दोनों डिफ़ॉल्ट रूप से false हैं, इसलिए मौजूदा कोडबेस अपरिवर्तित काम करते रहते हैं।

  • -nosec-require-rules उन नंगे #nosec / //gosec:disable निर्देशों को अस्वीकार करता है जो किसी भी नियम आईडी को सूचीबद्ध नहीं करते हैं।
  • -nosec-require-justification उन निर्देशों को अस्वीकार करता है जो नियम सूची के बाद -- justification नहीं रखते हैं।

जब सक्षम किया जाता है, तो एक निर्देश जो जांच में विफल रहता है, वह किसी भी खोज को दबा नहीं पाता है और आउटपुट में एक त्रुटि के रूप में रिपोर्ट किया जाता है, साथ ही लाइन पर किसी भी अंतर्निहित समस्या के साथ।```bash gosec -nosec-require-rules -nosec-require-justification ./...

root@kitploit:~
वही विकल्प ग्लोबल कॉन्फ़िग ब्लॉक के माध्यम से सेट किए जा सकते हैं:```json
{
    "global": {
        "nosec-require-rules": "enabled",
        "nosec-require-justification": "enabled"
    }
}

दमन ट्रैकिंग

जैसा कि ऊपर वर्णित है, हम उल्लंघनों को बाह्य रूप से (-include/-exclude का उपयोग करके) या इनलाइन (#nosec एनोटेशन का उपयोग करके) दबा सकते हैं। दमन मेटाडेटा ऑडिटिंग के लिए उत्सर्जित किया जा सकता है।

-track-suppressions के साथ दमन ट्रैकिंग सक्षम करें:```bash gosec -track-suppressions -exclude=G101
-fmt=sarif -out=results.sarif ./...

root@kitploit:~
- बाहरी दमन के लिए, gosec दमन जानकारी रिकॉर्ड करता है
  जहाँ `kind` `external` है और `justification`
  `Globally suppressed.` है।
- इनलाइन दमन के लिए, gosec दमन जानकारी रिकॉर्ड करता है
  जहाँ `kind` `inSource` है और `justification` टिप्पणी में
  दो या अधिक डैश के बाद का पाठ है।

**नोट:** केवल SARIF और JSON प्रारूप दमन ट्रैकिंग का समर्थन करते हैं।

### बिल्ड टैग्स

gosec आपके
[Go build tags](https://pkg.go.dev/go/build/) को विश्लेषक को पास करने में सक्षम है।
उन्हें अल्पविराम से अलग की गई सूची के रूप में प्रदान किया जा सकता है:```bash
gosec -tags debug,ignore ./...

आउटपुट प्रारूप

gosec text, json, yaml, csv, junit-xml, html, sonarqube, golint, और sarif का समर्थन करता है। डिफ़ॉल्ट रूप से, परिणाम stdout पर रिपोर्ट किए जाएंगे, लेकिन उन्हें किसी आउटपुट फ़ाइल में भी लिखा जा सकता है। आउटपुट प्रारूप -fmt फ़्लैग द्वारा नियंत्रित किया जाता है, और आउटपुट फ़ाइल -out फ़्लैग द्वारा नियंत्रित की जाती है जैसा कि निम्नलिखित है:```bash

Write output in json format to results.json

$ gosec -fmt=json -out=results.json *.go

root@kitploit:~
`-stdout` का उपयोग करके `-out` लिखते हुए परिणाम प्रिंट करें।
`-verbose` का उपयोग करके stdout प्रारूप को ओवरराइड करें जबकि फ़ाइल प्रारूप को संरक्षित रखें।```bash
# Write output in json format to results.json as well as stdout
$ gosec -fmt=json -out=results.json -stdout *.go

# Overrides the output format to 'text' when stdout the results,
# while writing it to results.json
$ gosec -fmt=json -out=results.json -stdout -verbose=text *.go

नोट: gosec SonarQube के लिए generic issue import format उत्पन्न करता है, और एक रिपोर्ट को SonarQube में sonar.externalIssuesReportPaths=path/to/gosec-report.json का उपयोग करके आयात किया जाना चाहिए।

सामान्य उपयोग पैटर्न```bash

Fail only on medium+ severity findings

gosec -severity medium ./...

Fail only on medium+ confidence findings

gosec -confidence medium ./...

Exclude specific rules for specific paths

gosec --exclude-rules="cmd/.:G204,G304;scripts/.:*" ./...

Exclude generated files in scan

gosec -exclude-generated ./...

Include test files in scan

gosec -tests ./...

root@kitploit:~
## विकास

विकास दस्तावेज़ को यहाँ स्थानांतरित कर दिया गया है
[DEVELOPMENT.md](https://github.com/securego/gosec/blob/HEAD/DEVELOPMENT.md)।

## gosec का उपयोग कौन कर रहा है?

यह gosec के कुछ उपयोगकर्ताओं की एक [सूची](https://github.com/securego/gosec/blob/HEAD/USERS.md) है।

## प्रायोजक

प्रायोजक बनकर इस परियोजना का समर्थन करें। आपका लोगो आपकी वेबसाइट के लिंक के साथ यहाँ दिखाई देगा।

<a href="https://github.com/mercedes-benz" target="_blank"><img src="https://assets.kitploit.com/production/public/readmes/2947/08b6f9da5faff0e986172b0c77fed0865a2cb26e6f8c58a8ae588c74bcf16f5f.png"></a>
टूल डाउनलोड करें
claude-opus-4-7
claude-opus-4-6
claude-sonnet-4-5
claude-opus-4-5
claude-haiku-4-5
  • OpenAI: gpt-5.4 (डिफ़ॉल्ट), gpt-5.4-mini, gpt-5.4-nano
  • कस्टम OpenAI-संगत: कोई भी कस्टम मॉडल नाम (ai-base-url आवश्यक है)
  • ai-api-key या पर्यावरण चर सेट करें GOSEC_AI_API_KEY: AI API तक पहुँचने के लिए कुंजी
    • Gemini के लिए, आप इन निर्देशों का पालन करके API कुंजी बना सकते हैं: these instructions
    • Claude के लिए, अपनी API कुंजी प्राप्त करें Anthropic Console
    • OpenAI के लिए, अपनी API कुंजी प्राप्त करें OpenAI Platform
  • ai-base-url: (वैकल्पिक) OpenAI-संगत APIs के लिए कस्टम आधार URL (जैसे, Azure OpenAI, LocalAI, Ollama)
    • Atlas Cloud डिफ़ॉल्ट रूप से https://api.atlascloud.ai/v1 का उपयोग करता है, इसलिए बिल्ट-इन atlas प्रदाता के लिए ai-base-url वैकल्पिक है
  • GOSEC_AI_PROVIDER: (वैकल्पिक) पर्यावरण चर ai-api-provider का विकल्प
  • GOSEC_AI_BASE_URL: (वैकल्पिक) पर्यावरण चर ai-base-url का विकल्प
  • ai-skip-ssl: (वैकल्पिक) AI API के लिए SSL प्रमाणपत्र सत्यापन छोड़ें (स्व-हस्ताक्षरित प्रमाणपत्रों के लिए उपयोगी)