Sophos Firewall: bit TCP riservato non valido causato da Accurate ECN
Se Sophos Firewall scarta traffico TCP legittimo con Invalid TCP reserved bit, la causa può essere Accurate ECN. Una regola Allow aggiuntiva o un’eccezione nel filtro Web non risolvono il problema in questo caso, perché il drop avviene già durante la validazione TCP rigorosa.
Sophos indica come workaround la disattivazione globale di strict-policy. Questa modifica deve essere eseguita soltanto dopo aver ottenuto una prova chiara: si applica all’intero firewall e non attenua il controllo unicamente per il flusso interessato.
Identificare l’errore in modo inequivocabile
Il workaround è appropriato solo se si verificano tutte le condizioni seguenti:
- Una specifica connessione TCP fallisce in modo riproducibile o non viene stabilita.
- Log Viewer o Packet Capture mostra Invalid TCP reserved bit come motivo del drop.
- La regola firewall, NAT e il routing corrispondono al percorso previsto del traffico.
- Una regola Allow ampia non modifica il comportamento.
- La cattura dei pacchetti mostra il bit TCP riservato riutilizzato che Sophos denomina
NS. Anche ECE e CWR possono essere impostati, ma da soli non dimostrano in modo inequivocabile la presenza di Accurate ECN.
Per il primo test, filtrare in Log viewer > Firewall per IP sorgente, IP di destinazione e ora, includendo anche Invalid Traffic. Registrare quindi un solo tentativo di connessione in Diagnostics > Packet capture. La procedura generale è descritta in Analizzare i pacchetti scartati su Sophos Firewall.
Se manca il motivo specifico del drop, strict-policy non deve essere disattivato per precauzione. Prima occorre testare la regola firewall, NAT e il flusso dei pacchetti.
Perché Accurate ECN viene identificato come non valido
Explicit Congestion Notification, o ECN, segnala una congestione senza scartare un pacchetto al solo scopo di comunicarla. Accurate ECN estende questo meccanismo, riutilizza il bit NS riservato e lo combina con ECE e CWR per fornire un feedback più preciso.
Sophos indica in NC-169842 che la validazione rigorosa dei pacchetti può interpretare il bit NS utilizzato a questo scopo come un bit TCP riservato impostato e scartare il traffico. Nel log compare quindi Invalid TCP reserved bit, anche se il mittente utilizza i bit per Accurate ECN.
L’attuale elenco Sophos Known Issues identifica SFOS 21.5.0 GA Build 171 come versione interessata e non riporta ancora una versione correttiva. Se lo stesso comportamento si verifica su un’altra versione di SFOS, è necessario aprire un caso di supporto allegando la cattura dei pacchetti e l’estratto del log, senza presumere che tale versione sia interessata.
Controllare Strict Policy
I comandi devono essere eseguiti al prompt console> della Device Console, non nell’Advanced Shell:
- Accedere al firewall tramite SSH o dalla console locale.
- Nel menu principale selezionare 4. Device Console.
- Visualizzare lo stato attuale:
show advanced-firewall
Cercare questa riga nell’output:
Strict Policy : on
L’output completo contiene altri parametri globali del firewall. Questi non devono essere modificati per il test. Se l’accesso non è ancora configurato, consultare Connettersi a Sophos Firewall tramite SSH.
Testare il workaround in modo controllato
⚠️ Effetto sulla sicurezza:
strict-policy offdisattiva globalmente la validazione rigorosa dei pacchetti. Sophos Firewall non respinge più, mediante questo controllo, determinati pattern di pacchetti insoliti o potenzialmente dannosi. Il comando non crea un’eccezione per un singolo indirizzo IP, dominio o regola firewall.
Prima della modifica, salvare uno stato aggiornato della configurazione, documentare il caso di test interessato e pianificare una finestra di manutenzione. Eseguire quindi:
set advanced-firewall strict-policy off
Controllare il nuovo stato:
show advanced-firewall
Riga prevista:
Strict Policy : off
A questo punto, ripetere il test esclusivamente sul flusso di traffico documentato in precedenza. Se funziona immediatamente e il motivo del drop Invalid TCP reserved bit scompare, il collegamento con Strict Policy è dimostrato.
Se l’errore rimane invariato, riattivare immediatamente strict-policy. La causa si trova quindi probabilmente in un altro punto del flusso dei pacchetti.
Riattivare Strict Policy
Il comando per ripristinare l’impostazione è:
set advanced-firewall strict-policy on
Usare quindi nuovamente show advanced-firewall per verificare che venga visualizzato Strict Policy : on e controllare il traffico normale.
Anche se il workaround funziona, strict-policy off non deve diventare uno stato permanente senza una valutazione. L’ordine da preferire è:
- Verificare se il mittente, il sistema operativo, l’applicazione o il servizio a monte può disattivare Accurate ECN o negoziarlo in modo diverso.
- Controllare le versioni di manutenzione SFOS correnti e l’elenco Sophos Known Issues per verificare la presenza di una versione correttiva.
- Coinvolgere Sophos Support fornendo versione SFOS, timestamp, sorgente e destinazione, motivo del drop e Packet Capture.
- Solo se non è possibile adottare una soluzione più specifica, mantenere la modifica globale dopo aver accettato il rischio e documentato il monitoraggio e la procedura di ripristino.
Le prove necessarie possono essere raccolte con Salvare i log di Sophos Firewall per un caso di supporto.
Cosa non risolve il problema
- Una regola firewall più ampia: La validazione TCP rigorosa non è normale matching delle regole.
- Eccezioni Web o TLS: Il drop può avvenire prima dell’elaborazione da parte di queste policy.
- Un’eccezione IPS per precauzione: Per
NC-169842, Sophos indica esplicitamente Strict Policy come causa e workaround. - La disattivazione globale senza una baseline: Senza un test prima-dopo riproducibile, non è dimostrato che Accurate ECN fosse la causa.