Khía cạnh lý thuyết

Một phần của tài liệu LUẬN VĂN: KIỂM CHỨNG CƠ CHẾ BẢO MẬT DỰA TRÊN AST potx (Trang 46 - 48)

Phần này sẽ đề cập tới những khía cạnh chuyên sâu hơn của thuật toán. Thuật toán đang xây dựng liên quan nhiều đến kiểm chứng cơ chế bảo mật. Do đó, vấn đề an toàn luôn được đặt lên hàng đầu, cần phải xét tất cả những gì có thể liên quan đến hệ thống dữ liệu đang cần bảo mật. Một sự tác động vào cơ chế bảo mật có thể có nhiều con đường khác nhau. Những con đường đó thường tập trung vào:

- Ghi dữ liệu lên vùng cấm ghi (ví dụ: ghi thêm vào file RBAC.TXT) - Xóa những dữ liệu quan trọng (ví dụ: xóa file RBAC.TXT)

- Cấp phát bộ nhớ cho vùng dữ liệu được giới hạn cấp phát …

Trong AST không chỉ quan tâm tới các điều kiện trong các Statement (tuy điều này là quan trọng nhất) mà phải chú ý tới các hàm có thể ảnh hưởng tới dữ liệu được liệt kê sơ bộ ở trên. Thuật toán duyệt cây ở trên đã nắm bắt được các trường hợp trong mã nguồn có thể sinh ra và người viết mã nguồn cố tình vi phạm. Để thuật toán chạy nhanh hơn thì những điều kiện không có trong quy định sẽ được chạy qua mà không cần bất cứ một sự kiểm tra nào. Đây là chỗ hổng để người viết mã nguồn với ý định xấu có thể lợi dụng. Chẳng hạn, với ifStatement nếu chỉ xét một điều kiện thì rất cực đoan nên cần xử lý với

nhiều điều kiện. Do chỉ minh họa về mặt công nghệ nên bài toán đưa ra sẽ là một trường hợp rất nhỏ, cần phát triển và cải tiến hơn trong tương lai.

Hình 4.3: Cấu trúc của lệnh if phức tạp

C/C++ là những ngôn ngữ chuyên dụng và phổ biến nên việc nghiên cứu thuận lợi hơn

nhưng trong tương lai khi phát triển với Java hay C# thì thuật toán này là nền tảng quan trọng

Một phần của tài liệu LUẬN VĂN: KIỂM CHỨNG CƠ CHẾ BẢO MẬT DỰA TRÊN AST potx (Trang 46 - 48)