Attt D21CNTT04

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

2124802010814_Phan Minh Thuận

AN TOÀN PHẦN MỀM & HỆ ĐIỀU HÀNH


Các vấn đề bảo mật phần mềm:
- Lỗ hổng bảo mật: Các lỗ hổng trong mã nguồn có thể bị tấn công.
- Phần mềm độc hại: Virus, malware, ransomware có thể tấn công hệ thống.
- Quản lý quyền truy cập: Kiểm soát quyền truy cập để ngăn chặn truy cập trái
phép.
Xử lý đầu vào chương trình:
- Kiểm tra và xác thực dữ liệu đầu vào để ngăn chặn các cuộc tấn công như SQL
injection, XSS.
Viết mã chương trình an toàn:
- Tuân thủ các nguyên tắc an toàn lập trình nhưng cũng sử dụng các công cụ như
linter, code analyzer để phát hiện và khắc phục lỗi.
Tương tác với Hệ điều hành và các Chương trình khác:
- Sử dụng giao thức an toàn để tương tác với hệ điều hành và các ứng dụng khác
để đảm bảo tính toàn vẹn và bảo mật.
Xử lý đầu ra chương trình:
- Kiểm tra và xử lý dữ liệu đầu ra để ngăn chặn các cuộc tấn công như injection
attacks.
Giới thiệu về Bảo mật Hệ điều hành:
- Bảo mật hệ điều hành bao gồm các biện pháp để bảo vệ hệ thống khỏi các mối
đe dọa từ mạng, malware và các cuộc tấn công khác.
Lập kế hoạch bảo mật hệ thống:
- Xác định các rủi ro bảo mật, thiết lập các biện pháp bảo mật, và triển khai các
giải pháp để giảm thiểu các mối đe dọa.
Gia cố hệ điều hành:
- Áp dụng các bản vá, cập nhật hệ thống, và cấu hình hệ điều hành để tăng cường
bảo mật.
Bảo mật ứng dụng:
- Áp dụng các biện pháp bảo mật như mã hóa, xác thực và kiểm tra đầu vào để
bảo vệ ứng dụng khỏi các cuộc tấn công.
Duy trì bảo mật:
- Theo dõi và cập nhật hệ thống thường xuyên để duy trì tính toàn vẹn và bảo mật
của hệ thống.
Bảo mật Linux:
- Cấu hình hệ thống Linux, áp dụng các biện pháp bảo mật như cài đặt firewall,
sử dụng SELinux, AppArmor, kiểm tra cập nhật thường xuyên.
Bảo mật Windows:
- Cài đặt các bản vá, cấu hình Windows Firewall, áp dụng Group Policy để quản
lý quyền truy cập, sử dụng Windows Defender hoặc các phần mềm bảo mật bên
thứ ba.
Bảo mật ảo hóa:
- Quản lý quyền truy cập vào máy ảo, cập nhật và giám sát máy ảo để đảm bảo
tính toàn vẹn và bảo mật của hệ thống ảo hóa.

Từ các nội dung trên tìm hiểu các vấn đề sau:


Lỗ hổng bảo mật do lập trình kém:
Có rất nhiều lỗ hổng bảo mật có thể xuất phát từ lập trình kém, bao gồm:
- Lỗ hổng SQL Injection: Khi ứng dụng không kiểm tra hoặc xác thực đầu vào
người dùng đủ kỹ, hacker có thể chèn các câu lệnh SQL độc hại vào truy vấn,
làm lộ thông tin quan trọng hoặc làm hỏng cơ sở dữ liệu.
- Cross-Site Scripting (XSS): Khi ứng dụng không kiểm tra hoặc sạch sẽ dữ liệu
được nhập vào từ người dùng, hacker có thể chèn mã JavaScript độc hại vào
trang web và thực hiện các hành động độc hại như đánh cắp thông tin người
dùng.
- Buffer Overflow: Khi ứng dụng không kiểm tra kích thước dữ liệu được nhập
vào, hacker có thể ghi đè lên vùng nhớ không được cấp phát và thực hiện các
cuộc tấn công khác nhau.
Chế độ xem trừu tượng của một chương trình:
Một chương trình có thể được xem như là một loạt các thành phần tương tác với nhau,
từ việc nhận dữ liệu đầu vào, xử lý nó và tạo ra kết quả đầu ra. Trong một chế độ xem
trừu tượng, điểm yếu có thể tồn tại ở nhiều nơi, bao gồm:
- Xử lý đầu vào không an toàn: Khi dữ liệu đầu vào không được kiểm tra kỹ
lưỡng, có nguy cơ bị tấn công.
- Lỗi trong logic chương trình: Khi logic của chương trình không chính xác, có
thể dẫn đến các lỗ hổng bảo mật hoặc lỗi hoạt động.
- Xử lý đầu ra không an toàn: Khi dữ liệu đầu ra được tạo ra mà không được xác
thực hoặc kiểm tra, có thể gây ra các cuộc tấn công như XSS hoặc injection
attacks.
Tiếp cận lập trình phòng thủ:
Tiếp cận lập trình phòng thủ tập trung vào việc xác thực và kiểm tra mọi giả định và
dữ liệu đầu vào. Điều này bao gồm:
- Kiểm tra và xác thực dữ liệu đầu vào: Đảm bảo rằng mọi dữ liệu đầu vào được
kiểm tra và xác thực đúng cách để ngăn chặn các cuộc tấn công.
- Thiết kế để phòng thủ: Xây dựng ứng dụng với sự xác thực và kiểm tra tích hợp
từ đầu, không chỉ là một biện pháp hỗ trợ sau này.
Xử lý sai đầu vào chương trình:
Khi chương trình không xử lý đầu vào một cách an toàn, có thể xảy ra các vấn đề như:
- Buffer Overflow: Khi chương trình không kiểm tra kích thước của dữ liệu đầu
vào, có thể dẫn đến việc ghi đè vùng nhớ không mong muốn.
- Injection Attacks: Khi dữ liệu không được xử lý đúng cách, hacker có thể chèn
mã độc hại hoặc lệnh vào hệ thống.
Vấn đề khi thực hiện thuật toán:
- Thuật toán không hiệu quả: Dẫn đến hiệu suất kém hoặc tăng khả năng tấn công
DoS.
- Lỗ hổng logic: Một thuật toán có thể bị hacker tận dụng nếu có lỗi logic, dẫn
đến các cuộc tấn công như brute force hoặc cố gắng.
Vấn đề khi tương tác với hệ điều hành:
Không xác thực hoặc kiểm tra quyền truy cập: Có thể dẫn đến việc ứng dụng có quyền
truy cập không mong muốn vào hệ thống hoặc các tài nguyên khác.
Vấn đề khi tạo đầu ra chương trình:
Đầu ra không được xác thực: Dữ liệu đầu ra có thể không an toàn, dẫn đến các cuộc
tấn công như XSS hoặc injection attacks nếu không được xử lý đúng cách.

You might also like