Một trong những khách hàng của tôi vừa nhận được phần mềm được đặt hàng từ nhà phát triển mà anh ấy lựa chọn và yêu cầu tôi xem qua nó và chuẩn bị cho việc lưu trữ.
Đó là một ứng dụng Java (jar), cho đến nay rất tốt... nhưng tôi thấy có điều gì đó đáng nghi, phần mềm này kết nối với máy chủ từ xa cứ sau 60 phút hoặc lâu hơn: cổng 443 sử dụng SSL và truyền ~ 3- 10 MB dữ liệu được mã hóa (như POST) và sau đó đóng kết nối, điều này thật kỳ lạ. Đã thử nối dây nhưng mọi thứ đều được mã hóa và tôi không biết loại dữ liệu nào đang được truyền đi, tôi chỉ biết tên máy chủ đích. Dữ liệu được lưu trữ trong ứng dụng sẽ rất nhạy cảm (nhà môi giới bảo hiểm) nếu khách hàng của tôi quyết định sử dụng nó - đây sẽ là một vấn đề nghiêm trọng đối với cả doanh nghiệp của anh ấy và khách hàng của anh ấy, tôi đã hỏi công ty phát triển Đã hỏi câu hỏi này và họ nói không có ai đã thêm một thứ như vậy mặc dù tôi đã cung cấp cho họ proff (pcap).
Tôi có thể chặn nó trong tường lửa, nhưng nếu họ thêm thứ gì đó như thế này, có thể có một máy chủ khác sẵn sàng nhận dữ liệu được mã hóa.
Cách duy nhất tôi có thể tìm ra là bằng cách nào đó giải mã lưu lượng SSL để đọc dữ liệu RAW và cung cấp cho khách hàng của tôi tất cả thông tin họ cần để trao đổi với công ty phát triển nhằm giải quyết vấn đề, tôi phải làm cách nào? Sử dụng một số loại ssl-proxy hoặc bất cứ thứ gì...đã cố gắng tìm kiếm trên Google nhưng không tìm thấy bất kỳ loại hướng dẫn nào về nó.
Tôi có quyền truy cập vào máy vật lý đang chạy ứng dụng Java và tôi có thể xem từng bit lưu lượng truy cập, nhưng... đã được mã hóa.
Nếu tôi ở vị trí của bạn thay vì cố gắng giải mã kết nối ssl, tôi sẽ thử các bước sau:
1) Bây giờ bạn đã biết máy chủ đang gửi yêu cầu đăng bài, hãy tìm hiểu thêm về dịch vụ này để hiểu nó làm gì? Có thể cố gắng liên hệ với trang web nói rằng chúng tôi cần sử dụng dịch vụ của bạn và tôi nên gửi yêu cầu gửi thư của mình;)
2) Cách tiếp cận thứ hai là nếu bạn có thể dịch ngược tệp jar và tìm dòng trong mã nguồn đưa ra yêu cầu đó, thì bạn có thể quay lại nhà phát triển và hỏi tại sao nó được viết theo cách đó. Để tìm mã nguồn thực hiện cuộc gọi, điều bạn có thể làm là chặn quyền truy cập vào máy chủ trên tường lửa của mình. Mã sẽ bị lỗi và rất có thể anh ta sẽ ghi lại một ngoại lệ vào tệp nhật ký của mình. Tìm dấu vết ngăn xếp và bạn sẽ biết dòng mã nào đưa ra yêu cầu này.
Hy vọng điều này sẽ giúp.
Tôi là một lập trình viên xuất sắc, rất giỏi!