Urgent.News

What's breaking now, across thousands of outlets.

Tech

Sessioni sicure: flash data, timeout e protezione anti-fixation

Perché la sessione e il punto più sensibile In un'applicazione web, la sessione e il legame tra il browser dell'utente e il suo stato sul server. Chi controlla la sessione controlla l'identita dell'utente. Per questo la gestione delle sessioni non e solo una questione di comodità — e una questione di sicurezza. Un cookie di sessione rubato o un ID di sessione prevedibile possono dare accesso…

Original Italian Read in English

Le sessioni nelle applicazioni web sono estremamente sensibili e richiedono una protezione approfondita. Un attaccante con accesso a una sessione rubata può acquisire il controllo completo su un account utente. Per proteggere le sessioni, il framework Soft PHP MVC utilizza la classe SessionStorage, che gestisce tutte le operazioni relative alle sessioni. L'implementazione seguente regole chiave:

Cookie hardening è un aspetto cruciale. Il costruttore configura i seguenti flag: cookie_httponly = 1 (cookie non accessibili da JavaScript), use_strict_mode = 1 (PHP rifiuta ID di sessione non inizializzati dal sever) e cookie_secure = 1 (cookie inviati solo su connessioni HTTPS). Questi controlli eliminano i pericoli XSS e session fixation.

Il lifetime e il timeout rappresentano concetti diversi. Il lifetime determina la durata massima assoluta della sessione, mentre il timeout indica il periodo di inattività dopo il quale la sessione viene invalidata. In combinazione, garantiscono che le sessioni scadano dopo un intervallo predefinito di attività inattiva.

Il pattern flash session è essenziale nelle applicazioni con redirect. Salva dati temporanei sotto la chiave _flash, che vengono letti e cancellati in un'unica richiesta dopo un submit di un form. Questo meccanismo mantiene la coerenza dello stato senza la necessità di variabili globali o parametri nell'URL.

Infine, il metodo regenerateId() previene gli attacchi session fixation. Dopo un login, rigenera l'ID della sessione per invalidare l'antico e crearne uno nuovo. Questa azione impedisce che un attaccante che possiede un ID valido possa continuare ad accedere al sistema.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

COSS Weekly: Databricks acquires Electric, Stripe reportedly acquires OpenRouter, Temporal in talks for $500M, and more

This week in COSS: Dash0 acquired Polar Signals, while Stripe reportedly reached a deal to acquire OpenRouter for more than $7 billion; Dynatrace acquired Arize, and Databricks acquired Electric.

  • Databricks acquires Electric for AI agent sandboxes
  • Stripe reportedly acquires OpenRouter for $7 billion
  • Temporal in talks for $500M round at $12B pre-money valuation

More from Thursday 20 August →