Nắm bắt lưu lượng điện thoại di động trên Wireshark


Câu trả lời:


350

Đây là một vài gợi ý:

  1. Đối với điện thoại Android, bất kỳ mạng nào : Root điện thoại của bạn, sau đó cài đặt tcpdump trên nó. Ứng dụng này là một trình bao bọc tcpdump sẽ cài đặt tcpdump và cho phép bạn bắt đầu chụp bằng GUI. Mẹo: Bạn sẽ cần đảm bảo cung cấp đúng tên giao diện cho bản chụp và giá trị này thay đổi từ thiết bị này sang thiết bị khác, ví dụ -i eth0 hoặc -i tiwlan0 - hoặc sử dụng -i bất kỳ để ghi nhật ký tất cả giao diện

  2. Đối với điện thoại Android 4.0+ : Android PCAP từ Kismet sử dụng giao diện USB OTG để hỗ trợ chụp gói mà không yêu cầu root. Tôi chưa dùng thử ứng dụng này và có một số hạn chế về loại thiết bị được hỗ trợ (xem trang của họ)

  3. Đối với điện thoại Android : tPacketCapture sử dụng dịch vụ Android VPN để chặn các gói và chụp chúng. Tôi đã sử dụng ứng dụng này thành công, nhưng dường như nó cũng ảnh hưởng đến hiệu suất với lưu lượng truy cập lớn (ví dụ: truyền phát video)

  4. Đối với các thiết bị iOS 5+, bất kỳ mạng nào : iOS 5 đã thêm tiện ích giao diện ảo từ xa (RVI) cho phép bạn sử dụng các chương trình theo dõi gói Mac OS X để ghi lại dấu vết từ thiết bị iOS. Xem tại đây để biết thêm chi tiết

  5. Đối với tất cả các điện thoại, chỉ có wi-fi: Thiết lập PC của bạn làm điểm truy cập không dây , sau đó chạy wireshark trên PC

  6. Đối với tất cả các điện thoại, chỉ có wi-fi: Nhận một thiết bị chụp có thể đánh hơi được wi-fi. Điều này cũng có lợi thế là cung cấp cho bạn các tiêu đề 802.11x, nhưng bạn có thể bỏ lỡ một số gói

  7. Chụp bằng máy chủ VPN : Khá dễ dàng để thiết lập máy chủ VPN của riêng bạn bằng OpenVPN. Sau đó, bạn có thể định tuyến lưu lượng truy cập của mình qua máy chủ bằng cách thiết lập thiết bị di động dưới dạng máy khách VPN và nắm bắt lưu lượng ở cuối máy chủ.


1
Nếu bạn quan tâm đến việc thiết lập điểm truy cập giả mạo trên Windows 7 trở lên và chụp các gói bằng Wireshark, hãy xem các bước tôi kết hợp tại mohit.io/blog/. Điều này sẽ hoạt động cho mọi thiết bị hỗ trợ WiFi (Android , iOS, Wii, XBox, v.v.)
mohit

2
Về tùy chọn 2: thực tế đó là một lựa chọn không tồn tại. Từ trang của họ: "Bạn sẽ cần [...] và một mạng không dây dựa trên RTL8187" !!!!
matteo

1
Đối với tôi, tùy chọn # 3 là dễ nhất để thực hiện các tác vụ đơn giản như kiểm tra xem ứng dụng nào gọi một ứng dụng nào đó.
Nighto

1
Hầu hết những thứ đó không hoạt động đối với các gói không bao giờ rời khỏi thiết bị hoặc nếu bạn đã sử dụng VPN. Vì vậy, những điều này là vô ích để giải quyết các vấn đề liên quan đến MTU / phân mảnh.
Evi1M4chine 16/07/2015

1
Nếu tôi muốn làm ngược lại thì sao? Sử dụng điện thoại thông minh kết nối usb của tôi để chụp các gói PC của tôi? Về cơ bản chạy một phần mềm giống như wireshark trên điện thoại Android của tôi
dominicbri7

40

Ngoài câu trả lời tuyệt vời của rupello, một mẹo "bẩn" nhưng rất hiệu quả:

