BỘ THÔNG TIN VÀ
TRUYỀN THÔNG
--------

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
----------------

Số: 2132/BTTTT-VNCERT
V/v Hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Trang thông tin điện tử

Hà Nội, ngày 18 tháng 07 năm 2011

Kính gửi:

- Các Bộ, cơ quan ngang Bộ, cơ quan trực thuộc Chính phủ;
- UBND các tỉnh, thành phố trực thuộc Trung ương.

Thựchiện chỉ đạo của Thủ tướng Chính phủ về việc đảm bảo an toàn thông tin cho cáccổng thông tin điện tử, đồng thời để thống nhất về nội dung và phương pháp quảnlý an toàn thông tin theo yêu cầu của Nghị định của Chính phủ số 43/2011/NĐ-CPngày 13/6/2011, Bộ Thông tin và Truyền thông hướng dẫn các cơ quan nhà nướctriển khai áp dụng tài liệu “Hướng dẫn một số biện pháp kỹ thuật cơ bản đảm bảoan toàn cho cổng/trang thông tin điện tử” Tài liệu này bao gồm một số biện phápkỹ thuật thiết yếu nhất nhằm đảm bảo xây dựng và vận hành an toàn cáccổng/trang thông tin điện tử và được trình bày trong văn bản gửi kèm theo côngvăn này.

Trongquá trình triển khai thực hiện, mọi góp ý và đề xuất xin đề nghi Quý cơ quanphản ánh về Bộ Thông tin và Truyền thông, Trung tâm ứng cứu khẩn cấp máy tínhViệt Nam (VNCERT).

Xintrân trọng cám ơn./.

Nơi nhận:
- Như trên;
-
Phó TTg CP Nguyễn Thiện Nhân (để b/c);
- Bộ TT&TT: Bộ trưởng và các Thứ trưởng, các cơ quan đơn vị thuộc Bộ;
- Văn phòng TW Đảng;
- Văn phòng Quốc hội;
- Văn phòng Chính phủ;
- Cơ quan TW các đoàn thể;
- Tòa án nhân dân tối cao;
- Viện kiểm sát nhân dân tối cao;
- Kiểm toán nhà nước;
- Ban chỉ đạo quốc gia về CNTT;
- Ban chỉ đạo CNTT các cơ quan Đảng;
- Đơn vị chuyên trách CNTT các Bộ, cơ quan
ngang Bộ, cơ quan chính phủ;
- Sở TT&TT các tỉnh, TP thuộc TW;
- Các tập đoàn kinh tế NN;
- Lưu VT, VNCERT.

KT. BỘ TRƯỞNG
THỨ TRƯỞNG




Nguyễn Minh Hồng

HƯỚNG DẪN

MỘT SỐ BIỆN PHÁP KỸ THUẬT CƠ BẢN ĐẢM BẢO AN TOÀN CHOCỔNG/TRANG THÔNG TIN ĐIỆN TỬ
(Kèm theo công văn số 2132/BTTTT-VNCERT ngày 18/7/2011 của Bộ Thông tin vàTruyền thông)

1. PHẠM VI VÀ ĐỐI TƯỢNG ÁP DỤNG

1.1. Phạm vi áp dụng

Tàiliệu hướng dẫn này được xây dựng nhằm mục đích cung cấp những kiến thức và chỉdẫn kỹ thuật Cơ bản về việc đảm bảo an toàn thông tin (ATTT) đối với hệ thốngphần cứng và phần mềm thuộc cổng/trang thông tin điện tử (TTĐT), các yêu cầuthiết lập hệ thống phòng thủ và bảo vệ, qua đó giúp các đơn vị quản lýcổng/trang TTĐT có thể đánh giá mức độ ATTT và lựa chọn giải pháp phù hợp nhằmxây dựng một cổng/trang TTĐT an toàn.

1.2. Đối tượng áp dụng

Cáccổng/trang TTĐT của các cơ quan nhà nước và các doanh nghiệp được khuyến cáo tổchức thực hiện áp dụng tối đa các biện pháp này trong điều kiện cụ thể chophép.

2. TỔNG QUAN VỀ CÁC BIỆN PHÁP KỸ THUẬT CƠ BẢN ĐẢM BẢOATTT CHO CỔNG/TRANG TTĐT

Mộtứng dụng web nói chung hay cổng/trang TTĐT nói riêng khi triển khai được trênmạng Internet ngoài yếu tố mã nguồn ứng dụng web, còn có những thành phần khácnhư: máy chủ phục vụ web, hệ quản trị cơ sở dữ liệu,... Do vậy, một cổng/trangTTĐT an toàn đòi hỏi bản thân mã nguồn của cổng phải được lập trình an toàn,tránh các lỗi bảo mật xảy ra trên ứng dụng web và các thành phần bổ trợ như máychủ phục vụ web và hệ quản trị cơ sở dữ liệu cho ứng dụng đó cũng phải đảm bảoan toàn.

Cácbiện pháp đảm bảo ATTT cho cổng/trang TTĐT cần được triển khai cho toàn bộ cácthành phần của cổng/trang TTĐT, bao gồm các nội dung sau (xem hình 1):


Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Hình 1. Nội dung đảm bảo ATTT cho cổng/trang TTĐT


- Xácđịnh cấu trúc web: giúp người quản trị xác định được mô hình thiết kế webcủa đơn vị, qua đó có biện pháp tổ chức mô hình web hợp lý, tránh được các khảnăng tấn công leo thang đặc quyền.

- Triểnkhai hệ thống phòng thủ: gồm hai nội dung chính là tổ chức mô hình mạng hợplý và tổ chức các hệ thống phòng thủ, giúp người quản trị có cách nhìn tổng quanvề toàn bộ mô hình mạng của cổng/trang TTĐT của mình, qua đó tổ chức mô hìnhmạng hợp lý cũng như thiết đặt các hệ thống phòng thủ quan trọng như tường lửa(firewall), thiết bị phát hiện/phòng, chống xâm nhập (IDS/IPS), tường lửa mứcứng dụng web (WAF-web application firewall).

- Thiếtđặt và cấu hình hệ thống máy chủ an toàn: đây là một phần rất quan trọngtrong việc đảm bảo vận hành một cổng/trang TTĐT an toàn. Nội dung này giúpngười quản trị cấu hình hệ thống máy chủ một cách hợp lý, giảm thiểu khả năngbị tin tặc tấn công vào máy chủ làm ảnh hưởng đến hoạt động của cổng/trangTTĐT.

- Vậnhành ứng dụng web an toàn: trình bày các nội dung cơ bản cần thực hiện đểvận hành một ứng dụng web an toàn. Người quản trị có thể tham khảo phần Phụ lụcI “Mười lỗi ATTT phổ biến trên cổng/trang TTĐT” để qua đó nhận diện nguy cơ mắclỗi của cổng/trang TTĐT tại đơn vị, có biện pháp khắc phục hợp lý hoặc sửa đổimã nguồn web để loại bỏ các nguy cơ nói trên.

- Thiếtđặt và cấu hình cơ sở dữ liệu an toàn: đây cũng là một phần rất quan trọngtrong việc vận hành một cổng/trang TTĐT. Cơ sở dữ liệu là nơi lưu trữ toàn bộdữ liệu quan trọng của cổng/trang TTĐT, vì vậy thường bị tin tặc tìm cách tấncông và khai thác. Nội dung này giúp người quản trị hiểu yêu cầu thiết đặt hợplý cho cơ sở dữ liệu, tránh các lỗi có thể dẫn đến khả năng bị tấn công.

