अपडेट पर वापस जाएँ
New releaseAug 26, 2026

titus v1.2.8

उच्च-प्रदर्शन रहस्य स्कैनर। CLI, Go लाइब्रेरी, Burp Suite एक्सटेंशन, और Chrome एक्सटेंशन। 487 डिटेक्शन नियम लाइव क्रेडेंशियल सत्यापन के साथ।

साझा करें
Titus - स्रोत कोड, git इतिहास, और बाइनरी फ़ाइलों के लिए उच्च-प्रदर्शन सीक्रेट्स स्कैनर

Titus: उच्च-प्रदर्शन सीक्रेट्स स्कैनर

Go License CI

Titus एक उच्च-प्रदर्शन सीक्रेट्स स्कैनर है जो स्रोत कोड, फ़ाइलों, और git इतिहास में क्रेडेंशियल्स, API कुंजियों, और टोकन का पता लगाता है। यह सैकड़ों सेवाओं और क्रेडेंशियल प्रकारों को कवर करने वाले 487 डिटेक्शन नियमों के साथ आता है, जो NoseyParker और Kingfisher से लिए गए हैं। Titus एक CLI, एक Go लाइब्रेरी, एक Burp Suite एक्सटेंशन, और एक Chrome ब्राउज़र एक्सटेंशन के रूप में चलता है — ये सभी एक ही डिटेक्शन इंजन और नियम सेट साझा करते हैं।

सुरक्षा इंजीनियरों, पेनेट्रेशन टेस्टरों, और DevSecOps टीमों के लिए बनाया गया, Titus Hyperscan/Vectorscan-त्वरित regex मिलान को लाइव क्रेडेंशियल सत्यापन के साथ जोड़ता है ताकि आपके पूरे कोडबेस में लीक हुए सीक्रेट्स को खोजा और सत्यापित किया जा सके।

विषय-सूची

Titus क्यों?

  • तेज़ सीक्रेट्स स्कैनिंग: उपलब्ध होने पर Hyperscan/Vectorscan द्वारा त्वरित regex मिलान, किसी भी प्लेटफ़ॉर्म पर पोर्टेबिलिटी के लिए शुद्ध-Go फ़ॉलबैक के साथ।
  • व्यापक क्रेडेंशियल डिटेक्शन कवरेज: 487 नियम AWS, GCP, Azure, GitHub, Slack, डेटाबेस, CI/CD सिस्टम, और सैकड़ों अन्य सेवाओं के लिए API कुंजियों, टोकन, और क्रेडेंशियल्स का पता लगाते हैं।
  • लाइव सीक्रेट सत्यापन: पता लगाए गए सीक्रेट्स को उनके स्रोत API के विरुद्ध जाँचा जाता है ताकि यह पुष्टि की जा सके कि वे सक्रिय हैं या नहीं, जिससे गलत सकारात्मकता कम होती है और उपचार को प्राथमिकता मिलती है।
  • जोखिम-आधारित गंभीरता स्कोरिंग: प्रत्येक फाइंडिंग को एक संख्यात्मक स्कोर (0–100) और गंभीरता स्तर (info → critical) मिलता है। स्कोर स्थिर नियम मेटाडेटा, कोड-एक्सेसिबिलिटी संदर्भ, और लाइव API कॉल्स द्वारा ट्यून किए जाते हैं जो क्रेडेंशियल के वास्तविक प्रभाव क्षेत्र को मापते हैं — ताकि सबसे खतरनाक फाइंडिंग्स हमेशा पहले सामने आएं।
  • कंटेनर इमेज स्कैनिंग: किसी भी रजिस्ट्री, tarball, या OCI लेआउट डायरेक्टरी से सीधे Docker और OCI इमेज स्कैन करें — किसी Docker डेमन या बाइनरी की आवश्यकता नहीं।
  • हर वर्कफ़्लो के लिए कई इंटरफ़ेस: CLI से स्कैन करें, Go लाइब्रेरी के रूप में एम्बेड करें, Burp Suite में HTTP ट्रैफ़िक को निष्क्रिय रूप से स्कैन करें, या एप्लिकेशन सुरक्षा परीक्षण के दौरान Chrome में वेब पेजों को स्कैन करें।
  • बाइनरी फ़ाइल निष्कर्षण: Office दस्तावेज़ों, PDFs, अभिलेखागार (zip, tar, 7z), मोबाइल ऐप्स (APK, IPA), ब्राउज़र एक्सटेंशन, और अन्य से सीक्रेट्स निकालें और स्कैन करें।

इंस्टॉलेशन

