2016-04-26 18 views
9

Tôi đã làm một thử nghiệm thú vị ngay hôm nay.Phát hiện Người đàn ông ở giữa từ một ứng dụng

Tôi đã mở Amazon.com trong trình duyệt của mình, đăng nhập, đưa lên Fiddler và cố gắng thêm thẻ tín dụng hoàn toàn mới.

Tôi đã nhập số thẻ tín dụng, ngày hết hạn và tên chủ thẻ của mình. Khi tôi gửi yêu cầu, tôi không thấy bất kỳ POST nào gửi tới Amazon trong Fiddler. Giao diện người dùng cho biết đã xảy ra sự cố khi gửi thông tin của tôi và tôi nên thử lại.

Tôi lặp lại và nhận phản hồi giống hệt nhau.

Tôi tắt Fiddler và nhấn gửi. Thông tin của tôi đã được chấp nhận ngay lập tức.

Tôi muốn biết Amazon đạt được thành tích này như thế nào. Có kiến ​​thức chung không? Có một tiêu đề HTTP liên quan đến chứng chỉ mà làm cho nó dễ dàng?

+2

Bạn có nhận được thông báo lỗi từ trình duyệt hoặc từ Amazon không? –

+0

Thông báo lỗi xuất hiện trong ứng dụng Amazon trong trình duyệt. Đó không phải là một cửa sổ bật lên; nó trông giống như một thông báo xác thực mà bạn mong đợi từ một ứng dụng web nếu bạn đã nhập các giá trị xấu vào một hộp văn bản. – duffymo

+0

@Pillar, tôi đã thêm thẻ java b/c Tôi muốn thêm vào ứng dụng Java. Tôi đồng ý rằng nó không thích hợp với câu hỏi. – duffymo

Trả lời

1

Tôi nghĩ rằng đó là khóa chứng chỉ hoặc thứ gì đó tương tự. Chứng chỉ máy chủ được ghim trong ứng dụng, vì vậy, ứng dụng chỉ chấp nhận chứng chỉ đó, không phải bất kỳ chứng chỉ nào khác ngay cả khi chúng hợp lệ.

+0

Cảm ơn bạn Dmitry, tôi sẽ đào sâu vào điều đó. – duffymo

+1

Có vẻ như không phải là khóa mã hóa HTTPS. Theo một kiểm tra trên securityheaders.io, Amazon [không thực sự gửi tiêu đề đó cả] (https://securityheaders.io/?q=https%3A%2F%2Fwww.amazon.com). – Jules

+0

Bạn nói đúng. Còn gì nữa? – Dmitry

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