TAILIEUCHUNG - Bài giảng Lập trình an toàn: Chương 7 - Lương Ánh Hoàng

Bài giảng "Lập trình an toàn - Chương 7: Anti-Tampering" trình bày các nội dung: Phát hiện thay đổi (Detecting modification), che giấu mã (Code hiding), sử dụng con trỏ hàm (Function Pointer), giấu xâu (String hiding), phát hiện debugger (Anti-Debugger) Self-modifying code, giải pháp tổng thể. nội dung chi tiết. | Chương 7. Anti-­‐Tampering Lương Ánh Hoàng hoangla@ Nội dung Phát hiện thay đổi (Detecting modi}ication) Che giấu mã (Code hiding) Sử dụng con trỏ hàm (Function Pointer) Giấu xâu (String hiding) Phát hiện debugger (Anti-­‐Debugger) Self-­‐modifying code Giải pháp tổng thể 119 Phát hiện thay đổi mã lệnh •  Mục tiêu: Phát hiện chương trình đã bị crack chưa (Detecting modi}ication) •  Kỹ thuật: –  Tính MD5, SHA1, hoặc HMAC mã lệnh của }ile thực thi. –  Đánh dấu một đoạn trong chương trình sẽ dùng để lưu mã băm }ile thực thi và ghi giá trị băm vào đó bằng một chương trình Hex edit khác. –  Tại thời điểm runtime tính lại giá trị băm của }ile thực thi và so sánh với mã băm trước đó. •  Ví dụ: băm // Khai báo xâu đánh dấu m ã char * md5hash = "AAAAXXXXXXXXXXXXXXXX"; int _tmain(int argc, _TCHAR* argv[]) { unsigned char hash[16];// Giá trị băm tính được unsigned char expectedhash[16];// Giá trị băm lưu trong }ile FILE * fp = fopen(argv[0],"rb");// Mở }ile để tính lại giá trị băm unsigned char * pFile ; fseek(fp,0,SEEK_END); int len = ftell(fp); 120 Phát hiện thay đổi mã lệnh •  Ví dụ: char*)malloc(len); pFile = (unsigned fseek(fp,0,SEEK_SET); fread(pFile,1,len,fp); md5hash = 0; .

TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.