Releases पृष्ठ से एक पूर्व-निर्मित बाइनरी डाउनलोड करें, या स्रोत से बिल्ड करें:```bash make build

बाइनरी `dist/titus` पर होगी।

## त्वरित शुरुआत```bash
# Scan a file for secrets
titus scan path/to/file.txt

# Scan a directory for leaked credentials
titus scan path/to/directory

# Scan a public GitHub repository (no token needed)
titus scan github.com/org/repo

# Scan a public GitLab project (no token needed)
titus scan gitlab.com/namespace/project

# Scan git history for secrets in past commits
titus scan --git path/to/repo

# Scan a Docker / OCI image (pulled from a registry — no docker daemon required)
titus scan --docker alpine:latest

# Validate detected secrets against source APIs
titus scan path/to/code --validate

परिणाम एक डेटास्टोर (titus.ds डिफ़ॉल्ट रूप से) में लिखे जाते हैं और कंसोल पर प्रिंट किए जाते हैं।

स्कैनिंग विकल्प

GitHub और GitLab स्कैनिंग

सार्वजनिक रिपॉज़िटरी को सीधे URL द्वारा स्कैन करें — किसी API टोकन की आवश्यकता नहीं:```bash

Scan a GitHub repository

titus scan github.com/kubernetes/kubernetes

Scan a GitLab project

titus scan gitlab.com/gitlab-org/cli

Full URLs work too

titus scan https://github.com/org/repo titus scan https://gitlab.com/namespace/project.git

संगठन-व्यापी या उपयोगकर्ता-व्यापी स्कैनिंग के लिए, समर्पित सबकमांड्स का उपयोग करें:```bash
# Scan all public repos in a GitHub org
titus github --org kubernetes

# Scan all repos in a GitHub org with a token (private repos + higher rate limits)
titus github --org kubernetes --token $GITHUB_TOKEN

# Scan all repos for a GitHub user
titus github --user octocat

# Scan all projects in a GitLab group
titus gitlab scan --group mygroup --token $GITLAB_TOKEN

# Scan a single repo with git history (finds deleted secrets)
titus github owner/repo --git

Tokens सार्वजनिक रिपॉज़िटरीज़ के लिए वैकल्पिक हैं। निजी रिपॉज़िटरी एक्सेस और उच्चतर API दर सीमाओं के लिए GITHUB_TOKEN या GITLAB_TOKEN सेट करें (या --token का उपयोग करें)।

Docker / OCI इमेज स्कैनिंग

कंटेनर इमेजेज़ को सीधे स्कैन करें — किसी docker daemon की आवश्यकता नहीं, किसी docker बाइनरी की आवश्यकता नहीं। Titus किसी भी OCI रजिस्ट्री से HTTPS के माध्यम से सीधे इमेज खींचता है (~/.docker/config.json से क्रेडेंशियल्स का उपयोग करके), या स्थानीय docker save tarball या OCI इमेज लेआउट डायरेक्टरी से इमेज पढ़ता है। इसके बाद यह इमेज मैनिफ़ेस्ट/कॉन्फ़िग मेटाडेटा और प्रत्येक लेयर की प्रत्येक नियमित फ़ाइल को स्कैन करता है, जिसमें बाद की लेयरों द्वारा हटाई गई निचली-लेयर फ़ाइलें भी शामिल हैं (क्योंकि सीक्रेट्स इमेज इतिहास से पुनर्प्राप्त करने योग्य रह सकते हैं)।```bash

Pull from a registry and scan

titus scan --docker alpine:latest titus scan docker://ghcr.io/owner/repo:tag

Scan an image saved to a tarball:

docker save my-app:latest -o my-app.tar

podman save my-app:latest -o my-app.tar

titus scan --docker ./my-app.tar

Scan an OCI image layout directory:

docker buildx build --output type=oci,dest=./img/ .

skopeo copy docker://my-app:latest oci:./img:latest

titus scan --docker ./img/

प्रमाणीकरण आपके मौजूदा Docker / Podman कॉन्फ़िग (`~/.docker/config.json`, `${XDG_RUNTIME_DIR}/containers/auth.json`) का उपयोग करता है। निजी रजिस्ट्रियाँ जिन्हें नए लॉगिन की आवश्यकता होती है, उन्हें पहले `docker login` (या `podman login`, या `crane auth login`) से प्रमाणित किया जाना चाहिए — titus क्रेडेंशियल्स के लिए प्रॉम्प्ट नहीं करता।

### स्कैन परिणाम देखना

पिछले स्कैन से निष्कर्षों को दोबारा पढ़ने के लिए `report` का उपयोग करें:```bash
# Human-readable summary of detected secrets
titus report

