部署https://blog.51cto.com/redone/1907599
错误排查修复http://blog.sina.com.cn/s/blog_707627ed0102wwgf.html
使用过程https://www.jianshu.com/p/71902ee51c3f(扫描测试需要做一些源码部分的修改配置)
参考https://wizardforcel.gitbooks.io/daxueba-kali-linux-tutorial/content/28.html
一、openvas介绍
OpenVAS (Open Vulnerability Assessment System)是开放式漏洞评估系统,其核心部件是一个服务器,包括一套望楼漏洞测试程序,可以检测远程系统和应用程序中的安全问题。
官网:http://www.openvas.org/
注意:OpenVAS Server仅支持Linux系统。OpenVAS Client 没有特殊的要求
二、安装
1.配置网络
[root@localhost ~]#vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
[root@localhost ~]#/etc/init.d/network restart
2.禁用selinux,重启生效
[root@localhost ~]#vi /etc/selinux/config
SELINUX=disabled
[root@localhost ~]#reboot
因为是虚拟机,所以把防火墙关掉了
[root@localhost ~]#/etc/init.d/iptables stop
3.安装wget
[root@localhost ~]#yum -y install wget
4.配置yum源
[root@localhost ~]#wget -q -O - http://www.atomicorp.com/installers/atomic |sh
5.安装openvas
[root@localhost ~]#yum -y install openvas
6.更新openvas数据库,设置用户名密码,60分钟左右 = =!
[root@localhost ~]#openvas-setup
7.同步,已经更新到最新,可以不执行
[root@localhost ~]#openvas-nvt-sync
8.下载检查脚本,赋予权限并执行
[root@localhost ~]#wget https://svn.wald.intevation.org/svn/openvas/trunk/tools/openvas-check-setup --no-check-certificate
[root@localhost ~]#chmod 755 openvas-check-setup
[root@localhost ~]#./openvas-check-setup --server
9.检查模块进程是否正常
[root@localhost src]# service gsad status
gsad (pid 32259) is running...
[root@localhost src]# service openvas-manager status
openvas-manager (pid 32639) is running...
[root@localhost src]# /etc/init.d/openvas-scanner status
openvassd (pid 32206) is running...
10.web登录
https://127.0.0.1:9392
===========================================
三、配置
openvas-check-setup脚本官方下载
https://svn.wald.intevation.org/svn/openvas/trunk/tools/openvas-check-setup
# wget -q -O - http://www.atomicorp.com/installers/atomic |sh
# yum install openvas
# openvas-setup
检查安装
# openvas-check-setup
安装redis
# vim /etc/redis.conf
port 0
unixsocket /tmp/redis.sock
unixsocketperm 755
timeout 0
启动时指定配置文件
# redis-server ./redis.conf
如果更改了端口,使用`redis-cli`客户端连接时,也需要指定端口,例如:
# redis-cli -p 6380
如果要使用Unix Socket连接方式
# ./src/redis-cli -s /tmp/redis.sock
#Initial setup
openvas-mkcert
openvas-mkcert-client -n -i
openvas-nvt-sync
openvas-scapdata-sync
openvas-certdata-sync
service openvas-scanner start !!!
重建
# openvasmd --rebuild --progress
创建user
# openvasmd --create-user=admin --role=Admin && openvasmd --user=admin --new-password=123456
重启redis
# service redis restart
启动服务
# openvasmd -p 9390 -a 0.0.0.0 !!!
# service gsad start !!!
openvassd
openvasmd --rebuild
openvasmd --backup
openvasmd -p 9390 -a 127.0.0.1
openvasad -a 127.0.0.1 -p 9393
gsad --http-only --listen=127.0.0.1 -p 9392
配置防火墙
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 9390 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 9392 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
service iptables save
service iptables restart
查看安装包
# rpm -qa | grep openvas
openvas-smb-1.0.1-1.el6.art.x86_64
openvas-cli-1.4.4-10.el6.art.x86_64
openvas-scanner-5.0.7-25.el6.art.x86_64
openvas-libraries-8.0.8-25.el6.art.x86_64
openvas-manager-6.0.9-36.el6.art.x86_64
openvas-1.0-17.el6.art.noarch
重新启动 openvasmd服务
#!/bin/bash
/etc/init.d/openvas-scanner stop
/etc/init.d/openvas-manager stop
/etc/init.d/gsad stop
/etc/init.d/openvas-scanner start
openvas-nvt-sync
service redis restart
openvasmd --rebuild --progress
openvasmd --create-user=admin --role=Admin && openvasmd --user=admin --new-password=admin
openvasmd -p 9390 -a 0.0.0.0
service gsad start
批量杀死openvas进程
# ps -ef |grep openvas|grep -v grep|awk '{print $2}'|xargs kill -9
#注意脚本名字一定不要和grep过滤的内容相同,这样脚本就很容易被误杀
===========================================
配置扫描
全局设置
设置--时区--上海
1.新建端口列表
2.新建主机列表
3.新建任务列表
大兴IDC(生产环境)
4.策略模板
5.定时任务
6.报警
Metasploit中使用OpenVas
msf > load openvas
msf > openvas_connect
msf > openvas_target_create
msf > openvas_config_list
msf > openvas_task_create
msf > openvas_task_start
msf > openvas_task_list
msf > openvas_report_list
msf > openvas_format_list
msf > openvas_report_download
===========================================
openvas相关报错
1.###openvasmd: symbol lookup error: openvasmd: undefined symbol: sqlite3_errstr
#安装
atomic-sqlite-sqlite-devel.x86_64
atomic-sqlite-sqlite.x86_64
2.###当$OPENVASMD_HOST为空时会提示ERROR:OpenVAS Manager is NOT running!
# vim openvas-check-setup
OPENVASMD_HOST=`netstat-A inet -ntlp 2> /dev/null | grep openvasmd | awk -F\ '{print $4}' | awk -F:'{print $1}'`
如果是使用serviceopenvas-manager start 和 openvasmd -p 9390 -a 127.0.0.1启动
[root@VM-ON-106 openvas-manager-6.0.1]# netstat -anlp | grep 9390
tcp 00:::9390:::* LISTEN 19727/openvasmd
发现9390是监听IPV6,所以netstat -A inet -ntlp获取结果为空,导致会提示ERROR: OpenVAS Manager is NOT running!
修改启动命令为:openvasmd -p 9390 -a 0.0.0.0
[root@VM-ON-106 admin]# netstat -anlp | grep 9390
tcp 0 0 0.0.0.0:9390 0.0.0.0:* LISTEN 22283/openvasmd
安装完成后,看一下openvas使用到的进程和端口:
1)9390所对应的是openvasmd服务,(使用service openvas-manager start启动的话,会报ERROR: OpenVAS Manager is NOT running!)
openvasmd -p 9390 -a 0.0.0.0
2)9391所对应的是openvassd服务,用于扫描。
service openvas-scanner start
3)9392所对应的gsad服务,用于提供Web UI。
service gsad start
3.###重建openvasmd --rebuild --progress卡死
重启redis服务
# service redis restart
4.###不同服务器扫描结果有差异!
1)openvas版本不同,漏洞库更新不一致
2)扫描器网络限制问题
3)服务器配置不一样,扫描结果也有差异,慢的可能延时长,会误识别或少识别检查项![namp扫描原理有介绍,如果时间太短,则影响精确性]
5.###Login failed. Waiting for OMP service to become available.
考虑是没有开启openvas服务,在终端首先开启openvas
# openvasmd -p 9390 -a 0.0.0.0
#禁用开机启动
# chkconfig openvas-manager off
#打开rc.local文件
[root@openvas ~]# vim /etc/rc.local
#填入到尾部并保存
openvasmd --listen=127.0.0.1
6.发邮件没有附件报错
Note: This report exceeds the maximum length of 1048576 characters and thus
was truncated.
#原因是因为附件太大无法添加【autofp=0 apply_overrides=1 notes=1 overrides=1 result_hosts_only=1 first=1 rows=100sort-reverse=severity levels=hm min_qod=80 timezone=Asia/Shanghai sort=name】
将rows大小改的小一些就可以了。
Compliance | 扫描Compliance漏洞 |
---|---|
Default Accounts | 扫描默认账号漏洞 |
Denial of Service | 扫描拒绝服务漏洞 |
FTP | 扫描FTP服务器漏洞 |
Ubuntu Local Security Checks | 扫描Ubuntu系统的本地安全漏洞 |
Brute force attacks | 暴力攻击 |
---|---|
Buffer overflow | 扫描缓存溢出漏洞 |
CISCO | 扫描CISCO路由器 |
Compliance | 扫描Compliance漏洞 |
Databases | 扫描数据库漏洞 |
Default Accounts | 扫描默认账号漏洞 |
Denial of Service | 扫描拒绝服务漏洞 |
FTP | 扫描FTP服务器漏洞 |
Finger abuses | 扫描Finger滥用漏洞 |
Firewalls | 扫描防火墙漏洞 |
Gain a shell remotelly | 扫描获取远程Shell的漏洞 |
General | 扫描漏洞 |
Malware | 扫描恶意软件 |
Netware | 扫描网络操作系统 |
NMAP NSE | 扫描NMAP NSE漏洞 |
Peer-To-Peer File Sharing | 扫描共享文件漏洞 |
Port Scanners | 扫描端口漏洞 |
Privilege Escalation | 扫描提升特权漏洞 |
Product Detection | 扫描产品侦察 |
RPC | 扫描RPC漏洞 |
Remote File Access | 扫描远程文件访问漏洞 |
SMTP Problems | 扫描SMTP问题 |
SNMP | 扫描SNMP漏洞 |
Service detection | 扫描服务侦察 |
Settings | 扫描基本设置漏洞 |
Brute force attacks | 暴力攻击 |
---|---|
Buffer overflow | 扫描缓存溢出漏洞 |
Compliance | 扫描Compliance漏洞 |
Databases | 扫描数据库漏洞 |
Default Accounts | 扫描默认用户账号漏洞 |
Denial of Service | 扫描拒绝服务的漏洞 |
FTP | 扫描FTP服务器漏洞 |
Finger abuses | 扫描Finger滥用漏洞 |
Gain a shell remotely | 扫描获取远程Shell漏洞 |
General | 扫描General漏洞 |
Malware | 扫描恶意软件漏洞 |
Netware | 扫描网络操作系统 |
NMAP NSE | 扫描NMAP NSE漏洞 |
Port Scanners | 扫描端口漏洞 |
Privilege Escalation | 扫描提升特权漏洞 |
Product Detection | 扫描产品侦察漏洞 |
RPC | 扫描RPC漏洞 |
Remote File Access | 扫描远程文件访问漏洞 |
SMTP Porblems | 扫描SMTP问题 |
SNMP | 扫描SNMP漏洞 |
Service detection | 扫描服务侦察漏洞 |
Settings | 扫描基本设置漏洞 |
Web Servers | 扫描Web服务漏洞 |
Brute force attacks | 暴力攻击 |
---|---|
Buffer overflow | 扫描缓存溢出漏洞 |
Compliance | 扫描Compliance漏洞 |
Databases | 扫描数据库漏洞 |
Default Accounts | 扫描默认用户账号漏洞 |
Denial of Service | 扫描拒绝服务漏洞 |
FTP | 扫描FTP服务器漏洞 |
Gain a shell remotely | 扫描获取远程Shell的漏洞 |
General | 扫描General漏洞 |
Malware | 扫描网络操作系统漏洞 |
NMAP NSE | 扫描NMAP NSE漏洞 |
Port Scanners | 扫描端口漏洞 |
Privilege Escalation | 扫描提升特权漏洞 |
Product Detection | 扫描产品侦察漏洞 |
RPC | 扫描RPC漏洞 |
Remote File Access | 扫描远程文件访问漏洞 |
SMTP Problems | 扫描SMTP问题漏洞 |
SNMP | 扫描SNMP漏洞 |
Service detection | 扫描服务侦察漏洞 |
Web Servers | 扫描Web服务漏洞 |
Windows | 扫描Windows系统漏洞 |
Windows:Microsoft Bulletins | 扫描Windows系统微软公告漏洞 |