2012-06-26 24 views
5

Tôi cần ứng dụng Flash của mình liên lạc với máy chủ một cách an toàn (thông qua ổ cắm nhị phân). Đối với điều này, tôi đã nghĩ đến việc nhúng một khóa chia sẻ trước bên trong mã AS3 và trao đổi dữ liệu XORed thông qua một giao thức tùy chỉnh.Bảo vệ mã Flash AS3 + liên lạc an toàn với máy chủ

Tôi được thông báo rằng trình giải mã SWF thực hiện tốt công việc làm cho tất cả mã nhúng rõ ràng và dễ đọc. Điều này có nghĩa là tôi thực sự không thể giấu khóa của mình?

Nếu phương pháp này không thực tế, các tùy chọn khác có ở đó là gì? Tôi đã thử as3crypto, chỉ để thấy rằng nó đầy những thiếu sót và thiếu tài liệu nghiêm túc.

+0

Tôi tin rằng tốt nhất bạn sẽ nhận được là sử dụng SSL làm giao thức bảo mật để truyền dữ liệu. Lưu ý điều này vẫn không ngăn cản người dùng thiết lập proxy chấp nhận chứng chỉ của bạn, sau đó phát hành proxy khác cho khách hàng để giải mã truyền, vì vậy nó không phải bằng bất kỳ bằng chứng đầy đủ nào, nhưng đó là giải pháp an toàn nhất cho máy khách/máy chủ giao tiếp ít nhất sẽ cản trở khả năng hack hệ thống. Đó là nó sẽ giữ cho người dùng cuối của bạn/giao tiếp máy chủ an toàn từ bên ngoài nhưng không bảo vệ bạn khỏi người dùng cuối của bạn. – shaunhusain

+0

Như câu trả lời dưới đây cho một người đàn ông ở giữa nắm bắt các thông tin liên lạc giữa khách hàng và máy chủ cuối cùng sẽ cho phép một người nào đó để viết một khách hàng tạo ra cùng một loại thông tin liên lạc như được thấy trong giám sát mim. Nhìn vào cách Kinect bị tấn công như một ví dụ, giao thức không được công bố cũng không phải là tín hiệu để bắt đầu luồng dữ liệu, nhưng một USB dongle và một kết xuất dữ liệu sau đó. phát trực tuyến trong vòng 24 giờ. Một ví dụ khác là Cain và Able ở đây http://www.youtube.com/watch?v=ZNApxghIQLw – shaunhusain

+0

Điểm tổng thể là máy chủ không bao giờ nên tin tưởng vào giao tiếp đi vào hoàn toàn từ bên ngoài. Điều duy nhất bạn có thể thực sự an toàn là mã thực thi trên máy chủ và thực sự là cách tốt nhất để giữ an toàn cho máy chủ ở một vị trí an toàn về mặt vật lý và không được nối vào bất kỳ mạng nào không cần thiết. Tốt nhất của may mắn ... câu hỏi hay, không có câu trả lời hay. – shaunhusain

Trả lời

4

Bạn hoàn toàn không thể ẩn khóa của mình - SWF hoàn toàn không đáng tin cậy, có thể dễ dàng bị dịch ngược. Nó khá khó khăn để đối phó với bảo mật với SWF vì chúng chạy trên máy khách và không đáng tin cậy.

Nó có thể phụ thuộc cụ thể vào những gì bạn đang cố gắng thực hiện với giao tiếp an toàn. Ví dụ, nếu bạn đang cố gắng để bảo đảm một hệ thống điểm số cao là khá nhiều không thể bởi vì các trò chơi chạy trên máy khách (SWF) và họ có thể thao tác nó để nhổ ra bất kỳ điểm nào họ muốn đến máy chủ. Dưới đây là thông tin tốt về điều này: What is the best way to stop people hacking the PHP-based highscore table of a Flash game

Nếu bạn chỉ có thể sử dụng SWF làm giao diện người dùng phía trước và tất cả logic diễn ra ở mặt sau, bạn có thể bảo mật ứng dụng của mình (sử dụng ví dụ trên nếu trò chơi không phải là trò chơi AS3 nhưng thực sự chạy trên chính máy chủ, nó sẽ dễ dàng hơn nhiều để bảo mật vì phần phụ trợ được tin cậy và không thể sửa đổi hoặc xem bởi người dùng), nhưng nếu logic diễn ra trên SWF thì bạn khá may mắn.

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