# JSON output for programmatic processing
titus report --format json

# SARIF output for CI/CD integration with GitHub Advanced Security
titus report --format sarif

# Report from a specific datastore
titus report --datastore path/to/titus.ds

आप --format के साथ स्कैन के समय आउटपुट प्रारूप को भी नियंत्रित कर सकते हैं:```bash titus scan path/to/code --format json

### पता लगाए गए Secrets का सत्यापन

स्कैन के दौरान `--validate` पास करें ताकि पता लगाए गए secrets को उनके स्रोत APIs के विरुद्ध जाँचा जा सके:```bash
titus scan path/to/code --validate

वैलिडेशन समवर्ती रूप से चलता है (डिफ़ॉल्ट रूप से 4 वर्कर, --validate-workers के साथ कॉन्फ़िगर करने योग्य) और प्रत्येक फ़ाइंडिंग को confirmed, denied, या unknown के रूप में चिह्नित करता है।

फ़िल्टरिंग डिटेक्शन नियम```bash

List all available detection rules

titus rules list

Scan with only specific rules (e.g., AWS and GCP credentials)

titus scan path/to/code --rules-include "aws,gcp"

Exclude rules by pattern

titus scan path/to/code --rules-exclude "kingfisher.generic"

Use a custom rules file for organization-specific secrets

titus scan path/to/code --rules path/to/custom-rules.yaml

Opt in to rules marked noisy: true (high false-positive rate, off by default)

titus scan path/to/code --include-noisy

### बाइनरी फ़ाइलों से सीक्रेट्स निकालना

Titus बाइनरी फ़ाइल फ़ॉर्मेट्स से टेक्स्ट निकाल सकता है और सामग्री में सीक्रेट्स की स्कैनिंग कर सकता है:```bash
# Extract and scan all supported binary formats
titus scan path/to/files --extract=all

# Target specific formats
titus scan path/to/files --extract=xlsx,docx,pdf,zip

समर्थित प्रारूपों में Office दस्तावेज़ (xlsx, docx, pptx, odp, ods, odt), PDFs, Jupyter notebooks, SQLite डेटाबेस, ईमेल (eml, rtf), और अभिलेखागार (zip, tar, tar.gz, jar, war, ear, apk, ipa, crx, xpi, 7z) शामिल हैं। अभिलेखागार को कॉन्फ़िगर करने योग्य गहराई और आकार सीमाओं तक पुनरावर्ती रूप से निकाला जाता है।```bash

Tune extraction limits for large codebases

titus scan path/to/files --extract=all
--extract-max-size 10MB
--extract-max-total 100MB
--extract-max-depth 5

SQLite डेटाबेस के लिए, Titus सभी तालिकाओं से टेक्स्ट निकालता है (डिफ़ॉल्ट रूप से प्रति तालिका 1000 पंक्तियाँ)। समायोजित करने के लिए `--sqlite-row-limit` का उपयोग करें:```bash
# Full dump of all SQLite tables (no row limit)
titus scan path/to/files --extract=all --sqlite-row-limit 0

# Custom row limit per table
titus scan path/to/files --extract=all --sqlite-row-limit 5000

Finding Scoring

Titus द्वारा उत्पन्न प्रत्येक finding में 0–100 तक का एक संख्यात्मक स्कोर और एक severity tier होता है:

ScoreSeverity
0–20info
21–40low
41–60medium
61–80high
81–100critical

स्कोर rule के base_score से शुरू होते हैं और modifiers द्वारा समायोजित किए जाते हैं — ऐसी शर्तें जो credential के बारे में ज्ञात जानकारी के आधार पर स्कोर को बढ़ाती या घटाती हैं:```bash

Score findings using static rule metadata only (no network calls)

titus scan path/to/code

Score findings AND make live API calls to verify credential blast radius

(calls AWS STS/IAM and GitHub API for supported credential types)

titus scan path/to/code --score-scope

Override the accessibility context (default: auto-detected from git remote)

titus scan path/to/code --accessibility public # no penalty for public repos titus scan path/to/code --accessibility private # -25 penalty (default for local scans)

Titus में AWS क्रेडेंशियल्स, GitHub PATs, और Slack टोकन्स के लिए YAML स्कोरर्स शामिल हैं, साथ ही Go-आधारित SDK स्कोरर्स भी हैं जो `--score-scope` सक्षम होने पर लाइव IAM पॉलिसी एन्यूमरेशन (AWS) और रिपॉज़िटरी अनुमति जाँच (GitHub fine-grained PATs) करते हैं।

पूर्ण संदर्भ के लिए [docs/scoring.md](https://github.com/praetorian-inc/titus/blob/main/docs/scoring.md) देखें: severity tiers, modifier kinds, अंतर्निहित स्कोरर विवरण, और अपने स्वयं के YAML या Go स्कोरर्स कैसे लिखें।

## Secrets Detection के लिए Go Library

Titus को एक Go library के रूप में import किया जा सकता है ताकि आप अपने स्वयं के टूल्स और pipelines में secrets detection जोड़ सकें।```bash
go get github.com/praetorian-inc/titus

