Với công nghệ điện toán đám mây, các tác tử đám mây tích hợp trong ClamAV (ClamAV Cloud Agent) tương tác online với hệ thống đám mây
bao phủ rộng và năng lực tính toán của đám mây giúp máy tính của người sử dụng được bảo vệ chặt chẽ. Bên cạnh đó, hệ thống cơ sở dữ liệu mẫu nhận diện trên đám mây sẽ được cập nhật kịp thời hơn so với các giải pháp truyền thống. virus sẽ được sàng lọc qua nhiều tầng lớp kỹ thuật, bảng mã nhận diện và phiên bản dịch vụ.
Hình 2-13. Công nghệ điện toán đám mây sử dụng trong ClamAV
ClamAV được phát triển bởi Immunet Corp và Sourcefire inc, dựa trên nền tảng điện toán đám mây với giấy phép mã nguồn mở. Phần mềm này được biết đến như là một giải pháp bảo mật dành riêng cho UNIX, và gần đây ClamAV được phát triển cho môi trường Windows.
Giao diện của ClamAV khá bắt mắt và trình bày rõ ràng, có phần giống với cách bố trí của Norton 360 khi đưa tất cả các chức năng ra ngoài "tiền sảnh" và phân loại chúng theo từng nhóm: Community (dữ liệu và đồ họa từ cộng đồng dùng ClamAV), Computer (bao gồm các hoạt động quét hệ thống, biểu đồ tóm
tắt và lịch sử quét), Product (các tùy chọn cho ClamAV và cập nhật, nâng cấp phần mềm).
Hình 2-14. Giao diện các chức năng của ClamAV
Cũng như các trình antivirus "đám mây" khác, việc kết nối internet để dùng ClamAV là điều cần thiết. Nhưng ngoài máy quét chính là ClamAV, phần mềm này cũng tích hợp ba bộ máy quét khác bao gồm ETHOS, SPERO và TETRA (chỉ có trên phiên bản PLUS ,người dùng vẫn có thể quét virus khi không kết nối internet).
ClamAv phát triển dựa trên kinh nghiệm của cộng đồng người dùng, mỗi khi chúng ta gặp một nguy cơ bảo mật, ClamAV sẽ tự “lấy mẫu” và chuyển về máy chủ để phân tích. Thông tin thu được sẽ bổ sung vào dữ liệu trên “đám mây” và cập nhật cho các nguời dùng khác trong cộng đồng.
ClamAV còn có một phiên bản cập nhật mang tên PLUS, phiên bản này bổ sung thêm bộ máy quét TETRA (giúp tăng khả năng phát hiện và loại bỏ virus, malware và rootkit ngoại tuyến), chức năng quét sâu (Deep scan) và quét Email.
Theo thông tin từ nhà phát triển, ClamAV có khả năng phát hiện hơn 19 triệu mẫu virus và malware
Hình 2-15. Giao diện các tùy chọn trên ClamAV
Ngoài ra ClamAV còn phát triển phiên bản chạy trên môi trường Windows : Ban đầu, ClamAV được phát triển cho các máy chạy hệ điều hành UNIX, nhưng gần đây Sourcefire đã phát triển một phiên bản mới dành cho Windows (ClamAV for Windows). Phiên bản chạy trên Windows hiện đang trong giai đoạn thử nghiệm (beta) do Sourcefire và Immunet (gần đây đã được Sourcefire mua lại) sản xuất, kết hợp công nghệ diệt virus dựa trên điện toán đám mây (cloud-based anti-virus) và công nghệ diệt virus truyền thống của ClamAV (sử dụng Clamlib – cơ sở dữ liệu về virus được lưu trên máy tính đã cài ClamAV để bảo vệ ngoại tuyến).
Có thể nói ClamAV for Windows hiện tại sử dụng 2 engine song song (đối với bản MIỄN PHÍ) và 3 engine (đối với bản PLUS – có phí có thể engine của BitDefender), chưa kể các module riêng của ClamAV, điều này làm khả năng nhận diện virus của ClamAV được cải thiện rất nhiều nhưng không làm tốn tài nguyên của máy tính cho lắm. ClamAV for Windows có tốc độ quét rất nhanh và
khả năng phát hiện Zero-day malware – phần mềm độc hại chưa được phát hiện trong cơ sở dữ liệu rất tốt (sử dụng engine ETHOS, engine phát hiện hành vi do Immunet phát triển).
Phiên bản 2.0.19 Beta MIỄN PHÍ hiện tại cho phép quét virus trong tập tin nén (rar, zip…), tập tin được đóng gói (UPX…) – điều mà phiên bản miễn phí ổn định hiện tại chưa cho phép.
• Yêu cầu hệ thống : Microsoft Windows 7
Hệ điều hành Windows 7 32-bit hoặc 64-bit, 100 MB dung lượng ổ cứng Microsoft Windows Vista SP1
Hệ điều hành Windows Vista 32-bit hoặc 64-bit Service Pack 1+, 100 MB dung lượng ổ cứng
Microsoft Windows XP SP3
Hệ điều hành Windows XP 32-bit Service Pack 3+, 100 MB dung lượng ổ cứng
• Yêu cầu chung Kết nối Internet Tương thích với:
• AVG
• Avast!
• Avira
• Norton Anti-Virus, Internet Security, 360
• McAfee
• Microsoft Security Essentials
• Trend Antivirus
Hình 2-16. Cảnh báo malware
Hình 2-17. Mô phỏng cộng đồng người dùng ClamAV
Cộng đồng người dùng (ClamAV dùng công nghệ Community-based, càng nhiều người dùng khả năng bảo vệ của ClamAV càng cao)
Chương 3
HTTP Anti Virus Proxy Squid Proxy Server 3.1. HTTP Anti Virus Proxy
3.1.1. Giới thiệu về HAVP :
HAVP (HTTP Antivirus Proxy) được xây dựng ở dạng proxy tích hợp bộ quét virus của ClamAV. Mục tiêu chính của gói này là quét tất cả gói tin của dữ liệu truyền thông dạng HTTP. HAVP có thể chạy dựa trên squid hoặc chạy độc lập.
Khi chạy độc lập Havp tích hợp Clam anti virus đóng vai trò như là một chương trình quét virus trên các lưu lượng truyền thông giữa người dùng và máy chủ Web.Còn khi chạy kết hợp với squid nó nhận một yêu cầu từ máy trạm, xử lý các yêu cầu và sau đó chuyển tiếp các yêu cầu tới máy chủ nguồn. Các yêu cầu này có thể được cho phép, bi từ chối hoặc chỉnh sửa trước khi chuyển tiếp.
Với chức năng bộ nhớ đệm trong squid lưu trữ nội dung các trang web mà nó nhân được cho mục đích sử dụng lại. Các yêu cầu sau đó cho cùng một nội dung có thể được trả về từ bộ nhớ đệm mà không cần liên kết đến máy chủ nguồn.
Các tính năng của HAVP:
• Vận hành dạng HTTP Antivirus proxy.
• Hỗ trợ nhiều tiến trình quét virus vào một thời điểm.
• Quét cả các dòng truyền thông của các thành phần được bảo vệ bằng mật khẩu.
• Có thể sử dụng với squid hoặc một proxy khác.
• Hỗ trợ cơ chế Parent proxy.
• Hỗ trợ cơ chế Transparent proxy.
• Cho phép lưu nhật ký.
• Xử lý phù hợp với từng nhóm hoặc từng người dùng.
• Vận hành dạng daemon.
• Sử dụng ClamAV.
3.1.2. Quá trình xử lý của HAVP :
Hình 3-2. Quá trình xử lý của HAVP
Khi máy chủ nguồn trả về một phản hồi cho các yêu cầu của người dùng trong mạng, Havp sẽ xử lý các dữ liệu gửi về theo hai quá trình :
Quá trình thứ nhất :
• Các dữ liệu sẽ được ghi lại vào một tệp tin tạm thời được thêm vào một hard lock EOF. Hard lọck EOF có vai trò đảm bảo cho lượng dữ liệu được gửi đi vẫn sẽ được xử lý mà không cần phải đợi phần dữ liệu còn lại. Nó giúp cho hệ thống xử lý không bi ngưng hoặc treo khi lượng dữ liệu còn lại chưa được gửi đến.
dữ liệu nhỏ đến trình duyệt web của người dùng để đảm bảo các kết nối không bị ngắt trong khi quét virus do thời gian timeout của các trình duyệt web của người dùng, kỹ thuật này được gọi là trickling. Nó giúp cho quá trình quét virus và quá trình tải dữ liệu về diễn ra đồng thời một lúc.
Quá trình thứ hai :
• Phần dữ liệu còn lại sẽ được chuyển đến quá trình quét virus được tích hợp trong HAVP và sẽ được gửi đến người dùng nếu không phát hiện virus và các mã độc hại nào. Nếu trong quá trình quét virus, Clamav phát hiện ra virus hoặc mã độc hại thì kết nối sẽ bị ngắt và Havp sẽ thông báo cho người dùng.
Ưu nhược điểm
Quá trình xử lý của Havp giúp cho việc tải dữ liệu về và quét virus trên dữ liệu diễn ra cùng lúc mà kết nối không bị ngắt do thời gian timeout của trình duyệt web.
Tuy nhiên nếu kích thước dữ liệu tải về quá lớn thì quá trình quét virus diễn ra sẽ chậm và người dùng có thể bị dính virus do dữ liệu tải về này có kích thước lớn hơn phần dữ liệu được giữ lại để quét virus. Havp sẽ quy định kích thước tối đa của phần dữ liệu được giữ lại để quét và nếu dữ liệu taỉ về lớn hớn thì qua trình kết nối sẽ bị ngắt mà không được cảnh báo trước. Nếu người dùng cố gắng tải lại Havp sẽ đưa ra cảnh báo “ tính năng này không được thực hiện”.
3.1.3. Thiết lập mô hình Havp
3.1.3.1. Cài đặt Havp trên Firegate :
• Bước 1 : Trên giao diện Firegate lựa chọn phần cài đặt gói : Hệ thống > Quản lý gói.
Hình 3-3. Giao diện quản lý gói trên Firegate
• Bước 2 : Tìm gói Havp và nhấn vào nút cài đặt, quá trình cài đặt sẽ tự động diễn ra.
3.1.3.2. Các tùy chon của HAVP
Hình 3-5. Giao diện tab HTTP proxy
- Kích hoạt chức năng Proxy: Đánh dấu trường này để kích hoạt proxy - Chế độ proxy: Lựa chọn chế độ giao diện.
• Standard : Các máy trạm bắt buộc phải kết nối đến cổng proxy trên giao diện mạng được lựa chọn.
• Parent for squid : Cấu hình Havp như là parent cho squid proxy.
• Transparent : Tất cả các yêu cầu trên giao diện mạng sử dụng proxy sẽ chuyển hướng đến máy chủ Havp proxy mà không cần thêm vàobất kỳ tùy chọn nào (làm việc giống như chế độ parent cho squid với squid ở chế độ transparent).
• Internal : Havp sẽ lắng nghe trên giao diện mạng nội bộ (127.0.0.1) trên cổng proxy, sử dụng quy tắc chuyển tiếp dữ liệu của bạn.
- Các giao diện mạng sử dụng proxy: Đây là các giao diện mạng cho các máy trạm kết nối tới proxy. Sử dụng phím “ctrl”+ L, đánh dấu nhiều lựa chọn.
- Cổng proxy : Đây là cổng mà máy chủ proxy sẽ lắng nghe ( ví dụ: 8080). Cổng này phải khác với cổng proxy của squid.
- Parent proxy: Nhập vào đây các thiết lập về parent proxy ( hoặc upstream proxy ) với định dạng Proxy : port hoặc để trống.
- Kích hoạt chức năng X-Forwarded-For: Nếu các máy trạm gửi tiêu đề này, các giá trị thiết lập trong trường Forward_IP sẽ được đưa vào trong đó. Không nên kích hoạt chức năng này vì lý do bảo mật.
Chỉ nên sử dụng chức năng này nếu bạn có một parent proxy sau Havp và nó sẽ biết được địa chỉ IP gốc của máy trạm.
- Kích hoạt chức năng Forwarded IP: Nếu Havp được sử dụng như là parent proxy cho các proxy khác, điều này cho phép ghi các địa chỉ IP thực của người dùng vào các tệp tin log thay vì ghi địa chỉ IP của Proxy.
- Ngôn ngữ: lựa chọn ngôn ngữ sẽ hiển thị trong thông điệp báo lỗi tới người dùng.
- Kích thước tải về tối đa: Nhập vào giá trị (tính bằng bytes) hoặc để trống. Lượng dữ liệu tải về lớn hơn giá trị tối đa sẽ bị khóa. Trừ những trườn hợp nằm trong whitelist.
- HTTP Range requests : Cài đật này cho phép các yêu cầu HTTP Range, và các kết nối tải về bị đứt có thể khôi phục.Cho phép HTTP Range là một nguy cơ về an ninh,bởi vì các thành phần của yêu cầu HTTP có thể không bị quét lại. Các trang Whitelist đều cho phép sử dụng HTTP Range trong mọi trường hợp.
- Whitelist : Nhập vào đây mỗi url đích t rên một dòng, khi người dùng truy cập các url này sẽ không bị quét. Sử dụng ký tự * để thay thế một chuỗi. VD :*.pfsense.com/*, *.sourceforge.net/*clamav-*
-Blacklist : Nhập vào đây mỗi tên miền đích trên một dòng, những tên miền này chỉ được truy cập đối với người dùng được phép sử dụng proxy.
- Chặn tệp tin nếu phát hiện lỗi khi quét : Nếu tùy chọn này được cài đặt, proxy sẽ chặn các tệp tin nếu phát hiện lỗi khi quét.
- Hiển thị tùy chọn Ram Disk : Tùy chọn này cho phép sử dụng Ram Disk cho các tệp tin tạm thời của Havp để tốc độ quét lưu lượng dữ liệu nhanh hơn. Kích thước của Ram Disk được tạo ra thông qua giới hạn kích thước tệp tin khi quét và bộ nhớ hiện thời. Tùy chọn này có thể bị loại bỏ trong VMVare hoặc trên hệ thống có bộ nhớ thấp. (Kích thước của Ram Disk tính bằng [1/4 kích thước bộ nhớ hiện thời] > [Kích thước tối đa khi quét]* 100
- Kích thước quét tối đa: Lựa chọn giới hạn lớn nhất cho kích thước của tệp tin hoặc để ‘---(5M)’. Các tệp tin lớn hơn kích thước này sẽ không được quét. Nếu
lựa chọn giá trị nhỏ sẽ tăng tốc độ quét và tối ưu hóa các kêt nối mới trong một giây và cho phép Ram Disk sẽ được sử dụng.
Chú ý: Thiết lập này là một nguy về an toàn vì một số các tệp tin nén như Zip cần tất cả dữ liệu để có thể quét. Chỉ sử dụng chức năng này nếu bạn không có đử không gian tạm thời cho các tệp tin lớn.
- Quét các tệp tin ảnh : Lựa chọn trường này để quét các tệp tin ảnh. Tùy chọn này cho phép bạn tăng độ tin cậy nhưng giảm tốc độ quá trình quét.
- Quét các truyền thông đa ứng dụng: Lựa chọn trường này để quét các truyền thông đa ứng dụng như audio, video..
- Log : Lựa chọn trường này để hiển thị tệp tin log. - Syslog: Lựa chọn trường này để hiên thị tệp tin syslog.
Tab Files Scanner :
Hình 3-6. Giao diện tab Files Scanner
Đường dẫn tệp tin cần quét: Nhập vào đây đường dẫn hoặc danh mục các tệp tin cần quét
Tab settings
Hình 3-7. Giao diện tab Settings
• Cơ sở để cập nhật AV: Lựa chọn thời gian cho việc cập nhật dữ liệu.
• Vùng cơ sở dữ liệu AV để cập nhật : Lựa chọn vùng cơ sở dữ liệu.
• Tùy chọn máy chủ cập nhật cơ sở dữ liệu AV : Nhập vào đây các máy chủ cập nhật cơ sở dữ liệu AV hoặc để trống.
• log : Lựa chọn trường này để hiện thị tệp tin log.
• Syslog : Lựa chọn trường này để hiển thị tệp tin syslog.
3.1.4. Cấu hình các chế độ cho Havp
3.1.4.1. Cấu hình Havp ở chế độ Standard
- Trong chế độ Standar phải cấu hình chức năng proxy trên các trình duyệt Web kết nối đến Havp.
Bật HTTP proxy ở Internet Explorer 1. Mở Internet Explorer
2. Chọn Tool > Internet option. Hộp thoại Internet option xuất hiện. 3. Nhấp vào tab Conections.
4. Chọn phần Use proxy server for your Lan.Nhập địa chỉ IP và cổng của proxy server.
5. Chọn Ok
Bật HTTP proxy ở Firefox 2.x 1. Mở trình duyệt Firefox
2. Chọn Tool > Option . Hộp thoại Option xuất hiện. 3. Nhấp chọn biểu tượng Advanced.
4. Chọn tab Network .Nhấp Setting.
5. Nhấp nút Connection Settings. Hộp thoại Connection Settings xuất hiện 6. Chọn Menual Proxy Configure. Nhập địa chỉ IP và cổng của proxy server. 7. Nhấp Ok
- Trong Tab HTTP Proxy :
• Lựa chọn trường Kích hoạt chức năng proxy và lựa chế độ Standar trong trường Chế độ Proxy.
• Lựa chọn giao diện mạng sử dụng proxy trong trường Các giao diện mạng sử dụng proxy.
Hình 3-8. Cấu hình Havp ở chế độ Standard
3.1.4.2. Cấu hình Havp ở chế độ Standar kết hợp với xác thực của Squid
- Trong chế độ này cấu hình chức năng proxy trên các trình duyệt Web kết nối đến Havp.
- Cấu hình Squid ở chế độ xác thực. - Cấu hình Havp ở chế độ Standar.
- Trong Tab HTTP proxy nhập vào trường Parent proxy địa chỉ IP và cổng mà squid lắng nghe trên đó.
Hình 3-9. Cấu hình HAVP ở chế độ Standard kết hợp với xác thực của Squid
3.2. Squid Proxy Server
3.2.1. Chức năng của Squid
Squid có chức năng như một Proxy và bộ nhớ đệm. Với chức năng Proxy,