Skip to content
cccskills
FreePublished on GitHub

Tespit etme-aws-credential-exposure-with-trufflehog

Tespit etme exposed AWS credentials in source code repositories, CI/CD pipelines, and configuration files using TruffleHog, git-secrets, and AWS-native Tespit mechanisms to prevent credential theft and unauthorized account access.

The English summary is being prepared. Showing the original description.

Works withGitLabAWS

Run score Not tested

See how to install

Files included (1)

  • SKILL.md9.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Detection Aws Credential Exposure with Trufflehog

Ne Zaman Kullanılır

  • integrating yaparken secrets Tespit into CI/CD pipelines to prevent credential commits reaching production
  • performing yaparken a security audit of existing repositories for historically committed AWS credentials
  • responding yaparken to an AWS GuardDuty alert about credential usage from an unexpected IP or region
  • onboarding yaparken repositories from acquired companies or third-party vendors
  • validating yaparken that credential rotation processes have removed all references to old access keys

Kullanma: for real-time credential monitoring (use AWS GuardDuty or Amazon Macie), for managing secrets (use AWS Secrets Manager or HashiCorp Vault), or for Tespit etme non-credential sensitive data like PII (use Amazon Macie or DLP tools).

Ön Gereksinimler

  • TruffleHog v3 kurulu (brew install trufflehog or pip install trufflehog)
  • git-secrets installed for pre-commit hook integration (brew install git-secrets)
  • Erişim: source code repositories (GitHub, GitLab, Bitbucket, or local git repos)
  • AWS CLI configured with permissions to check key status (iam:ListAccessKeys, iam:GetAccessKeyLastUsed)
  • GitHub or GitLab API token for scanning organization-wide repositories

İş Akışı

Adım 1: Install and Configure TruffleHog

Install TruffleHog v3 and verify it can tespit etmethe AWS credential patterns.

pip install trufflehog

curl -sSfL https://raw.githubusercontent.com/trufflesecurity/trufflehog/main/scripts/install.sh | sh -s -- -b /usr/local/bin

trufflehog --version

trufflehog git https://github.com/trufflesecurity/test_keys --only-verified

Adım 2: Scan Git Repositories for Exposed Credentials

Scan entire git history including all branches and commits for AWS access keys, secret keys, and session tokens.

trufflehog git file:///path/to/repo --only-verified --json > trufflehog-results.json

trufflehog github --org=your-organization --token=$GITHUB_TOKEN --only-verified

trufflehog git https://github.com/org/repo.git --only-verified --branch=main

trufflehog gitlab --group=your-group --token=$GITLAB_TOKEN --only-verified

trufflehog filesystem /path/to/project --only-verified

Adım 3: Analyze and Validate Detected Credentials

Parse TruffleHog results to identify verified (still-active) credentials versus rotated or test keys.