🎯 उपयोग के मामले

1. पुराने सिस्टम का आकलन

# पुराने सिस्टम का पूर्ण सुरक्षा ऑडिट
python3 cve_2025_55182.py --target https://legacy-app.company.com --verbose

# परिणाम: सभी कमजोरियों की पहचान करें और सुधार को प्राथमिकता दें

2. बग बाउंटी शिकार

# बग बाउंटी कार्यक्रम के लिए त्वरित जाँच
python3 cve_2025_55182.py --target https://target.com --output bounty_report.json

# परिणाम: सत्यापन के लिए साक्ष्य के साथ पेशेवर रिपोर्ट

3. सुरक्षा अनुपालन

# अनुपालन आवश्यकताओं के लिए नियमित सुरक्षा स्कैन
python3 cve_2025_55182.py --target https://production.company.com --output compliance_audit.json

# परिणाम: अनुपालन टीमों के लिए विस्तृत ऑडिट ट्रेल

4. CI/CD एकीकरण

# GitHub Actions वर्कफ़्लो उदाहरण
name: Security Scan
on: [push, pull_request]

jobs:
  security:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Run CVE-2025-55182 Scanner
        run: |
          python3 cve_2025_55182.py --target ${{ secrets.TARGET_URL }} --output scan_results.json
      - name: Upload Results
        uses: actions/upload-artifact@v3
        with:
          name: security-scan-results
          path: scan_results.json

5. शैक्षिक उद्देश्य

# सुरक्षा अवधारणाओं को प्रदर्शित करने के लिए नियंत्रित वातावरण में परीक्षण
python3 cve_2025_55182.py --target http://localhost:3000 --verbose

# परिणाम: सुरक्षा कमजोरियों के बारे में जानें

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

कंसोल आउटपुट

╔══════════════════════════════════════════════════════════════╗
║  CVE-2025-55182 सुरक्षा स्कैनर v1.0.0                        ║
║  React Server Components RCE कमजोरी स्कैनर                   ║
╚══════════════════════════════════════════════════════════════╝

[*] लक्ष्य: https://example.com
[*] स्कैन शुरू हो रहा है...

[+] चरण 1: लक्ष्य पहुँच की जाँच कर रहा है... ✓
[+] चरण 2: React Server Components का पता लगा रहा है... ✓
[+] चरण 3: सर्वर क्रियाओं की गणना कर रहा है... ✓
[+] चरण 4: कमजोर पेलोड का परीक्षण कर रहा है... ✓
[+] चरण 5: सफल शोषण की पुष्टि कर रहा है... ✓

[!] कमजोरी का पता चला!
    ├─ प्रकार: रिमोट कोड निष्पादन (RCE)
    ├─ गंभीरता: महत्वपूर्ण (CVSS 10.0)
    ├─ CVE: CVE-2025-55182
    └─ प्रभावित: React Server Components

[*] स्कैन पूरा हुआ। परिणाम scan_results.json में सहेजे गए

JSON आउटपुट

{
  "scan_info": {
    "target": "https://example.com",
    "timestamp": "2025-01-15T10:30:00Z",
    "scanner_version": "1.0.0",
    "duration_seconds": 12.5
  },
  "vulnerability": {
    "cve_id": "CVE-2025-55182",
    "severity": "CRITICAL",
    "cvss_score": 10.0,
    "type": "Remote Code Execution",
    "affected_component": "React Server Components",
    "description": "React Server Components में अनपेक्षित सर्वर क्रियाओं के माध्यम से दूरस्थ कोड निष्पादन की अनुमति देने वाली कमजोरी"
  },
  "findings": {
    "vulnerable": true,
    "confidence": "HIGH",
    "evidence": {
      "detection_method": "Server Action enumeration",
      "exploitation_successful": true,
      "payload_used": "[REDACTED]"
    }
  },
  "recommendations": [
    "तत्काल: React और Next.js को नवीनतम संस्करण में अपडेट करें",
    "अल्पकालिक: संदिग्ध सर्वर क्रियाओं की निगरानी लागू करें",
    "दीर्घकालिक: नियमित सुरक्षा ऑडिट लागू करें"
  ]
}

