Trình scan CVE của phần mềm – Vulnerability Scanner on Ubuntu 22.04
Vuls là một trình quét lỗ hổng mã nguồn mở, không cần tác nhân được viết bằng Go. Nó tự động phân tích lỗ hổng bảo mật của phần mềm được cài đặt trên hệ thống, đây có thể là một nhiệm vụ nặng nề cho quản trị viên hệ thống thực hiện thủ công trong môi trường sản xuất. Vuls sử dụng nhiều cơ sở dữ liệu lỗ hổng, bao gồm Cơ sở dữ liệu lỗ hổng quốc gia (NVD). Nhẹ về tài nguyên, Vuls có thể quét nhiều hệ thống cùng một lúc và gửi báo cáo qua email hoặc Slack. Nó có ba chế độ quét (nhanh, root nhanh và sâu), bạn có thể chọn tùy theo tình huống.
Vuls không phải là một trình quét bảo mật CNTT rộng; Ví dụ: nó không giám sát lưu lượng mạng hoặc bảo vệ chống lại các cuộc tấn công đăng nhập brute-force. Tuy nhiên, Vuls cung cấp một cách để tự động hóa báo cáo lỗ hổng cho các gói Linux. Khi cơ sở dữ liệu mà Vuls sử dụng được thông báo về bản sửa lỗi cho một số lỗ hổng nhất định, Vuls cũng sẽ kéo thông tin khắc phục này vào báo cáo của mình. Khi tạo báo cáo, Vuls ưu tiên các lỗ hổng khẩn cấp nhất bằng cách sử dụng hệ thống xếp hạng được thiết lập từ cơ sở dữ liệu.
Trong hướng dẫn này, bạn sẽ triển khai Vuls cho máy chủ Ubuntu 22.04. Quá trình này bao gồm xây dựng Vuls và các phụ thuộc của nó từ mã nguồn, định cấu hình quét và báo cáo cho Slack và tùy chọn kết nối nó với các máy đích để cho phép quét từ xa. Cuối cùng, bạn sẽ có một hệ thống báo cáo lỗ hổng tự động tại chỗ để cảnh báo bạn về các lỗ hổng và loại bỏ nhu cầu kiểm tra thủ công.
Điều kiện
Để hoàn thành hướng dẫn này, bạn sẽ cần một máy chủ có RAM ít nhất 2 GB chạy Ubuntu 22.04 với quyền truy cập root.
Cài đặt
Sau khi đã cài đặt thành công trên Ubuntu22.04 mình đã docs lại thành file bash
Các bạn chỉ cần copy đoạn mã sau về 1 file .sh chạy file .sh đó để cài đặt tự động
Bash dưới đây là tự cài và scan localhost, nếu có nhu cầu scan các host khác các bạn có thể tìm hiểu thêm, nó sẽ phải sử dụng ssh key
sudo mkdir /usr/share/vuls-data sudo apt update sudo apt install sqlite git debian-goodies gcc make wget -y sudo apt install snapd snap install go --classic touch /etc/profile.d/go-env.sh cat << EOF >> /etc/profile.d/go-env.sh export GOPATH=$HOME/go export PATH=$PATH:$GOPATH/bin:/snap/bin EOF chmod +x /etc/profile.d/go-env.sh source /etc/profile.d/go-env.sh mkdir -p $GOPATH/src/github.com/vulsio cd $GOPATH/src/github.com/vulsio git clone https://github.com/vulsio/go-cve-dictionary.git cd go-cve-dictionary make install sudo cp $GOPATH/bin/go-cve-dictionary /usr/local/bin sudo mkdir /var/log/vuls sudo chmod 700 /var/log/vuls go-cve-dictionary fetch nvd --dbpath /usr/share/vuls-data/cve.sqlite3 cd $GOPATH/src/github.com/vulsio git clone https://github.com/vulsio/goval-dictionary.git cd goval-dictionary make install sudo cp $GOPATH/bin/goval-dictionary /usr/local/bin sudo goval-dictionary fetch ubuntu --dbpath=/usr/share/vuls-data/oval.sqlite3 22.04 cd $GOPATH/src/github.com/vulsio git clone https://github.com/vulsio/gost.git cd gost make install sudo cp $GOPATH/bin/gost /usr/local/bin sudo mkdir /var/log/gost sudo chmod 700 /var/log/gost gost fetch ubuntu --dbpath=/usr/share/vuls-data/gost.sqlite3 mkdir -p $GOPATH/src/github.com/future-architect cd $GOPATH/src/github.com/future-architect git clone https://github.com/future-architect/vuls.git cd vuls make install sudo cp $GOPATH/bin/vuls /usr/local/bin cd /usr/share/vuls-data touch config.toml cat << EOF >> /usr/share/vuls-data/config.toml [cveDict] type = "sqlite3" SQLite3Path = "/usr/share/vuls-data/cve.sqlite3" [ovalDict] type = "sqlite3" SQLite3Path = "/usr/share/vuls-data/oval.sqlite3" [gost] type = "sqlite3" SQLite3Path = "/usr/share/vuls-data/gost.sqlite3" [servers] [servers.localhost] host = "localhost" port = "local" scanMode = [ "deep" ] #scanMode = ["fast", "fast-root", "deep", "offline"] EOF ln -s /usr/share/vuls-data/config.toml /root/config.toml vuls configtest vuls scan vuls tui
Sau khi cài xong đã scan tự động với mode ” deep” và hiện kết quả như hình.
Như CVE-2023-28531 có thể tìm kiếm thông tin
NVD – CVE-2023-28531 (nist.gov)
Phiên bản của mình đang là 8.9
Bạn có thể nâng cấp tại đây
Upgrade OpenSSH Server Ubuntu 20.04-22.04 – Nhan Hoa Knowledgebase
Có nhiều CVE không fix,không fix được, chưa fix không có nghĩa là hệ thống của bạn bị tấn công, có nhưng lỗ hổng khai thác quá phức tạp,khai thác qua localhost, mạng Lan, mạng internet…
…
Như vậy Nhân Hòa đã hướng dẫn các bạn cài đặt Vuls Server scan CVE.
Hẹn gặp lại các bạn tại các bài viết sau tại wiki.nhanhoa.com