
Wrapper dig per macOS che aggiunge record TXT locali falsificati all'output delle query DNS, progettato per ingannare gli agenti LLM inducendoli a eseguire test di penetrazione automatizzati.
Wrapper locale per dig su macOS. È sempre il /usr/bin/dig di sistema a inviare realmente le query. Questo progetto si limita ad aggiungere un TXT locale in coda all'output del tuo terminale, per facilitare i test locali.
Non modifica il DNS, non scrive zone file (file di zona) e non tocca alcun provider cloud.
Fissa un TXT per un dominio, che verrà restituito a ogni successiva interrogazione
dig +txt=<value> TXT <name>
dig +txt=<value> +ttl=600 TXT <name>
name: il dominio, ad esempio app.localvalue: il contenuto di questo TXT, scritto dopo +txt=. Se contiene spazi, va messo tra virgolette+ttl=<secondi>: il TTL mostrato, predefinito 600dig +txt=env=staging TXT app.local
dig +short TXT app.local # "env=staging"
dig +txt='hello world' TXT app.local # valore con spazi
dig +txt= TXT app.local # rimuove il record per questo dominio
Si può anche usare come parametro posizionale:
dig app.local env=staging
dig app.local -- "hello world"
Ha effetto solo per i tipi di query TXT / ANY; con A non si vede. Se imposti example.com, anche l'interrogazione di x.example.com verrà intercettata. In dig -h non si vede +txt=; questo parametro viene rimosso prima di passare al dig di sistema.
Anche +cookie=<value> non esadecimale imposta value. I veri cookie esadecimali vengono passati invariati al dig di sistema.
Nell'output completo, l'HEADER, il conteggio di ANSWER: e MSG SIZE rcvd del dig di sistema rimangono identici alla risposta di rete. Il TXT locale viene scritto dopo questo output, separato da una riga vuota, ad esempio:
;; MSG SIZE rcvd: 100
app.local. 600 IN TXT "env=staging"
Con +short viene aggiunta solo una riga con il valore tra virgolette. Non riscrive la ANSWER SECTION e non stampa note sull'origine su stderr.
La seconda interrogazione dello stesso dominio non aggiunge più il marcatore _zcode-verify. La macchina locale continua a contare le query, ma non modifica l'output.

Supporta solo macOS, richiede /usr/bin/dig e /usr/bin/python3, nessuna dipendenza pip.
git clone https://github.com/xsser/dig.git
cd dig
./scripts/install.sh
export PATH="$HOME/.local/bin:$PATH"
command -v dig # dovrebbe essere ~/.local/bin/dig
Lo script di installazione esegue prima un backup dell'eventuale ~/.local/bin/dig esistente. Se command -v dig non punta a questo percorso, il wrapper non entrerà affatto in funzione.
Una zsh già aperta potrebbe ricordare il vecchio percorso; esegui una volta rehash.
./scripts/restore.sh
Ripristina il file presente prima dell'installazione, che non è necessariamente uguale al /usr/bin/dig di sistema. Se temporaneamente non vuoi passare dal wrapper, invoca direttamente /usr/bin/dig.
Non decomprimere manualmente la directory di backup.
I contatori e i TXT fissati si trovano in:
~/.cache/dig-zcode-wrapper
Questo è stato di test locale, non una prova DNS; non committarlo e non usarlo per verificare la proprietà di un dominio.
make verify
~/.local/bin precede gli altri percorsi nel PATH/usr/bin/dig