🔧 उन्नत कॉन्फ़िगरेशन

कस्टम पेलोड

# कस्टम पेलोड बनाएँ
from cve_2025_55182 import ExploitBuilder

builder = ExploitBuilder()
payload = builder.create_payload(
    command="whoami",
    encoding="base64",
    obfuscation=True
)

API एकीकरण

# स्कैनर को अपने एप्लिकेशन में एकीकृत करें
from cve_2025_55182 import CVEScanner

scanner = CVEScanner(target="https://example.com")
results = scanner.scan()

if results.vulnerable:
    send_alert(results)

🛡️ शमन और सुधार

तत्काल शमन

  1. React/Next.js अपडेट करें

    npm update react react-dom next
    
  2. WAF नियम लागू करें

    # संदिग्ध सर्वर क्रिया अनुरोधों को ब्लॉक करें
    location / {
        if ($request_body ~* "next-action") {
            return 403;
        }
    }
    
  3. सर्वर क्रियाओं को अक्षम करें

    // next.config.js
    module.exports = {
      experimental: {
        serverActions: false
      }
    }
    

दीर्घकालिक सुरक्षा

  • नियमित सुरक्षा स्कैन लागू करें
  • निर्भरता को अपडेट रखें
  • सुरक्षा निगरानी लागू करें
  • घटना प्रतिक्रिया योजना विकसित करें

📚 अतिरिक्त संसाधन

⚠️ अस्वीकरण

यह उपकरण केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए है। इस उपकरण का उपयोग केवल उन सिस्टम पर करें जिनके लिए आपके पास स्पष्ट लिखित अनुमति है। अनधिकृत पहुँच अवैध है और इसके परिणामस्वरूप गंभीर कानूनी परिणाम हो सकते हैं।


अंतिम अपडेट: 2025-01-15
संस्करण: 1.0.0
स्थिति: सक्रिय रूप से अनुरक्षित```go package main

import ( "fmt" "log"

"github.com/praetorian-inc/titus"

)

func main() { // Initialize the secrets scanner with default rules scanner, err := titus.NewScanner() if err != nil { log.Fatal(err) } defer scanner.Close()

// Scan a string for API keys, tokens, and credentials
matches, err := scanner.ScanString(`aws_access_key_id = AKIAIOSFODNN7EXAMPLE`)
if err != nil {
    log.Fatal(err)
}

for _, match := range matches {
    fmt.Printf("%s (rule: %s) at line %d\n",
        match.RuleName, match.RuleID,
        match.Location.SourceSpan.Start.Line,
    )
}

}

लाइब्रेरी बाइट्स और फ़ाइलों को स्कैन करना, पाए गए सीक्रेट्स को मान्य करना, और कस्टम नियम लोड करना भी सपोर्ट करती है:```go
// Scan a file for leaked credentials
matches, err := scanner.ScanFile("/path/to/config.json")

// Enable validation to check if detected secrets are live
scanner, err := titus.NewScanner(titus.WithValidation())

// Load custom detection rules for organization-specific secrets
rules, err := titus.LoadRulesFromFile("/path/to/rules.yaml")
scanner, err := titus.NewScanner(titus.WithRules(rules))

पूर्ण API संदर्भ, concurrency पैटर्न और अधिक उदाहरणों के लिए docs/library-usage.md देखें।

Secret Scanning के लिए Burp Suite Extension

Burp extension proxy ट्रैफ़िक और active penetration testing के दौरान HTTP responses में secrets को scan करता है।

Setup

Linux / macOS (सोर्स से Build करें)```bash

Build the CLI and Burp extension JAR, install CLI to ~/.titus/

make install-burp

फिर Burp Suite में Extensions > Add के अंतर्गत `dist/titus-burp-1.0.0-all.jar` लोड करें।

#### Windows (Releases से डाउनलोड करें)

1. [Releases](../../releases) से `titus-windows-amd64.exe` और `titus-burp-<version>.jar` डाउनलोड करें
2. Titus निर्देशिका बनाएं और बाइनरी इंस्टॉल करें:   ```powershell
   mkdir %USERPROFILE%\.titus
   copy titus-windows-amd64.exe %USERPROFILE%\.titus\titus.exe
  1. Burp Suite में Extensions > Add के अंतर्गत JAR लोड करें

