이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 499|회답: 0

[출처] .NET/C#은 윈도우에서 패킷을 캡처하고 수정하기 위해 WinDivert를 사용합니다

[링크 복사]
2025-9-26 10:53:00에 게시됨 | | | |
요구사항: TCP 패킷은 Windows에서 캡처되어야 하며, 네트워크 보안에서 중간자 공격과 유사한 형태로 패킷을 수정할 수 있습니다.

복습:
.net은 패킷 캡처 도구인 SharpPcap으로 작성되었습니다
https://www.itsvse.com/thread-2914-1-1.html

리눅스 트래픽 캡처에서의 .NET 코어
https://www.itsvse.com/thread-9524-1-1.html

WinDivert: Windows Packet Divert

Windows 패킷 디브라이트(WinDivert)는 Windows 10, Windows 11, Windows Server용 사용자 모드 패킷 캡처 및 전송 패키지입니다.

공식 웹사이트:하이퍼링크 로그인이 보입니다.

WinDivert는 사용자 모드 애플리케이션이 Windows 네트워크 스택으로 전송되거나 전송되는 네트워크 패킷을 캡처/수정/삭제할 수 있게 합니다. 요약하자면, WinDivert는 다음과 같은 기능을 할 수 있습니다:

  • 네트워크 패킷 캡처
  • 네트워크 패킷 필터링/드롭
  • 네트워크 패킷 스니핑
  • 네트워크 패킷을 (재)주입합니다
  • 네트워크 패킷 수정


WinDivert는 사용자 모드 패킷 필터, 패킷 스니퍼, 방화벽, NAT, VPN, 터널링 애플리케이션 등 다양한 기능을 구현하는 데 사용할 수 있습니다.

WinDivert의 주요 기능은 다음과 같습니다:

  • 패킷 가로채기, 스니핑 또는 드롭 패턴
  • 루프백(localhost) 트래픽 지원
  • 완전한 IPv6 지원
  • 네트워크 계층
  • 간단하지만 강력한 API
  • 고급 필터링 언어
  • 필터 우선순위
  • 조용한 설치
  • 이 서비스는 GNU 광범위 공중 사용 시 라이선스(LGPL) 조건에 따라 무료로 제공됩니다.


httpbin을 구축하세요

httpbin(1): HTTP 요청 및 응답 서비스, http 서비스를 구축하고 WinDivert를 통해 요청된 패킷 내용을 수정하면, 응답 내용을 통해 패킷이 수정된 것을 직관적으로 확인할 수 있고, 서버는 중개인이 가로채고 수정한 패킷의 내용을 받습니다.

근원:하이퍼링크 로그인이 보입니다.

Docker 빌드 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