요구사항: TCP 패킷은 Windows에서 캡처되어야 하며, 네트워크 보안에서 중간자 공격과 유사한 형태로 패킷을 수정할 수 있습니다.
복습:
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 참조는 다음과 같습니다:
코드는 다음과 같습니다:
다음 그림에서 보듯이 데이터베이스를 차단하고 수정하기 전:
다음 그림에 나타난 대로 패킷을 가로채고 수정하기 시작하세요:
(끝) |