NexusGrab 2.0: L'Evoluzione del Download Manager Flat-File
Architettura moderna, interfaccia Dark Glassmorphism e sicurezza Enterprise a prova di OWASP ZAP
> Autore: Mylab76
> Portale Ufficiale: https://mylab76.net/
> Progetto & Download: https://mylab76.net/codehub/
> Versione: 2.0
> Licenza: Open Source (MIT)
---
1. Introduzione: La Visione Dietro NexusGrab
Nel panorama moderno dello sviluppo web, la maggior parte delle piattaforme di condivisione e gestione file richiede complesse configurazioni di database relazionali (MySQL, PostgreSQL), librerie pesanti e architetture cloud spesso sovradimensionate.
NexusGrab nasce con un obiettivo radicalmente diverso: offrire un sistema di archiviazione, catalogazione e download rapido, snello ed estremamente performante basato su un'architettura Flat-File (PHP + JSON). Nessun database da configurare, zero tabelle MySQL da importare, nessuna migrazione complessa: basta caricare l'applicazione su qualsiasi web server PHP standard (Apache, Nginx, IIS) per avere immediatamente a disposizione un archivio file cloud autonomo, elegante e sicuro.
Con il rilascio della Versione 2.0, NexusGrab compie un salto generazionale: l'esperienza utente è stata completamente ripensata con un design dark glassmorphism di classe enterprise, mentre il motore applicativo è stato sottoposto a un'intensa opera di irrobustimento di sicurezza, validata da scansioni approfondite con lo strumento di analisi vulnerabilità OWASP ZAP.
---
2. Cosa C'è di Nuovo in NexusGrab 2.0: Il Confronto con la Versione Precedente
La versione 2.0 non è un semplice restyling grafico, ma una revisione strutturale che interessa estetica, usabilità e robustezza del codice.
| Ambito | Versione Precedente (v1.x) | Nuova Versione 2.0 |
|---|---|---|
| Interfaccia Grafica (UI) | Stile Bootstrap predefinito, contrasto non ottimizzato, layout statico | Modern Dark Glassmorphism, font Inter, effetti glass, palette calibrata e totale reattività mobile |
| Identificazione File | Icone generiche o basate su FontAwesome standard | Loghi ufficiali dedicati per ciascun formato (PDF, Word, Excel, ZIP/RAR, video, audio, immagini, codice) |
| Navigazione & Ricerca | Ricaricamento pagina a ogni filtro | Ricerca istantanea live senza ricaricare la pagina, ordinamento per nome, data e dimensione |
| Gestione Cookie | Cookie fittizi nel testo della policy, banner generico | Cookie tecnici reali (PHPSESSID), memorizzazione preferenze in localStorage, zero tracciatori |
| Architettura di Sicurezza | Sessioni PHP predefinite, assenza di token CSRF nei form | Modulo centralizzato config/security.php, token anti-CSRF crittografici, header HTTP difensivi |
| Protezione CDN | Risorse esterne caricate senza verifica integrità | Subresource Integrity (SRI) con hash SHA-384 su tutti i file CSS e JS di terze parti |
| Pagine di Errore | Pagine di errore standard di Apache (rischio information leakage) | 6 Pagine di errore coordinate (401, 403, 404, 500, 503) nello stile dark dell'app |
| Verifica di Sicurezza | Controllo manuale | Dashboard dinamica audit.php con scansione real-time e 100% di conformità OWASP |
---
3. L'Interfaccia Dark Glassmorphism: Bellezza e UsabilitÃ
Uno dei punti di forza di NexusGrab 2.0 è la cura riposta nell'interfaccia utente.
🎨 Design System
L'applicazione adotta una palette scura sofisticata basata su toni ardesia e blu notte (#080c16, #0e1525, #141c2d), valorizzata da gradienti radiali discreti e accenti vivaci (azzurro cyan, smeraldo, ambra e viola). L'adozione del font Inter garantisce una leggibilità perfetta su schermi desktop ad alta risoluzione e su dispositivi mobili.
📠Icone Ufficiali dei Formati File
Ogni risorsa presente nell'archivio viene identificata da un badge iconico personalizzato ad alta definizione:- Documenti: PDF ufficiali, fogli di calcolo Excel (
.xlsx,.csv), documenti Word (.docx), file di testo (.txt). - Archivi compressi: ZIP, RAR, 7Z, TAR, GZ.
- Sviluppo & Codice: JSON, SQL, PHP, HTML, CSS, JavaScript, Markdown, Python, C++, Java, Shell.
- Multimediali: immagini (PNG, JPG, WebP, SVG) e file video/audio con anteprime proporzionate.
âš¡ Navigazione ad Albero e Ricerca Istantanea
Attraverso la vista
browse.php, l'utente può esplorare la struttura ad albero delle cartelle con percorsi breadcrumb dinamici. La ricerca integrata in JavaScript filtra i file in tempo reale man mano che l'utente digita, consentendo l'individuazione immediata dei documenti all'interno di archivi con migliaia di voci.
---
4. La Ristrutturazione della Sicurezza: Allineamento agli Standard OWASP
La sicurezza ha rappresentato il fulcro dello sviluppo della versione 2.0. Attraverso una scansione condotta con OWASP ZAP (Checkmarx), sono state individuate e corrette 4 vulnerabilità di rischio medio e 5 di rischio basso, raggiungendo il traguardo del 100% di conformità applicativa.
ðŸ›¡ï¸ 1. Protezione Anti-CSRF (Cross-Site Request Forgery) a 360 Gradi
- Problema: Nelle versioni precedenti, i form di autenticazione e le chiamate di manipolazione del filesystem non verificavano l'origine della richiesta, esponendo l'amministratore a potenziali attacchi cross-site.
random_bytes(32). Tutte le operazioni di scrittura (login admin, cambio password, upload file, creazione cartelle, ridenominazione, eliminazione, chiamate AJAX) convalidano il token mediante la funzione hash_equals(), immune da attacchi basati sui tempi di esecuzione (timing attacks). All'accesso riuscito dell'amministratore, l'ID di sessione viene contestualmente rigenerato (session_regenerate_id(true)) per scongiurare il rischio di Session Fixation*.
🪠2. Sessioni e Cookie Blindati (HttpOnly, SameSite, Secure)
- Problema: I cookie di sessione non protetti potevano essere intercettati tramite JavaScript in caso di XSS o inviati in richieste esterne.
- Soluzione v2.0: Il modulo
config/security.phpe le direttive del server Apache in.htaccessconfigurano obbligatoriamente:
HttpOnly = true: impedisce a qualunque script lato client di accedere a document.cookie.
* SameSite = 'Lax': blocca la trasmissione del cookie in chiamate cross-site non sicure.
* Secure = true: garantisce che il cookie transiti unicamente su canali crittografati HTTPS.
🌠3. Header HTTP Difensivi a Doppio Livello
NexusGrab 2.0 applica una strategia difensiva sia a livello di configurazione web server (.htaccess con mod_headers) sia con fallback applicativo PHP (sendSecurityHeaders()):
- Content-Security-Policy (CSP): restringe rigidamente le sorgenti autorizzate per script, stili, font e connessioni esterne.
- X-Content-Type-Options:
nosniff: inibisce l'interpretazione MIME errata di file malevoli mascherati da file multimediali o di testo.
SAMEORIGIN: neutralizza gli attacchi di Clickjacking* vietando l'inclusione di NexusGrab all'interno di iframe su domini esterni.
- Referrer-Policy:
strict-origin-when-cross-origin: protegge la riservatezza degli URL interni durante la navigazione verso l'esterno. - Permissions-Policy: disabilita le API hardware sensibili del client non necessarie (geolocalizzazione, fotocamera, microfono).
🔒 4. Subresource Integrity (SRI) sulle CDN Esterne
Per proteggere gli utenti da attacchi alla catena di fornitura (Supply Chain Attacks), ogni libreria ospitata su CDN terze (Bootstrap 5.3 su jsDelivr e FontAwesome 6.4 su Cloudflare) include il rispettivo hash crittografico SHA-384 (
integrity) e la direttiva crossorigin="anonymous". In caso di manomissione o alterazione del file remoto, il browser ne blocca istantaneamente l'esecuzione.
📠5. Protezione Nativa da Path Traversal e Isolamento Filesystem
Tutti i percorsi richiesti per la visualizzazione o il download dei file transitano attraverso due filtri di sicurezza dedicati:sanitizeRelativePath(): rimuove caratteri null byte (chr(0)), normalizza i separatori slash e blocca qualsiasi sequenza di risalita percorso (../).isPathWithinBase(): confronta tramiterealpath()il percorso di destinazione con la directory di upload consentita (uploads/), respingendo ogni richiesta che tenti di accedere al filesystem al di fuori del perimetro autorizzato.- Vengono inoltre ignorati e nascosti in automatico metadati e file speciali di sistema, come le cartelle
@eaDirgenerate dai NAS Synology e i file nascosti (.DS_Store,Thumbs.db).
5. La Dashboard Dinamica di Sicurezza: audit.php
Una novità esclusiva di NexusGrab 2.0 è la presenza di uno strumento di autodiagnosi dinamica integrato nella root del progetto: audit.php.
Aprendo la pagina nel browser, l'applicazione esegue un'analisi in tempo reale dei propri file sorgente e delle configurazioni del server web, verificando voce per voce:
- Presenza e corretta impostazione dei cookie sicuri (
HttpOnly,SameSite); - Configurazione degli header di sicurezza Apache e PHP (CSP, nosniff, anti-clickjacking);
- Presenza dei token anti-CSRF in tutti i form e controller;
- Implementazione degli hash SRI su tutte le risorse esterne;
- Pagine di errore personalizzate configurate e funzionanti;
- Regole di sicurezza del file
.htaccess.
---
6. Privacy, Trasparenza e Approccio Privacy by Design
NexusGrab 2.0 sposa pienamente i principi di Minimizzazione dei Dati del Regolamento Europeo GDPR (Reg. UE 2016/679):
1. Nessun Dato Personale Richiesto: I visitatori consultano le cartelle e scaricano i file in modo assolutamente libero e anonimo. Non sono presenti form di registrazione, moduli di cattura email o procedure di iscrizione obbligatoria.
2. Statistiche Puramente Aggregate: Il contatore dei download registrato per ciascun file è un semplice intero numerico incrementato nel file data/files.json. Non viene effettuata alcuna associazione tra i download e gli indirizzi IP dei visitatori.
3. Zero Profilazione Commerciale: L'applicazione non include tracker pubblicitari, pixel di conversione social o cookie di terze parti. L'unico cookie utilizzato è il cookie tecnico essenziale PHPSESSID, accompagnato da una chiave tecnica nel localStorage del browser per memorizzare la presa visione dell'informativa cookie.
4. Pagine Legali Dedicate e Chiare: Le pagine [cookie-policy.php](cookie-policy.php), [termini-servizio.php](termini-servizio.php) e [privacy-policy.php](privacy-policy.php) sono state riscritte integralmente per fornire all'utente un quadro onesto, trasparente e privo di clausole ambigue.
---
7. Requisiti di Sistema e Installazione Rapida
L'assenza di dipendenze complesse rende NexusGrab compatibile con la quasi totalità degli ambienti di hosting PHP:
- Web Server: Apache 2.4+ (con moduli
mod_rewriteemod_headers), Nginx o IIS. - PHP: Versione 7.4, 8.0, 8.1, 8.2, 8.3 o superiore.
- Estensioni PHP:
json,session,fileinfo(abilitate per impostazione predefinita in quasi tutti i server). - Database SQL: Nessuno (architettura autonoma flat-file).
🚀 Come Iniziare in 3 Passaggi:
1. Carica i file nella cartella pubblica del tuo server web.
2. Assicurati che le cartelle
uploads/, data/ e config/ abbiano permessi di scrittura corretti (CHMOD 755 o 775).3. Visita nel browser l'indirizzo
http://tuosito.com/setup.php per configurare le credenziali amministrative con hash crittografico sicuro.
---
8. Conclusioni e Risorse
Con la versione 2.0, NexusGrab si afferma come uno strumento indispensabile per professionisti, sviluppatori, aziende e appassionati che desiderano condividere file e documenti in rete senza la complessità e le vulnerabilità tipiche dei sistemi basati su database pesanti.
La combinazione di un design contemporaneo ad alto contrasto, la reattività del motore flat-file e una solida architettura difensiva a prova di vulnerabilità OWASP fanno di questa release il punto di riferimento per la gestione e il download sicuro di contenuti digitali.
- Sviluppato da: Mylab76
- Per Informazioni, Documentazione e Download: https://mylab76.net/codehub/
- Licenza: [MIT License](LICENSE)
Commenti e Feedback (0)
Devi aver effettuato l'accesso per poter scrivere un commento su questo progetto.
Accedi al tuo Account oppure Registrati