Linux / macOS (Releases से डाउनलोड करें)

  1. अपने प्लेटफ़ॉर्म के लिए उपयुक्त बाइनरी और titus-burp-<version>.jar को Releases से डाउनलोड करें:
    • Linux के लिए titus-linux-amd64 या titus-linux-arm64
    • macOS के लिए titus-darwin-amd64 या titus-darwin-arm64
  2. बाइनरी इंस्टॉल करें: ```bash mkdir -p ~/.titus cp titus- ~/.titus/titus chmod +x ~/.titus/titus
  3. Burp Suite में Extensions > Add के अंतर्गत JAR लोड करें

यह एक्सटेंशन बैकग्राउंड में एक titus serve प्रक्रिया शुरू करता है और NDJSON का उपयोग करके stdin/stdout पर संचार करता है। डिटेक्शन नियम स्टार्टअप पर एक बार लोड होते हैं।

Burp एक्सटेंशन विशेषताएँ

  • निष्क्रिय सीक्रेट स्कैनिंग: Burp से गुजरने वाले प्रॉक्सी ट्रैफ़िक को स्वचालित रूप से स्कैन करता है
  • सक्रिय सीक्रेट स्कैनिंग: चयनित अनुरोधों को स्कैन करने के लिए राइट-क्लिक संदर्भ मेनू
  • डुप्लीकेशन हटाना: प्रति एंगेजमेंट एक ही सीक्रेट केवल एक बार रिपोर्ट किया जाता है
  • फास्ट-पाथ फ़िल्टरिंग: बाइनरी सामग्री, छवियाँ, और गैर-पाठ प्रतिक्रियाएँ छोड़ दी जाती हैं
  • लाइव क्रेडेंशियल सत्यापन: पता लगाए गए सीक्रेट को स्रोत API के विरुद्ध जाँचें ताकि पुष्टि हो सके कि वे सक्रिय हैं या नहीं
  • फ़ॉल्स पॉज़िटिव प्रबंधन: शोर को फ़िल्टर करने के लिए निष्कर्षों को फ़ॉल्स पॉज़िटिव के रूप में चिह्नित करें
  • गंभीरता वर्गीकरण: जोखिम के अनुसार रंग-कोडित निष्कर्ष (High/Medium/Low)
  • निर्यात: रिपोर्टिंग के लिए निष्कर्षों को JSON में सहेजें

Burp एक्सटेंशन इंटरफ़ेस

यह एक्सटेंशन Burp में एक Titus टैब जोड़ता है जिसमें तीन उप-टैब हैं:

Secrets: प्रकार, होस्ट, और सत्यापन स्थिति के अनुसार फ़िल्टरिंग के साथ सभी पता लगाए गए सीक्रेट।

Titus Burp Suite extension secrets tab showing detected API keys and credentials with validation status

  • सत्यापन स्थिति: दिखाता है कि सीक्रेट की जाँच की गई है या नहीं (Active/Inactive/Unknown)
  • फ़िल्टरिंग: विशिष्ट मानों के अनुसार फ़िल्टर करने के लिए Type, Host, या Status बटन पर क्लिक करें; टेक्स्ट और रेगेक्स मिलान के लिए सर्च बॉक्स का उपयोग करें
  • बल्क क्रियाएँ: बैच में सत्यापित करने या फ़ॉल्स पॉज़िटिव के रूप में चिह्नित करने के लिए कई पंक्तियाँ चुनें
  • Secret Details पैनल: देखने के लिए एक निष्कर्ष चुनें:
    • Details: नियम जानकारी, श्रेणी, पूर्ण सीक्रेट मान, पहली बार देखे जाने का टाइमस्टैम्प
    • URLs: वे सभी स्थान जहाँ यह सीक्रेट पाया गया था
    • Validation: विवरण के साथ सत्यापन परिणाम (जैसे, AWS account ID, ARN)
    • Request/Response: सीक्रेट को हाइलाइट किए गए पूर्ण HTTP ट्रैफ़िक

Statistics: प्रकार और होस्ट के अनुसार समूहीकृत सीक्रेट का समग्र दृश्य।

Titus Burp Suite extension statistics tab showing secrets by type and host
  • Summary: कुल अद्वितीय सीक्रेट, स्कैन किए गए होस्ट, सत्यापन विवरण (सक्रिय बनाम निष्क्रिय), और फ़ॉल्स पॉज़िटिव गणना
  • Secrets by Type: श्रेणी वर्गीकरण के साथ प्रत्येक सीक्रेट प्रकार की गणना
  • Secrets by Host: प्रति होस्ट पाए गए सीक्रेट की संख्या

Settings: स्कैनिंग विकल्प, सत्यापन, और गंभीरता मैपिंग कॉन्फ़िगर करें।

Titus Burp Suite extension settings tab with scan configuration options

  • Scan Settings:
    • निष्क्रिय स्कैनिंग: सभी प्रॉक्सी ट्रैफ़िक को स्वचालित रूप से स्कैन करें (डिफ़ॉल्ट रूप से सक्षम)
    • अनुरोध बॉडी स्कैनिंग: एप्लिकेशन द्वारा भेजे गए सीक्रेट के लिए अनुरोध बॉडी को भी स्कैन करें
    • सत्यापन: स्रोत API के विरुद्ध सीक्रेट की जाँच करने के लिए सक्षम करें (आउटबाउंड अनुरोध करता है और अलर्ट ट्रिगर कर सकता है)
  • Scan Parameters: वर्कर थ्रेड्स, अधिकतम फ़ाइल आकार, संदर्भ स्निपेट लंबाई
  • Severity Configuration: प्रति सीक्रेट श्रेणी गंभीरता स्तर अनुकूलित करें
  • Actions: कैश साफ़ करें, सेटिंग्स रीसेट करें, निष्कर्षों को JSON में सहेजें/निर्यात करें

Burp में कोई भी अनुरोध देखते समय, यदि सीक्रेट का पता चलता है तो प्रतिक्रिया निरीक्षक में एक Titus टैब दिखाई देता है, जो मुख्य Titus टैब पर स्विच किए बिना निष्कर्षों तक त्वरित पहुँच प्रदान करता है।

Titus tab in Burp Suite response inspector highlighting detected secrets in HTTP responses

सीक्रेट स्कैनिंग के लिए Chrome ब्राउज़र एक्सटेंशन

Chrome एक्सटेंशन वेब एप्लिकेशन सुरक्षा आकलन के दौरान वेब पेजों को सीक्रेट के लिए स्कैन करता है।

सेटअप```bash

