mirror of
https://github.com/CyberMind-FR/secubox-deb.git
synced 2026-07-29 15:37:03 +00:00
chore(toolbox): 2.7.0 middle release — kbin milestone + Tor chapter (ref #683)
Some checks are pending
License Headers / check (push) Waiting to run
Some checks are pending
License Headers / check (push) Waiting to run
kbin (public ToolBoX portal) framed as the first tool of the CyberMind Swiss-army cyber kit: transparent perf, full-encrypted MITM inspection, ad poison/smog injection, adware-ban banner, safe browsing. - secubox-toolbox 2.6.59 -> 2.7.0 (caps 2.6.x, opens kbin chapter) - docs: wiki Kbin-Toolbox.md, FAQ-KBIN-TOR.md, README blurb - plan #683: kbin Tor endpoint (outbound egress quick-switch) — design spec - WIP/TODO/HISTORY updated Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
1a315317e7
commit
4c6777dc68
|
|
@ -3,6 +3,27 @@
|
|||
|
||||
---
|
||||
|
||||
## 2026-06-19 — kbin milestone: ToolBoX 2.7.0 (middle release) + Tor chapter staged (#683)
|
||||
|
||||
- **End-of-session checkpoint** — docs + positioning + version, no runtime behaviour change.
|
||||
- **`secubox-toolbox` 2.6.59 → 2.7.0** (middle release) — caps the 2.6.x line
|
||||
(ad-intelligence / Anti-Track v2 / anti-bot uTLS #662) and opens the **kbin** chapter:
|
||||
kbin (`kbin.gk2.secubox.in`, the public ToolBoX portal) framed as the *first tool of the
|
||||
CyberMind Swiss-army cyber kit* — transparent performance, full-encrypted MITM inspection,
|
||||
ad poison/smog injection, adware-ban transparency banner, safe browsing.
|
||||
- **Docs** — new wiki use-case `docs/wiki/Kbin-Toolbox.md`, `docs/FAQ-KBIN-TOR.md`,
|
||||
README positioning blurb.
|
||||
- **Plan #683 (issue + spec)** — kbin **Tor endpoint**: a quick-switch re-routing consenting
|
||||
client surfing through Tor (outbound egress, pseudo-network) so the kbin exit is anonymized.
|
||||
Spec `docs/superpowers/specs/2026-06-19-kbin-tor-anonymized-surfing-design.md`. Invariants:
|
||||
inspection preserved (Tor after the forging core), fail-closed, opt-in/default-OFF, no DNS
|
||||
leak, CSPN audit-logged. Opposite direction of `secubox-exposure` (inbound hidden services);
|
||||
reuses its Tor control. Depends on the #662 Go core for the preferred SOCKS5-dialer transport.
|
||||
- **Caveat recorded** — Tor mode must force `tls_splice` (#649) OFF per-client or asset flows
|
||||
leak the real IP.
|
||||
|
||||
---
|
||||
|
||||
## 2026-06-19 — #662 anti-bot: Chrome TLS fingerprint (uTLS) — defeat DataDome without splice (PR #674)
|
||||
|
||||
- lemonde.fr (DataDome) blocked R3 navigation at the 2nd level: the engine re-origined
|
||||
|
|
|
|||
|
|
@ -1,10 +1,26 @@
|
|||
# TODO — SecuBox-DEB Backlog
|
||||
*Mis à jour : 2026-06-13*
|
||||
*Mis à jour : 2026-06-19*
|
||||
|
||||
---
|
||||
|
||||
## 🔥 P0 — Immediate (in flight)
|
||||
|
||||
### kbin Tor endpoint — anonymized quick-switch surfing (#683)
|
||||
|
||||
> Capstone du couteau suisse cyber : l'anonymat de la sortie. Spec :
|
||||
> `docs/superpowers/specs/2026-06-19-kbin-tor-anonymized-surfing-design.md`.
|
||||
> Invariants : inspection préservée, fail-closed, opt-in (défaut OFF), no DNS leak, CSPN audit.
|
||||
|
||||
- [ ] **Transport** — Option A dialer SOCKS5 upstream (cœur Go #662, *préféré*) vs
|
||||
Option B nft mark → Tor TransPort (fallback pré-#662).
|
||||
- [ ] **Profil Tor egress** — réutiliser `secubox-exposure` (bootstrap/NEWNYM), egress-only.
|
||||
- [ ] **API toolbox** — `POST /admin/tor/{on,off}` (WG-hash scoped) + `GET /tor/state` +
|
||||
`POST /tor/newnym` + état SQLite per-client (TTL 24h).
|
||||
- [ ] **UI kbin** — toggle 🧅 + badge état + flag pays de sortie + bouton « nouvelle identité ».
|
||||
- [ ] **Leak-guard nft** + DNS-over-Tor (test exit IP + resolver ≠ Unbound).
|
||||
- [ ] **`tls_splice` OFF en mode Tor** (#649) — sinon les flux asset fuient l'IP réelle.
|
||||
- [ ] **CSPN** — audit-log chaque bascule ; soak DARK (flag présent, UI cachée) avant flip.
|
||||
|
||||
### ToolBox clients (`clients/`)
|
||||
|
||||
- [x] **#531 Android scaffold + CI** — Gradle/Compose one-tap onboarding,
|
||||
|
|
|
|||
|
|
@ -1,5 +1,35 @@
|
|||
# WIP — Work In Progress
|
||||
*Mis à jour : 2026-06-18*
|
||||
*Mis à jour : 2026-06-19*
|
||||
|
||||
---
|
||||
|
||||
## 🔄 2026-06-19 : kbin milestone — ToolBoX 2.7.0 + chapitre Tor (plan)
|
||||
|
||||
Checkpoint de fin de session. Pas de changement de comportement runtime — docs +
|
||||
positionnement + version + plan de la lame suivante.
|
||||
|
||||
- ✅ **ToolBoX 2.7.0** (middle release) — clôt la ligne 2.6.x (ad-intelligence /
|
||||
Anti-Track v2 / anti-bot uTLS #662), ouvre le chapitre kbin « premier outil du
|
||||
couteau suisse cyber ». kbin = perf transparente + full encrypted + poison/smog +
|
||||
bandeau anti-adware + safe browsing.
|
||||
- ✅ **Docs kbin** — wiki [`Kbin-Toolbox.md`](../docs/wiki/Kbin-Toolbox.md),
|
||||
[`FAQ-KBIN-TOR.md`](../docs/FAQ-KBIN-TOR.md), blurb README.
|
||||
- ✅ **Plan #683** — spec
|
||||
[`2026-06-19-kbin-tor-anonymized-surfing-design.md`](../docs/superpowers/specs/2026-06-19-kbin-tor-anonymized-surfing-design.md) :
|
||||
endpoint Tor quick-switch (egress sortant, fail-closed, opt-in, no DNS leak,
|
||||
inspection préservée). Dépend du cœur Go #662.
|
||||
|
||||
### ⬜ Next Up — chapitre Tor (#683)
|
||||
|
||||
- **Décider le transport** : Option A (dialer SOCKS5 upstream via le cœur Go #662,
|
||||
*préféré*) vs Option B (nft mark → Tor TransPort, fallback pré-#662).
|
||||
- **Profil Tor egress** dans `secubox-exposure` (ou unit `tor-egress` dédié) —
|
||||
egress-only, pas de relay/hidden-service dans ce profil.
|
||||
- **API toolbox** : `POST /admin/tor/{on,off}` (par client, WG-hash), `GET /tor/state`,
|
||||
`POST /tor/newnym` + état SQLite + bandeau 🧅 UI.
|
||||
- **Leak-guard nft** + DNS-over-Tor (test : exit IP + resolver ≠ Unbound local).
|
||||
- **Caveat** : en mode Tor, forcer `tls_splice` OFF pour ce client (sinon les flux
|
||||
asset fuient l'IP réelle). Soak DARK (flag présent, UI cachée) avant flip.
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
24
README.md
24
README.md
|
|
@ -57,6 +57,30 @@
|
|||
|
||||
---
|
||||
|
||||
## 🗡️ kbin — le premier outil du couteau suisse cyber
|
||||
|
||||
**kbin** (`kbin.gk2.secubox.in`) est le portail public de la **ToolBoX** SecuBox — la
|
||||
*cabine numérique* et **première lame du couteau suisse cyber modulaire** de
|
||||
[cybermind.fr](https://cybermind.fr). On s'y branche, on surfe normalement, et la lame
|
||||
inspecte et protège le trafic de façon transparente :
|
||||
|
||||
| 🗡️ | Lame |
|
||||
|----|------|
|
||||
| ⚡ | **Performance transparente** — on ne déchiffre que ce qu'on modifie (SNI-splice sélectif) |
|
||||
| 🔒 | **Full encrypted** — inspection MITM complète, forge de cert par hôte, fingerprint Chrome uTLS |
|
||||
| ☠️ | **Injection de poison & smog** — le trafic ad-tech ressort empoisonné, pas seulement bloqué |
|
||||
| 🚫 | **Bandeau anti-adware** — transparence injectée, immune au CSP, SPA-aware |
|
||||
| 🛡️ | **Safe browsing** — Vortex DNS + blacklist nft + détection anti-bot |
|
||||
|
||||
> **Prochaine lame — 🧅 mode Tor quick-switch ([#683](https://github.com/CyberMind-FR/secubox-deb/issues/683)).**
|
||||
> Un tap → le surf ressort par le réseau Tor (egress sortant, pseudo-network) : l'inspection
|
||||
> reste intacte, seule l'**IP de sortie** devient anonyme. Fail-closed, opt-in, sans fuite DNS.
|
||||
|
||||
- Use-case : [docs/wiki/Kbin-Toolbox.md](docs/wiki/Kbin-Toolbox.md)
|
||||
- FAQ : [docs/FAQ-KBIN-TOR.md](docs/FAQ-KBIN-TOR.md)
|
||||
|
||||
---
|
||||
|
||||
## License — CyberMind Source-Disclosed (CMSD-1.0)
|
||||
|
||||
> **Source disclosed, rights reserved.**
|
||||
|
|
|
|||
93
docs/FAQ-KBIN-TOR.md
Normal file
93
docs/FAQ-KBIN-TOR.md
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
# FAQ — kbin & le mode Tor anonymisé
|
||||
|
||||
> kbin (`kbin.gk2.secubox.in`) = le portail public de la **ToolBoX** SecuBox, premier
|
||||
> outil du couteau suisse cyber CyberMind. Cette FAQ couvre le surf protégé et le futur
|
||||
> **mode Tor quick-switch** ([#683](https://github.com/CyberMind-FR/secubox-deb/issues/683)).
|
||||
|
||||
---
|
||||
|
||||
### Qu'est-ce que kbin exactement ?
|
||||
|
||||
Le portail public de `secubox-toolbox`. On rejoint l'AP libre de la cabine, on consent,
|
||||
et tout le trafic traverse le pipeline de forge MITM SecuBox : inspection chiffrée,
|
||||
nettoyage pub/tracker, bandeau de transparence, safe browsing. Voir
|
||||
[Kbin-Toolbox](wiki/Kbin-Toolbox.md).
|
||||
|
||||
### kbin voit-il tout mon trafic ? C'est pas dangereux ?
|
||||
|
||||
C'est **consenti et éphémère**. La MAC est hashée avec un sel rotatif 24 h, aucune valeur
|
||||
de cookie brute n'est persistée, aucun mapping session ↔ identité réelle ne survit au TTL.
|
||||
Trois niveaux d'opt-in : R0 (bypass complet), R1 (analyse passive, recommandé), R2/R3
|
||||
(TLS-break + bandeau). Sans consentement, **pas** de déchiffrement.
|
||||
|
||||
### « Performance transparente », ça veut dire quoi ?
|
||||
|
||||
On ne déchiffre que ce qu'on modifie. Les flux pur-asset (vidéo, images CDN) sont
|
||||
*splicés* dès le ClientHello TLS (`tls_splice`, #649) — les workers ne forgent/déchiffrent
|
||||
pas ce qui n'a aucune valeur L7. Débit ligne, latence quasi nulle.
|
||||
|
||||
### C'est quoi « l'injection de poison et de smog » ?
|
||||
|
||||
Le trafic ad-tech et tracker n'est pas seulement bloqué : il est **empoisonné**. Anti-Track
|
||||
v2 (#633) renvoie des pseudo-réponses, neutralise les scripts CDN préchargés, et au niveau
|
||||
réseau fait de l'IP-drop + DNS-refuse. Le profil publicitaire ressort pollué, pas vide —
|
||||
indistinguable d'un vrai blocage côté tracker.
|
||||
|
||||
### Le bandeau anti-adware, il bloque quoi ?
|
||||
|
||||
Une bannière de transparence injectée dans la page : nombre de trackers vus/bloqués,
|
||||
acteurs reconnus cross-site. Elle est immune au CSP et SPA-aware (#636/#639, webext #655).
|
||||
C'est l'affichage ; le blocage réel vient des blocklists Vortex DNS + blacklist nft.
|
||||
|
||||
---
|
||||
|
||||
## Mode Tor (plan #683)
|
||||
|
||||
### Le mode Tor, ça fait quoi ?
|
||||
|
||||
Un interrupteur 🧅 sur kbin : un tap → ton surf ressort **par le réseau Tor** au lieu du
|
||||
WAN de la box. IP de sortie anonyme, identité réseau masquée — du « pseudo-network
|
||||
surfing ».
|
||||
|
||||
### Est-ce que kbin arrête de m'inspecter/protéger en mode Tor ?
|
||||
|
||||
Non. Tor se place **après** le cœur de forge MITM, sur le transport upstream (dialer
|
||||
SOCKS5). Tu gardes le poison/smog, le bandeau et le safe browsing ; **seules l'IP de sortie
|
||||
et l'identité réseau changent**.
|
||||
|
||||
### Et si Tor tombe, ça repasse en clair ?
|
||||
|
||||
**Jamais.** Le design est **fail-closed** : si Tor n'est pas disponible, le trafic est
|
||||
coupé, pas renvoyé en clearnet. L'anonymat est un invariant, pas un best-effort.
|
||||
|
||||
### Y a-t-il des fuites DNS ?
|
||||
|
||||
Non. Quand le mode Tor est actif, la résolution passe **par Tor**, pas par l'Unbound local.
|
||||
|
||||
### C'est la même chose que `secubox-exposure` ?
|
||||
|
||||
Non, direction opposée. `secubox-exposure` publie des **services cachés** Tor (entrant —
|
||||
exposer un service interne). kbin Tor endpoint fait sortir ton **surf** par Tor (sortant).
|
||||
Le contrôle Tor (bootstrap, NEWNYM/nouvelle identité) est réutilisé entre les deux.
|
||||
|
||||
### Comment je change d'IP de sortie ?
|
||||
|
||||
Bouton « nouvelle identité » (NEWNYM) → nouveau circuit Tor → nouvelle IP de sortie, à la
|
||||
volée, sans reconnecter.
|
||||
|
||||
### C'est activé par défaut ?
|
||||
|
||||
Non. **Opt-in par client** (scopé WG-hash), **défaut OFF**, respecte ton niveau de
|
||||
consentement R. Chaque bascule on/off est journalisée (audit-log CSPN immuable).
|
||||
|
||||
---
|
||||
|
||||
## Voir aussi
|
||||
|
||||
- [Kbin-Toolbox](wiki/Kbin-Toolbox.md) — la page use-case complète
|
||||
- [Spec mode Tor](superpowers/specs/2026-06-19-kbin-tor-anonymized-surfing-design.md)
|
||||
- [Anti-Track](wiki/Anti-Track.md) — bloque/empoisonne/anonymise (couche DNS/IP)
|
||||
|
||||
---
|
||||
|
||||
*CyberMind — Gérald Kerma · LicenseRef-CMSD-1.0*
|
||||
|
|
@ -0,0 +1,99 @@
|
|||
# Design — kbin Tor endpoint: quick-switch anonymized web surfing
|
||||
|
||||
*Spec · 2026-06-19 · issue [#683](https://github.com/CyberMind-FR/secubox-deb/issues/683) · status: PLAN (no code yet)*
|
||||
|
||||
## Problem
|
||||
|
||||
kbin (the public ToolBoX portal, first tool of the Swiss-army cyber kit) already gives
|
||||
transparent perf + full-MITM inspection + ad poison/smog + adware-ban banner + safe
|
||||
browsing. The **egress is still clearnet**: a kbin session exits via the board WAN with the
|
||||
real IP. The capstone is **anonymity of the exit** — a quick-switch that re-routes a
|
||||
consenting client's surfing through **Tor** (outbound), turning kbin into a pseudo-network
|
||||
surfing booth.
|
||||
|
||||
This is the **opposite direction** of `secubox-exposure` (which publishes inbound Tor
|
||||
hidden services). We reuse its Tor control plumbing (bootstrap, NEWNYM) but for egress.
|
||||
|
||||
## Invariants (non-negotiable)
|
||||
|
||||
1. **Inspection preserved** — Tor sits *after* the MITM forging core, on the upstream
|
||||
transport (SOCKS5 dialer). Poison/smog + banner + safe-browsing stay; only the **exit
|
||||
IP + network identity** change.
|
||||
2. **Fail-closed** — if Tor is down/not bootstrapped, traffic is dropped, never falls back
|
||||
to clearnet. Anonymity is an invariant, not best-effort.
|
||||
3. **No DNS leak** — when Tor mode is on, resolution goes through Tor, not local Unbound.
|
||||
4. **Opt-in, default OFF** — per-client (WG-hash scoped), honors the existing R consent
|
||||
level. No silent global toggle.
|
||||
5. **CSPN** — every Tor on/off decision written to the immutable audit-log; no plaintext
|
||||
exit; TLS 1.3 floor unchanged.
|
||||
|
||||
## Two transport options (decide first)
|
||||
|
||||
| Option | Mechanism | Pros | Cons |
|
||||
|--------|-----------|------|------|
|
||||
| **A — SOCKS5 upstream dialer** (preferred) | The Go forging core (#662) dials upstream via Tor's SOCKS5 (`127.0.0.1:9050`) when the client is Tor-flagged. | Clean integration with #662; per-flow choice; cert verify + uTLS preserved; DNS-over-Tor native (SOCKS5 remote resolve). | Requires the Go core to land first (#662 dependency). |
|
||||
| **B — nft mark → Tor TransPort** | Per-client nft mark routes 80/443 to Tor `TransPort`/`DNSPort`; transparent at L3. | Engine-agnostic; works without #662. | Bypasses the forging core unless chained carefully → risk of losing inspection (violates invariant 1). |
|
||||
|
||||
**Recommendation:** Option A, gated on #662 Go core. Option B only as a pre-#662 fallback,
|
||||
and only if the mark routes *through* the MITM TPROXY first, then Tor.
|
||||
|
||||
## Components
|
||||
|
||||
- **Tor daemon** — `tor.service`, SOCKS5 `9050` + control port (cookie auth). Reuse
|
||||
`secubox-exposure` bootstrap; ensure egress-only config (no relay, no hidden service in
|
||||
this profile).
|
||||
- **toolbox API** — `POST /admin/tor/{on,off}` (per-client, kbin-gated for bulk),
|
||||
`GET /tor/state` (bootstrapped? exit country? client flag?), `POST /tor/newnym`.
|
||||
- **Go forging core (#662)** — upstream dialer switch: Tor-flagged client → SOCKS5 dialer
|
||||
(remote DNS) instead of direct. uTLS Chrome FP + manual cert verify unchanged.
|
||||
- **State store** — per-client `tor_enabled` (WG-hash scoped, TTL-bound) in the toolbox
|
||||
SQLite (`clients` table extension or a small `tor_flags` table).
|
||||
- **nft leak-guard** — when a client is Tor-flagged, a guard rule ensures no 80/443 path
|
||||
reaches the WAN except via the Tor dialer (defense-in-depth for invariant 2/3).
|
||||
- **kbin UI** — 🧅 toggle + state badge (bootstrapping / on / exit-country flag) + "new
|
||||
identity" button; respects R-level (greyed if R0).
|
||||
|
||||
## UX
|
||||
|
||||
```
|
||||
[kbin page] ── tap 🧅 ──▶ POST /admin/tor/on (this client)
|
||||
▼
|
||||
Tor bootstrapped? ──no──▶ "Tor démarre…" (spinner, fail-closed until ready)
|
||||
│yes
|
||||
▼
|
||||
flag client tor_enabled (WG-hash, TTL 24h) + audit-log
|
||||
▼
|
||||
forging core dials upstream via SOCKS5 → exit IP changes
|
||||
▼
|
||||
badge: 🧅 ON · 🌍 <exit-country flag> [Nouvelle identité]
|
||||
```
|
||||
|
||||
## Open questions (resolve next session)
|
||||
|
||||
- Per-flow vs per-session Tor? (start per-session/per-client; per-flow later)
|
||||
- Exit-country selection (`ExitNodes {cc}`) exposed to user, or auto?
|
||||
- Latency expectation messaging — Tor is slower; the perf banner must set expectations.
|
||||
- Interaction with `tls_splice` (#649): splice = direct fast-path; in Tor mode, splice
|
||||
must be disabled or also routed through Tor (else asset flows leak the real IP).
|
||||
**Likely: Tor mode forces splice OFF for that client.**
|
||||
- Interaction with Anti-Track v2 IP-drop/DNS-refuse: ordering vs Tor resolution.
|
||||
|
||||
## Dependencies & sequencing
|
||||
|
||||
1. **#662 Go core** lands the upstream dialer abstraction → enables Option A.
|
||||
2. Tor egress profile in `secubox-exposure` (or a dedicated `tor-egress` unit).
|
||||
3. toolbox API + state + UI.
|
||||
4. nft leak-guard + DNS-over-Tor verification (leak test: compare exit IP + DNS resolver).
|
||||
5. CSPN audit-log wiring + soak DARK (flag exists, UI hidden) → flip.
|
||||
|
||||
## Test plan (sketch)
|
||||
|
||||
- Leak test: with Tor mode on, `check.torproject.org` confirms Tor; DNS resolver is not the
|
||||
local Unbound; real WAN IP never observed upstream.
|
||||
- Fail-closed test: stop `tor.service` mid-session → traffic drops, no clearnet egress.
|
||||
- Inspection test: ad-block + banner + poison still fire while on Tor.
|
||||
- NEWNYM test: exit IP changes after "new identity".
|
||||
|
||||
---
|
||||
|
||||
*CyberMind — Gérald Kerma · LicenseRef-CMSD-1.0*
|
||||
94
docs/wiki/Kbin-Toolbox.md
Normal file
94
docs/wiki/Kbin-Toolbox.md
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
# kbin — ToolBoX, le premier outil du couteau suisse cyber
|
||||
|
||||
**CyberMind · Gondwana · Notre-Dame-du-Cruet · Savoie** | [Home](Home) | [Anti-Track](Anti-Track) | [Modules](Modules)
|
||||
|
||||
> **kbin** (`kbin.gk2.secubox.in`) est le portail public de la **ToolBoX** SecuBox —
|
||||
> la *cabine téléphonique numérique*. C'est le **premier outil du couteau suisse cyber
|
||||
> modulaire** de [cybermind.fr](https://cybermind.fr) : on s'y connecte, on surfe, et la
|
||||
> lame inspecte, nettoie et protège le trafic de façon transparente.
|
||||
|
||||
---
|
||||
|
||||
## Le concept en une phrase
|
||||
|
||||
> **Branche-toi, navigue normalement — kbin rend ta session rapide, chiffrée, sans pub
|
||||
> et bientôt anonyme.**
|
||||
|
||||
kbin est la face publique du module [`secubox-toolbox`](../../packages/secubox-toolbox/).
|
||||
Le client rejoint l'AP libre, consent (R1 passif / R2 TLS-break), et tout son trafic
|
||||
traverse le pipeline de forge MITM SecuBox — sans configuration, sans app obligatoire.
|
||||
|
||||
---
|
||||
|
||||
## Les 5 lames déjà affûtées
|
||||
|
||||
| 🗡️ Lame | Ce qu'elle fait | Implémentation |
|
||||
|---------|-----------------|----------------|
|
||||
| **⚡ Performance transparente** | Débit ligne, latence quasi nulle ; on ne déchiffre que ce qu'on modifie (SNI-splice sélectif des flux pur-asset). | `tls_splice` addon (#649), workers R3 |
|
||||
| **🔒 Full encrypted** | Inspection MITM complète sur HTTPS sortant : forge de cert par hôte, chaîne de certs vérifiée, fingerprint Chrome (uTLS) côté upstream. | Go forging core (#662), uTLS HelloChrome |
|
||||
| **☠️ Injection de poison & smog** | Le trafic ad-tech / tracker entre dans la chambre d'inspection et ressort empoisonné/embrumé : pseudo-réponses, scripts neutralisés, IP-drop + DNS-refuse. | Anti-Track v2 (#633), `privacy_guard`, ad-ghoster |
|
||||
| **🚫 Bandeau anti-adware** | Bannière de transparence injectée dans la page : « tu as été pisté / X trackers bloqués », immune au CSP, SPA-aware. | banner saga (#636/#639), webext (#655) |
|
||||
| **🛡️ Safe browsing** | Blocklists Vortex DNS, blacklist nft (CrowdSec + threat-intel), détection anti-bot/challenge passive. | Phase 13 enforcement plane, Vortex Unbound |
|
||||
|
||||
---
|
||||
|
||||
## La lame suivante : 🧅 Tor quick-switch (plan #683)
|
||||
|
||||
C'est la **pointe manquante** : l'anonymat de la sortie.
|
||||
|
||||
Aujourd'hui kbin voit, nettoie et protège — mais le trafic ressort par le WAN de la box,
|
||||
avec l'IP réelle. Le **endpoint Tor** ajoute un interrupteur :
|
||||
|
||||
> **Un tap sur kbin → 🧅 « Mode Tor »** → le surf du client ressort **par le réseau Tor**
|
||||
> au lieu du WAN. Pseudo-réseau, IP de sortie anonyme, identité réseau masquée.
|
||||
|
||||
Invariants de conception (voir
|
||||
[spec](../superpowers/specs/2026-06-19-kbin-tor-anonymized-surfing-design.md)) :
|
||||
|
||||
- **L'inspection reste intacte** — Tor se place *après* le cœur de forge MITM, sur le
|
||||
transport upstream (dialer SOCKS5). On garde poison/smog + bandeau + safe browsing ;
|
||||
seules **l'IP de sortie et l'identité réseau** changent.
|
||||
- **Opt-in par client** (scopé WG-hash), **défaut OFF**, respecte le niveau de consentement R.
|
||||
- **Fail-closed** — si Tor tombe, **pas** de repli clearnet (l'anonymat est un invariant,
|
||||
pas un best-effort).
|
||||
- **Pas de fuite DNS** — résolution via Tor quand le mode est actif, pas via l'Unbound local.
|
||||
- **CSPN** — chaque bascule Tor on/off est journalisée (audit-log immuable) ; aucune sortie
|
||||
en clair.
|
||||
|
||||
### Cas d'usage
|
||||
|
||||
1. **Cabine VILLAGE3B** — un visiteur veut consulter un site sensible (santé, juridique,
|
||||
presse) depuis la borne publique sans laisser l'IP de la box. Tap 🧅 → surf anonyme.
|
||||
2. **Pseudo-network surfing** — naviguer comme depuis un autre pays / une autre identité
|
||||
réseau, le temps d'une session éphémère 24h.
|
||||
3. **Renouvellement de circuit** — bouton « nouvelle identité » (NEWNYM) pour changer
|
||||
d'IP de sortie à la volée.
|
||||
|
||||
> Direction **opposée** à `secubox-exposure` : celui-ci publie des *services cachés* Tor
|
||||
> (entrant) ; kbin Tor endpoint fait sortir le surf client *par* Tor (sortant).
|
||||
|
||||
---
|
||||
|
||||
## Où ça vit
|
||||
|
||||
| Élément | Emplacement |
|
||||
|---------|-------------|
|
||||
| Portail public | `kbin.gk2.secubox.in` → HAProxy → `toolbox_landing` → `10.99.0.1:8088` |
|
||||
| Tableau opérateur | `admin.gk2.secubox.in/toolbox/` |
|
||||
| Vue carto perso | `kbin.gk2.secubox.in/social/me` |
|
||||
| Module | [`packages/secubox-toolbox/`](../../packages/secubox-toolbox/) |
|
||||
| Canal Tor (réutilisé) | [`packages/secubox-exposure/`](../../packages/secubox-exposure/) |
|
||||
|
||||
---
|
||||
|
||||
## Voir aussi
|
||||
|
||||
- [Anti-Track](Anti-Track) — moteur bloque/empoisonne/anonymise (couche DNS/IP)
|
||||
- [FAQ kbin & Tor](../FAQ-KBIN-TOR.md)
|
||||
- Punk Exposure Engine — canal Tor, doctrine dans `CLAUDE.md`
|
||||
- Epic [#662](https://github.com/CyberMind-FR/secubox-deb/issues/662) — migration cœur MITM (Go)
|
||||
- Plan [#683](https://github.com/CyberMind-FR/secubox-deb/issues/683) — kbin Tor endpoint
|
||||
|
||||
---
|
||||
|
||||
*CyberMind — Gérald Kerma · LicenseRef-CMSD-1.0*
|
||||
|
|
@ -1,3 +1,19 @@
|
|||
secubox-toolbox (2.7.0-1~bookworm1) bookworm; urgency=medium
|
||||
|
||||
* MIDDLE RELEASE — caps the 2.6.x line (ad-intelligence / Anti-Track v2 /
|
||||
anti-bot uTLS) and opens the kbin "first tool of the Swiss-army cyber kit"
|
||||
chapter. kbin now delivers: transparent performance, full-MITM encrypted
|
||||
inspection, ad poison/smog injection, the adware-ban transparency banner,
|
||||
and safe browsing.
|
||||
* docs: kbin use-case consolidated — wiki `Kbin-Toolbox.md`, `FAQ-KBIN-TOR.md`,
|
||||
README positioning blurb.
|
||||
* plan(#683): next chapter staged — kbin Tor endpoint, a quick-switch that
|
||||
re-routes consenting client surfing through Tor (outbound egress, pseudo-
|
||||
network) so the kbin exit is anonymized. Design spec landed; no behaviour
|
||||
change yet (default OFF, fail-closed by design).
|
||||
|
||||
-- Gerald KERMA <devel@cybermind.fr> Fri, 19 Jun 2026 11:00:00 +0200
|
||||
|
||||
secubox-toolbox (2.6.59-1~bookworm1) bookworm; urgency=medium
|
||||
|
||||
* ui: cap all admin dashboard lists to top-5 shown — #filtres bypass hosts,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user