windows下安装Nessus
0x0:前言
有关Nessus的简介不多说,做过企业渗透测试的特别是内网的渗透测试就会知道在拿到甲方授权的网络拓扑结构资产列表就可以全部放经来一波。往往会有意想不到的收获,主要是节省大量时间。
0x1:安装Nessus
直接到 Nessus 官网:https://www.tenable.com/downloads/nessus 下载对应系统版本的 Nessus,基本上主流平台都有。下载好后打开进行安装即可。
Nessus会自动打开浏览器,询问是否使用SSL,选择是,如果浏览器提示证书问题,请忽略或添加白名单,一般默认地址是:https://localhost:8834/,到这里初始化后就开始选择安装了,需要注意第一步选择 Managed Scanner 这项,
然后在 Manageed by 下拉选择 Tenable.sc ,
然后Continue 即可下一步,输入账号密码,点击“Submit”(这里用户名密码将作为登录使用)
等待初始化完成
完成配置后,将进入Nessus设置页(这里图是借用的,大概就这样)
0x2 获取离线安装包和激活码
打开网址:https://zh-cn.tenable.com/products/nessus/activation-code?tns_redirect=true#nessus
注册一个免费版即 Nessus Essentials ,填写姓名、邮件,然后会收到一封邮件,包含激活码,记住这个激活码,后面下载插件包需要用到。
以管理员权限打开cmd。切换到 Nessus 安装目录,cd E:\Nessus\,执行如下命令获取Challenge code:
E:\Nessus>nessuscli.exe fetch --challenge
Challenge code: 2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx5
You can copy the challenge code above and paste it alongside your
Activation Code at:
然后访问 https://plugins.nessus.org/v2/offline.php 填写 Challenge code 和 上面邮件收到的 activation code 来下载获取 all-2.0.tar.gz 和 nessus-fetch.rc 或nessus.license文件
下载这两个文件
网络慢可以挂代理或者使用手机热点
0x3:离线更新插件
将下载的两个文件移动到E:\Nessus\安装目录下执行nessuscli.exe update all-2.0.tar.gz 命令
更新成功后,将nessus-fetch.rc移动到E:\Nessus\conf下或者cmd管理员下执行nessuscli.exe fetch --register-offline nessus.license
0x4:重启Nessus
cmd管理员下执行 net stop "Tenable Nessus" && net start "Tenable Nessus"
等待插件编译完成
0x5:破解
将E:\Nessus\nessus\plugins文件夹打包并cmd管理员下执行 net stop "Tenable Nessus"
然后找到
复制到桌面一份,用编辑软件打开第一行不动,修改第二行,增加第三行为
PLUGIN_SET = "202008211304"; //不改动
PLUGIN_FEED = "ProfessionalFeed (Direct)";
PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";
保存后替换
E:\Nessus\nessus\plugin_feed_info.inc
E:\Nessus\nessus\plugins\plugin_feed_info.inc
cmd管理员下执行 net start "Tenable Nessus"
完成后发现plugins文件下插件消失了,cmd管理员下执行 net stop "Tenable Nessus" 然后把打包的插件解压到plugins文件夹下,
继续替换
E:\Nessus\nessus\plugin_feed_info.inc
E:\Nessus\nessus\plugins\plugin_feed_info.inc
cmd管理员下执行 net start "Tenable Nessus"
等待插件编译完成
重启也没事,成功完美破解,但以后每次更新都要通过以上操作解除IP限制。
liunx下Nessus安装
1、准备
(1)获得激活码
地址:https://zh-cn.tenable.com/products/nessus/nessus-essentials
2)安装包下载
2、安装
(1)安装
#sudo dpkg -i Nessus-8.12.1-debian6_amd64.deb
(2)启动nessus
# sudo service nessusd start
(3)配置
浏览器打开:https://ip:8834,选择“Managed Scanner”,点击“Continue”
选择“Tenable.sc”,点击“Continue”
输入账号密码,点击“Submit”
完成配置后,将进入Nessus设置页
(4)激活(离线激活)
获取查询码:
# sudo /opt/nessus/sbin/nessuscli fetch --challenge
用浏览器打开:Tenable Network Security,输入查询码和激活码,点击“Submit”
下载这两个文件
网络慢可以挂代理或者使用手机热点
离线安装插件包
# sudo service nessusd stop
# sudo /opt/nessus/sbin/nessuscli update ./all-2.0.tar.gz
# sudo /opt/nessus/sbin/nessuscli fetch --register-offline nessus.license
# sudo service nessusd start
等待插件编译完成
完成后进入设置页,显示激活成功,但只能扫描16个IP。
(5)解除IP限制
查找plugin_feed_info.inc
# sudo find /opt -name plugin_feed_info.inc
cp /opt/nessus/lib/nessus/plugins/plugin_feed_info.inc /
vim /plugin_feed_info.inc
第一行不动,修改第二行,增加第三行为
PLUGIN_SET = "202008211304"; //不改动
PLUGIN_FEED = "ProfessionalFeed (Direct)";
PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";
停用nessus
# sudo service nessusd stop
备份插件目录/opt/nessus/lib/nessus/plugins/,新版本的Nessus会对plugin_feed_info.inc的信息进行对比,发现plugin_feed_info.inc信息不一致时,会删除/opt/nessus/lib/nessus/plugins/下的插件。
# cp -r /opt/nessus/lib/nessus/plugins /opt/nessus/lib/nessus/plugins.bak //文件有点大,备份时间有点长
将plugin_feed_info.inc替换/opt/nessus/var/nessus/plugin_feed_info.inc、/opt/nessus/lib/nessus/plugins/plugin_feed_info.inc两个文件。
#sudo cp plugin_feed_info.inc /opt/nessus/lib/nessus/plugins/
#sudo cp plugin_feed_info.inc /opt/nessus/var/nessus/
启动nessus
#sudo service nessusd start
在浏览器中访问:https://ip:8834,进行第一次初始化。
完成后,发现设置页面没有变化,但/opt/nessus/lib/nessus/plugins/目录下的插件不见了。
停用nessus
# sudo service nessusd stop
将备份插件目录/opt/nessus/lib/nessus/plugins/还原
#sudo cp -r /opt/nessus/lib/nessus/plugins.bak /opt/nessus/lib/nessus/plugins
再次将plugin_feed_info.inc替换/opt/nessus/var/nessus/plugin_feed_info.inc、/opt/nessus/lib/nessus/plugins/plugin_feed_info.inc两个文件。
#sudo cp plugin_feed_info.inc /opt/nessus/lib/nessus/plugins/
#sudo cp plugin_feed_info.inc /opt/nessus/var/nessus/
启动nessus
#sudo service nessusd start
在浏览器中访问:https://ip:8834,进行第二次初始化。
完成后,发现插件恢复正常,扫描恢复正常,解除IP限制成功。
以后每次更新都要通过以上操作解除IP限制。
(6)自动更新shell脚本:
++++++++脚本代码+++++++++++++++++++++++++++
#!/bin/bash
#下载更新插件包all-2.0.tar.gz
rm -f all-2.0.tar.gz
wget -o all-2.0.tar.gz "https://plugins.nessus.org/v2/nessus.php?f=all-2.0.tar.gz&u=......"
#将“https://plugins.nessus.org/v2/nessus.php?f=all-2.0.tar.gz&u=......”替换为自己的更新插件包all-2.0.tar.gz下载地址
#第一次初始化
#停用nessus服务
sudo service nessusd stop
#更新插件,输出log
sudo /opt/nessus/sbin/nessuscli update ./all-2.0.tar.gz > all-2.0.log
#更新plugin_feed_info.inc
chmod 777 plugin_feed_info.inc
export new_PLUGIN_SET=$(cat all-2.0.log|tr -cd '0-9'|cut -c1-12)
export old_PLUGIN_SET=$(cat plugin_feed_info.inc|tr -cd '0-9'|cut -c1-12)
sed -i "s/$old_PLUGIN_SET/$new_PLUGIN_SET/g" plugin_feed_info.inc
#备份plugin
Path1="/opt/nessus/lib/nessus/plugins.bak"
if [[ ! -d "$Path1" ]]; then
echo "/opt/nessus/lib/nessus/plugins.bak文件夹不存在"
else
rm -r /opt/nessus/lib/nessus/plugins.bak
fi
cp -r /opt/nessus/lib/nessus/plugins /opt/nessus/lib/nessus/plugins.bak
sudo cp plugin_feed_info.inc /opt/nessus/lib/nessus/plugins/
sudo cp plugin_feed_info.inc /opt/nessus/var/nessus/
#curl访问
sudo service nessusd start
curl https://127.0.0.1:8834
#第二次初始化
sleep 5
sudo service nessusd stop
sudo chown root:root ./plugin_feed_info.inc && sudo chmod 644 ./plugin_feed_info.inc
sudo cp -r /opt/nessus/lib/nessus/plugins.bak /opt/nessus/lib/nessus/plugins
sudo cp plugin_feed_info.inc /opt/nessus/lib/nessus/plugins/
sudo cp plugin_feed_info.inc /opt/nessus/var/nessus/
sudo service nessusd start
curl https://127.0.0.1:8834
+++++++++++++++++++++++++++++++++++++++++
将以上代码保存为nessus-update.sh