Đối với tất cả các điện thoại, bất kỳ mạng (cục bộ) nào : Thiết lập PC của bạn thành Man-In-The-Middle thiết bị di động của bạn.

Sử dụng Ettercap để thực hiện giả mạo ARP giữa thiết bị di động và bộ định tuyến của bạn và tất cả lưu lượng truy cập trên thiết bị di động của bạn sẽ xuất hiện trong Wireshark. Xem hướng dẫn này để biết chi tiết thiết lập


3
Bạn cũng có thể sử dụng Charles proxy trên Mac OS, để nắm bắt lưu lượng HTTP, nó có giao diện và chức năng rất đẹp. Bạn sẽ cần thiết lập IP cục bộ của máy tính có proxy trên điện thoại của bạn. Nó cũng có thể đánh hơi lưu lượng TLS và thực hiện mà không có cảnh báo nếu bạn cài đặt chứng chỉ của Charles trên điện thoại.
minipif

28

Một tùy chọn khác chưa được đề xuất ở đây là chạy ứng dụng bạn muốn theo dõi trong trình giả lập Android từ SDK Android. Sau đó, bạn có thể dễ dàng nắm bắt lưu lượng truy cập với wireshark trên cùng một máy.

Đây là lựa chọn dễ nhất cho tôi.


1
Đó là lựa chọn thú vị. Nó có thể xử lý các gói ssl không?
chuộc

22

Wireshark + OSX + iOS:

Tổng quan tuyệt vời cho đến nay, nhưng nếu bạn muốn thông tin cụ thể cho Wireshark + OSX + iOS:

  • cài đặt Wireshark trên máy tính của bạn
  • kết nối thiết bị iOS với máy tính thông qua cáp USB
  • kết nối thiết bị và máy tính iOS với cùng một mạng WiFi
  • chạy lệnh này trong một cửa sổ terminal OSX: rvictl -s xnơi xlà UDID của thiết bị iOS của bạn. Bạn có thể tìm thấy UDID của thiết bị iOS của mình thông qua iTunes (đảm bảo bạn đang sử dụng UDID chứ không phải số sê-ri).
  • goto Wireshark Capture->Options, một hộp thoại xuất hiện, nhấp vào dòng rvi0sau đó nhấn Startnút.

Hộp thoại Tùy chọn chụp Wireshark

Bây giờ bạn sẽ thấy tất cả lưu lượng truy cập mạng trên thiết bị iOS. Nó có thể là khá áp đảo. Một vài gợi ý:

  • không sử dụng iOS với VPN, bạn không thể hiểu lưu lượng được mã hóa
  • sử dụng các bộ lọc đơn giản để tập trung vào lưu lượng truy cập thú vị
  • ip.addr==204.144.14.134 xem lưu lượng truy cập với một địa chỉ nguồn hoặc đích là 204.144.14.134
  • http chỉ xem lưu lượng truy cập http

Đây là một cửa sổ mẫu mô tả lưu lượng TCP để tải xuống pdf từ 204.144.14.134:

Lưu lượng truy cập TCP của Wireshark để tải xuống pdf từ 204.144.14.134


9

Đối với điện thoại Android, tôi đã sử dụng tPquetCapture: https://play.google.com/store/apps/details?id=jp.co.taosoftware.android.pquetcapture&hl=vi

Ứng dụng này là cứu cánh mà tôi đã gỡ lỗi khi gặp sự cố bắt tay SSL / TLS trên ứng dụng Android của mình. Đã thử thiết lập mạng ad hoc để tôi có thể sử dụng wireshark trên máy tính xách tay của mình. Nó không làm việc cho tôi. Ứng dụng này nhanh chóng cho phép tôi nắm bắt lưu lượng mạng, chia sẻ nó trên Google Drive để tôi có thể tải xuống trên máy tính xách tay của mình, nơi tôi có thể kiểm tra nó với Wireshark! Tuyệt vời và không cần root!