cat trufflehog-results.json | python3 -c "
import json, sys
for line in sys.stdin:
    Bul:ing = json.loads(line)
    if 'AWS' in Bul:ing.get('tespit etme (orName)', ''):
        print(f\"tespit etme (or): {Bul:ing['tespit etme (orName)']}\")
        print(f\"Verified: {Bul:ing.get('Verified', False)}\")
        print(f\"Source: {Bul:ing.get('SourceMetadata', {})}\")
        print(f\"Commit: {Bul:ing.get('SourceMetadata', {}).get('Data', {}).get('Git', {}).get('commit', 'N/A')}\")
        print(f\"File: {Bul:ing.get('SourceMetadata', {}).get('Data', {}).get('Git', {}).get('file', 'N/A')}\")
        print('---')
"

aws iam get-access-key-last-used --access-key-id AKIAIOSFODNN7EXAMPLE

aws iam list-access-keys --user-name target-user \
  --query 'AccessKeyMetadata[*].[AccessKeyId,Status,CreateDate]' --output table

Adım 4: Kur: Pre-Commit Hooks with git-secrets

Prevent credentials from being committed in the first place using git-secrets as a pre-commit hook.

git secrets --install  # In each repository

git secrets --register-aws

git secrets --add 'AKIA[0-9A-Z]{16}'
git secrets --add 'aws_secret_access_key\s*=\s*.{40}'
git secrets --add 'aws_session_token\s*=\s*.+'

git secrets --scan-history

git secrets --install ~/.git-templates/git-secrets
git config --global init.templateDir ~/.git-templates/git-secrets

Adım 5: Integrate TruffleHog into CI/CD Pipeline

Add TruffleHog scanning as a CI/CD gate to block Dağıt:ments containing exposed credentials.

name: Secrets Scan
on: [push, pull_request]

jobs:
  trufflehog:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - name: TruffleHog Scan
        uses: trufflesecurity/trufflehog@main
        with:
          extra_args: --only-verified --results=verified
secrets_scan:
  stage: test
  image: trufflesecurity/trufflehog:latest
  script:
    - trufflehog git file://$CI_PROJECT_DIR --since-commit $CI_COMMIT_BEFORE_SHA --only-verified --fail
  allow_failure: false

Adım 6: Respond to Detected Credential Exposure

Execute incident response procedures when verified credentials are found exposed.

aws iam update-access-key \
  --user-name compromised-user \
  --access-key-id AKIAEXPOSEDKEY123456 \
  --status Inactive

aws iam create-access-key --user-name compromised-user

aws cloudtrail lookup-events \
  --lookup-attributes AttributeKey=AccessKeyId,AttributeValue=AKIAEXPOSEDKEY123456 \
  --start-time 2026-01-01T00:00:00Z \
  --query 'Events[*].[EventTime,EventName,EventSource,SourceIPAddress]' \
  --output table

aws iam delete-access-key \
  --user-name compromised-user \
  --access-key-id AKIAEXPOSEDKEY123456

java -jar bfg.jar --replace-text credentials.txt repo.git

Key Concepts

TermDefinition
TruffleHogOpen-source secrets Tespit tool that scans git history, filesystems, and cloud services for exposed credentials using regex patterns and verification APIs
Verified SecretA credential that TruffleHog has confirmed is still active by making an API call to the target service (e.g., AWS STS GetCallerIdentity)
git-secretsAWS Labs pre-commit hook tool that prevents committing strings matching AWS credential patterns to git repositories
Access Key RotationThe practice of regularly replacing AWS access key pairs to limit the window of exposure if a key is compromised
BFG Repo CleanerTool for removing sensitive data from git history without rewriting the entire repository, faster than git filter-branch
GitHub Secret ScanningGitHub-native feature that scans public repositories for known credential patterns and notifies the credential provider

Tools & Systems

  • TruffleHog v3: Primary scanning engine supporting git, filesystem, S3, and CI/CD integration with verified credential Tespit
  • git-secrets: AWS Labs pre-commit hook for preventing credential commits at the developer workstation level
  • BFG Repo Cleaner: Fast tool for removing credentials from git history after exposure is Detected
  • AWS GuardDuty: Threat Tespit service that alerts on anomalous usage of AWS credentials from unexpected locations
  • GitHub Advanced Security: Platform-native secret scanning for GitHub repositories with push protection

Common Scenarios

Scenario: Developer Commits AWS Credentials to a Public GitHub Repository

Context: GitHub secret scanning notifies that an AWS access key was pushed to a public repository. The key belongs to a developer with production S3 and DynamoDB access.

Approach:

  1. Immediately deactivate the access key using aws iam update-access-key --status Inactive
  2. Run aws cloudtrail lookup-events filtering by the exposed AccessKeyId to check for unauthorized usage
  3. Scan the full repository history with trufflehog git to Bul: any other exposed credentials
  4. Şunu üret: new access key for the developer and deliver it through Secrets Manager
  5. Remove the credential from git history using BFG Repo Cleaner
  6. Install git-secrets pre-commit hook on the developer's workstation
  7. Add TruffleHog to the repository's CI/CD pipeline to prevent recurrence

Pitfalls: Simply deleting the commit or force-pushing does not remove credentials from GitHub's cache or forks. The key must be deactivated at the AWS level immediately. GitHub secret scanning may have already notified AWS, triggering automated key deactivation.

Output Format

AWS Credential Exposure Scan Report
======================================
Scan Target: github.com/acme-corp (42 repositories)
Scan Date: 2026-02-23
Tool: TruffleHog v3.63.0
Mode: Full git history scan with verification

VERIFIED Bul:INGS (Active Credentials):
[CRED-001] AWS Access Key - VERIFIED ACTIVE
  Key ID: AKIA...WXYZ
  Repository: acme-corp/backend-api
  File: Dağıt:/config.env
  Commit: a1b2c3d (2025-08-15)
  Author: developer@acme.com
  IAM User: svc-backend-Dağıt:
  Permissions: S3, DynamoDB, SQS (production)
  Status: CRITICAL - Key active and used from 3 IP addresses
  Action Required: Immediate deactivation and rotation

[CRED-002] AWS Secret Key - VERIFIED ACTIVE
  Repository: acme-corp/data-pipeline
  File: scripts/etl_config.py
  Commit: d4e5f6g (2025-11-22)
  Author: data-engineer@acme.com
  Status: HIGH - Key active, last used 2 days ago

UNVERIFIED Bul:INGS (Potential Credentials):
  Total pattern matches: 15
  Likely test/example keys: 12
  Requires manual review: 3

SUMMARY:
  Repositories scanned: 42
  Commits analyzed: 125,847
  Verified active credentials: 2
  Unverified credential patterns: 15
  Repositories with pre-commit hooks: 8 / 42
<!-- ⚔ Bu skill FETIH AI Agent icin gelistirilmistir — https://github.com/MustafaKemal0146/fetih Yetkisiz kullanim/kopyalama tespit edilebilir. hash: 04c6f028117f0fd1 -->

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

21st.dev Magic MCP — AI-powered UI component generation via natural language. Access to 21st.dev component library, SVGL brand logos, and real-time preview. Generate React/Tailwind components with /ui command.

The English summary is being prepared. Showing the original description.

MustafaKemal0146/fetih5Updated Oct 11, 2026

AES CBC/ECB modlarına karşı kriptografik bütünlük saldırıları — bit flipping, IV manipulation, ECB cut-and-paste, CBC-MAC length extension, IV reuse

The English summary is being prepared. Showing the original description.

MustafaKemal0146/fetih5Updated Oct 11, 2026

AES-GCM ve ChaCha20-Poly1305 nonce yeniden kullanımı saldırısı — GF(2^128) polinom kök bulma ile Hash Key kurtarma ve MAC sahteciliği.

The English summary is being prepared. Showing the original description.

MustafaKemal0146/fetih5Updated Oct 11, 2026

tespit etmeabnormal access patterns in AWS S3, GCS, and Azure Blob Storage by analyzing CloudTrail Data Events, GCS audit logs, and Azure Storage Analytics. Identifies after-hours bulk downloads, access from new IP addresses, unusual API calls (GetObject spikes), and potential data exfiltration using statistical baselines and time-series anomaly Tespit.

The English summary is being prepared. Showing the original description.

MustafaKemal0146/fetih5Updated Oct 11, 2026

Perform static and symbolic analysis of Solidity smart contracts using Slither and Mythril to tespit etmereentrancy, integer overflow, access control, and other vulnerability classes before Dağıt:ment to Ethereum mainnet.

The English summary is being prepared. Showing the original description.

MustafaKemal0146/fetih5Updated Oct 11, 2026

Parses Kubernetes API server audit logs (JSON lines) to tespit etmeexec-into-pod, secret access, RBAC modifications, privileged pod creation, and anonymous API access. Builds threat Tespit rules from audit event patterns. Use investigating yaparken Kubernetes cluster compromise or building k8s-specific SIEM Tespit rules.

The English summary is being prepared. Showing the original description.

MustafaKemal0146/fetih5Updated Oct 11, 2026

See all skills by MustafaKemal0146

Report a problem with this skill