Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 499|Отговор: 0

[Източник] .NET/C# използва WinDivert за улавяне на пакети и модифициране на пакети в Windows

[Копирай линк]
Публикувано на 26.09.2025 10:53:00 | | | |
Изисквания: TCP пакетите трябва да се улавят под Windows и могат да модифицират пакети, подобно на атаките "човек в средата" в мрежовата сигурност.

Преглед:
.net се пише от SharpPcap, инструмент за улавяне на пакети
https://www.itsvse.com/thread-2914-1-1.html

.NET Core в улавянето на трафик в Linux
https://www.itsvse.com/thread-9524-1-1.html

WinDivert: Windows Packet Divert

Windows Packet Divert (WinDivert) е пакет за улавяне и прехвърляне на пакети в потребителски режим за Windows 10, Windows 11 и Windows Server.

Официален уебсайт:Входът към хиперлинк е видим.

WinDivert позволява на приложения в потребителски режим да улавят/модифицират/пускат мрежови пакети, изпращани до/от мрежовия стек на Windows. В обобщение, WinDivert може:

  • Улавяне на мрежови пакети
  • Филтриране/изключване на мрежови пакети
  • Прихващане на мрежови пакети
  • (ре)инжектиране на мрежови пакети
  • Модифициране на мрежови пакети


WinDivert може да се използва за реализиране на филтри за пакети в потребителски режим, снифъри на пакети, защитни стени, NAT, VPN, тунелни приложения и други.

Ключови характеристики на WinDivert включват:

  • Прихващане на пакети, прислушване или пускане на модели
  • Поддържа loopback (localhost) трафик
  • Пълна поддръжка на IPv6
  • Мрежов слой
  • Прост, но мощен API
  • Усъвършенстван език за филтриране
  • Приоритет на филтъра
  • Безшумна инсталация
  • Тя се предоставя безплатно съгласно условията на GNU Broad General Public License (LGPL).


Build httpbin

httpbin(1): HTTP услуга за заявка и отговор, изграждане на http услуга, модифициране на съдържанието на поискания пакет чрез WinDivert, интуитивно можете да видите, че пакетът е модифициран чрез съдържанието на отговора, а сървърът получава съдържанието на пакета, което е било прихванато и модифицирано от посредника.

Източник:Входът към хиперлинк е видим.

Командата Docker build httpbin е следната:
Както е показано по-долу:



.NET конзола

Първо, създайте ново конзолно приложение .NET 8, а nuget референцията е следната:
Кодът е следният:

Преди блокиране и модификация на базата данни, както е показано на следващата фигура:



Започнете да прихващате и модифицирате пакета, както е показано на следващата фигура:



(Край)




Предишен:Git синхронизира кода на разклонения на основния репозиториум с клон на частния репозиториум
Следващ:Discuz optimizes loading home.php?mod=misc&ac=sendmail&rand=1759095001
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com