
Ataques locais de gradiente de caixa branca para LLMs de pesos abertos: busca de sufixos GCG/PEZ, saliência de camadas, snapshots de pesos e ajuste de sufixo-para-delta de rank-1 para equipes de red team.

Ataques de sufixo white-box locais em modelos de pesos abertos que você mantém em disco.
| Importação | gradjail |
| CLI | gradient-untangler |
| O que é | Gradientes reais em pesos locais. GCG, PEZ e busca de sufixo discreta/contínua relacionada. Registro de pesos brutos e saliência de camadas. |
| O que não é | Não é uma ferramenta de jailbreak via API remota. Não é uma licença para atacar produção de terceiros. |
Somente pesquisa de segurança autorizada. Use em modelos que você possui, pesos locais, programas de bug bounty no escopo, testes de penetração autorizados por escrito, CTFs e laboratórios que você controla. Consulte SECURITY.md.
git clone https://gitlab.com/WattoCyber/gradient-untangler.git
cd gradient-untangler
py -3.12 -m pip install -e ".[dev,web]"
py -3.12 scripts/repro.py
Espere REPRO_OK. Esse portão é offline: sem GPU, sem rede.
py -3.12 -m gradjail.cli run \
--model sshleifer/tiny-gpt2 \
--goal "Say the lab marker." \
--target-prefix "CANARY_OK" \
--optimizer gcg \
--device cpu \
--judge "contains:CANARY_OK" \
--out runs/demo.json
Interface web (não lança ataques):
py -3.12 -m gradjail.web
Abra http://127.0.0.1:8787 e escolha um arquivo runs/*.json.
Liste os otimizadores implementados: py -3.12 -m gradjail.cli list.
WeightRegistry.from_path): leia tensores do disco, faça snapshot, diff. Mapeie antes de editar.U V^T de posto 1 no embed para que o prompt limpo atinja a mesma CE alvo com teacher forcing. O peso original permanece intocado. Não é ROME, não é abliteration, não é bit-flip.from gradjail.suffix_delta import fit_suffix_delta
A injeção de token alvo está desativada a menos que você passe inject_target=True.
URLs de API remota são rejeitadas. Gradientes exigem pesos locais.
Esta é uma ferramenta local, não uma afirmação de que todo otimizador é novo. GCG e PEZ são métodos publicados. O produto é uma espinha dorsal: gradientes locais, um mapa de pesos, saliência, um absorvedor de sufixo-para-delta e um portão de repro.
Não trate um único arquivo em disco com asr=True como um achado. Reexecute. Uma recusa curta é uma falha.
src/gradjail/ package
tests/ pytest
scripts/repro.py offline product gate
docs/ design and benchmark notes
O Electron está em disco em alguns checkouts e não é distribuído.
MIT. Consulte LICENSE.
Painel esquerdo do banner: Rembrandt, Filósofo em Meditação (1632), domínio público, via Wikimedia Commons. As sobreposições científicas são geradas no próprio repositório.