Sẽ không hoạt động, nếu sự cố của bạn chỉ xảy ra khi sử dụng VPN (và không bao giờ kết thúc trên hub / bộ định tuyến).
Evi1M4chine 16/07/2015

8

Ứng dụng Packet Capture Android thực hiện VPN ghi lại tất cả lưu lượng truy cập mạng trên thiết bị Android. Bạn không cần thiết lập bất kỳ máy chủ VPN / proxy nào trên PC. Không cần root. Hỗ trợ giải mã SSL mà tPquetCapture không có. Nó cũng bao gồm một trình xem nhật ký tốt.


VPN đó không hoạt động ... không có trang nào đang mở hoặc dữ liệu được tải xuống ... có VPN đó giống như không có kết nối internet ...
Himanshu Bansal


4

Tương tự như làm cho PC của bạn trở thành điểm truy cập không dây, nhưng có thể dễ dàng hơn nhiều, đó là sử dụng tính năng chia sẻ ngược. Nếu bạn tình cờ có một chiếc điện thoại HTC, họ có một tùy chọn kết nối ngược đẹp mắt gọi là "Truyền qua Internet", trong cài đặt chia sẻ mạng / mạng di động. Nó định tuyến tất cả lưu lượng truy cập của bạn thông qua PC và bạn chỉ có thể chạy Wireshark ở đó.


2

Biến máy tính xách tay của bạn thành một điểm phát wifi cho điện thoại của bạn (bất kỳ) và kết nối nó với internet. Lưu lượng truy cập trên giao diện wifi của bạn bằng cách sử dụng wireshark.

bạn sẽ nhận được rất nhiều công cụ chống riêng tư!


6
Bạn có thể cụ thể hơn về cách thực hiện trên ít nhất một nền tảng (Windows, Linux hoặc Mac OS X) không?
Alexandre Marcondes

2

Điều kiện tiên quyết: adb và wireshark được cài đặt trên máy tính của bạn và bạn có một thiết bị Android đã root.

  1. Tải tcpdump về ~ / Tải xuống
  2. adb push ~/Downloads/tcpdump /sdcard/
  3. adb shell
  4. su root
  5. mv /sdcard/tcpdump /data/local/
  6. cd /data/local/
  7. chmod +x tcpdump
  8. ./tcpdump -vv -i any -s 0 -w /sdcard/dump.pcap
  9. CTRL+C sau khi bạn đã bắt đủ các gói.
  10. exit
  11. exit
  12. adb pull /sdcard/dump.pcap ~/Downloads/

Bây giờ bạn có thể mở tệp pcap bằng Wireshark.


1

Đối với Android , trước đây tôi đã sử dụng tPacketCapture nhưng nó không hoạt động tốt cho một ứng dụng phát trực tuyến một số video. Tôi hiện đang sử dụng Shark . Bạn cần phải root để sử dụng nó mặc dù.

Nó sử dụng TCPDump (kiểm tra các đối số bạn có thể vượt qua ) và tạo tệp pcap có thể được đọc bởi Wireshark. Các đối số mặc định thường là đủ tốt cho tôi.


1
Shark không còn có sẵn trên Google Play.
not2qubit

Thật vậy, nó dường như đã được gỡ bỏ. Trang web hoán đổi.n3o.lv dường như không còn giữ được các apks nữa.
dùng276648

0

Tôi gặp vấn đề tương tự đã truyền cảm hứng cho tôi để phát triển một ứng dụng có thể giúp nắm bắt lưu lượng truy cập từ thiết bị Android. Ứng dụng có tính năng máy chủ SSH cho phép bạn có lưu lượng truy cập trong Wireshark một cách nhanh chóng ( thành phần sirdark wireshark ). Vì ứng dụng sử dụng tính năng HĐH có tên VPNService để nắm bắt lưu lượng, nên nó không yêu cầu quyền truy cập root.

Ứng dụng này đang ở giai đoạn đầu Beta. Nếu bạn có bất kỳ vấn đề / đề xuất nào, đừng ngần ngại cho tôi biết.

Tải xuống từ Play

Hướng dẫn trong đó bạn có thể đọc thêm chi tiết

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.