make build-extension

1. `chrome://extensions/` पर नेविगेट करें
2. **Developer mode** सक्षम करें
3. **Load unpacked** पर क्लिक करें और `extension/` डायरेक्टरी चुनें

### ब्राउज़र एक्सटेंशन विशेषताएँ

- API keys और tokens के लिए inline और external JavaScript और stylesheets को स्कैन करता है
- लीक हुए credentials के लिए localStorage और sessionStorage को स्कैन करता है
- व्यापक secret detection के लिए वैकल्पिक network response capture
- परिणाम popup और dashboard में प्रदर्शित होते हैं

<img width="1719" height="958" alt="Titus Chrome extension popup showing detected secrets on a web page" src="https://assets.kitploit.com/production/public/readmes/11969/057a24e2746412ceabe1aac0292a2de463de1efee5bca2489ca34b59d8b0dc2c.png" />

<img width="1744" height="827" alt="Titus Chrome extension dashboard with aggregated secret detection results" src="https://assets.kitploit.com/production/public/readmes/11969/265d972fadcc7f212944d7a1d8fd58a43446e7199d1209900e83b96a546ffb00.png" />

### सुरक्षा सूचना

ब्राउज़र एक्सटेंशन external resources को स्कैन करने के लिए विज़िट किए गए पेजों से Content Security Policy और CORS headers हटा देता है। एक्सटेंशन के सक्रिय रहने के दौरान यह आपके द्वारा विज़िट की जाने वाली साइटों की सुरक्षा स्थिति को कमज़ोर करता है। **केवल सक्रिय सुरक्षा परीक्षण के दौरान ही सक्षम करें।**

## सोर्स से बिल्ड करना

### मानक बिल्ड (Vectorscan-accelerated)

