การตรวจสอบปริมาณการใช้ HTTP อย่างง่าย (จับภาพตามกระบวนการ) [ปิด]


1

ฉันรู้ว่าคำถามแบบนี้ถูกถามบ่อยมาก
ฉันมีปัญหาใหญ่ในการใช้ Wireshark เนื่องจากสาเหตุต่อไปนี้:

  • ไม่สามารถติดตามกระบวนการที่ส่ง / รับแพ็กเก็ตได้
  • ไม่เพียงแสดงปริมาณการใช้งาน HTTP เท่านั้น
  • สำหรับทราฟฟิก HTTP มันทำให้ฉันเห็นมุมมองต้นไม้ที่น่ารำคาญ
  • ฉันไม่สามารถเริ่มค้นหาทั่วโลกในเนื้อหาของแพ็กเก็ตทั้งหมด
    (จุดสุดท้ายนั้นไม่สำคัญ)

สิ่งที่ฉันกำลังมองหาคือเครื่องมือตรวจสอบการรับส่งข้อมูล HTTP แบบง่ายที่ช่วยให้ฉันสามารถจับการรับส่งข้อมูล HTTP ของกระบวนการเดียวโดยแสดงคำขอแบบดิบ:

POST /index.html HTTP/1.1
Host: www.google.com
User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:28.0) Gecko/20100101 Firefox/28.0

param1=testabc&qwe=123

Timestamps และ IP ก็ดีเช่นกัน

ฉันหวังว่าคุณจะช่วยฉันออก และเพื่อให้คุณรู้ว่า: ฉันใช้เวลากับ Google เป็นอย่างมากสำหรับจอภาพเช่นนี้ แต่ฉันไม่สามารถหาสิ่งที่ดีได้

ฉันใช้ Windows


ของ Nirsoft หรือไม่ NetworkTrafficView เหมาะสมกับความต้องการของคุณ?
nixda

คำตอบ:


1

คุณสามารถใช้ได้ พู้ทำเล่น ; มันจับปริมาณการใช้งาน HTTP และมีตัวกรองตามกระบวนการ

นอกจากนี้ยังมีจอแสดงผลที่ดีและเป็นมิตรกับ Windows


พู้ทำเล่นดูเหมือนจะเป็นโปรแกรมที่ยอดเยี่ยม! แม้ว่ามันจะไม่ได้รับคำขอ HTTP ของโปรแกรมที่ฉันเขียนเอง :( ดังนั้นมันไร้ประโยชน์มากสำหรับฉัน ...
Forivin

@Forivin ฉันคิดว่าพู้ทำเล่นสามารถตั้งค่าเป็นพร็อกซีและคุณสามารถกำหนดทิศทางปริมาณการใช้งานแอพของคุณ (พอร์ต 9999 โดยค่าเริ่มต้น) docs.telerik.com/fiddler/configure-fiddler/tasks/...
Ofir Luzon

ดังนั้นฉันควรส่งคำขอไปที่พอร์ต 9999 แทนที่จะเป็น 80 หรือไม่ แก้ไข: มันลองแล้วใช้งานไม่ได้
Forivin

ก่อนหน้านี้เขาหมายความว่าคุณจะต้องสร้างแอปของคุณเพื่อให้เข้าใจถึงวิธีการใช้พร็อกซีเซิร์ฟเวอร์และใช้ติดตั้งพู้ทำเล่นในเครื่องเป็นพร็อกซีเซิร์ฟเวอร์นั้น เนื่องจากอาจเป็นแบบฝึกหัดการเขียนโปรแกรมมากกว่าที่คุณต้องการลองคุณสามารถลองตั้งค่าเซิร์ฟเวอร์ linux เพื่อทำหน้าที่เป็นเกตเวย์ของคุณโดยทั่วไปจะทำหน้าที่เชื่อมระหว่างคุณกับเราเตอร์ปัจจุบันของคุณ จากนั้นให้เซิร์ฟเวอร์ linux นั้นใช้ IPtables เพื่อเปลี่ยนเส้นทางเพื่อเปลี่ยนเส้นทางการรับส่งข้อมูลพอร์ตขาออก 80 ของคุณไปยังพร็อกซีเซิร์ฟเวอร์ของคุณ ฉันไม่แน่ใจว่าข้อมูลกระบวนการในการกรองจะถูกเก็บไว้ที่จุดนั้นอย่างไร ...
ssnobody

เคล็ดลับคือบอกโปรแกรมของฉันให้ใช้พร็อกซีระบบหรือบอกให้ส่งทราฟฟิกผ่านพร็อกซีนี้: localhost: 8888 และ ProxyCap เป็นเครื่องมือที่ยอดเยี่ยมในการบังคับให้ exe เชื่อมต่อผ่านพร็อกซีที่คุณต้องการ
Forivin

1

บน windows คุณควรจะสามารถใช้ การตรวจสอบเครือข่าย Microsoft เพื่อติดตามกระบวนการเดียว คุณจะต้องการใช้ ProcessName หรือ ProcessID ตัวกรองเพื่อเลือกเฉพาะกระบวนการที่คุณสนใจ

หาก NetMon ไม่ส่งคืนผลลัพธ์ในรูปแบบที่คุณสามารถใช้งานได้คุณอาจลองใช้ WireShark เวอร์ชันทดลองซึ่งเพิ่มการรองรับการกรอง pid บนหน้าต่าง

ดาวน์โหลด: [Wireshark-dev] [PATCH] กรองตามชื่อกระบวนการท้องถิ่น

บน linux คุณควรจะสามารถใช้ strace เพื่อตรวจสอบกระบวนการเดียว แต่มันจะไม่ถูกจัดรูปแบบตามที่คุณต้องการ ในการติดตามกระบวนการที่มีอยู่:

strace -p $PID -f -e trace=network -s $MAXLEN

ในการเริ่มต้นกระบวนการด้วยการติดตาม:

strace -f -e trace=network -s $MAXLEN PATH/TO/PROCESS ARGUMENTS

สำหรับข้อมูลเพิ่มเติมดู: ผู้ชาย strace

อ้างอิง: การกรองการสนทนา และ AskUbuntu จับกระบวนการเดียว


ฉันลืมที่จะพูดว่าฉันใช้ Windows
Forivin

มันเปลี่ยนสิ่งเล็กน้อย ฉันได้เพิ่มข้อมูลใหม่สำหรับ windows แจ้งให้เราทราบว่ามันไปอย่างไร
ssnobody

ขอบคุณ แต่ฉันลองใช้ Microsoft Network Monitor แล้ว มันแสดงให้เห็นส่วนหัวในภาพต้นไม้ที่ไม่จำเป็นและฉันไม่สามารถหาศพได้
Forivin

เพิ่มข้อมูลบางอย่างในงานสร้างแบบทดลองที่อาจเป็นสิ่งที่คุณกำลังมองหา ...
ssnobody

ฉันคิดว่า Wireshark จะยังมีภาพต้นไม้ที่น่ารำคาญเหล่านี้อยู่
Forivin
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.