2015-02-04 24 views
26

Tôi đang tìm cách đơn giản để chặn yêu cầu web và sửa đổi nội dung của yêu cầu (chủ yếu là BÀI VIẾT) sử dụng Fiddler.Làm cách nào để sửa đổi yêu cầu trong Fiddler?

Điều này nhằm kiểm tra xác thực phía máy chủ.

Tôi phải sử dụng Fiddler, tuy nhiên tôi chưa tìm được cách đơn giản để làm như vậy.

Đã có một vài cách được ghi để viết tập lệnh để chặn lưu lượng truy cập và thay đổi tiêu đề, nhưng tôi muốn làm điều đó mà không cần viết kịch bản - công cụ này cần được người kiểm tra sử dụng và viết/chỉnh sửa tập lệnh tất cả thời gian bởi những người thử nghiệm khác nhau có thể gây phiền nhiễu.

Ví dụ:

POST đơn giản với 2 tham số:

field1=foo, 
field2=bar 

Tôi muốn chặn theo yêu cầu, sửa đổi giá trị của field2 là một cái gì đó như lệnh cấm (chú ý ñ, trong trường hợp của tôi là không hợp lệ và đó là những gì tôi muốn kiểm tra).

Trả lời

49

Ok, đăng câu trả lời mà tôi đặt lại với nhau từ ghép nó lại với nhau từ youtube video sau:

Tampering Client Requests and Server Responses with Fiddler


  1. Bắt đầu cáy (Tôi đang sử dụng Fiddler 4)

  2. Bạn sẽ nhận thấy rằng nó chặn tất cả lưu lượng truy cập thông qua tất cả các trình duyệt và các ứng dụng khác

  3. Đặt một bộ lọc - điều này sẽ cho phép bạn xem chỉ có dữ liệu bạn quan tâm đến

    1. Ở phía bên tay phải, nhấp vào tab bộ lọc
    2. Kiểm tra 'Sử dụng Bộ lọc'
    3. Mở Hosts , sử dụng 'Chỉ hiển thị các Máy chủ sau'
    4. Trong hộp văn bản bên dưới, hãy đặt máy chủ lưu trữ mà bạn đang thử nghiệm. Trong trường hợp của chúng tôi cho môi trường thử nghiệm, hãy đặt như sau: testing.internalsite.com;
    5. Trong phần gọi là 'Breakpoints', kiểm tra 'Break yêu cầu trên POST'
  4. Intercept yêu cầu

    1. Trong trình duyệt của bạn, điều hướng đến trang mà bạn đang thử nghiệm. Trong trường hợp của chúng tôi, đó là trang chào mừng chúng tôi sẽ thực hiện thử nghiệm xác thực phía máy chủ: https://testing.internalsite.com/yourapp/welcome.do
    2. Xóa tất cả các yêu cầu đã đăng nhập hiện tại bằng cách nhấn 'X' trong ruy-băng công cụ và chọn 'Xóa tất cả'.
    3. Trong trình duyệt của bạn, hãy đưa dữ liệu vào biểu mẫu mà bạn quan tâm đến thử nghiệm và nhấn gửi. Đây là dữ liệu hợp lệ (vượt qua xác thực phía máy khách) mà bạn sẽ thay đổi với fiddler.
    4. Trong Fiddler, bạn sẽ thấy yêu cầu có biểu tượng màu đỏ. Nhấp vào yêu cầu để tải chi tiết ở bên phải.
    5. Trên tab Thanh tra, tiếp theo là tab WebForms, bạn có thể sửa đổi các thông số của biểu mẫu đã được gửi. Thay đổi dữ liệu thích hợp cho thử nghiệm.
    6. Nhấn 'Run để hoàn thành' nút
  5. Validate rằng trả lời của bạn là đúng - thường là một số loại thông báo lỗi nếu bạn đang thử nghiệm kiểm chứng thực server-side

+0

để ngăn chặn sự giả mạo này? –

+0

Đây chỉ đơn giản là một phương pháp để cấu hình lại yêu cầu phía máy khách - bất kỳ xác thực phía máy khách nào phải có xác nhận hợp lệ phía máy chủ, bởi vì một khách hàng về mặt lý thuyết luôn có khả năng kiểm soát những gì máy gửi. – Coruscate5

+4

@ Sujit.Warrier No. Bạn không bao giờ có quyền kiểm soát những gì khách hàng có thể gửi; có nghĩa là bạn không bao giờ có thể tin tưởng dữ liệu khách hàng. Bạn * phải * xác thực/làm sạch/etc ở phía máy chủ. – Matt

3

Tôi sử dụng fiddler 4.6.3. Bạn có thể thử điều này nếu bạn đang gửi biểu mẫu web.

Lưu ý yêu cầu đăng khi bạn gửi biểu mẫu. Hãy để yêu cầu đó vẫn còn trong không quan trọng. Cho phép sửa đổi yêu cầu trong Fiddler.

1 - Yêu cầu nhấp chuột phải> chọn "mở khóa để chỉnh sửa".

2 - tab Thanh tra> Sửa đổi các trường biểu mẫu như tên người dùng, mật khẩu, v.v. trong phần Nội dung.

3 - Yêu cầu nhấp chuột phải> Phát lại> Yêu cầu phát hành lại.

Xong! Vấn đề duy nhất với cách tiếp cận này là bạn sửa đổi yêu cầu cũ. Trong Charles proxy, điều này được thực hiện trong 2-3 nhấp chuột so với nhiều nhấp chuột trong Fiddler. Ngoài ra, bạn không phải làm hỏng yêu cầu cũ.

Các vấn đề liên quan