STDIO
Tìm kiếm gần đây
    • Nội dung
    • QR Code
    • 0
    • 0
    • Sao chép

    Hướng Dẫn Dùng Charles Proxy Để Theo Dõi Network Traffic

    Hướng dẫn theo dõi dữ liệu truyền đi và trả về bằng Charles Proxy.
    03/08/2016
    26/09/2020
    3 phút đọc
    Hướng Dẫn Dùng Charles Proxy Để Theo Dõi Network Traffic

    Tham khảo

    Cài đặt Charles Proxy

    Cài đặt Charles Proxy trên máy tính

    Việc cài đặt Charles trên máy tính cực kì đơn giản, tải bản cài đặt mới nhất và tiến hành cài đặt.

    Thiết lập Charles tạo Proxy Server

    Trong menu của Charles, chú ý đến 2 mục chính là Proxy Settings và SSL Proxy Settings. Nếu option MacOS X Proxy đang mở thì nên tắt để tránh bị nhiễu các request bắt được trong log.

    Proxy Settings là nơi để cấu hình thông tin về Proxy Server cho Charles, mặc định là port 8888. Ví dụ IP trong bài này là 192.168.0.112 thì Charles sẽ lắng nghe ở 192.168.0.112:8888.

    Thiết lập SSL Proxy Server (nâng cao)

    1 tính năng của Charles là có thể theo dõi được các kết nối HTTPS đã được mã hóa. Để có thể sử dụng được tính năng này, Charles sẽ tự động sinh ra 1 root certificate, mobile client sẽ cài đặt và trust certificate này, khi đó Charles sẽ có quyền intercept các kết nối HTTPS đã được mã hóa từ mobile client, kỹ thuật này có thể hiểu là Man in the Middle.

    Từ menu SSL Proxying Settings có thể chọn danh sách các domain mà Charles sẽ intercept các HTTPS request, mặc định thì Charles sẽ bỏ qua, có thể chỉ định tên domain muốn lắng nghe, có thể áp dụng wildcard * tương ứng với bất kì kí tự nào, ví dụ:

    Thiết lập trên điện thoại

    Thiết lập sử dụng Proxy Server trên điện thoại

    Giả sử điện thoại và máy tính đang ở trong cùng 1 mạng (LAN wifi) và có 1 proxy server đang lắng nghe ở 192.168.0.112:8888 sau khi thực hiện các bước trên.

    Điền các thông tin về proxy server đã tạo.

    Android
    iOS

    Đến bước này đã có thể sử dụng Charles để theo dõi request từ thiết bị này. Nếu không muốn theo dõi các kết nối HTTPS có thể bỏ qua bước dưới đây.

    Cài đặt SSL Certificate

    Để Charles có thể theo dõi được các kết nối HTTPS, client cần phải cài đặt và trust CA Certificate từ Charles.

    Đối với iOS, mở trình duyệt Safari hoặc Android Browser, Chrome đối với Android, lưu ý không dùng Firefox (lý do sẽ được giải thích bên dưới) truy cập vào địa chỉ https://chls.pro/ssl - lúc này hệ thống sẽ hỏi có muốn cài đặt CA Certificate vào máy không, thiết lập và cài đặt.

    Đối với iOS 10.3 trở lên, cần vào Settings > General > About > Certificate Trust Settings và enable certificate vừa cài đặt thì mới có hiệu lực.

    Sử dụng Charles để theo dõi

    Mở 1 ứng dụng bất kỳ trên điện thoại. Các request/response sẽ được hiển thị trên Charles. Lưu ý ở đây đã trust certificate và add domain api.tch.vn để Charles có thể theo dõi được các API đến server này, đối với những server khác nếu không thêm vào settings, mặc định Charles sẽ bỏ qua.

    Lưu ý

    • Không phải trường hợp nào cũng có thể áp dụng SSL Certificate để theo dõi request được, tiêu biểu như Facebook. Lý do là tùy app được thiết kế mà sẽ có cơ chế so sánh fingerprint riêng biệt lúc tạo kết nối HTTPS, nhất là các app sử dụng self-signed certificate, lúc này dù certificate của Charles tạo ra có hợp lệ đi nữa vẫn không được chấp nhận vì khác fingerprint certificate gốc của server. Vì thế, api.tch.vn sau này sẽ không còn theo dõi request được nữa.
    • Khi không sử dụng nữa, nên tắt proxy trên điện thoại, nếu không sẽ bị gặp vấn đề với kết nối mạng do proxy gây ra.
    0 Bình luận
    Cyber Security

    Đề xuất

    Sử Dụng CSDL Hướng Đối Tượng DB4O với Android
    Hướng dẫn sử dụng thư viện cơ sở dữ liệu hướng đối tượng DB4O để phát ...
    Sử Dụng CSDL Hướng Đối Tượng DB4O với Android - Phần 2 Thực Hiện App Đơn Giản - Chương Trình Trắc Nghiệm
    Hướng dẫn xây dựng một chương trình trắc nghiệm đơn giản sử dụng hệ quản ...

    Khám phá

    Validate Form Bằng Thư Viện Knockout-Validation trong Dự Án Durandaljs
    Bài viết hướng dẫn sử dụng thư viện Knockout-Validation để kiểm tra dữ ...
    Cách Sử Dụng Canva Để Tạo Hình Ảnh Đồ Họa, Infographics Và Các Bài Thuyết Trình Đẹp
    Canva giúp tiết kiệm thời gian và cho phép bạn tạo hình ảnh đồ họa theo ...
    05/04/2020
    Đọc Ghi Tất Cả Các Định Dạng Ảnh với FreeImage trong C++
    Hướng dẫn sử dụng FreeImage để đọc, ghi, xử lý ảnh trong C++.
    28/09/2014
    Thỏa Thuận Sử Dụng Dịch Vụ STDIO
    Thỏa thuận này quy định về điều kiện giao kết hợp đồng, quyền lợi, nghĩa ...
    Hướng Dẫn Lập Trình C++ và Gỡ Lỗi với Visual Studio Code
    Bài viết hướng dẫn cách cài đặt Visual Studio Code để lập trình với ngôn ...
    17/08/2018
    SOLID trong Lập Trình Hướng Đối Tượng
    SOLID trong lập trình hướng đối tượng có giá trị như thế nào trong việc ...
    Hiện Thực Game Zero Với Unity - Phần 2 - Hiện Thực Gameplay
    Hướng Dẫn Hiện Thực Game Zero Với Unity. Giới thiệu và hướng dẫn xây ...
    Khi bạn nhấn vào liên kết sản phẩm do STDIO đề xuất và mua hàng, STDIO có thể nhận được hoa hồng. Điều này hỗ trợ STDIO tạo thêm nhiều nội dung hữu ích. Tìm hiểu thêm.
    STDIO
    Trang chính
    Công ty TNHH STDIO

    30, Trịnh Đình Thảo, Hòa Thạnh, Tân Phú, Hồ Chí Minh
    +84 28.36205514 - +84 942.111912
    developer@stdio.vn

    383/1 Quang Trung, Phường 10, Quận Gò Vấp, Hồ Chí Minh
    Số giấy phép ĐKKD: 0311563559 do sở Kế hoạch và Đầu Tư TPHCM cấp ngày 23/02/2012

    ©STDIO, 2013 - 2020