Mục tiêu thiết kế tập trung vào các sự kiện vi phạm chính sách bảo mật đã và đang xảy ra trên hệ thống. Thực hiện cơ chế phát hiện nói chung rất phức tạp, chúng ta phải dựa vào nhiều yếu tố như: kỹ thuật, nguồn thông tin… Về cơ bản các cơ chế phát hiện xâm nhập chủ yếu dựa vào việc theo dõi và phân tích các thông tin nhật ký và dữ liệu đang lưu thông trên mạng để tìm ra các dấu hiệu của sự vi phạm. Các dấu hiệu vi phạm thường phải được nhận diện, tiên đoán trước và được xây dựng trong cơ sở dữ liệu của hệ thống.
Cơ chế sao lưu và phục hồi. Hoạt động của hệ thống thông tin của bất kỳ một tổ chức, doanh nghiệp nào cũng đều dựa trên cốt lõi xử lý dữ liệu và theo đó là quá trình sao lưu dữ liệu (backup). Hiển nhiên theo thời gian, lượng dữ liệu cần lưu trữ và xử lý ngày càng gia tăng, làm nảy sinh hai yêu cầu chính. Một là dữ liệu cần phải được quản lý, được lưu trữ theo suốt vòng đời của nó, và chỉ bị hoàn toàn xóa bỏ khi thật sự không còn giá trị sử dụng. Nói cách khác, tính sẵn sàng của dữ liệu cần phải được đảm bảo trong suốt vòng đời sử dụng. Khả năng phục hồi thông tin bị mất một cách nhanh chóng nhất với
mức độ thiệt hại thấp nhất. Hai yêu cầu trên dẫn đến sự áp dụng phương thức phổ biến trong các hệ thống thông tin.
Cơ chế bảo mật thông tin trên đường truyền tin. Sử dụng giải pháp bảo mật khi giao tiếp trên mạng như: mã hóa dữ liệu trên đường truyền (mã hóa File, mã hóa Form), thiết lập đường truyền riêng VPN….
Khả năng che giấu, toàn vẹn và xác thực thông tin:
- Thuật ngữ “che” dữ liệu (mã hóa): là cách thay đổi hình dạng dữ liệu gốc khiến người khác khó nhận ra.
- Thuật ngữ “Giấu” dữ liệu: cất dấu dữ liệu trong môi trường khác.
- Bảo đảm toàn vẹn và xác thực thông tin: cách dùng các kỹ thuật: mã hóa, hàm băm, giấu tin, ký số, thủy ký,…
Khả năng kiểm tra, kiểm soát lối vào ra của thông tin:
- Kiểm soát, ngăn chặn các thông tin vào và ra trong hệ thống máy tính. - Kiểm soát, cấp quyền sử dụng các thông tin trong máy tính.
- Ngăn ngừa, phòng chống virus sử dụng các ký thuật như: tường lửa, mạng riêng ảo, nhận dạng, xác thực, cấp quyền…
Có khả năng phát hiện và xử lý các lỗ hổng thông tin:
- Các lỗ hổng trong các thuật toán, hay giao thức mật mã, giấu tin - Các lỗ hổng trong giao thức mạng, hệ điều hành, trong các ứng dụng…
Kết luận chương 1
Chương 1 tìm hiểu và phân tích tổng quan về vấn đề bảo mật an toàn thông tin. Giới thiệu phân tích một cách khái quát các đặc trưng của một hệ thống bảo mật thông tin, các nguy cơ và các rủi ro từ đó phân tích, đề xuất phương án xây dựng một hệ thống bảo mật.
Chương tiếp theo của luận văn sẽ đi nghiên cứu thực trạng mất an ninh an toàn trên website, cách xác thực, bảo mật trong website các giải pháp đã và đang triển khai trên thế giới và Việt Nam.
Chương 2
GIẢI PHÁP BẢO MẬT VÀ XÁC THỰC TRONG WEBSITE 2.1. Giới thiệu quá trình phát triển và hoạt động của website
Năm 1989, Tim Berners-Lee đã đề xuất để tạo ra một dư án siêu văn bản toàn cầu, mà sau này được gọi là World Wide Web. Trong suốt 1991 đến 1993, World Wide Web đã ra đời. Các trang văn bản chỉ có thể được xem bằng cách sử dụng một trình duyệt dòng với chế độ đơn giản. Năm 1993, Marc Andreessen và Eric Bina, tạo ra trình duyệt Mosaic. W3C đã được tạo ra trong tháng 10 năm 1994.Trong những năm 1996 đến 1999, cuộc chiến trình duyệt giữa Microsoft và Netscape đã dẫn đến những sáng tạo tích cực và giúp cho việc thiết kế website phát triển với tốc độ nhanh chóng. Năm 1996, Microsoft phát hành trình duyệt đầu tiên tranh của mình, đã được hoàn tất với các tính năng và các thẻ riêng của nó. Nó cũng là trình duyệt đầu tiên hỗ trợ các phong cách trang, đánh dấu HTML cho bảng ban đầu được dành để hiển thị dữ liệu dạng bảng.
CSS đã được giới thiệu vào tháng 12 năm 1996 bởi W3C để hỗ trợ trình bày và bố trí. Năm 1996 Flash (ban đầu được gọi là FutureSplash) đã được phát triển. Vào thời điểm đó, nó là một công cụ bố trí rất đơn giản, cơ bản và một dòng thời gian, nhưng nó cho phép các nhà thiết kế website vượt qua điểm của HTML vào thời điểm đó.
Từ một trình duyệt, người dùng gõ vào địa chỉ của một trang web, trình duyệt sẽ thực hiện một kết nối tới máy chủ tên miền để chuyển đổi tên miền ra địa chỉ IP tương ứng. Sau đó, trình duyệt sẽ gửi tiếp một kết nối tới máy chủ của website có địa chỉ IP này qua cổng 80. Dựa trên giao thức HTTP, trình duyệt sẽ gửi yêu cầu GET đến máy chủ. Khi đó máy chủ sẽ xử lý các yêu cầu của người dùng, rồi gửi trả kết quả về cho phía client.
Hình 2.1: Mô hình hoạt động của Website
2.2. Nguy cơ mất an toàn trên website
Trong xã hội hiện đại, việc sử dụng internet đã trở thành thói quen cũng như yêu cầu không thể thiếu đối với mọi người từ doanh nghiệp, các cơ quan nhà nước, các tổ chức quốc tế… Đặc biệt sự phát triển cũng như nhu cầu sử dụng website ngày càng tăng và mang lại những lợi ích to lớn về kinh tế, giải trí… Tuy nhiên nếu không lường trước và đánh giá được các nguy cơ mất an ninh an toàn trên website thì thiệt hại cũng vô cùng lớn và hậu quả có thể là rất nghiêm trọng đặc biệt như trong lĩnh vực an ninh, quốc phòng, ngân hàng…
Tấn công phổ biến nhất của hacker hiện nay hướng tới các website, cơ sở dữ liệu nhằm lợi dụng các loại lỗ hổng bảo mật để cài phần mềm gián điệp, điều khiển từ xa, xâm nhập, nhằm phá hoại, lấy cắp thông tin với mục đích chính trị và kinh tế, làm ảnh hưởng tới các tổ chức doanh nghiệp.
Hiện nay, các vụ tấn công hệ thống mạng công nghệ thông tin (CNTT) của các cơ quan nhà nước, doanh nghiệp, tổ chức tín dụng... nhằm mục đích chính trị, kinh tế đang ngày càng gia tăng. Những trang web bị tấn công thường thuê host dùng chung, chạy trên hệ thống cũ, không được cập nhật những bản vá lỗi cần thiết, có nhiều lỗi thông thường, dễ bị tấn công bằng các phương pháp và công cụ phổ biến, như nmap để rà, thu footprint thông tin của hệ điều hành và dịch vụ....
Một số tổ chức, doanh nghiệp tuy có triển khai các giải pháp an toàn và bảo mật, song lại thiếu sự đồng bộ giữa hạ tầng, giải pháp phần mềm và giải pháp quản trị. Sự thay đổi liên tục của nhiều kiểu tấn công mạng từ khắp thế giới, cộng thêm tính phức tạp và lỗ hổng trong hạ tầng mạng đã khiến nền tảng web trở nên dễ bị tổn thương trước những tấn công.
Ngày nay nguy cơ bị xâm hại các thông tin trên mạng ngày càng tỏ ra rõ rệt. Rất nhiều các vụ truy cập và lấy cấp trái phép hầu như diễn ra rất thường xuyên. Hàng trăm các website tên miền .vn đã bị tin tặc tấn công. Thông tin từ Trung tâm Ứng cứu khẩn cấp máy tính Việt Nam (VNCERT) thuộc Bộ TT&TT cho hay, trong quý III/2014 vừa qua, đơn vị này đã chỉ đạo, điều phối khắc phục tổng cộng 701 sự cố an ninh mạng [1]. Ngoài việc tấn công đơn thuần vào các diễn đàn như rongbay, enbac.com, … hacker còn tấn công vào cả tên miền của bộ ngoại giao Việt Nam. Trong đó, bản thân các vụ tấn công trên mạng và các vụ xâm nhập hệ thống công nghệ thông tin là nhằm do thám, trục lợi, phá hoại dữ liệu, ăn cắp tài sản, cạnh tranh không lành mạnh và một số vụ mất an toàn thông tin số khác đang gia tăng ở mức báo động về số lượng, đa dạng về hình thức, tinh vi hơn về công nghệ.
Trước các nguy cơ tấn công mạng, theo chỉ thị 897/CT-TTg ngày 10/6/2011 của Thủ tướng Chính phủ V/v tăng cường triển khai các hoạt động đảm bảo an toàn thông tin số, Thủ tướng đã yêu cầu các Bộ, ngành, địa phương triển khai áp dụng các giải pháp đảm bảo an toàn thông tin, chống virus và mã độc hại cho các hệ thống thông tin và máy tính cá nhân có kết nối mạng Internet. Đặc biệt, đối với các hệ thống thông tin quan trọng, các cổng, trang thông tin điện tử quan trọng, nhất thiết phải áp dụng chính sách ghi lưu tập trung biên bản hoạt động cần thiết để phục vụ công tác điều tra và khắc phục sự cố mạng với thời hạn lưu giữ theo hướng dẫn của Bộ Thông tin và Truyền thông, nhưng không ít hơn 3 tháng. Ngoài ra, các đơn vị phải bố trí
cán bộ quản lý, cán bộ kỹ thuật phù hợp chịu trách nhiệm đảm bảo an toàn cho các hệ thống thông tin số, đồng thời phổ biến kiến thức, kỹ năng cho người dùng máy tính về phòng, chống các nguy cơ mất an toàn thông tin số khi sử dụng mạng Internet.
Do mức độ các website bị tấn công dồn dập và với số lượng lớn như trên, nhiều chuyên gia công nghệ cho rằng, nguyên nhân là do hacker đã chiếm được một máy chủ của một nhà cung cấp dịch vụ hosting để từ đó tấn công giao diện hàng loạt website trên đó. Vì thế, các đơn vị lúc này cần nhanh chóng rà soát lại toàn bộ hệ thống bảo đảm an toàn, quy trình xử lý thông tin để khắc phục và đề phòng cho những đợt tấn công có thể xảy ra. Theo nhận định các chuyên gia an ninh mạng, các cuộc tấn công của tin tặc ngày càng tăng mạnh và việc bảo mật yếu kém của các cơ quan, tổ chức, doanh nghiệp đã biến không gian mạng Việt thành nơi ưa thích của giới tin tặc quốc tế.
Thực tế những cuộc tấn công của các hacker vừa qua là những cuộc tấn công có thể thống kê được. Những cuộc tấn công này bị các hacker làm tê liệt hệ thống website ở Việt Nam hoặc làm thay đổi giao diện, hoạt động của web. Tình hình an ninh mạng ngày càng trở nên phức tạp, chỉ trong năm 2014 đã có rất website của các cơ quan, doanh nghiệp tại Việt Nam bị hacker xâm nhập.
Các trang web ở Việt Nam bị tấn công khá đa dạng, trong đó có cả các website có dạng gov.vn, tức các website của các cơ quan của Chính phủ, các sở, bộ, ban ngành đến cả các trang web của các doanh nghiệp như .com, .vn, org.vn... Thậm chí, theo thống kê, có những website bị tấn công vài lần trong năm, cho cùng một lỗ hổng. Điều đó cho thấy, bộ phận quản trị mạng của các cơ quan chủ quản về nhận thức bảo vệ website chưa cao.
Mặc dù có thể ước lượng con số, song thực tế, mức độ thiệt hại mà các trang web ở Việt Nam bị các hacker nước ngoài tấn công chưa có thống kê chính xác. Chưa kể, còn rất nhiều cuộc tấn công nguy hiểm mà chúng ta chưa
phát hiện ra. Thiệt hại ở đây được tính là các trang web bị tạm dừng hoạt động, công sức bỏ ra để khắc phục hệ thống, vá lỗ hổng, thiệt hại đến uy tín của doanh nghiệp, mất khách hàng...
Trước những thông tin có rất nhiều website bị tấn công bởi hacker nước ngoài, nhiều người lo ngại việc sử dụng máy tính bị lén cài mã độc sẽ càng trở nên nguy hiểm. Vì thế, nếu phát sinh thì cũng thuộc diện nguy cơ tiềm ẩn. Tìm hiểu trên thực tế, nhiều máy tính của cơ quan Nhà nước, doanh nghiệp, người dân... đã bị tấn công, đánh cắp dữ liệu, thậm chí nhiều người tham gia các mạng xã hội bị kiểm soát mà không hay biết.
Qua những số liệu thống kê về hacker nước ngoài tấn công mạng ở Việt Nam, ta thấy được các nguy cơ tiềm ẩn trong các giao dịch trên website và thực trạng an ninh an toàn website hiện từ đó có các biện pháp phòng ngừa, ngăn chặn.
2.3. Các loại hình tấn công website 2.3.1. Tấn công vào vùng ẩn 2.3.1. Tấn công vào vùng ẩn 2.3.1. Tấn công vào vùng ẩn
Các phần bị giấu đi trong trang Web thường được dùng để lưu thông tin về phiên làm việc của client, phiên làm việc này được ghi nhớ ở máy khách (client) chứ không cần phải tổ chức CSDL phức tạp trên máy chủ. Tuy vậy, phần bị giấu đi này không "ẩn" thực sự, chức năng "View Source" (xem mã nguồn) của trình duyệt cho phép đọc được mã nguồn của phần bị giấu của trang Web. Dựa vào mã nguồn này hacker có thể giả lập phiên làm việc để truy cập thông tin trên máy chủ.
2.3.2. Can thiệp vào tham số trên URL
Đây là cách thức tấn công bằng cách đưa tham số trực tiếp vào địa chỉ URL để truy cập thông tin không dành cho người dùng (người dùng thao tác qua giao diện trên trình duyệt không thể thấy được các thông tin này). Câu lệnh SQL truy cập CSDL nền của ứng dụng trên Web thường được thể hiện
trên địa chỉ URL. Dùng các câu lệnh SQL để khai thác CSDL trên server bị lỗi, điển hình nhất là tấn công bằng "SQL INJECT". Khi hacker gửi những dữ liệu (thông qua các form), ứng dụng web sẽ thực hiện và trả về trình duyệt kết quả câu truy vấn hay những thông báo lỗi có liên quan đến CSDL và từ đó có thể điều khiển toàn bộ hệ thống ứng dụng.
SQL Injection là một kĩ thuật cho phép những kẻ tấn công thi hành các câu lệnh truy vấn SQL bất hợp pháp (người phát triển không lường trước được) bằng cách lợi dụng lỗ hổng trong việc kiểm tra dữ liệu nhập từ các ứng dụng web. Hậu quả này rất tai hại vì nó cho phép kẻ tấn công có toàn quyền, hiệu chỉnh… trên cơ sở dữ liệu của ứng dụng. Lỗi này thường xảy ra trên các ứng dụng web có dữ liệu được quản lí bằng các hệ quản trị CSDL như SQL Server, Oracle, DB2, Sysbase.
Tác hại của dạng tấn công SQL Injection tùy thuộc vào môi trường và cách cấu hình hệ thống. Nếu ứng dụng sử dụng quyền dbo (quyền của người sở hữu CSDL) khi thao tác dữ liệu, nó có thể xóa toàn bộ các bảng dữ liệu, tạo các bảng dữ liệu mới… Nếu ứng dụng sử dụng quyền sa (quyền quản trị hệ thống), nó có thể điều khiển toàn bộ hệ CSDL và thậm chí có thể tạo ra các tài khoản người dùng bất hợp pháp để điều khiển hệ thống.
Để phòng tránh các nguy cơ có thể xảy ra, hãy bảo vệ các câu truy vấn SQL bằng cách kiểm soát chặt chẽ tất cả các dữ liệu nhập nhận được từ đối tượng Request (Request, Request. QueryString, Request.Form, Request. Cookies, và Request.Server Variables).
Cuối cùng, để hạn chế thiệt hại do tấn công SQL Injection, nên kiểm soát chặt chẽ và giới hạn quyền xử lí dữ liệu của tài khoản người dùng mà ứng dụng web đang sử dụng. Các ứng dụng thông thường nên tránh dùng các quyền như dbo hay sa. Quyền càng hạn chế, thiệt hại càng ít.
2.3.3. Tấn công dùng cookie
Cookie là những phần dữ liệu nhỏ, có cấu trúc được chia sẻ giữa trình chủ và trình duyệt của người dùng chứa thông tin về người dùng đã ghé thăm trang web, những vùng mà họ đã đi qua trong trang web và lưu trên đĩa cứng của máy tính. Những người biết tận dụng những thông tin này có thể gây nên những hậu quả nghiêm trọng.
2.3.4. Tấn công từ chối dịch vụ DoS (Denial of Service)
Là các cuộc tấn công trên hệ thống mạng nhằm ngăn cản những truy xuất tới các dịch vụ, làm cho các dịch vụ mạng bị tê liệt, không còn khả năng đáp ứng được yêu cầu bằng cách làm tràn ngập số lượng kết nối, quá tải server hoặc ứng dụng chạy trên server.
Hình 2.2: Mô tả tấn công DoS