Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 499|Risposta: 0

[Fonte] .NET/C# utilizza WinDivert per catturare e modificare i pacchetti su Windows

[Copiato link]
Pubblicato il 26-09-2025 alle 10:53:00 | | | |
Requisiti: I pacchetti TCP devono essere catturati sotto Windows e possono modificarli, in modo simile agli attacchi man-in-the-middle nella sicurezza di rete.

Recensione:
.net è scritto da SharpPcap, uno strumento di cattura pacchetti
https://www.itsvse.com/thread-2914-1-1.html

.NET Core nella cattura del traffico Linux
https://www.itsvse.com/thread-9524-1-1.html

WinDivert: Windows Packet Divert

Windows Packet Divert (WinDivert) è un pacchetto di cattura e trasferimento di pacchetti in modalità utente per Windows 10, Windows 11 e Windows Server.

Sito ufficiale:Il login del link ipertestuale è visibile.

WinDivert consente alle applicazioni in modalità utente di catturare/modificare/distribuire pacchetti di rete inviati da/dal stack di rete di Windows. In sintesi, WinDivert può:

  • Cattura pacchetti di rete
  • Filtra/elimina pacchetti di rete
  • Sniffing dei pacchetti di rete
  • (re)iniettare pacchetti di rete
  • Modifica i pacchetti di rete


WinDivert può essere utilizzato per implementare filtri di pacchetto in modalità utente, sniffer di pacchetti, firewall, NAT, VPN, applicazioni di tunneling e altro ancora.

Le caratteristiche principali di WinDivert includono:

  • Intercettazione di pacchetti, sniffing o schemi di drop
  • Supporta il traffico loopback (localhost)
  • Supporto completo IPv6
  • Livello di rete
  • API semplice ma potente
  • Linguaggio di filtraggio avanzato
  • Priorità del filtro
  • Installazione silenziosa
  • È fornito gratuitamente ai sensi della GNU Broad General Public License (LGPL).


Build httpbin

httpbin(1): Servizio di richiesta e risposta HTTP, costruisci un servizio http, modifichi il contenuto del pacchetto richiesto tramite WinDivert, puoi vedere intuitivamente che il pacchetto è stato modificato tramite il contenuto della risposta, e il server riceve il contenuto del pacchetto intercettato e modificato dall'intermediario.

Fonte:Il login del link ipertestuale è visibile.

Il comando httpbin build di Docker è il seguente:
Come mostrato di seguito:



.NET console

Per prima cosa, crea una nuova applicazione console .NET 8, e il riferimento nuget è il seguente:
Il codice è il seguente:

Prima di bloccare e modificare il database, come mostrato nella figura seguente:



Inizia a intercettare e modificare il pacchetto, come mostrato nella figura seguente:



(Fine)




Precedente:Git sincronizza il codice del branch del repository primario con il branch del repository privato
Prossimo:Discuz ottimizza il caricamento home.php?mod=misc&ac=sendmail&rand=1759095001
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com