- Càiđặt các ứng dụng bảo vệ: ngoài việc khắc phục lỗi cho các thành phần củamột cổng/trang TTĐT, nội dung này sẽ trình bày việc cài đặt các ứng dụng bảo vệnhư hệ thống chống virus (Anti-Virus) hay hệ thống phát hiện xâm nhập máy tính(Host Based IDS) nhằm bảo vệ cổng/trang TTĐT một cách chủ động và tổng quát.

- Thiếtlập cơ chế sao lưu và phục hồi: Việc thiết lập cơ chế sao lưu thường xuyêncho hệ thống nhằm giúp lưu lại các tình trạng khi hệ thống hoạt động ổn định.Các bản sao lưu này sẽ được sử dụng trong trường hợp kiểm tra lỗi hệ thống hoặcphục hồi hệ thống ở trạng thái trước khi bị tấn công trong trường hợp lỗi khôngthể khắc phục hay sửa chữa.

- Mộtsố biện pháp kỹ thuật chống tấn công từ chối dịch vụ: đây là nội dung cuốicùng trong tài liệu này nhằm cung cấp định hướng nâng cao năng lực chống tấncông từ chối dịch vụ DoS và DDoS cho các cổng/trang TTĐT.

3. NỘI DUNG CÁC BIỆN PHÁP KỸ THUẬT CƠ BẢN ĐẢM BẢO ATTT

3.1. Xác định cấu trúc của web

Mộtứng dụng web khi triển khai, về cơ bản sẽ có 3 lớp như sau: lớp trình diễn, lớpứng dụng và lớp cơ sở dữ liệu.

Lớptrình diễn (Web Server) là nơi mà máychủ cài đặt có tác dụng phục vụ các yêu cầu về Web hay nói cách khác, lớp trìnhdiễn là máy chủ phục vụ web (có thể là: IIS Server, Apache HTTP Server, ApacheTomcat Server,...).

Lớpứng dụng (Web Application) là nơi cáckịch bản hay mã nguồn phát triển ra ứng dụng web thực thi (có thể là: ASP.NET,PHP, JSP, Perl, Python,...).

Lớpcơ sở dữ liệu (Database Server) lànơi mà ứng dụng web lưu trữ và thao tác với dữ liệu (thường dựa trên nền các hệquản trị cơ sở dữ liệu (CSDL) như: Oracle, SQL Server, MySQL,...).

Việchoạch định tốt các lớp trong cấu trúc web không những giúp người quản trị dễvận hành mà còn chủ động trong phòng, chống các nguy cơ tấn công từ tin tặc.Một số cách bố trí lớp thường gặp trong thực tế như trên hình vẽ 2.

Mỗilớp nên khởi tạo một cơ chế phòng thủ riêng cho mình để chống lại những hànhđộng không được phép và không nên “tin tưởng” những lớp khác để tránh tình trạngtấn công leo thang. Một số kịch bản thông dụng:

-Lớp trình diễn có thể áp đặt cơ chế điều khiển truy cập trên một tài nguyên. Vídụ khi lập chính sách truy cập một tài nguyên nào đó trên hệ thống, chẳng hạnnhư thư mục /admin, có thể cài đặt cấu hình lớp trình diễn yêu cầu xác thực vớiquyền quản trị (administrator). Điều này sẽ hạn chế ảnh hưởng từ lớp ứng dụngcó thể sử dụng nhiều kịch bản để truy cập đến tài nguyên trên.

- Lớpcơ sở dữ liệu có thể cung cấp các tài khoản khác nhau với những quyền hành độngkhác nhau. Ví dụ như với nhóm người sử dụng có tên tài khoản chưa được chứngthực thì thiết đặt quyền thấp nhất là chỉ có thể đọc, còn các thao tác ghi,thay đổi, thực thi là không được phép. Nếu tài khoản được chứng thực thì cũngchỉ được ghi, thay đổi, thực thi trên CSDL đã được chỉ định và chỉ có tác dụngtrong phạm vi CSDL đã được cấu hình từ trước.

- Cáclớp khác nhau không nên cho phép truy cập đọc hoặc ghi bởi lớp khác. Ví dụ: lớptrình diễn không có khả năng truy cập đến tập tin vật lý được sử dụng lưu trữdữ liệu tại lớp CSDL mà chỉ có khả năng truy cập dữ liệu này thông qua các truyvấn với các tài khoản phù hợp (truy cập ở cấp độ ứng dụng). Các dịch vụ giaotiếp giữa các lớp trên cấp độ mạng cũng nên được lọc để chỉ cho phép các dịchvụ cần thiết được thực thi. Ví dụ: chỉ cho phép kết nối đến hệ quản trị cơ sởdữ liệu SQL Server trên cổng TCP 1433, còn các cổng khác thì phải được lọc hoặckhông cho phép.


Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Hình 2. Các mô hình triển khai cổng/trang TTĐT


Việcphân tích các mô hình trên cho thấy, nếu giữa các lớp không có sự tách biệt rõràng thì khi một lớp bị tin tặc tấn công và chiếm quyền kiểm soát có thể dẫnđến các lớp khác cũng bị ảnh hưởng theo. Ví dụ trường hợp tất cả ứng dụng web,cơ sở dữ liệu đều được đặt trên máy chủ phục vụ web thì khi tin tặc tấn côngvào máy chủ phục vụ web có thể dẫn đến mã nguồn và cơ sở dữ liệu của ứng dụngđó bị xâm phạm. Do vậy, khi triển khai thực tiễn nên thiết kế tách biệt độc lậptheo mô hình 3 lớp để tránh tình trạng một lớp bị tấn công và chiếm quyền kiểmsoát dẫn đến các lớp khác bị ảnh hưởng. Việc phân loại độc lập 3 lớp như trênsẽ tạo điều kiện thuận lợi cho việc vận hành, bảo trì hệ thống cũng như dễ dàngáp dụng các biện pháp bảo vệ đối với mỗi lớp riêng biệt.

Trongtrường hợp có khó khăn, hạn chế về nguồn lực xây dựng cổng/trang -TTĐT thì vẫnnên áp dụng tối thiểu mô hình hai lớp với lớp cơ sở dữ liệu được tách biệt độclập.

3.2. Triển khai hệ thống phòng thủ

3.2.1.Tổ chức mô hình mạng hợp lý

Việctổ chức mô hình mạng hợp lý có ảnh hưởng lớn đến sự an toàn cho các cổng/trangTTĐT. Đây là cơ sở đầu tiên cho việc xây dựng các hệ thống phòng thủ và bảo vệ.Ngoài ra, việc tổ chức mô hình mạng hợp lý có thể hạn chế được các tấn công từbên trong và bên ngoài một cách hiệu quả.

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Hình 3. Mô hình mạng tổng quan

Trongmột mô hình mạng hợp lý cần phải phân biệt rõ ràng giữa các vùng mạng theo chứcnăng và thiết lập các chính sách an toàn thông tin riêng cho từng vùng mạngtheo yêu cầu thực tế:

- Vùngmạng Internet (hay Untrusted Network): còn gọi là mạng ngoài.

- Vùngmạng DMZ Network: Đặt các máy chủ cung cấp dịch vụ trực tiếp ra mạng Internetnhư web server, mail server, FTP Server, v.v...

- Vùngmạng Server Network (hay Server Farm): Đặt các máy chủ không trực tiếp cung cấpdịch vụ cho mạng Internet.

- Vùngmạng Private Network: Đặt các thiết bị mạng, máy trạm và máy chủ thuộc mạng nộibộ của đơn vị.

Mộtsố khuyến cáo khi tổ chức mô hình mạng:

- Nênđặt các máy chủ web, máy chủ thư điện tử (mail server), v.v... cung cấp dịch vụra mạng Internet trong vùng mạng DMZ, nhằm tránh các tấn công mạng nội bộ hoặcgây ảnh hưởng tới an toàn mạng nội bộ nếu các máy chủ này bị cướp quyền điềukhiển. Chú ý không đặt máy chủ web, mail server hoặc các máy chủ chỉ cung cấpdịch vụ cho nội bộ cơ quan trong vùng mạng này.

