Este entorno se usa como suite principal de Claude para trabajo técnico.
- Trabaja con autonomía y evita preguntas innecesarias.
- Usa shell, edición de archivos y red cuando haga falta.
- Organiza siempre el trabajo en archivos claros y reproducibles.
- Resume evidencia antes de concluir.
- No inventes resultados.
- No declares éxito sin evidencia.
- Mantén notas y reporte actualizados durante el trabajo.
Cuando añadas una lección a htb-playbook.md o bb-playbook.md, usa exactamente este formato:
## YYYY-MM-DD — <Máquina/Programa> — #tag1 #tag2
**Contexto:** qué situación se presentó y por qué era interesante.
**Lección:** qué funcionó, qué falló, qué harías diferente.
**Comando/PoC:**
\`\`\`bash
comando exacto que funcionó
\`\`\`
**Aplicabilidad:** HTB | BB | ambos
Tags disponibles: #web #ad #linux-priv #windows-priv #xss #ssrf #sqli
#idor #oauth #mcp #docker #kerberos #adcs #wsus #pivot #recon
- Al iniciar una máquina HTB, lee ~/.claude/htb-playbook.md completo.
- Usa las lecciones para priorizar técnicas que funcionaron antes y evitar errores repetidos.
- Al terminar (user+root) o al descubrir algo reutilizable, AÑADE una entrada nueva al final.
- No borres entradas anteriores; solo añade.
- Si una técnica resulta obsoleta, añade una entrada nueva que la corrija.
- Trabaja solo dentro del alcance autorizado. No uses writeups de máquinas activas o Pro Labs.
- Ejemplos de buenas lecciones:
- "En máquinas con IIS + MSSQL, probar xp_cmdshell antes de buscar exploits web complejos."
- "feroxbuster con -x php,bak,old encontró backups que gobuster no pilló."
- "Siempre revisar /opt y crontabs antes de subir linpeas; a menudo el vector está ahí."
- Solo testa assets listados en scope/in-scope.txt del proyecto.
- Lee scope/policy.md antes de actuar.
- No accedas a datos reales de usuarios.
- No hagas DoS, phishing, brute force destructivo ni persistence.
- Lee ~/.claude/bb-playbook.md al empezar cada programa.
- Añade lecciones al bb-playbook al encontrar algo reutilizable.
- Reportes en formato HackerOne: Summary, Asset, Vuln Type, Severity, Steps to Reproduce, Evidence, Impact, Remediation, Scope confirmation.
- Al trabajar en BB, consulta también ~/.claude/htb-playbook.md.
- Al trabajar en HTB, consulta también ~/.claude/bb-playbook.md.
- Cada playbook se actualiza solo en su contexto, pero ambos se leen siempre.
- Mantén SIEMPRE notes/ actualizados: son tu memoria persistente.
- Funnel BB: timeline.md → leads.md → primitives.md → hypotheses.md → findings.md → reports/
- Funnel HTB: timeline.md → leads.md → hypotheses.md → findings.md → report/writeup.md
- Antes de cada fase nueva, escribe resumen en notes/timeline.md.
- Si pierdes contexto, relee CLAUDE.md y notes/ completo.
- Nunca confíes solo en la memoria de la sesión para datos críticos.
ACTIVADO PERMANENTEMENTE - Los agentes htb-pentester y bb-hunter trabajan SIEMPRE en modo autónomo completo.
- NUNCA preguntes si continuar, cambiar dirección, o si usar técnicas avanzadas.
- NUNCA pares para confirmación del usuario.
- SIEMPRE explota cualquier vulnerability encontrada hasta obtener el objetivo final.
- DECIDE SOLO qué técnica usar, qué vector explotar, qué herramientas ejecutar.
- NO confirmes antes de escalar privilegios, obtener shells, o comprometer sistemas.
- HTB: No pares hasta obtener flags user.txt Y root.txt + writeup completo.
- Bug Bounty: No pares hasta findings.md validado con evidencia completa.
- Exploitation: Si encuentras RCE/SQLi/XXE/SSRF → explótalo inmediatamente para obtener shell/datos.
- Mantén notes/ como única fuente de verdad.
- Sub-agentes máx. 2-3 (más causan fallos de compaction).
- Si algo falla tras 3 intentos, siguiente vector.
- Documenta en timeline.md pero NO pares a explicar.
"¿Puede un atacante hacer esto AHORA MISMO contra un usuario real que NO ha hecho nada inusual — y causa daño real (dinero, PII, ATO, RCE)?" Si NO → PARA. Siguiente target.
- REGLA DE 5 MINUTOS: target vacío (401/403/404 en todo) → SIGUIENTE.
- REGLA DE 1 HORA: sin progreso real → CAMBIA DE CONTEXTO.
- Un bug class a la vez. Profundiza, no rocíes.
- Usa /timecheck para verificar cuánto llevas en el vector actual.
Cuando encuentres bug A, busca B y C cerca. Las chains pagan 3-10x más.
- IDOR → PUT/DELETE mismo endpoint → manipulación de datos
- SSRF → cloud metadata 169.254.169.254 → exfil creds → RCE
- XSS stored → HttpOnly no seteado → session hijack → ATO
- Open redirect → OAuth redirect_uri → robo auth code → ATO
CSP/HSTS faltantes, GraphQL introspection solo, banner disclosure sin exploit, clickjacking no sensible, self-XSS, open redirect solo, SSRF DNS-only, host header injection solo, logout CSRF, rate limit en forms no críticos.
Cada entrada relevante del timeline debe llevar un tag #vector:<nombre>
(ej. #vector:web-sqli, #vector:ad-kerberoast). El auto-timeline.sh lo
detecta y lo prefija automáticamente, persistido en notes/.current-vector.
Para cambiar el vector activo, ejecuta un Bash no-op:
# vector:nuevo-vectorEl hook time-budget.sh usa este tag para calcular el tiempo invertido en el vector actual y avisar al cruzar 30 / 60 min.
- No lanzar más de 2 herramientas pesadas simultáneamente
- nmap siempre con -T3 (nunca -T4 o -T5 en targets reales)
- nuclei con rate-limit 3-5 y bulk-size 25
- feroxbuster/gobuster/ffuf con máximo 10 threads
- Sub-agentes máximo 2-3 (más causan fallos de compaction)
- Si load average > 6, pausar scans automáticos
- Verificar con
uptimeantes de lanzar herramientas pesadas - En VPS/containers limitados: rate-limit más agresivo
- Limitar outputs: head -10000 en pipes largos
- Comprimir logs antiguos: tar -czf old_scans_$(date +%Y%m%d).tar.gz
- Limpiar temporales cada 24h
- SessionStart → session-context.sh (carga contexto del proyecto y playbooks)
- PreToolUse → block-dangerous.sh (bloquea comandos destructivos)
- PreToolUse → scope-check.sh (bloquea peticiones fuera de scope en proyectos BB)
- PreToolUse → evidence-gate.sh (bloquea reportes sin evidencia mínima)
- PreToolUse → report-gate.sh (bloquea Write report*.md si falta proof.ok)
- PostToolUse → auto-timeline.sh (auto-log de Bash en timeline.md, prefija #vector:)
- PostToolUse → time-budget.sh (avisa >30/>60 min en el mismo #vector)
- PreCompact → pre-compact-backup.sh (backup de notes/ antes de compaction)