一、openvas介绍
OpenVAS (Open Vulnerability Assessment System)是开放式漏洞评估系统,其核心部件是一个服务器,包括一套望楼漏洞测试程序,可以检测远程系统和应用程序中的安全问题。
官网:http://www.openvas.org/
注意:OpenVAS Server仅支持Linux系统。OpenVAS Client 没有特殊的要求
openvas架构图:
其中Openvas server 是核心部分,负责为Openvas Client提供登陆,查询等功能,包括一整套随时更新的扫描插件(Plugins),用户可以通过OpenVAS NVT Feed Service保持与官方扫描插件的自动更新。同时OpenVAS Server 负责根据OpenVAS Client发起的请求,对指定的Target Systems(一系列主机)进行扫描,这些主机可以包括Linux,Windows,或是其他的操作系统。
OpenVAS相关服务:
openvas-manager #//负责与客户端Greebone程序通信,完成扫描任务、检测报告的提交等工作,默认端口为9390
openvas-scanner #//实际执行扫描的主服务,默认端口为9391
gsad #//负责提供Web访问界面,默认监听地址为127.0.0.1,端口为9392
openvas-administrator #//负责与openvas-manager、gsad通信,完成用户和配置管理等操作,默认监听地址为127.0.0.1,端口为9393
二、安装
系统:centos6.5_x86_64
关闭系统防火墙(iptables、selinux等)
1、配置yum源
wget -q -O - http://www.atomicorp.com/installer/atomic | sh
中间有提示时,一直按回车就可以。
2、yum 安装openvas
yum install openvas* -y
3、openvas相关命令
yum 安装openvas成功后,会出现如下命令:
4、配置openvas
执行openvas-setup
之后按照提示进行安装
5、启动相关服务
1、默认启动的服务:
service openvas-administrator status (已启动)
service gsad status (已启动)
2、手动启动的服务:
openvasmd --rebuild 更新数据库之后,需要重建数据库
openvassd 需要加载plugins并启动scanner(执行前先确定openvas-)
service openvas-manager start
3、Openvas 的安装验证
openvas-check-setup --server
4、openvas访问
https://ip:9392
源码安装openvas
1、安装依赖包
sudo yum install gcc glib glib2 glib-dev glib2-dev gpgme gpgme-devel make bison gnutls gnutls-devel libpcap libpcap-devel cmake gtk+ gtk+-devel
2、下载源码包编译
$ wget http://wald.intevation.org/frs/download.php/683/openvas-libraries-3.0.0.tar.gz
$ tar -zxf openvas-libraries-3.0.0.tar.gz
$ cd openvas-libraries-3.0.0
$ ./configure (提示glib错误时,执行yum -y install glib* 版本不兼容造成)
$ make && make install
$ ldconfig
然后,对下面的文件重复这些步骤:
wget http://wald.intevation.org/frs/download.php/684/openvas-scanner-3.0.0.tar.gz
wget http://wald.intevation.org/frs/download.php/685/openvas-client-3.0.0.tar.gz (configure时提示configure: error: "libz is needed" 错误,请执行 yum install -y zlib-devel)
在 openvas-client 执行make时提示如下错误:
/usr/bin/ld: cannot find -lcrypto
collect2: ld returned 1 exit status
make[1]: *** [OpenVAS-Client] Error 1
make[1]: Leaving directory `/root/openvas-client-3.0.0/openvas'
make: *** [client] Error 2
处理方法:
cd /usr/lib/
[root@localhost lib]# locate libcrypto
/usr/lib64/.libcrypto.so.1.0.0.hmac
/usr/lib64/.libcrypto.so.10.hmac
/usr/lib64/libcrypto.so.1.0.0
/usr/lib64/libcrypto.so.10
[root@localhost lib]# ln -s /usr/lib64/libcrypto.so.10 libcrypto.so
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
下来,我们需要为OpenVAS创建一个服务器证书。
$ sudo openvas-mkcert
按照屏幕上的指示,去创建您的证书。
错误提示:
/usr/local/sbin/openvassd: error while loading shared libraries: libopenvas_misc.so.3: cannot open shared object file: No such file or directory
Executing openvassd failed. Make sure your library loader is configured properly and that openvassd is in your $PATH.
处理方法:
找到libopenvas_misc.so.3文件路径: find / -name "*libopenvas_misc.so.3*"
将目录添加至/etc/ld.so.conf文件内
然后重新加载: /sbin/ldconfig
现在,我们需要使用openvas-adduser命令去为OpenVAS的运行创建一个用户。
$ sudo openvas-adduser
同样地,按照屏幕上的指示,为OpenVAS用户提供一个用户名字和用户密码。最后,我们需要安装我们用来扫描的网络漏洞测试(NVTs)。OpenVAS的命令为:
$ sudo openvas-nvt-sync
第一次运行会持续一段时间,而且您需要定期地运行它以便收到更新和新的测试。我一般通过cron,一天运行它一次。
运行OpenVAS扫描器
当安装完以后,您就可以运行OpenVAS扫描器守护进程:
$ sudo openvassd
由于守护进程会将所有的网络漏洞测试都加载到扫描器中,所以根据你扫描用的主机的性能,会花一点时间。