Che cos'è un socket raw?
Un socket di rete è un endpoint per lo scambio di dati in una rete. Pensa a un socket come a un indirizzo fisico: le informazioni che passano attraverso la rete del computer vengono indirizzate a un socket specifico nel computer stesso. Un socket non elaborato è un tipo di socket di rete che consente a un'applicazione software sul computer di inviare e ottenere pacchetti di informazioni dalla rete senza utilizzare il sistema operativo del computer come intermediario. In altre parole, consente la comunicazione diretta tra un programma e una fonte esterna senza l'intervento del sistema operativo principale del computer.
Il vantaggio principale dell'utilizzo della gestione della rete raw socket è che elimina l'intermediario. Poiché il sistema operativo non gestisce i dati in modo specifico, riduce i costi generali sulla rete, salvando i cicli dell'unità di elaborazione centrale (CPU) e diminuendo lo stress sull'hardware del sistema. Un socket non elaborato fornisce un tunnel espresso tra un'applicazione e una fonte esterna. Né il sistema operativo né alcun altro programma sul computer ha la capacità di interferire con una connessione non elaborata.
Le interfacce di rete di socket non elaborate presentano un aspetto negativo. anche se. Gli hacker usano comunemente connessioni socket non elaborate per mettere in scena attacchi di protocollo di controllo di trasmissione (TCP) su una rete. Durante un attacco TCP, un hacker invia un bit forgiato di dati sulla rete attraverso una connessione socket non elaborata. Questi dati falsi contengono un segnale di ripristino per la connessione TCP, che a sua volta interrompe e blocca le connessioni di rete correnti sul computer.
Per questo motivo, alcuni sistemi operativi hanno ritirato il supporto per socket non elaborati. La logica di ciò è che può aiutare a garantire la sicurezza della rete. Le società di software possono limitare la capacità degli utenti di utilizzare socket non elaborati utilizzando quello che viene chiamato "hotfix", un aggiornamento permanente del sistema operativo. Questi aggiornamenti non hanno avuto un impatto negativo significativo sull'esperienza dell'utente, poiché i vantaggi dei socket grezzi sono diminuiti con il miglioramento della tecnologia.
Per i computer moderni, la quantità di elaborazione aggiuntiva richiesta per gestire le normali connessioni socket rispetto alle prese raw è così minima da essere in gran parte irrilevante. Con i processori moderni disponibili nelle versioni dual, quad e persino a sei core, le possibilità di connessioni socket di rete regolari in ritardo sul computer sono trascurabili. Per questo motivo, a meno che non vi sia una giustificazione specifica per l'utilizzo di una connessione socket grezza su un socket di rete standard, il rischio rappresentato dagli hacker e dagli attacchi TCP sulla rete supera tutti i vantaggi.