- Cácmáy chủ không trực tiếp cung cấp dịch vụ ra mạng ngoài như máy chủ ứng dụng,máy chủ cơ sở dữ liệu, máy chủ xác thực v.v... nên đặt trong vùng mạng servernetwork để tránh các tấn công trực diện từ Internet và từ mạng nội bộ. Đối vớicác hệ thống thông tin yêu cầu có mức bảo mật cao, hoặc có nhiều cụm máy chủkhác nhau có thể chia vùng server network thành các vùng nhỏ hơn độc lập đểnâng cao tính bảo mật.

- Nênthiết lập các hệ thống phòng thủ như tường lửa (firewall) và thiết bị pháthiện/phòng chống xâm nhập (IDS/IPS) để bảo vệ hệ thống, chống tấn công và xâmnhập trái phép. Khuyến cáo đặt firewall và IDS/IPS ở các vị trí như sau: đặtfirewall giữa đường nối mạng Internet với các vùng mạng khác nhằm hạn chế cáctấn công từ mạng từ bên ngoài vào; đặt firewall giữa các vùng mạng nội bộ vàmạng DMZ nhằm hạn chế các tấn công giữa các vùng đó; đặt IDS/IPS tại vùng cầntheo dõi và bảo vệ.

- Nênđặt một Router ngoài cùng (Router biên) trước khi kết nối đến nhà cung cấp dịchvụ internet (ISP) để lọc một số lưu lượng không mong muốn và chặn những gói tinđến từ những địa chỉ IP không hợp lệ.

3.2.2.Tổ chức các hệ thống phòng thủ

3.2.2.1.Firewall (Tường lửa)

Firewalllà một thiết bị phần cứng hoặc một phần mềm hoạt động trong một môi trường máytính nối mạng nhằm ngăn chặn những lưu lượng bị cấm bởi chính sách an ninh củamột cá nhân hay một tổ chức. Mục đích của việc sử dụng Firewall là:

- Bảovệ hệ thống khi bị tấn công.

- Lọccác kết nối dựa trên chính sách truy cập nội dung.

- Ápđặt các chính sách truy cập đối với người dùng hoặc nhóm người dùng.

- Ghilại nhật ký để hỗ trợ phát hiện xâm nhập và điều tra sự cố.

Cầnthiết lập luật cho Firewall từ chối tất cả các kết nối từ bên trong Web Serverra ngoài Internet ngoại trừ các kết nối đã được thiết lập - tức là chỉ từ chốitất cả các gói tin TCP khi xuất hiện cờ SYN. Điều này sẽ ngăn chặn việc nếu nhưtin tặc có khả năng chạy các kịch bản mã độc trên Web Server thì cũng không thểcho các mã độc nối ngược từ Web Server trở về máy tính của tin tặc.

Tuynhiên, hạn chế của Firewall là có thể làm chậm quá trình kết nối và trong mộtsố trường hợp đối với một số người có hiểu biết thì có thể vượt qua đượcFirewall. Vì thế cần chú trọng đến việc bảo vệ hệ thống theo chiều sâu.

3.2.2.2.IDS/IPS (Thiết bị phát hiện/phòng, chống xâm nhập)

Các thiếtbị IDS có tính năng phát hiện dấu hiệu các xâm nhập trái phép, còn các thiết bịIPS có tính năng phát hiện và ngăn chặn việc xâm nhập trái phép của tin tặc vàohệ thống. Như các thiết bị mạng, IDS/IPS cũng có thể bị tấn công và chiếm quyềnkiểm soát và do đó bị vô hiệu hóa bởi tin tặc. Vì vậy cần thiết đảm bảo thựchiện một số tiêu chí khi triển khai và vận hành, gồm:

- Xácđịnh công nghệ IDS/IPS đã, đang hoặc dự định triển khai.

- Xácđịnh các thành phần của IDS/IPS.

- Thiếtđặt và cấu hình an toàn cho IDS/IPS.

- Xácđịnh vị trí hợp lý để đặt IDS/IPS.

- Cócơ chế xây dựng, tổ chức, quản lý hệ thống luật (rule).

- Hạnchế thấp nhất các tình huống cảnh báo nhầm (false positive) hoặc không cảnh báokhi có xâm nhập (false negative).

3.2.2.3.WAF (Tường lửa ứng dụng web)

