Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
privacy-parser — inverso del filtro privacy di openai. stesso modello 1.5b, restituisce i pii come span strutturati invece di mascherarli | Kitploit
Strumenti/GitHubGitHub/chiefautism/privacy-parser
OSINT (Open Source Intelligence)RicognizioneAnalisi delle VulnerabilitàEsfiltrazione DatiRaccolta InformazioniPenetration TestingPrivacyMachine Learning
GitHubchiefautism/privacy-parser

privacy-parser

inverso del filtro privacy di openai. stesso modello 1.5b, restituisce i pii come span strutturati invece di mascherarli

Vedi Repository
40334234 giorni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Privacy Parser

Trova ogni elemento di PII in una grande quantità di testo e ottienilo indietro come span strutturati.

Basato su OpenAI Privacy Filter: stesso modello da 1.5B, stesse etichette, stessi pesi.
Privacy Filter maschera. Privacy Parser estrae.

python license labels F1


Hi Quindle Testwick ([email protected] / +1-415-555-0102),
account 40702810500001234567, 14 Beautiful Ct, Anytown USA,
password Priv4cy-Filt3r-2026.
private_person      Quindle Testwick
private_email       [email protected]
private_phone       +1-415-555-0102
account_number      40702810500001234567
private_address     14 Beautiful Ct, Anytown USA
secret              Priv4cy-Filt3r-2026

Invece di <REDACTED> ottieni cosa è stato trovato, dove si trova (start, end) e di quale tipo è.

Perché

Privacy Filter risponde a "rendi sicuro questo testo". A volte hai bisogno di una risposta diversa: "cosa c'è esattamente qui dentro?"

  • Verifica log, dump ed esportazioni prima che lascino il tuo perimetro
  • Inventaria i dati personali per le richieste GDPR / CCPA
  • Controlli pre-commit e CI per segreti e dati di contatto trapelati
  • Crea dataset: etichetta gli span PII per addestramento o valutazione

Tre backend

BackendRichiede pesiVelocitàF1 *Usalo quando
PIIParsernoµs1.000zero dipendenze, pattern strutturati
ModelPIIParser1.5B~500 ms CPU0.733output grezzo del modello
HybridPIIParser1.5B~600 ms CPU0.929scelta predefinita

* corrispondenza esatta degli span sui cinque fixture di esempio opf. Un insieme ridotto: trattalo come uno smoke test, non come un benchmark.

Installazione

git clone https://github.com/openai/privacy-filter
git clone https://github.com/chiefautism/privacy-parser

uv venv
uv pip install -e ./privacy-filter    # only for the model backends
uv pip install -e ./privacy-parser

La prima esecuzione del modello scarica il checkpoint opf (~3 GB) in ~/.opf/privacy_filter/. Imposta OPF_CHECKPOINT o passa model= per utilizzare un'altra posizione.

Avvio rapido

Ibrido (consigliato)

from pii_parser.hybrid import HybridPIIParser

parser = HybridPIIParser(device="cpu")   # or "cuda"
result = parser.parse("Hi Quindle Testwick, call me at +1-415-555-0102")

for s in result.spans:
    print(s.label, s.start, s.end, s.text)

print(result.to_json())

Solo regex, nessun peso

from pii_parser import parse

result = parse("mail [email protected], token ghp_abcdefghijklmnopqrstuvwxyz0123456789")

result.detected_spans   # (DetectedSpan(label='private_email', ...), ...)
result.redacted_text    # 'mail <REDACTED>, token <REDACTED>'
result.summary          # {'span_counts': {...}, 'total_spans': 2}

CLI

Backend regex, senza modello:

$ echo "Alice paid 40702810500001234567 on 2026-05-17." | pii-parser --mode spans
account_number  11  31  40702810500001234567
private_date    35  45  2026-05-17

$ pii-parser "mail [email protected]" --mode redacted
mail <REDACTED>
FlagValoriPredefinito
TEXTtesto, oppure -f FILE, oppure stdin
--modejson · spans · redactedjson
--placeholderqualsiasi stringa<REDACTED>
--indentint, 0 per JSON compatto2

Backend del modello:

python -m pii_parser.cli_model "Alice paid 40702810500001234567 on 2026-05-17."
python -m pii_parser.cli_model -f dump.txt --device cuda --mode spans

Etichette

tassonomia opf v2, 8 categorie:

EtichettaEsempio
private_personQuindle Testwick
private_email[email protected]
private_phone+1-415-555-0102
private_address14 Beautiful Ct, Anytown USA
private_urlhttps://example.com/u/quindle
private_date2026-05-17
account_number40702810500001234567
secretsk-…, ghp_…, AKIA…, Bearer …

Quando le porzioni si sovrappongono, vince quella più lunga, poi l'etichetta con priorità più alta: email > url > secret > account > phone > date > address > person.

Come funziona l'ibrido

text
  │
  ▼
opf 1.5B ──► BIOES logits ──► Viterbi (tuned biases) ──► char spans
  │
  ▼
span merge        glues "Quindle" + "Testwick" into one person
  │
  ▼
regex backstop    adds url / secret / account where the model missed them
  │
  ▼
spans[]

Ogni fase può essere disattivata:

HybridPIIParser(
    enable_merge=True,
    enable_regex_backstop=True,
    enable_viterbi_tuning=True,
    decode_mode="viterbi",   # or "argmax"
)

Schema di output

{
  "text": "Hi Quindle Testwick ...",
  "spans": [
    { "label": "private_person", "start": 3, "end": 19, "text": "Quindle Testwick" }
  ]
}

Il regex PIIParser rispecchia opf.RedactionResult (schema_version, summary, detected_spans, redacted_text), così puoi scambiare i backend senza toccare i consumer.

Test

I test si aspettano che privacy-filter sia clonato accanto a questo repo (leggono i suoi fixture di esempio).

python tests/test_hybrid.py
Fixture F1:  0.929
Scenarios:   8/8 passed
Latency:     ~600 ms CPU

Uso responsabile

Questo è uno strumento a duplice uso. Eseguilo su dati di tua proprietà o che sei autorizzato a elaborare. L'estrazione di dati personali da fonti trapelate o rubate è illegale nella maggior parte delle giurisdizioni.

Licenza

Apache-2.0

Scarica lo strumento