欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

实战攻略:AWVS、AppScan和Nessus三大漏洞扫描工具如何使用?

最编程 2024-08-06 11:47:17
...

3.1 Kali安装Nessus

下载地址:https://docs.tenable.com/releasenotes/Content/nessus/nessus.htm

命令行下载

curl --request GET \ --url 'https://www.tenable.com/downloads/api/v2/pages/nessus/files/Nessus-10.5.1-debian10_amd64.deb' \ --output 'Nessus-10.5.1-debian10_amd64.deb'

安装,这步完成后会提示服务的端口,可以登录进行配置

dpkg -i Nessus-10.5.1-debian10_amd64.deb 

在这里插入图片描述

启动Nessus

service nessusd start

在这里插入图片描述

浏览器访问nessus的web页面,Kali的IP+服务的端口,勾选Register Offline,点击Continue,选择 Managed Scanner选项,点击Continue,选择Tenable.sc,点击Continue

在这里插入图片描述

根据提示创建管理员用户密码,等待配置完成。

安装完成后是这样的界面,尚未激活,不能扫描。
在这里插入图片描述

3.2 离线激活Nessus

3.2.1 去Nessus官方申请激活码

https://zh-cn.tenable.com/products/nessus/nessus-essentials 姓名随便填,邮箱必须正确,用来接收激活码。进入填写的邮箱获取激活码,

3.2.2 获得质询码(challenge code)

/opt/nessus/sbin/nessuscli fetch  --challenge

在这里插入图片描述

3.2.3 获得插件、激活码和证书

浏览器打开网页 https://plugins.nessus.org/v2/offline.php ,输入申请的激活码,以及上一步得到的质询码,点击Submit,即可得到更新插件地址,及license证书。

在这里插入图片描述

也可以使用官方提供的方法用命令行的方式安装证书。证书安装命令和下载按钮在页面底部。

3.2.4 安装证书和插件

这里采用下载后离线安装证书的方式,执行如下命令

/opt/nessus/sbin/nessuscli fetch --register-offline nessus.license

在这里插入图片描述

安装插件(需要先下载,文件大小为361.412MB)

/opt/nessus/sbin/nessuscli update ./all-2.0.tar.gz
/opt/nessus/lib/nessus/plugins/  #插件包目录

在这里插入图片描述

重启Nessus,重新访问Nessus网站,等待加载插件(耗时较长,需要耐心等待)

完成后进入Nessus系统。显示激活成功,具有了scan功能。

3.3 解除IP限制

如果Nessus页面显示仅允许扫描16个IP,那么就需要解除IP限制。

  1. 获取当前plugins的版本

    https://plugins.nessus.org/v2/plugins.php

    202304091403

  2. 停止Nessus服务

    serice nessusd stop
    
  3. 创建plugin_feed_info.inc

    vi plugin_feed_info.inc
    

    内容如下:

    PLUGIN_SET = "202304091403";
    PLUGIN_FEED = "ProfessionalFeed (Direct)";
    PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";
    
  4. plugin_feed_info.inc替换到 /opt/nessus/var/nessus/plugin_feed_info.inc

    cp plugin_feed_info.inc /opt/nessus/var/nessus/
    
  5. 删除/opt/nessus/lib/nessus/plugins/plugin_feed_info.inc

  6. 启动nessus服务

这时如果设置页面显示Licensed Hosts Unlimited,则无限制。但可能会出现重启后插件被删除的情况,解决方案请看下一步。

3.4 解决重启失效

接上一步。

由于Nessus服务每次重启后,都会重置plugin_feed_info.inc,这将会使nessus/plugins目录下所有的插件都被删除,无法扫描。因此要将Nessus服务设置为手动,并且先停止Nessus服务。可以写成批处理解决此问题。

3.4.1 编写启动脚本

vi qd_nessus.sh

service nessusd stop;
cp /root/nessus/plugin_feed_info.inc /opt/nessus/var/nessus/;
rm -rf /opt/nessus/lib/nessus/plugins/plugin_feed_info.inc;
service nessusd start;

每次需要启动Nessus时,输入启动命令

sh /root/nessus/qd_nessus.sh

3.4.2 Nessus命令合集

#启动
service nessusd start;
#重启
service nessusd restart;
#查看状态
service nessusd status
#停止服务
service nessusd stop

3.4.3 BUG解决

在解除ip限制的过程中,如果已经解除成功,但是新建扫描项目时,发现很快就结束,无扫描结果。此时查看plugins目录内容是否被删除。

du -h /opt/nessus/lib/nessus/plugins

在这里插入图片描述

如果低于上图所示的值,则需要执行如下命令

service nessusd stop;
/opt/nessus/sbin/nessuscli update ./all-2.0.tar.gz
sh qd_nessus.sh

重新访问Nessus即可。

3.5 使用Nessus进行主机发现

  1. 启动Nessus

    cd nessus
    sh qd_nessus.sh
    
  2. 进入Nessus网站并登录,点击New Scan,选择Host Discovery,按照提示输入相关内容

    在这里插入图片描述

  3. 注意到左侧的Schedule是配置定时任务的,Notifications是配置邮件提醒的 ,可暂时不予理睬。

  4. 点击Discovery,选择常用端口扫描

    在这里插入图片描述

    这里细心的道友可能发现页面主题变了,我是在SettingsAdvancedUser InterfaceUI Theme设置的。

  5. 在这里插入图片描述

  6. 保存后即可在My Scans中找到计划,启动扫描了。

3.6 使用Nessus扫描log4J漏洞

3.6.1 靶场环境搭建

centos7+docker+vulhub

安装docker,vulhub,部署log4j靶场

#1 进入log4j/CVE-2021-44228
cd log4j/CVE-2021-44228
#2 编译环境
docker-compose build
#3 运行环境
docker-compose up -d
#4 查看端口
docker-compose ps
docker ps

3.6.2 log4Jshell扫描

登录后,点击New ScanLog4Shell→输入Name和Target→点击Discovery→选择扫描类型Thorough→点击Report→选择Credentials选项卡→点击SSH→选择身份验证方法password→输入被扫描服务器的用户名和密码→在plugins页面选择插件→运行扫描即可。

漏洞

3.6.1 靶场环境搭建

centos7+docker+vulhub

安装docker,vulhub,部署log4j靶场

#1 进入log4j/CVE-2021-44228
cd log4j/CVE-2021-44228
#2 编译环境
docker-compose build
#3 运行环境
docker-compose up -d
#4 查看端口
docker-compose ps
docker ps

3.6.2 log4Jshell扫描

登录后,点击New ScanLog4Shell→输入Name和Target→点击Discovery→选择扫描类型Thorough→点击Report→选择Credentials选项卡→点击SSH→选择身份验证方法password→输入被扫描服务器的用户名和密码→在plugins页面选择插件→运行扫描即可。
此外Nessus还提供Log4Shell 漏洞生态系统扫描的功能。