Bài viết được sự cho phép của tác giả Lê Chí Dũng
Khi Server bị nhiễm virus/trojan/malware bởi các thành phần như source website, mã nguồn chương trình lạ,… thì làm sao để phát hiện và xử lý chúng?
ClamAV là gì ?
ClamAV là một engine (core phần mềm) mã nguồn mở chuyên dụng để phát hiện trojans, virus, malware và các mối hiểm hoạ khác.
Trang chủ : https://www.clamav.net
Tất nhiên là đối với các chương trình AntiVirus thì chúng đều phụ thuộc vào cơ sở dữ liệu chứa những dấu hiệu nhận biết (signature/checksum) về virus,… ta không nên đặt niềm tin hoàn toàn vào chúng. Cũng vì phụ thuộc nhiều vào CSDL nên chúng ta cần thường xuyên cập nhật CSDL của các chương trình mang danh Anti-Virus.
ClamAV có thể kết hợp với nhiều dịch vụ khác và mình sẽ đề cập sau này. Ở bài này, chúng ta đơn giản chỉ cài đặt và sử dụng đơn giản chức năng của nó.
Vậy ta sẽ tiến hành cài đặt ClamAV trên Linux như CentOS hay Ubuntu.
1. Cài đặt ClamAV trên Linux
Có hai hình thức để cài đặt chương trình ClamAV trên Linux là :
- Cài đặt từ Repository của OS
- Biên dịch mã nguồn source ClamAV
1.1 Cài đặt ClamAV từ Repository CentOS hoặc Ubuntu
Bạn sẽ tiến hành cài đặt ClamAV thông qua chương trình ‘yum‘ trên CentOS/RHEL hoặc ‘apt-get‘ trên Debian/Ubuntu.
+ Centos/RHEL
+ Debian/Ubuntu
2. Khởi động dịch vụ ClamAV
Thông thường ClamAV chỉ dùng cho hoạt động quét bình thường. Nhưng khi kích hoạt cơ chế dịch vụ, ClamAV sẽ được load lên bộ nhớ RAM và các dịch vụ khác có thể truy cập port dịch vụ ClamAV để sử dụng tính năng quét virus cho nhanh.
Dịch vụ ClamAV (clamd hoặc clam-daemon), thường được sử dụng trong các hoạt động nâng cao như quét virus trong các email incomming. Vậy ta có cần khởi động dịch vụ này không?! Câu trả lời là không, nếu bạn không xài tính năng nâng cao kết hợp. Nhưng làm sao để khởi động dịch vụ này?
+ Init system (CentOS/RHEL 6 Ubuntu 14.04)
+ Systemd system (CentOS/RHEL 7 Ubuntu 16.04
3. Cập nhật các cơ sở dữ liệu mẫu Virus
Như đã trình bày ở đầu bài, thì bạn cần thường xuyên update CSDL chứa các mẫu nhận diện virus/malware thì ClamAV mới có thể quét phát hiện chúng.
Các file CSDL update sẽ được lưu tại:
4. Tiến hành sử dụng ClamAV Scan Virus
‘Clamscan’ là chương trình binary chính của ClamAV sử dụng để quét mã độc. Để coi các option sử dụng của ‘clamscan‘ bạn hãy dùng option ‘–help‘.
ClamAV có thể scan một hay nhiều file chỉ định hoặc scan cả một thư mục quy định.
Chú thích:
- –infected hoặc -i: chỉ in output các file bị cho là nhiễm mã độc.
- –recursive hoặc -r: scan cả các thư mục hay file phía trong thư mục cha.
- –remove=[yes/no]: xoá luôn các file bị nghi nhiềm mã độc tìm thấy.
- –no-summary: không in ra nội dung tổng kết.
- –log=/file.log: ghi log scan vào file cụ thể.
- –mv=/path: di chuyển tất cả file bị nghi là nhiễm mã độc đến thư mục khác.
5. Tải về một mẫu thử Virus
Đây là một mẫu thử chỉ chứa dấu hiệu (signature) phổ biến không tồn tại mã độc nào hết.
- clamscan –: tức là bạn sẽ scan một stream lấy output trước đó làm input mẫu sẽ scan.
Các bạn có thể viết một shell script để tự động quét virus vào một thời điểm cụ thể nào đấy trong ngày bằng dịch vụ “cron” .
6. Cấu hình cronjobs ClamAV
Để thực hiện cấu hình cho hệ thống quét malware theo thời gian định kì cronjob thì ta làm như sau:
Với nội dung cấu hình cronjob trên thì cứ mỗi ngày vào lúc 00 giờ sáng, chương trình ClamAV sẽ tiến hành quét malware, trojan ở thư mục /home/
Bài viết gốc được đăng tải tại lcdung.top
Có thể bạn quan tâm:
- Hướng dẫn cài đặt, lập trình Python trên Ubuntu (Linux)
- Hướng dẫn cài đặt Flutter SDK trên Linux
- Tìm hiểu về thuật ngữ bảo mật
Xem thêm Việc làm Developer hấp dẫn trên TopDev