1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI GIẢNG AN TOÀN PHẦN MỀM

12 99 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 3,06 MB

Nội dung

8/28/2014 Hải V Phạm Bộ môn HTTT – Viện CNTT&TT H BKHN @Hai V Pham – Dạng công thụ động khó bị phát khơng làm thay đổi liệu – Với dạng công thụ động, nhấn mạnh vấn đề ngăn chặn vấn đề phát 8/28/2014 Dạng ng n công chủ ng ch động Mối đe dọa chủ động Bảo đảm người dùng có quyền truy xuất truy cập thơngtin Thơng tin ln ln sẵn sàng cho người dùng truy xuất Dữ liệu phải xác, khơng bị cập nhật trái phép @Hai V Pham Phần mềm ác tính ◦ Các phần mềm ác tính thường gặp ◦ Các biện pháp ngăn chặn Lỗi phần mềm ◦ Các lỗi phần mềm thường gặp ◦ Các biện pháp an toàn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) 8/28/2014 Phần mềm ác tính ◦ Các phần mềm ác tính thường gặp ◦ Các biện pháp ngăn chặn Lỗi phần mềm ◦ Các lỗi phần mềm thường gặp ◦ Các biện pháp an toàn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) Chạy theo chủ định người lập trình Chạy phản ứng theo cách bất thường, khơng trơng đợi từ phía người dùng Ẩn náu hệ thống, gắn vào phần mềm không ác tính Có thể làm thứ mà phần mềm làm Vi rut (Virus) ◦ Gắn vào chương trình, phát tán khác chương trình khác Trojan horse ◦ Có tính bất thường Bom logic (Logic bomb) ◦ Phát động điều kiện thỏa mãn Bom thời gian (Time bomb) ◦ Phát động đến hạn thời gian Trapdoor ◦ Cho phép truy nhập trái phép tính Sâu (Worm) ◦ Phát tán qua mạng Thỏ (Rabbit) ◦ Nhân đến khơng tài ngun 8/28/2014 Virus gây hại kích hoạt ◦ Virus chạy với chương trình khác chạy người dùng ◦ Virus chạy mở tệp đính kèm e-mails, tệp ảnh, tệp đồ họa Mã virus đính vào mã chương trình ◦ Nối mã virus với mã chương trình ◦ Mã virus bao quanh mã chương trình ◦ Mã virus tích hợp vào mã chương trình Virus tài liệu ◦ Tài liệu chứa liệu lệnh Vùng Boot (Boot Sector) Bộ nhớ (Memory-Resident) Ứng dụng (Application Program) Thư viện (Library) … 8/28/2014 Mã virus có kiểu mẫu đặc biệt ◦ Có thể nhận biết đoạn mã loại virus Mã đính kèm khơng thay đổi ◦ Chương trình đính kèm lớn chương trình ban đầu Vị trí đính kèm khơng thay đổi Sử dụng phần mềm thương mại từ nguồn tin cậy Kiểm thử phần mềm máy tính/hệ thống tách biệt Mở tệp đính kèm biết rõ nguồn gốc Lưu nơi an toàn phiên tái tạo hệ thống sử dụng Sử dụng phần mềm quét diệt virus Virus lây nhiễm hệ thống MS Windows Virus thay đổi file “hidden” “read-only” Virus xuất tệp liệu, chương trình Virus phát tán thông qua qua đĩa, e-mail Virus tồn nhớ sau reboot power off/on Virus lây nhiễm phần cứng 8/28/2014 Phần mềm ác tính ◦ Các phần mềm ác tính thường gặp ◦ Các biện pháp ngăn chặn Lỗi phần mềm ◦ Các lỗi phần mềm thường gặp ◦ Các biện pháp an tồn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) Phần mềm ác tính ◦ Các phần mềm ác tính thường gặp ◦ Các biện pháp ngăn chặn Lỗi phần mềm ◦ Các lỗi phần mềm thường gặp ◦ Các biện pháp an tồn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) Lập trình viên thường mắc lỗi ◦ không cố ý ◦ không ác tính ◦ đơi gây hậu nghiêm trọng 8/28/2014 Tràn đệm (Buffer Overflow) ◦ Array Index Out of Bound Không đầy đủ (Incomplete Mediation) ◦ Format String ◦ Implicit Cast, Integer Overflow ồng (Synchronization) ◦ File stat()/open() Phần mềm ác tính ◦ Các phần mềm ác tính thường gặp ◦ Các biện pháp ngăn chặn Lỗi phần mềm ◦ Các lỗi phần mềm thường gặp ◦ Các biện pháp an toàn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) Phần mềm ác tính ◦ Các phần mềm ác tính thường gặp ◦ Các biện pháp ngăn chặn Lỗi phần mềm ◦ Các lỗi phần mềm thường gặp ◦ Các biện pháp an toàn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) 8/28/2014 Mục đích kiểm thử tìm lỗi hệ thống ◦ Nếu khơng tìm lỗi, hi vọng hệ thống an toàn ơn vị (Unit Testing) Tích hợp (Integration Testing) Chức (Function Testing) Hiệu (Performance Testing) Công nhận (Acceptance Testing) Cài đặt (Installation Testing) Hồi quy (Regression Testing) ◦ Nếu hệ thống có thay đổi, chỉnh sửa Xoắn (Fuzz Testing) ◦ Các trường hợp đặc biệt, dễ bị khai thác công 8/28/2014 Hộp đen (Black-box) ◦ Khơng có thơng tin cấu trúc bên phần mềm ◦ Dùng cho tất mức quy trình kiểm thử Hộp trắng (White-box) ◦ Biết cấu trúc bên phần mềm ◦ Thường dùng cho kiểm thử đơn vị Hộp xám (Grey-box) ◦ Hỗn hợp en: kiểm thử Trắng: thiết kế ca kiểm thử Phần mềm ác tính ◦ Các phần mềm ác tính thường gặp ◦ Các biện pháp ngăn chặn Lỗi phần mềm ◦ Các lỗi phần mềm thường gặp ◦ Các biện pháp an toàn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) Mục đích kiểm định hình thức chứng minh hệ thống an toàn 8/28/2014 Kiểm định mơ hình (Model checking) ◦ Phần mềm đặc tả mơ hình ◦ Q trình kiểm định thực cách duyệt tất trạng thái thông qua tất chuyển tiếp Suy diễn logic (Logical Inference) ầu vào phần mềm bị ràng buộc biểu thức logic ◦ Tương tự với đầu ◦ Bản thân phần mềm bị ràng buộc biểu thức logic ◦ ầu vào Chương trình ầu ầu vào + iều kiện trước Chương trình + iều kiện ầu + iều kiện sau Phần mềm ác tính ◦ Các phần mềm ác tính thường gặp ◦ Các biện pháp ngăn chặn Lỗi phần mềm ◦ Các lỗi phần mềm thường gặp ◦ Các biện pháp an tồn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) 10 8/28/2014 Ngun tắc ◦ Mơ đun (Modularity) ◦ óng gói (Encapsulation) ◦ Giấu thông tin (Information Hiding) Thiết kế hợp phần ◦ Một mục tiêu/nhiệm vụ ◦ Nhỏ ◦ ơn giản ◦ ộc lập Giấu thông tin cách thức cài đặt hợp phần ◦ Ví dụ: lớp ảo C++, giao diện Java Giảm thiểu chia xẻ hợp phần ◦ Ví dụ: thư viện Các hợp phần tương tác thơng qua giao diện ◦ Ví dụ: tương tác đối tượng thông qua phương thức 11 8/28/2014 Một hợp phần hộp đen nhìn từ phía ngồi ◦ Ví dụ: lớp C++, Java Các phần tử bên ngồi khơng thể thay đổi sữa chữa thông tin cách ác ý trái phép ◦ Ví dụ: thuộc tính private, protected Một số quy tắc thực hành ◦ Sử dụng chuẩn lập trình ◦ Lập trình phòng thủ Kiểm tra liệu đầu vào/đầu Sử dụng đặc quyền thấp ◦ Thiết kế theo sách an tồn ◦ Sử dụng cơng cụ đảm bảo chất lượng Kiểm thử Kiểm định Duyệt lại mã Hãy thiết kế mơ hình tổng qt bảo mật hệ thống thơng tin / phần mềm doanh nghiệp hay tổ chức có sở hạ tầng CNTT mạng LAN kết nối trực tuyến với Internet: 1) Mơ hình bảo mật hệ thống thông tin / phần mềm 2) Các kỹ thuật công cụ phần mềm để bảo mật hệ thống / phần mềm 36 12 ... khác chương trình khác Trojan horse ◦ Có tính bất thường Bom logic (Logic bomb) ◦ Phát động điều kiện thỏa mãn Bom thời gian (Time bomb) ◦ Phát động đến hạn thời gian Trapdoor ◦ Cho phép truy... pháp an toàn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) 8/28/2014 Mục đích kiểm thử tìm lỗi hệ thống ◦ Nếu khơng tìm lỗi, hi vọng hệ thống an. .. gặp ◦ Các biện pháp an tồn Kiểm thử (Testing) Kiểm định hình thức (Formal Verification) Lập trình an tồn (Secure Coding) Mục đích kiểm định hình thức chứng minh hệ thống an tồn 8/28/2014 Kiểm

Ngày đăng: 13/03/2019, 09:59