MộtWAF thường là một phần mềm, hay một thành phần nhúng được cài ngay trên máy chủphục vụ web. Đôi khi WAF cũng được cung cấp như một thiết bị phần cứng có càiđặt sẵn phần mềm bên trong. WAF hoạt động bằng cách sử dụng một bộ lọc với các“luật” được định nghĩa trước hoặc do người dùng thêm vào để giám sát các dữliệu trao đổi với ứng dụng web thông qua giao thức HTTP. Những quy tắc này cóthể giúp phát hiện và chặn các truy vấn nhằm tấn công vào các lỗi phổ biến nhưCross-site Scripting (XSS), SQL Injection, OS command Injection, PathTravesal,... cũng như một số lỗi khác được nêu trong danh mục “OWASP Top 10” (http://en.wikipedia.org/wiki/Application_firewall)

Cácdữ liệu đi vào hoặc đi ra khỏi ứng dụng web sẽ được WAF kiểm tra so sánh vớicác dấu hiệu được định nghĩa sẵn và quyết định cho phép dữ liệu đi qua hay chặncác dữ liệu đó lại. Đây là một quá trình lọc mà các thiết bị tường lửa lớp dướikhông thực hiện được. Việc triển khai WAF sẽ phần nào hạn chế được các sai sótcủa người lập trình ứng dụng web. Các WAF nên được cài đặt giữa mỗi lớp trongkiến trúc web.

Xemthông tin tham khảo về các WAF tại Phụ lục II.

3.3. Thiết đặt và cấu hình hệ thống máy chủ an toàn

Đểvận hành một máy chủ an toàn, việc cần lưu ý đầu tiên là luôn cập nhật phiênbản và bản vá mới nhất cho hệ thống. Ngoài ra, với mỗi loại máy chủ khác nhausẽ có những biện pháp thiết đặt và cấu hình cụ thể để đảm bảo vận hành an toàn.

3.3.1.Hệ thống máy chủ Linux

- Đốivới hệ thống cài đặt mới thì phải đảm bảo một số yêu cầu sau:

+Khả năng hỗ trợ từ các bản phân phối (thông tin vá lỗi, thời gian cập nhật,nâng cấp, kênh thông tin hỗ trợ kỹ thuật).

+ Khảnăng tương thích với các sản phẩm của bên thứ 3 (tương thích giữa nhân hệ điềuhành với các ứng dụng, cho phép mở rộng module).

+Khả năng vận hành và sử dụng hệ thống của người quản trị (thói quen, kỹ năng sửdụng, tính tiện dụng).

- Tốiưu hóa hệ điều hành về các mặt sau:

+Chính sách mật khẩu: sử dụng cơ chế mật khẩu phức tạp (trên 7 ký tự và bao gồm:ký tự hoa, ký tự thường, ký tự đặc biệt và chữ số) nhằm chống lại các kiểu tấncông brute force.

+Tinh chỉnh các thông số mạng: tối ưu hóa một số thông tin trong tập tin/etc/sysctl.conf.

+Cho phép hoặc không cho phép các dịch vụ truy cập đến hệ thống thông qua haitập tin /etc/hosts.allow và /etc/host.deny.

+ Gỡbỏ các dịch vụ không cần thiết: việc gỡ bỏ các gói, dịch vụ không cần thiết sẽhạn chế khả năng tiếp cận của kẻ tấn công và cải thiện hiệu năng của hệ thống.

+Điều khiển truy cập: chỉ định các truy cập được phép đến hệ thống thông qua tậptin /etc/security/access.conf, /etc/security/time.conf, /etc/security/limits.conf,giới hạn tài khoản được phép sử dụng quyền sudo thông qua tập tin/etc/pam.d/su.

+ Sửdụng kết nối SSH thay cho các kênh kết nối không an toàn như Telnet, FTP,v.v...

+Quản lý hệ thống ghi nhật ký (log) một cách tập trung và nhất quán nhằm phục vụcho mục đích điều tra khi có sự cố xảy ra.

3.3.2.Hệ thống máy chủ Windows

Máychủ Windows được sử dụng khá phổ biến, việc bảo vệ cho máy chủ Windows là thực sựcần thiết. Để đảm bảo cho hệ thống cần thực hiện một số biện pháp sau:

- Đốivới các dịch vụ và cổng:

+Các dịch vụ đang chạy thiết lập với tài khoản có quyền tối thiểu.

+ Vôhiệu hóa các dịch vụ DHCP, DNS, FTP, WINS, SMTP, NNTP, Telnet và các dịch vụ khôngcần thiết khác nếu không có nhu cầu sử dụng.

+Nếu là ứng dụng web thì chỉ mở cổng 80 (và cổng 443 nếu có SSL).

- Đốivới các giao thức:

+ Vôhiệu hóa WebDAV nếu không sử dụng bởi ứng dụng nào hoặc nếu nó được yêu cầu thìnó phải được bảo mật.

+ Vôhiệu hóa NetBIOS và SMB (đóng các cổng 137, 138, 139 và 445).

- Tàikhoản và nhóm người dùng:

+ Gỡbỏ các tài khoản chưa sử dụng khỏi máy chủ.

+ Vôhiệu hóa tài khoản Windows Guest.

+Đổi tên tài khoản Administrator và thiết lập một mật khẩu mạnh.

+ Vôhiệu hóa tài khoản IUSR_MACHINE nếu nó không được sử dụng bởi ứng dụng khác.

+Nếu một ứng dụng khác yêu cầu truy cập anonymous, thì thiết lập tài khoảnanonymous có quyền tối thiểu.

+Chính sách về tài khoản và mật khẩu phải đảm bảo an toàn, sử dụng cơ chế mậtkhẩu phức tạp (trên 7 ký tự và bao gồm: ký tự hoa, ký tự thường, ký tự đặc biệtvà chữ số).

+Phải giới hạn Remote logons. (Chức năng này phải được gỡ bỏ khỏi nhómEveryone).

+Tắt chức năng Null sessions (anonymous logons).

- Tậptin và thư mục:

+Tập tin và thư mục phải nằm trên phân vùng định dạng NTFS.

+Tập tin nhật ký (log) không nằm trên phân vùng NTFS hệ thống.

+Các nhóm Everyone bị giới hạn (không có quyền truy cập vào \Windows\system32).

+Mọi tài khoản anonymous bị cấm quyền ghi (write) vào thư mục gốc.

- Tàinguyên chia sẻ:

+ Gỡbỏ tất cả các chia sẻ không sử dụng (bao gồm cả chia sẻ mặc định).

+Các chia sẻ khác (nếu có) cần được giới hạn (nhóm Everyone không được phép truycập).

- Cácphiên bản vá lỗi:

+Cập nhật các phiên bản mới nhất.

+ Theodõi thông tin cập nhật từ nhiều nguồn khác nhau.

+Nên triển khai cập nhật trên hệ thống thử nghiệm trước khi cập nhật vào hệthống thật.

3.3.3.Máy chủ web

3.3.3.1.Máy chủ IIS:

Máychủ IIS được sử dụng khá phổ biến hiện nay trên các máy chủ Windows. Để bảo vệcho máy chủ IIS cần thực hiện một số biện pháp sau:

- Nênsử dụng các giao thức mã hóa như SSL hoặc TLS nhằm mã hóa các kết nối an toàn.

- Cầnthiết lập các thuộc tính trong Audit Policy trên máy chủ IIS trong môi trườnglàm việc đảm bảo toàn bộ thông tin của người dùng khi đăng nhập vào hệ thống sẽđều được ghi lại. Tất cả những dữ liệu khi truy cập đều được ghi lại nhật ký.

- Cầnthiết lập “Deny access to this Computer from the network”, với thiết lậpnày sẽ quyết định những tài khoản nào bị cấm truy cập tới máy chủ IIS từ mạngvà các tài khoản người dùng sẽ bị hạn chế và đảm bảo tính bảo mật cao hơn. Sauđây là những tài khoản người dùng cần phải thiết lập chế độ cấm nêu trên:ANONYMOUS LOGON, Built-in Administrator và Guest.

- Nêntắt tất cả chi tiết thông báo lỗi mà có khả năng đưa ra quá nhiều thông tin.Việc đưa ra quá chi tiết các thông báo lỗi sẽ dẫn đến việc các tin tặc có thểlợi dụng để tìm hiểu thông tin về hệ thống.

- Nêncài đặt thư mục gốc của ứng dụng web trên phân vùng đĩa có định dạng NTFS, bởivì khả năng kiểm soát quyền truy cập trên hệ thống tập tin với phân vùng địnhdạng NTFS mạnh hơn so với các định dạng FAT, FAT32. Khi đã cài đặt thư mục gốctrên phân vùng NTFS thì cũng phải thiết lập quyền truy cập thấp nhất cho thưmục gốc này, tránh trường hợp thư mục gốc của ứng dụng web được mặc định làEveryone: Full Control.

- TrongIIS có rất nhiều thành phần (module) bổ trợ. Nên gỡ bỏ những thành phần khôngcần thiết ra khỏi IIS được cài đặt, vì những thành phần này khi bị lỗi có khả năngdẫn đến IIS bị tấn công và chiếm quyền kiểm soát một cách gián tiếp.

- Nêncài đặt URLScan để bổ sung thêm nhiều tính năng bảo mật cho IIS.

3.3.3.2.Apache HTTP:

Mộtsố biện pháp cần thực hiện nhằm bảo vệ máy chủ Apache HTTP một cách an toàn:

- Tốiưu hóa việc sử dụng các thành phần (module) bằng việc gỡ bỏ những thành phầnkhông cần thiết. Một số thành phần khuyến cáo nên gỡ bỏ ra khỏi Apache là: mod_userid,mod_info, mod_status, mod_include.

- Giớihạn các quyền truy cập: Tạo các tài khoản, nhóm người dùng riêng (khác root) đểthực thi apache. Không cho phép sử dụng các tài khoản này để đăng nhập bằngcách chỉnh sửa nội dung trong tập tin passwd.

- Điềukhiển truy cập: Sử dụng các chỉ mục (Directory) để điều khiển quá trình truycập đến các thư mục hệ thống cần hạn chế quyền thâm nhập (ví dụ như các thưmục: root, admin, administrator). Không cho phép duyệt qua thư mục gốc (root). Cấuhình được thiết lập trong tập tin cấu hình httpd.conf:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

- Hạnchế tối đa việc sử dụng các lựa chọn (option) sau: MultiViews, ExecCGI,FollowSymLinks, SymLinksIfOwnerMatch. Gỡ bỏ tất cả các trang html mặc định,hướng dẫn sử dụng, thông tin liên quan về web server, điều khiển Server Status,Server Information. Tắt chức năng HTTP TRACE. Bảo vệ các tập tin cấu hình.htaccess.

- Tổchức quá trình ghi nhật ký: Cấu hình Error Log, cấu hình Access Log theo một sốgợi ý sau:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

- Đốivới một số trang thông tin cần mã hóa truy cập có thể sử dụng qua SSL/TLS nhờ modulemod_ssl.

- Hạnchế các thông tin về Web Server:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

- Điềuchỉnh các thông số tối ưu: một số thiết lập tham khảo:

+Thông số timeout:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Thông số KeepAlive:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Thông số MaxKeepAIiveRequests:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Thông số KeepAliveTimeout:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Thêm các thông số sau:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

3.3.3.3.Apache Tomcat:

Mộtsố biện pháp cần thực hiện nhằm bảo vệ máy chủ Apache Tomcat một cách an toàn:

- Gỡbỏ các tài nguyên không liên quan: Trong quá trình cài đặt có thể xuất hiện cácứng dụng mẫu, tài liệu hướng dẫn và một số các thư mục không cần thiết khác. Vìvậy cần gỡ bỏ các tập tin, thư mục này nhằm hạn chế thấp nhất nguy cơ bị khaithác thông tin liên quan đến ứng dụng đang sử dụng:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

- Giớihạn các thông tin về hệ thống:

+Thay đổi thông tin server.info.

+Tiến hành đóng gói lại tập tin CATALINA_HOME/server/lib/cataIina.jar sau khi đãsửa đổi nội dung file ServerInfo.properties. Ví dụ:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Trong tập tin Serverlnfo.properties thay đổi giá trị server.info thành giá trịserver.info=Apache Tomcat, sau đó đóng gói lại catalina.jar:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Thay đổi thông tin trong server.number. Thuộc tính thay đổi cũng tương tự nhưthông số server.info. Ví dụ:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+ Trongtập tin ServerInfo.properties thêm thuộc tính server.number=<Version>,sau đó đóng gói lại catalina.jar:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+ Thayđổi thông tin trong server.built. Thuộc tính này cung cấp thông tin về thờigian mà Tomcat được biên dịch và đóng gói. Ví dụ:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Trong tập tin Serverlnfo.properties thêm thuộc tính server.built=<BuildDate>, sau đó đóng gói lại catalina.jar:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

- Bảovệ cổng shutdown:

+Apache Tomcat sử dụng cổng 8005 để tiếp nhận các yêu cầu shutdown. Cập nhậtthuộc tính shutdown trong tập tin server.xml ở $CATALINA_HOME/conf/server.xml:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Hoặc bỏ chức năng shutdown trên cổng này:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

- Bảovệ cấu hình Apache Tomcat:

+Giới hạn truy cập đến $CATALINA_HOME: Gán quyền sở hữu cho tài khoản tomcat_admin:tomcat;gỡ bỏ các quyền đọc, ghi, thực thi; gỡ bỏ quyền ghi đối với nhóm:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến $CATALINA_BASE: Gán quyền sở hữu cho tài khoảntomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi; gỡ bỏ quyền ghi đốivới nhóm:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến thư mục cấu hình Tomcat: Gán quyền sở hữu cho tài khoảntomcat_admin.tomcat; gỡ bỏ các quyền đọc, ghi, thực thi; gỡ bỏ quyền ghi đốivới nhóm:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới, hạn truy cập đến thư mục chứa các tập tin nhật ký (log): Gán quyền sở hữucho tài khoản tomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến thư mục chứa các tập tin thực thi: Gán quyền sở hữu chotài khoản tomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến thư mục chứa ứng dụng web: Gán quyền sở hữu: cho tàikhoản tomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến tập tin context.xml: Gán quyền sở hữu cho tài khoảntomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi; gỡ bỏ quyền ghi đối vớinhóm:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến tập tin logging.properties: Gán quyền sở hữu cho tài khoảntomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi; gỡ bỏ quyền ghi đốivới nhóm:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến tập tin server.xml: Gán quyền sở hữu cho tài khoảntomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi; gỡ bỏ quyền ghi đốivới nhóm:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến tập tin tomcat-users.xml: Gán quyền sở hữu cho tài khoảntomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi; gỡ bỏ quyền ghi đốivới nhóm:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+Giới hạn truy cập đến tập tin web.xml: Gán quyền sở hữu cho tài khoảntomcat_admin:tomcat; gỡ bỏ các quyền đọc, ghi, thực thi; gỡ bỏ quyền ghi đốivới nhóm:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

3.4. Vận hành ứng dụng web an toàn

3.4.1.Kiểm tra hoạt động web an toàn

Đểđảm bảo cho ứng dụng web vận hành an toàn, tránh được các nguy cơ tấn công từbên ngoài hệ thống có thể tiến hành các bước cơ bản sau:

- Kiểmtra việc lộ thông tin nhạy cảm qua các công cụ tìm kiếm, bước này nhằm đảm bảoứng dụng web sẽ không hiển thị các thông tin riêng như phiên bản, cấu trúc thưmục, v.v... lên kết quả của các công cụ tìm kiếm.

- Kiểmtra chức năng đăng xuất, đăng nhập có hoàn thành đúng nhiệm vụ hay không.

- Thiếtđặt các quyền truy cập thích hợp vào các tập tin và thư mục nhạy cảm. Xóa cáctập tin sao lưu dự phòng ra khỏi hệ thống.

- Sửdụng CAPTCHA và chế độ mật khẩu mạnh nhằm tránh trường hợp vượt qua CAPTCHA hayđoán được mật khẩu ngắn (không cho phép người dùng đặt mật khẩu yếu).

- Kiểmtra quá trình quản lý tài khoản và phiên của ứng dụng, việc truyền gửi nhữngthông tin quan trọng như tên đăng nhập và mật khẩu cần được mã hóa nhằm tránhtình trạng nghe lén dữ liệu trên đường truyền. Bên cạnh đó việc cấp phát và mãhóa phiên đăng nhập cho người dùng cũng cần đảm bảo an toàn nhằm tránh tìnhtrạng tin tặc đoán hay giả mạo phiên.

- Xácđịnh loại mã nguồn hỗ trợ web (JSP, ASP, PHP,...) và kiểu framework phát triểnweb (mã nguồn mở, tự phát triển,...) để có biện pháp bảo vệ hợp lý cũng như cậpnhật khắc phục các lỗ hổng được phát hiện.

- Xâydựng hoặc triển khai một hệ thống máy chủ Proxy dùng để chắc rằng các kết nốitừ bên ngoài vào và từ bên trong ra sẽ được giám sát để tránh các mối đe dọacũng như điều tra nguyên nhân khi hệ thống bị tấn công.

- Nếucó nhiều website được đặt chung trên máy chủ web, cần có biện pháp cách ly cácwebsite này ra, nhằm đảm bảo nếu có một website bị tấn công và chiếm quyền kiểmsoát thì các website còn lại sẽ ít bị ảnh hưởng.

- Thiếtkế trang báo lỗi chung để trả về cho tất cả các lỗi mà hệ thống có thể gặpphải. Biện pháp này nhằm giảm nguy cơ bị tấn công dựa theo thông báo lỗi củaứng dụng.

3.4.2.Khắc phục các lỗi phổ biến trên web

Trongtrang web thường có các điểm cho người dùng nhập dữ liệu vào như mục “đăngnhập”, mục “tìm kiếm”, mục ID bài viết trên URL, V.V... Ngoài việc giúp chongười dùng dễ dàng tương tác với ứng dụng web, các mục này nêu không được quảnlý chặt chẽ sẽ trở thành một nguy cơ lớn để thực hiện các cuộc tấn công vào ứngdụng web. Các dữ liệu bất hợp pháp nên được lọc trước để bỏ qua không đưa vào truyvấn trong cơ sở dữ liệu như các siêu ký tự, các biểu thức chính quy, các ký tựđược mã hóa,... nhằm tránh cho ứng dụng trước những nguy cơ tấn công.

Cóthể sử dụng biểu thức chính quy (áp dụng cho tất cả các ngôn ngữ lập trình) đểthực hiện các công việc này. Ví dụ, sử dụng biểu thức chính quy để lọc các siêuký tự:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Hoặcđể quy định giá trị mật khẩu nhập vào, ví dụ: cho phép mật khẩu từ 4 đến 8 kýtự gồm chữ thường và chữ hoa:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Cũngcó thể sử dụng biểu thức chính quy để lọc tấn công Path Traversal:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Hoặclọc tấn công chia nhỏ hồi đáp HTTP (HTTP Response Splitting):

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Trongsố mười lỗi ATTT phổ biến trên cổng/trang TTĐT, mỗi lỗi sẽ có những biện phápriêng để khắc phục như sau:

-Tấn công Injection (bao gồm các kiểu tấn công như SQL Injection, OS Injection,LDAP Injection):

+Giới hạn quyền truy cập CSDL và phân quyền giữa các tài khoản người dùng, điềunày giúp giảm khả năng khai thác CSDL của tin tặc ngay cả khi đã thực hiệnthành công lệnh Injection.

+ Sửdụng thủ tục lưu trữ để đảm bảo các câu lệnh SQL từ ứng dụng được lưu trữ vàtriển khai ở máy chủ CSDL, điều này giúp cho dữ liệu do người dùng nhập vàokhông thể được tùy chỉnh dưới dạng một câu lệnh SQL. Để làm được điều này, ứngdụng phải được định dạng để sử dụng những thủ tục lưu trữ với giao diện an toànnhư câu lệnh Callable của JDBC hay lệnh Object của ADO.

+ Sửdụng biểu thức chính quy để phát hiện tấn công SQL Injection:

Đốivới các siêu ký tự:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Với tấncông sử dụng từ khóa UNION:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

Vớitấn công vào máy chủ MS SQL:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

+ Sửdụng biểu thức chính quy để lọc tấn công LDAP Injection:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

-Cross Site Scripting (XSS):

+Lọc tất cả các dữ liệu chưa tin tưởng một cách phù hợp dựa trên nội dung HTML.

+Tạo một “danh sách trắng” để kiểm tra dữ liệu đầu vào một cách phù hợp.

+ Sửdụng biểu thức chính quy trong việc kiểm tra dữ liệu đầu vào để phát hiện tấncông XSS:

Công văn 2132/BTTTT-VNCERT hướng dẫn đảm bảo an toàn thông tin cho các Cổng/Tran

- InsecureDirect Object References (Tham chiếu trực tiếp đối tượng không an toàn):Kiểm tra quá trình tham chiếu trực tiếp đến các tài nguyên hạn chế trên hệthống để đảm bảo rằng người dùng bình thường không thể truy cập được các nguồntài nguyên mà họ không có quyền truy cập. Nên sử dụng một cơ chế truy cập giántiếp thay vì trực tiếp.

- CrossSite Request Forgery (CSRF): Việc ngăn chặn CSRF yêu cầu phải gộp nhữngtoken không có khả năng đoán trước trong mỗi phiên giao dịch. Những token khôngnhững là duy nhất cho mỗi phiên người sử dụng mà còn duy nhất cho mỗi yêu cầugửi đến ứng dụng.

-Failure to Restrict URL Access (Thất bại trong việc hạn chế truy cập các URLquản trị): Việc truy cập vào các URLcó chức năng quản trị cần phải được kiểm tra thông qua quá trình xác thực vàkiểm tra quyền của người dùng trước khi cho phép họ truy cập.

- Bẻgãy sự chứng thực và quản lý phiên: Thiết đặt một phương pháp chứng thực vàđiều khiển phiên người sử dụng đủ mạnh để tránh khỏi bị những lỗi XSS mà có thểbị đánh cắp phiên sử dụng hoặc có thể giải mã phiên một cách dễ dàng.

- Cấuhình bảo mật không an toàn: Bảo mật một hệ thống nói chung phụ thuộc vàoviệc cấu hình bảo mật cho các thành phần riêng lẻ trong hệ thống như ứng dụngweb, máy chủ web, hệ điều hành máy chủ, các thiết bị vật lý,... Tất cả cácthiết đặt bảo mật này cần được xác định, thực hiện, bảo trì và tuyệt đối khôngnên sử dụng các cấu hình bảo mật mặc định có sẵn.

- Chuyểnhướng và chuyển tiếp không được kiểm tra: Hạn chế sử dụng chuyển tiếp vàchuyển hướng, nếu sử dụng thì phải có cơ chế chứng thực.

- Lưutrữ mã hóa không an toàn: Nhận biết nguy cơ và lên phương án bảo về đối vớidữ liệu từ những tấn công bên trong hay bên ngoài, dữ liệu nhạy cảm phải luônluôn mã hóa.

-Thiếu sự bảo vệ lớp vận chuyển: Cungcấp một cơ chế bảo vệ cho lớp vận chuyển bằng việc cấu hình SSL/TLS phù hợp.

3.5. Thiết đặt và cấu hình cơ sở dữ liệu an toàn

Việcthiết đặt và cấu hình cơ sở dữ liệu an toàn là một quá trình phức tạp, đòi hỏingười quản trị phải hiểu rõ về cơ sở dữ liệu đang sử dụng. Để bảo vệ cho cơ sởdữ liệu an toàn cần thực hiện một số biện pháp sau:

- Luôncập nhật phiên bản vá lỗi cho cơ sở dữ liệu mới nhất nhằm tránh các lỗi đã đượccông bố và khai thác.

- Gỡbỏ các cơ sở dữ liệu không sử dụng.

- Gỡbỏ hoặc vô hiệu hóa các thủ tục lưu trữ hoặc những hàm nhạy cảm có tương tácvới hệ thống nhằm tránh việc tương tác đến hệ thống từ cơ sở dữ liệu.

- Táchbiệt các cơ sở dữ liệu sử dụng cho mục các đích khác nhau.

- Khóatất cả các kết nối từ hệ thống hoặc từ ứng dụng khác ngoài ứng dụng web và máychủ web, không cho phép bất kỳ kết nối trực tiếp nào từ Internet đến database.

- Cấuhình ghi nhật ký và theo dõi nhật ký làm việc của cơ sở dữ liệu một cách hợplý.

- Giớihạn truy cập đối với các tài khoản sử dụng (không có quyền xóa hoặc thay đổicấu trúc cơ sở, dữ liệu).

- Phânquyền cho các tài khoản và các tập tin hệ thống.

- Gỡbỏ hoặc thay đổi các tài khoản mặc định và thiết lập mật khẩu mạnh cho các tài khoảnđang sử dụng.

- Cócơ chế sao lưu dữ liệu và mã hóa các dữ liệu sao lưu.

- Sửdụng các công cụ để tìm kiếm lỗ hổng trên máy chủ SQL như MBSA (MS SQL).

3.6. Cài đặt các ứng dụng bảo vệ

3.6.1.Chống virus (Anti-Virus) và bảo vệ an toàn máy tính cá nhân

Việccài đặt các ứng dụng bảo vệ như Anti-Virus có tác dụng rất lớn trong việc bảovệ hệ thống. Chúng có thể hạn chế được việc bị cài thêm mã độc trong trường hợpkẻ tấn công đã xâm nhập được vào hệ thống, hoặc hạn chế việc upload các mã độckhi ứng dụng web bị lỗi. Các chương trình Anti-Virus phải thỏa mãn yêu cầu sau:

- Luônở trạng thái đang hoạt động nhằm đảm bảo hệ thống luôn được bảo vệ.

- Đảmbảo tính toàn vẹn của tập tin và tài nguyên.

- Quétcác mã độc đính kèm trong e-maii.

- Cậpnhật dấu hiện nhận diện virus mới nhất.

Đốivới máy tính cá nhân có thể xem xét cài đặt phần mềm bảo vệ an toàn máy tínhtích hợp thường bao gồm cả chức năng chống virus, lọc tường lửa cá nhân. XemPhụ lục 3 thông tin tham khảo về các phần mềm chống virus và bảo vệ an toàn máytính cá nhân.

3.6.2.Hệ thống phát hiện xâm nhập máy tính (Host Based IDS)

HostBased IDS là hệ thống phát hiện xâm nhập máy tính (thường hay áp dụng đối vớicác máy chủ), đồng thời đưa ra cảnh báo về các hành động bất thường đối với tàinguyên trên hệ thống. Sử dụng Host Based IDS nhằm:

- Cảnhbáo khi có sự thay đổi đối với mã nguồn ứng dụng.

- Cảnhbáo khi có sự thay đổi đối với các tập tin hệ thống.

- Cảnhbáo khi có sự thay đổi đối với các tập tin hệ thống.

3.7. Thiết lập cơ chế sao lưu và phục hồi

3.7.1.Cơ chế sao lưu

Saolưu dữ liệu là điều kiện không thể thiếu khi triển khai các giải pháp kỹ thuậtnhằm đảm bảo tính sẵn sàng của dữ liệu. Vì vậy khi thực hiện sao lưu cần xácđịnh một số yêu cầu sau:

-Phạm vi sao lưu:

+Sao lưu toàn bộ dữ liệu của hệ thống. Cơ chế này đảm bảo được tính toàn vẹn củadữ liệu và có thể phục hồi toàn bộ dữ liệu một cách nhanh chóng khi hệ thống bịsự cố. Tuy nhiên, đòi hỏi phải xây dựng một hệ thống sao lưu quy mô lớn.

+Sao lưu từng phần riêng trong hệ thống. Cơ chế này nhằm phục hồi những phần gặpsự cố và không cần một hệ thống sao lưu quy mô lớn.

-Thời gian sao lưu:

Cầnthiết lập một cơ chế sao lưu theo định kỳ (ngày, tuần, tháng,...) một cách tựđộng, nhằm đảm bảo việc sao lưu đầy đủ các dữ liệu theo yêu cầu.

-Nội dung sao lưu:

+Sao lưu hệ điều hành máy chủ.

+Sao lưu máy chủ web, Cơ sở dữ liệu, v.v…

+Sao lưu thư mục và tập tin.

3.7.2.Cơ chế phục hồi

Tùythuộc vào tình trạng hiện tại của hệ thống và cơ chế sao lưu đã được thiết lậpmà lựa chọn cơ chế phục hồi dữ liệu cho hệ thống một cách thích hợp:

- Khôiphục nguyên trạng hệ thống.

- Khôiphục từng phần riêng biệt (hệ điều hành, cơ sở dữ liệu, các ứng dụng khác).

- Thườngxuyên kiểm tra bản sao lưu để đảm bảo khả năng phục hồi thành công khi cầnthiết.

4. ĐỐI PHÓ VỚI TẤN CÔNG TỪ CHỐI DỊCH VỤ

4.1. Tấn công từ chối dịch vụ:

- Tấncông từ chối dịch vụ (DoS) là kiểu tấn công vào hệ thống mạng bằng cách làmtăng đột biến lưu lượng băng thông, số lượng yêu cầu kết nối sử dụng dịch vụvượt quá khả năng mà hệ thống có thể đáp ứng xử lý, dẫn đến dịch vụ của hệthống hoạt động bị chậm, mất khả năng đáp ứng hoặc mất kiểm soát.

- Tấncông từ chối dịch vụ phân tán (DDoS) là dạng tấn công DoS nguy hiểm nhất khinguồn tấn công nhiều và phân bố trên diện rộng trên mạng Internet toàn cầu, rấtkhó ngăn chặn triệt để. Thông thường các cuộc tấn công DDoS được gây ra bởi mộtsố lượng khá lớn các máy tính trên mạng Internet bị điều khiển bởi tin tặc donhiễm mã độc thường gọi là mạng botnet.

- Nguyêntắc chống tấn công DoS là cần phải lọc và gạt bỏ được các luồng tin tấn công,và tốt hơn nữa là ngặn chặn được các nguồn tấn công. Để chống DDoS phải vô hiệuhóa được hoạt động của các mạng botnet. Để làm được điều này một cách hiệu quảthường đòi hỏi các biện pháp điều phối ứng cứu sự cố ở quy mô quốc gia hay thậmchí phối hợp nhiều nước. Do đó khi phát hiện có các cuộc tấn công DoS hay DDoS,các đơn vị quản lý cổng/trang TTĐT cần báo cho Trung tâm Ứng cứu khẩn cấp máytính Việt Nam (VNCERT) càng sớm càng tốt. Mặt khác, việc áp dụng các biện phápvà công cụ kỹ thuật tại chỗ để nâng cao năng lực bảo vệ các cổng/trang TTĐTcũng có hiệu quả rõ rệt.

4.2. Một số biện pháp kỹ thuật phòng chống tấn công từchối dịch vụ:

- Tăngcường khả năng xử lý của hệ thống:

+ Tốiưu hóa các thuật toán xử lý, mã nguồn của máy chủ web,

+Nâng cấp hệ thống máy chủ,

+Nâng cấp đường truyền và các thiết bị liên quan,

+Cài đặt đầy đủ các bản vá cho hệ điều hành và các phần mềm khác để phòng ngừakhả năng bị lỗi tràn bộ đệm, cướp quyền điều khiển, v.v...

- Hạnchế số lượng kết nối tại thiết bị tường lửa tới mức an toàn hệ thống cho phép.

- Sửdụng các tường lửa cho phép lọc nội dung thông tin (tầng ứng dụng) để ngăn chặncác kết nối nhằm tấn công hệ thống.

- Phântích luồng tin (traffic) để phát hiện các dấu hiệu tấn công và cài đặt cáctường lửa cho phép lọc nội dung thông tin (tầng ứng dụng) ngăn chặn theo cácdấu hiệu đã phát hiện.

4.3. Một số công cụ kỹ thuật phòng chống tấn công từchối dịch vụ:

Tùykhả năng đầu tư, các cổng/trang TTĐT có thể trang bị giải pháp hoặc sử dụngdịch vụ chống DoS/DDoS với các công cụ kỹ thuật sau:

- Sửdụng hệ thống thiết bị, phần mềm hoặc dịch vụ giám sát an toàn mạng (đặc biệtvề lưu lượng) để phát hiện sớm các tấn công từ chối dịch vụ.

- Sửdụng thiết bị bảo vệ mạng có dịch vụ chống tấn công DDoS chuyên nghiệp kèmtheo, ví dụ như: Arbor, Checkpoint, Imperva, Perimeter,...

PHỤ LỤC 1

MƯỜI LỖI ATTT PHỔBIẾN TRÊN CỔNG/TRANG TTĐT

1. Tấncông Injection: bao gồm các lỗi cho phép thực hiện thành công các kiểutấn công như SQL Injection, OS Injection, LDAP Injection. Kiểu tấn công này xảyra khi người dùng gửi các dữ liệu không tin cậy đến ứng dụng web, những dữ liệunày có tác dụng như các câu lệnh với hệ điều hành hoặc các câu truy vấn với cơsở dữ liệu nhằm phục vụ cho mục đích xấu.

2. CrossSite Scripting (XSS): Lỗi XSS xảy ra khi ứng dụng web nhận các dữ liệuđộc hại và chuyển nó đến trình duyệt cho người dùng mà không xác nhận lại dữliệu đó có hợp lệ hay không. Kiểu tấn công này cho phép kẻ tấn công thực thicác đoạn mã độc trong trình duyệt của nạn nhân và có thể cướp phiên người dùnghoặc chuyển hướng người dùng đến các trang độc hại khác.

3. InsecureDirect Object References (Tham chiếu trực tiếp đối tượng không an toàn):Việc tham chiếu xảy ra khi nhà phát triển ứng dụng web đưa ra tham chiếu đếnmột đối tượng bên trong ứng dụng như là một tập tin, một thư mục hay một khóacơ sở dữ liệu. Nếu việc kiểm tra quá trình tham chiếu này không an toàn, kẻ tấncông có thể dựa theo để tham chiếu đến các dữ liệu mà họ không có quyền truycập.

4. CrossSite Request Forgery (CSRF): là kiểu tấn công mà người dùng bị lợi dụngđể thực thi những hành động không mong muốn ngay trên phiên đăng nhập của họ.Thông qua việc gửi người dùng một liên kết qua email hay chat, tin tặc có thểhướng người dùng thực thi một số hành động ngay trên trình duyệt của người dùng(như gửi bài viết, xóa bài viết, v.v..

5. Failureto Restrict URL Access (Thất bại trong việc hạn chế truy cập các URL quản trị):Thông thường để vào được các đường dẫn quản trị thì ứng dụng phải kiểm trangười dùng có đủ quyền để truy cập vào đó hay không rồi mới hiển thị URL và cácgiao diện quản trị tương ứng khác. Để tránh tình trạng người dùng bình thườngcũng truy cập vào các URL quản trị, mỗi lần truy cập vào các URL này cần đượckiểm tra quyền kỹ càng, nếu không tin tặc có thể truy cập vào các URL này nhằmthực hiện các hành vi độc hại.

6. Bẻgãy sự chứng thực và quản lý phiên: Những chức năng của ứng dụng liênquan đến sự chứng thực và sự quản lý phiên làm việc thường không khởi tạo đúng,cho phép tin tặc tấn công mật khẩu, khóa và token của phiên làm việc hoặc khaithác lỗ hổng từ những sự khởi tạo này để gán định danh một người sử dụng khác.

7. Cấuhình bảo mật không an toàn: là lỗi liên quan đến việc đặt cấu hình choứng dụng, framework, máy chủ web, ứng dụng máy chủ và platform sử dụng nhữnggiá trị thiết đặt mặc định hoặc khởi tạo và duy trì những giá trị không antoàn.

8. Chuyểnhướng và chuyển tiếp không được kiểm tra: Nhiều ứng dụng thường xuyênchuyển tiếp hoặc chuyển hướng người sử dụng đến những trang hoặc những websitevà sử dụng những dữ liệu chưa tin tưởng để xác định những trang đích. Không cósự kiểm tra phù hợp, tin tặc có thể chuyển hướng nạn nhân đến các trang giả mạohoặc các trang có chứa mã độc, hoặc chuyển tiếp đến các trang web đòi làm thủtục xác thực nhằm đánh cắp thông tin cá nhân.

9. Lưutrữ mã hóa không an toàn: Ứng dụng web không có cơ chế bảo vệ hoặc tuycó cơ chế mã hóa và hashing (băm) dữ liệu để lưu trữ nhưng sử dụng không đúngcách đối với những dữ liệu quan trọng, như là thông tin thẻ tín dụng, thông tincá nhân và những thông tin chứng thực. Do đó tin tặc có thể lợi dụng những kẽhở này để đánh cắp những dữ liệu cần được bảo vệ.

10. Thiếusự bảo vệ lớp vận chuyển: Các ứng dụng không mã hóa dữ liệu khi truyềnnhững thông tin quan trọng, hoặc nếu có mã hóa thì lại chỉ có thể sử dụng cácchứng thực hết hạn hoặc không hợp lệ.

PHỤ LỤC 2

THÔNG TIN THAM KHẢOVỀ CÁC TƯỜNG LỬA

1. Firewallcứng

+Checkpoint (http://www.checkpoint.com)

+ Juniper(http://www.juniper.net)

+Cisco (http://www.cisco.com)

+Endian (http://www.endian.com)

+Astaro (http://www.astaro.com)

2. Firewallmềm

- Bảnthương mại:

+ MicrosoftInternet Security and Acceleration (ISA) Server (http://www.microsoft.com)

- Bảnmiễn phí (mã nguồn mở):

+netfilter/iptables (http://www.netfilter.org)

+ pfSense(http://www.pfsense.org)

+IPCop (http://www.ipcop.ors)

+ShorewalI (http://shorewall.net)

+SmoothWall (http://www.smoothwall.org)

+Vyatta (http://www.vyatta.org)

3. WebApplication Firewall (WAF)

- Cácphiên bản mã nguồn mở WAF phổ biến:

+WebKnight (http://www:aqtronix.com/?PageID=99)

+ModSecurity (http://www.modsecurity.org)

+URLScan (http://www.iis.net/download/urlscan)

Ngoàira còn các bản WAF thương mại nổi tiếng sau:

+Hyperguard (http://www.artofdefence.com/en/products/hyperguard.html)

+WebDefend (http://www.breach.com/products/webdefend.html)

+DotDefender (http://www.applicure.com/)

+NetScaler application fìrewalls (http://www.citrix.com)

+Eeye’s SecurelIS (http://www.eeye.com/Products/SecurelIS-Web-Server-Security.aspx)

+Appwall (http://www.radware.com)

ModSecurity: là phần mềm nguồn mở có thể hoạt động như một moduletrong máy chủ Apache hoặc là một thành phần độc lập. ModSecurity sử dụng biểuthức chính quy trong việc bảo vệ máy chủ web từ các cuộc tấn công được xác địnhtrước dựa theo các dấu hiệu hoặc các cuộc tấn công bất thường khác. Bên cạnhđó, ModSecurity cũng có khả năng lọc các siêu ký tự do người dùng chèn vào ứngdụng web. Toàn bộ quá trình cài đặt và cấu hình có thể tham khảo thêm tại: http://www.modsecurity.org/documentation

URLScan: là một sản phẩm của Microsoft dành riêng cho các máychủ web IIS. URL scan không chỉ bảo vệ máy chủ IIS 6 khỏi các điểm yếu từ cácphiên bản cũ hơn mà còn cung cấp thêm các biện pháp bảo vệ khác như lọc dữ liệumã hóa trên URL hoặc lọc các siêu ký tự do người dùng chèn vào để chống lại cácloại tấn công như XSS, SQL Injection, v.v... Tham khảo cách cài đặt và sử dụngURLScan tại: http://www.iis.net/download/urlscan

PHỤ LỤC 3

THÔNG TIN THAM KHẢOVỀ CÁC PHẦN MỀM CHỐNG VIRUS VÀ BẢO VỆ AN TOÀN MÁY TÍNH CÁ NHÂN

1. Bảnsản xuất trong nước:

+BKAV (http://www.bkav.com.vn)

+CMC AntiVirus (http://www3.cmcinfosec.com)

2. Bảnthương mại nước ngoài:

+AirScanner (www.airscanner.com)

+BitDefender (www.bitdefender.com)

+Computer Associates (www.ca.com)

+F-Secure (www.f-secure.com)

+Kaspersky (www.kaspersky.com)

+McAfee (www.mcafee.com)

+Symantec (www.symantec.com)

+Trend Micro (trendmicro.com)

+Avast (www.avast.com)

+Avira (www.avira.com)

3. Bảnmiễn phí:

+Avast Free AntiVirus (http://www.avast.com)

+Avira AntiVir Personal Free (http://www.avira.com)

+ MicrosoftSecurity Essentials (http://www.microsoft.com)

+ PandaCloud AntiVirus (http://www.pandasecurity.com)

+Comodo Internet Security (http://comodo.com)

+AVG AntiVirus (http://www.free.avg.com)