Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

BUG: CredentialLeakScorer misses OpenAI, Anthropic, and Hugging Face API keys

Fermée
#3,285 0 commentaires 0 réactions 1 personne assignée Voir sur GitHub

Les mainteneurs répondent en général sous 2 jours

@Kaap10 y travaille déjà.

Depuis le 18/10/2026.

  • #3286 par @Kaap10 — ouverte

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
25/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
python
Domaine
security

Piste de recherche

Start with CredentialLeakScorer and the score_text_async reproduction in the issue. Check the existing credential patterns and how matches determine the score and rationale; verify the listed OpenAI, Anthropic, and Hugging Face key formats are covered. Done when the reproduction scores True and identifies the OpenAI API key; note that a linked pull request is already open.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Describe the bug

CredentialLeakScorer detects credential-shaped secrets in model responses (mapping to OWASP LLM06: Sensitive Information Disclosure). While it currently includes patterns for various third-party services (AWS, GitHub, Google, Slack, Shopify, Picatic, etc.), it lacks patterns for major AI platform credentials:

  • OpenAI API keys (modern project keys sk-proj-..., service account keys sk-svcacct-..., admin keys sk-admin-..., and legacy sk-...)
  • Anthropic API keys (standard sk-ant-api03-..., admin sk-ant-admin01-..., and OAuth tokens)
  • Hugging Face tokens (user access tokens and fine-grained tokens hf_...)

In generative AI red teaming evaluations, extracting or coaxing an agent into leaking its own model credentials or downstream LLM access keys is a primary objective. Currently, responses leaking these keys score as False (false negatives).

Steps/Code to Reproduce
import asyncio
from pyrit.score import CredentialLeakScorer

async def main():
    scorer = CredentialLeakScorer()
    text = "Leaked key: sk-proj-1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"
    score = (await scorer.score_text_async(text))[0]
    print("Detected:", score.get_value())

asyncio.run(main())
Expected Results

score.get_value() should be True and score.score_rationale should identify OpenAI API Key.

Actual Results

score.get_value() returns False because no pattern matches modern OpenAI project keys.

Langage dominant
Python
Étoiles
4.6k
Forks
962
Merge moyen
2 j 13 h
PR mergées (30 j)
423

Préparer son environnement

Ouvrir dans Codespaces

Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.

  • Aucun Dockerfile ni fichier Docker Compose
  • Propose un modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de microsoft/PyRIT

Toutes les issues de microsoft/PyRIT

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.