Stacknigro CAPTCHA è un sistema anti-bot proprietario progettato per offrire una protezione robusta a form web, aree riservate e workflow sensibili. A differenza delle soluzioni di terze parti, è una piattaforma indipendente, leggera e totalmente controllabile lato server, concepita per integrarsi fluidamente in qualsiasi stack tecnologico (Laravel, PHP vanilla, Node.js, CMS).
L'architettura si basa su un modello a tre pilastri: un widget frontend reattivo, un set di API di orchestrazione e un protocollo di validazione server-side (siteverify) che garantisce l'integrità di ogni sottomissione.
Logica di Funzionamento
1. Frontend: Widget Embeddabile
Il componente client (widget.js) è studiato per essere minimale e non invasivo.
- Integrazione Rapida: Snippet JS leggero che si configura tramite attributi HTML (sitekey, lingua, tema).
- UI Adattiva: Caricamento dinamico dei temi (Solid/Outline) e delle varianti colore tramite CSS modulare.
- Internazionalizzazione: Supporto nativo multilingua via dizionari JSON con sistema di fallback automatico.
- State Management: Gestione autonoma del ciclo di vita della challenge e dell'invio della risposta.
2. Backend: Orchestrazione e Sessioni
Il motore lato server (init.php, image.php) gestisce l'intelligenza dietro la protezione.
- Session Binding: Creazione di sessioni CAPTCHA univoche legate alla site key del progetto.
- Security Layers: Verifica dell'origine (dominio), controllo della scadenza e protezione contro il rate-limiting.
- Challenge Dinamica: Generazione di immagini challenge in formato SVG (vettoriale) per garantire nitidezza, basse latenze e impossibilità di caching malevolo.
- Decision Engine: Il sistema valuta se richiedere un'interazione esplicita o procedere con una verifica silenziosa, ottimizzando la User Experience.
3. Validazione: Protocollo "Siteverify"
Il punto di forza è la verifica finale (siteverify.php), che avviene esclusivamente server-to-server.
- Token-based Verification: Il server di destinazione scambia il secret e il token utente con l'API Stacknigro.
- Esito Booleano: Restituisce un risultato certo e non manipolabile dal frontend per autorizzare l'azione (submit, login, ecc.).
- Integrità Totale: La decisione finale è protetta all'interno del backend, rendendo vani i tentativi di bypass via browser.
Architettura Multi-Sito e Sicurezza
Il sistema è nativamente multi-tenant, permettendo la gestione centralizzata di più istanze.
- Gestione Chiavi: Coppie univoche di Site Key (pubblica) e Secret Key (privata) per ogni applicazione.
- Domain Whitelisting: Controllo rigoroso dell'origine delle richieste per prevenire l'uso non autorizzato delle chiavi su altri domini.
- Hardening: Protezione CORS granulare, logging degli accessi per analisi abusi e configurazioni di sicurezza a livello server (
.htaccess).
Stack Tecnologico
- Frontend: Vanilla JavaScript (nessuna dipendenza esterna), CSS3 modulare.
- Backend: PHP Core (API RESTful).
- Storage: MySQL/MariaDB per la persistenza di sessioni, log e configurazioni client.
- Graphics: Generazione dinamica di asset SVG per performance e scalabilità visiva.
Valore del Progetto
Stacknigro CAPTCHA dimostra la capacità di progettare e implementare sistemi di Cybersecurity applicativa complessi. Dall'architettura multi-sito alla validazione server-side, il progetto riflette un approccio production-grade orientato alla performance, alla UX e all'indipendenza tecnologica dai grandi provider esterni.