← Torna al blog

Siti Statici vs. Dinamici: Quale e Piu Sicuro?

L'Architettura Determina la Sicurezza

Quando la maggior parte delle persone pensa alla sicurezza dei siti web, pensa a firewall, crittografia e password. Questi sono importanti, ma sono difese superficiali. La decisione piu impattante per la sicurezza del vostro sito viene presa molto prima che qualcuno configuri un firewall: e la decisione architetturale.

Un sito dinamico (WordPress, Drupal, applicazioni PHP/Node.js personalizzate) esegue codice lato server a ogni richiesta. Si connette a un database. Ha un pannello admin. Elabora input dell'utente. Ognuna di queste capacita e anche un vettore d'attacco. Un sito statico non ha nessuno di questi componenti. E' una collezione di file HTML, CSS e JavaScript pre-costruiti serviti direttamente da un CDN.

Comprendere la Superficie d'Attacco

Superficie d'Attacco di un Sito Dinamico

ComponenteVettori d'AttaccoLivello di Rischio
Runtime PHPEsecuzione remota di codice, inclusione file, deserializzazioneCritico
Database MySQLSQL injection, esfiltrazione dati, escalation privilegiCritico
Pannello wp-adminBrute force, credential stuffing, session hijackingAlto
Codice pluginTutti i precedenti, piu compromissione supply chainCritico
Codice temaXSS, template injection, bypass upload fileMedio-Alto
Upload fileUpload shell, directory traversalAlto

Sono sei categorie di attacco distinte. Abbiamo trattato molte di queste nel nostro articolo sulle vulnerabilita di WordPress nel 2025.

Superficie d'Attacco di un Sito Statico

ComponenteVettori d'AttaccoLivello di Rischio
File HTML/CSS/JSXSS (se contenuto generato dall'utente e incluso al build)Basso
Configurazione CDNCache poisoning, header mal configuratiBasso
Pipeline di buildCompromissione supply chainMedio
DNSDNS hijacking, subdomain takeoverMedio

Quattro categorie, la maggior parte a basso rischio. La riduzione netta e enorme.

Classi di Vulnerabilita Eliminate dai Siti Statici

SQL Injection: Eliminata

La SQL injection e costantemente classificata nella OWASP Top 10. Con un sito statico, non c'e database in cui iniettare. La classe di vulnerabilita semplicemente non esiste. Nessun database significa nessun SELECT * FROM users WHERE id = ' OR 1=1 --.

Esecuzione Remota di Codice: Eliminata

Le vulnerabilita RCE permettono a un attaccante di eseguire codice arbitrario sul server. Con un sito statico, non c'e runtime lato server che elabora le richieste. Il CDN serve file, nient'altro.

SSRF (Server-Side Request Forgery): Eliminata

Gli attacchi SSRF ingannano un server per fare richieste a risorse interne. Senza codice lato server, non c'e nulla da ingannare.

Bypass dell'Autenticazione: Eliminato

Se il sito non ha un pannello admin, non c'e autenticazione da bypassare. Nessuna pagina di login significa nessun attacco brute force, nessun credential stuffing, nessun session hijacking. Discutiamo i rischi specifici nel nostro articolo sulle pagine admin esposte.

Vulnerabilita di Upload File: Eliminate

I siti statici non accettano upload di file a livello di server.

Cosa i Siti Statici Non Possono Fare (E le Soluzioni)

Autenticazione Utenti

  • Servizi auth di terze parti: Auth0, Firebase Auth, Clerk gestiscono l'autenticazione in modo sicuro.
  • Funzioni serverless: Cloudflare Workers, AWS Lambda o Netlify Functions aggiungono endpoint lato server mirati.

Contenuto Dinamico

  • JavaScript lato client: Per dataset piccoli, carica i dati come JSON e filtra nel browser.
  • API esterne: Chiama servizi API dedicati dal JavaScript lato client.
  • Incremental Static Regeneration: Alcuni framework supportano la rigenerazione di pagine individuali a intervalli definiti.

Gestione Contenuti

  • CMS basato su Git: Decap CMS, Tina CMS permettono modifiche tramite interfaccia web che effettua commit su Git.
  • CMS basato su API: Contentful, Sanity, Strapi forniscono un'interfaccia di editing. Il contenuto viene consegnato via API.

L'intuizione chiave e che il CMS (l'interfaccia di editing) e separato dal sito web. Anche se il CMS ha una vulnerabilita, il sito pubblico rimane statico e sicuro.

L'Architettura Jamstack

Jamstack (JavaScript, API, Markup) e il pattern architetturale che formalizza l'approccio statico per lo sviluppo web moderno. I principi fondamentali sono:

  1. Pre-rendering: Le pagine sono generate al momento del build, non a ogni richiesta.
  2. Disaccoppiamento: Il frontend e separato dai servizi backend.
  3. CDN-first: Gli asset statici sono distribuiti globalmente tramite CDN.

Per un'esplorazione piu approfondita delle scelte architetturali web moderne, consultate il nostro articolo sull'architettura web moderna.

Distribuzione CDN: Sicurezza Attraverso l'Architettura

Resilienza DDoS

I siti dinamici sono vulnerabili agli attacchi DDoS perche ogni richiesta richiede elaborazione lato server. I siti statici serviti da un CDN distribuiscono il carico su centinaia di edge node nel mondo. I principali provider CDN hanno mitigazione DDoS integrata a livello di rete.

HTTPS per Default

Tutte le principali piattaforme CDN/hosting (Cloudflare Pages, Netlify, Vercel) forniscono certificati TLS gratuiti e rinnovati automaticamente. HTTPS non e un add-on; e il default.

Confronto Costi

FattoreDinamico (WordPress)Statico (Jamstack)
Hosting10-50 CHF/mese (condiviso) a 100+ CHF/mese0-20 CHF/mese (spesso gratuito)
Certificato SSL0-100 CHF/anno0 CHF (automatico, incluso)
CDN20-200 CHF/mese (servizio aggiuntivo)0 CHF (incluso per default)
Plugin sicurezza/WAF100-300 CHF/annoNon necessario
Manutenzione aggiornamenti2-5 ore/meseQuasi zero

Quando Serve Ancora il Dinamico

L'architettura statica non e la scelta giusta per tutto. Servono capacita dinamiche per: applicazioni chat in tempo reale, flussi di checkout e-commerce complessi, piattaforme con contenuti generati dagli utenti su larga scala. Anche in questi casi, si puo spesso adottare un approccio ibrido. Per un confronto tra WordPress e Jamstack, consultate il nostro articolo su WordPress vs. Jamstack.

Conclusione

L'architettura del vostro sito e la sua decisione di sicurezza piu importante. Un sito statico elimina SQL injection, esecuzione remota di codice, bypass dell'autenticazione, attacchi upload file e difetti di gestione sessioni semplicemente non avendo i componenti che questi attacchi prendono di mira.

Se state valutando l'architettura del vostro sito e volete capire le implicazioni di sicurezza dei diversi approcci, contattate il nostro team. Aiutiamo le aziende a Lugano e in tutta la Svizzera a costruire presenze web sicure per design.

Vuoi sapere se il tuo sito è sicuro?

Richiedi un audit di sicurezza gratuito. In 48 ore ricevi un report completo.

Richiedi Audit Gratuito

Contatto Rapido