डिफ़ॉल्ट रूप से Titus SIMD-accelerated regex matching के लिए [Vectorscan](https://github.com/VectorCamp/vectorscan) (ARM) / [Hyperscan](https://github.com/intel/hyperscan) (x86) के साथ कंपाइल होता है। इसके लिए CGO, C लाइब्रेरी, और `pkg-config` (जिसका उपयोग cgo लाइब्रेरी को खोजने के लिए करता है) की आवश्यकता होती है। `make build` इनकी जाँच करता है और Homebrew / apt / dnf के माध्यम से किसी भी अनुपलब्ध चीज़ को इंस्टॉल करने का प्रयास करता है:```bash
# Build the CLI binary with vectorscan acceleration (outputs to dist/titus)
make build

# Build the Burp Suite extension JAR
make build-burp

# Build the Chrome browser extension
make build-extension

# Run unit tests
make test

# Run integration tests
make integration-test

आपको स्टार्टअप पर [vectorscan] N/N rules compiled for Hyperscan दिखाई देगा जब त्वरित इंजन सक्रिय होगा।

ऑटो-इंस्टॉल पर निर्भर रहने के बजाय C लाइब्रेरी स्वयं इंस्टॉल करने के लिए:```bash

macOS (Homebrew)

brew install pkg-config vectorscan

Ubuntu/Debian

sudo apt-get install pkg-config libhyperscan-dev

Fedora/RHEL

sudo dnf install pkgconf-pkg-config vectorscan-devel

Or build vectorscan from source:

git clone --depth 1 --branch vectorscan/5.4.11 https://github.com/VectorCamp/vectorscan.git cd vectorscan && cmake -B build -DCMAKE_INSTALL_PREFIX=/usr/local && cmake --build build && sudo cmake --install build

यदि आप सीधे `go build` को invoke करते हैं (उदाहरण के लिए, Titus को embed करते समय), तो tag पास करें और CGO enable करें:```bash
# macOS (Homebrew) — adjust PKG_CONFIG_PATH to your installed version
CGO_ENABLED=1 PKG_CONFIG_PATH="$(brew --prefix vectorscan)/lib/pkgconfig" \
  go build -tags vectorscan -o dist/titus ./cmd/titus

# Linux (system-installed)
CGO_ENABLED=1 go build -tags vectorscan -o dist/titus ./cmd/titus

शुद्ध-Go बिल्ड (कोई C निर्भरता नहीं)

यदि आप C लाइब्रेरी इंस्टॉल नहीं कर सकते — या एक पूरी तरह से पोर्टेबल, स्टैटिक बाइनरी चाहते हैं — तो इसके बजाय शुद्ध-Go इंजन बनाएं। Titus रनटाइम पर स्वचालित रूप से इस पर वापस चला जाता है जब भी vectorscan कंपाइल नहीं किया गया हो:```bash

Portable pure-Go binary (no CGO, no vectorscan)

make build-pure

Fully static binary

make build-static

#### स्वचालित Hyperscan डेटाबेस कैश

Titus प्रत्येक सफलतापूर्वक संकलित Hyperscan डेटाबेस को स्वचालित रूप से मानक उपयोगकर्ता कैश में क्रमबद्ध (serialize) करता है। बाद के स्कैनर इंस्टेंस जिनके पास बिल्कुल समान क्रमबद्ध नियम और फ़्लैग होते हैं, वे उस डेटाबेस को फिर से संकलित करने के बजाय लोड कर लेते हैं। कैश फ़ाइल Hyperscan के `hs_serialize_database` द्वारा उत्पन्न असंशोधित बाइट स्ट्रीम है, और Titus इसे `hs_deserialize_database` के साथ लोड करता है।

`TITUS_CACHE_DIR` कैश स्थान को ओवरराइड कर सकता है। कैश लेखन परमाणु (atomic) और best-effort होते हैं: अनुपलब्ध या read-only कैश स्कैनिंग को नहीं रोकता। अनुपस्थित, दूषित, असंगत, या भिन्न फ़िंगरप्रिंट वाला डेटाबेस सामान्य संकलन को ट्रिगर करता है और जब संभव हो तो कैश को रीफ़्रेश करता है।

क्रमबद्ध डेटाबेस आर्किटेक्चर-, CPU-फ़ीचर-, और Hyperscan-संस्करण-विशिष्ट होते हैं। Titus डीसीरियलाइज़ करते समय असंगत प्रविष्टियों का पता लगाता है और उन्हें वर्तमान रनटाइम के लिए संकलित डेटाबेस से बदल देता है।

## योगदान

योगदान का स्वागत है! Titus में योगदान कैसे करें, इसके दिशानिर्देशों के लिए [CONTRIBUTING.md](https://github.com/praetorian-inc/titus/blob/main/CONTRIBUTING.md) देखें।

## लाइसेंस

Apache License 2.0 — [LICENSE](https://github.com/praetorian-inc/titus/blob/main/LICENSE) देखें।

डिटेक्शन नियम [NoseyParker](https://github.com/praetorian-inc/noseyparker) (Praetorian Security, Inc.) और [Kingfisher](https://github.com/mongodb/kingfisher) (MongoDB, Inc.) से व्युत्पन्न हैं, दोनों Apache 2.0 के अंतर्गत लाइसेंस प्राप्त हैं। पूर्ण श्रेय के लिए [NOTICE](https://github.com/praetorian-inc/titus/blob/main/NOTICE) देखें।

श्रेणियाँ