2013-03-10 27 views
6

Có cách nào để 'bảo vệ' thư viện được chia sẻ riêng (.so) cho nền tảng Android chống lại thay đổi nhị phân không? Ví dụ: ai đó có thể ghi đè lên một hướng dẫn JMP với NOP sau khi thiết kế ngược ứng dụng và phân phối thư viện đó cho các thiết bị được root.Bảo vệ tính toàn vẹn của thư viện được chia sẻ trong Android

bất kỳ điều gì ai đó có thể làm không?

Điều tôi đang tìm kiếm ở đây là ý tưởng về việc triển khai một loạt các kiểm tra (ví dụ: mã hóa, kiểm tra, v.v ...). Tất nhiên kể từ khi nền tảng không giống như nó cung cấp hỗ trợ cho điều này (chính xác cho tôi nếu tôi sai) nó sẽ có được tất cả 'phía khách hàng'. Vì vậy, toàn bộ điều là một chút vô ích, nhưng ít nhất sẽ cản trở kỹ thuật đảo ngược một số.

+0

Tất nhiên bạn có thể thực hiện bảo vệ SO bằng cách cho phép nó tính toán tổng kiểm tra riêng của nó, mã hóa các phần của mã của chính nó. Đó là tất cả tương tự như những gì đã được thực hiện trong Windows trong nhiều năm (nhưng khó khăn hơn). Nhưng nếu bạn không có kinh nghiệm với việc bảo vệ các mô-đun trên Linux, bạn tốt hơn không nên bắt đầu. Tôi không biết liệu có tồn tại các sản phẩm bảo vệ được tạo trước cho nhiệm vụ của bạn hay không. –

+0

Cảm ơn bạn @ EugeneMayevski'EldoSCorp. Tôi muốn thử - làm thế nào để bạn tính toán tổng kiểm tra của riêng bạn? – AndroidSec

Trả lời

3

Có những điều bạn có thể làm, và họ sẽ làm cho nó rất khó khăn cho các kỹ sư đảo ngược, nhưng tôi nghi ngờ bạn sẽ có thể làm bất cứ điều gì mà sẽ dừng lại Chris Eagle.

Cách tốt nhất để bảo vệ khỏi sửa đổi là lấy SHA-2 của .so sau khi bạn biên dịch, và rehash mỗi lần trong thời gian chạy, khớp với giá trị đã biết. Kiểm tra này sẽ được thực thi ở phía máy khách, vì vậy RE có kỹ năng chỉ có thể sửa đổi nhị phân để bỏ qua kiểm tra. Nó làm cho nó một chút khó khăn hơn mặc dù. Nếu bạn đặt kiểm tra tất cả trong suốt mã của bạn và sử dụng các kỹ thuật kiểm tra khác nhau thì nó mở rộng số lượng công việc mà RE phải làm. Tuy nhiên, không biết rằng Microsoft đã rót hàng triệu đô la vào các kỹ thuật chống RE và có vẫn còn các bản sao Office và Windows lậu trên mạng. Bạn sẽ không bao giờ dừng lại tất cả. Triết lý cá nhân của tôi (bây giờ tôi đã nghiên cứu bản thân mình) là cuối cùng là quá nhiều nỗi đau để thử và ngăn chặn chúng. Chỉ cần tạo một ứng dụng tốt, làm cho nó rẻ và mọi người sẽ mua. Những thứ miscreants ăn cắp đồ của bạn sẽ không mua nó.

Nếu ứng dụng của bạn gọi về nhà, bạn cũng có thể gửi băm đến máy chủ để xác minh. Tất nhiên và RE vẫn có thể bỏ qua điều này nhưng đó là một điều nữa cần làm.

+0

Chính xác những gì tôi đang tìm kiếm. Cảm ơn bạn! – AndroidSec

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