Tôi có một ứng dụng giao tiếp với một số máy chủ. Tôi muốn biết IP của máy chủ này là gì. Làm cách nào tôi có thể nắm bắt tất cả lưu lượng truy cập từ một ứng dụng cụ thể và không chỉ tất cả lưu lượng truy cập như Wireshark?
Tôi có một ứng dụng giao tiếp với một số máy chủ. Tôi muốn biết IP của máy chủ này là gì. Làm cách nào tôi có thể nắm bắt tất cả lưu lượng truy cập từ một ứng dụng cụ thể và không chỉ tất cả lưu lượng truy cập như Wireshark?
Câu trả lời:
Có thể nắm bắt tất cả lưu lượng truy cập mạng cho một ứng dụng nhất định bằng cách chặn các lệnh gọi API của Windows Sockets. Đây là những công cụ có thể giúp đỡ.
Proxocket được viết bởi Luigi Auriemma. Nó chặn các lệnh gọi API và lưu lưu lượng truy cập đã bắt dưới dạng tệp .cap sẵn sàng của Wireshark ở định dạng tcpdump. Không có gì giải thích hơn một hình ảnh do chính Luigi cung cấp:
NirSoft có ứng dụng SocketSniff cho phép một người nắm bắt lưu lượng của một quy trình cụ thể. Một bức tranh cũng đáng giá cả ngàn lời nói:
Đáng buồn thay, các công cụ được đề cập có thể sẽ không hỗ trợ các ứng dụng 64 bit. Tuy nhiên, có thể viết một bộ chặn tùy chỉnh bằng thư viện mhook hỗ trợ cả API 32 bit và 64 bit.
strace
có thể giúp. Xem tại đây: Askubfox.com/a/12465/505090
Microsoft Network Monitor có thể cho phép bạn nói "chỉ chụp các gói được gửi đến và từ ứng dụng này".
Cách dễ nhất để sử dụng là Fiddler 2. Đây là trình gỡ lỗi cho phép bạn xem các yêu cầu HTTP, HTTPS và FTP (cả hai nếu được định cấu hình) với bất kỳ ứng dụng nào trên PC của bạn.
Sau khi bạn cài đặt nó, để nhắm mục tiêu một ứng dụng cụ thể, chỉ cần nhấp và giữ mục menu " Bất kỳ quá trình " nào, sau đó kéo con trỏ đến cửa sổ đang mở và giải phóng nó. Nó sẽ chỉ hiển thị ứng dụng được nhắm mục tiêu đó cho đến khi bạn nhấp chuột phải vào mục menu hiện đang đọc quá trình được nhắm mục tiêu trong văn bản màu đỏ để phát hành nó.
Trên các cửa sổ, TCPView sẽ làm những gì bạn cần: nó có thể hiển thị cho bạn tất cả các kết nối TCP và UDP mà một chương trình cụ thể đã mở.
Tuy nhiên, tôi nghĩ rằng điều này sẽ chỉ hữu ích nếu chương trình đang mở một kết nối và để nó mở; họ sẽ không hiển thị cho bạn tất cả lưu lượng truy cập mạng bằng một chương trình cụ thể. Chẳng hạn, có thể nó thực hiện một cuộc gọi điện thoại tại nhà rất ngắn khi tải, nhưng kết nối sẽ bị mất khi bạn chạy TCPView.
Trình giám sát quy trình có thể giúp nhận được nhiều chi tiết hơn, nhưng tôi chưa sử dụng nó nên tôi không chắc nó thu được bao nhiêu về các ổ cắm mạng.
proxifier : https://www.proxifier.com
Đó là chương trình tốt để thiết lập proxy cho ứng dụng riêng của bạn trên hệ điều hành windows.