Nessus8.x破解
ssooking Lv5

1.安装nessus软件包

官网nessus软件包下载地址:https://www.tenable.com/downloads/nessus

安装nessus,后文以默认安装路径为例。

安装完nessus后,会自动打开浏览器访问https://localhost:8834。

linux安装完需要先执行systemctl start nessusd.service启动nessus服务。

进入配置页面,选择Connect Via SSL→Managed Scanner→Managed by Tenable.sc,点击 Continue,设置本地Nessus管理账号。

点击提交后会自动初始化,完成后会进入到nessus关于页面,可以看到一些nessus信息。

1
2
3
4
5
6
7
8
Nessus (Unregistered Scanner)
Version8.13.1 (#257) WINDOWS
Plugins
Last Updated N/A
License Expiration N/A
Plugin Set N/A
Policy Template Version 202012031832
Activation CodeN/A

2.使用离线包安装更新

访问

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

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

第一个框中的Challenge code在本地生成:

1
2
3
4
5
6
7
8
# Windows
"C:\Program Files\Tenable\Nessus\nessuscli.exe" fetch --challenge

# Linux
sudo /opt/nessus/sbin/nessuscli fetch --challenge

# macOS
/Library/Nessus/run/sbin/nessuscli fetch --challeng

第二个框需要填入注册生成的Activation code。注册地址:https://zh-cn.tenable.com/products/nessus/nessus-essentials。可以使用临时邮箱接收邮件:https://temp-mail.org/zh/。

信息随便写,点击注册后邮箱收到邮件,把邮件中的激活码贴到第二个框里,提交。此时可以下载两个文件all-2.0.tar.gz 和 nessus-fetch.rc,压缩包的东西就是扫描器插件包。

1、复制nessus-fetch.rc文件到下表所示指定位置

System Path
Unix /opt/nessus/etc/nessus/
Windows Vista/7/8/2008/2012 C:\ProgramData\Tenable\Nessus\conf\
Windows XP/2K3 C:\Documents and Settings\All Users\Application Data\Tenable\Nessus\conf\
MacOS /Library/Nessus/run/etc/nessus/
FreeBSD /usr/local/nessus/etc/nessus/nessus-fetch.rc

2、离线更新插件:

把all-2.0.tar.gz复制到nessuscli.exe目录下,以管理员权限运行命令:

1
2
3
4
5
6
# Windows
nessuscli.exe update all-2.0.tar.gz #此时会生成一串数字
"C:\Program Files\Tenable\Nessus\nessuscli.exe" update C:\all-2.0.tar.gz

# Linux/MacOS
sudo ./nessuscli update ~/Downloads/all-2.0.tar.gz

保存结果中的数字串如:202101042100,后面破解会用到

命令执行完毕后,压缩备份plugins插件目录C:\ProgramData\Tenable\Nessus\nessus\plugins\(其他路径见下文)备用。

3.破解IP限制

创建一个文件plugin_feed_info.inc内容如下,其中PLUGIN_SET为插件的更新时间,根据实际插件日期调整。

1
2
3
4
PLUGIN_SET = "202101042100";
PLUGIN_FEED = "ProfessionalFeed (Direct)";

PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";

将 plugin_feed_info.inc 文件替换到指定路径

1
2
3
4
5
6
7
8
9
10
11
# Windows
C:\ProgramData\Tenable\Nessus\nessus\
C:\ProgramData\Tenable\Nessus\nessus\plugins\

# MacOS
/Library/Nessus/run/var/nessus/
/Library/Nessus/run/lib/nessus/plugins/

# Linux
/opt/nessus/lib/nessus/plugins/
/opt/nessus/var/nessus/

注:PLUGIN_SET里面要对应你自己的版本号

Windows权限中设置plugin_feed_info.inc拒绝写入

Linux下可以使用脚本自动生成plugin_feed_info.inc文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
export PLUGIN_SET="202101042100"

cat>/opt/nessus/lib/nessus/plugins/plugin_feed_info.inc<<EOF
PLUGIN_SET = ${PLUGIN_SET};
PLUGIN_FEED = "ProfessionalFeed (Direct)";

PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";
EOF

cat>/opt/nessus/var/nessus/plugin_feed_info.inc<<EOF
PLUGIN_SET = ${PLUGIN_SET};
PLUGIN_FEED = "ProfessionalFeed (Direct)";

PLUGIN_FEED_TRANSPORT = "Tenable Network Security Lightning";
EOF

使用chattr命令添加隐藏属性禁止任何人修改,防止文件在更新时重新变回去。

1
2
3
sudo chattr +i /opt/nessus/var/nessus/plugin_feed_info.inc 
sudo chattr +i /opt/nessus/lib/nessus/plugins/plugin_feed_info.inc
sudo chattr -R +i /opt/nessus/lib/nessus/plugins/

4.重启Nessus服务

破解完毕后重启nessus服务

  • Linux:service nessusd restart
  • Windows:系统在任务管理器的服务中重启Tenable Nessus服务

重启nessus服务后,此时plugin_feed_info.inc变成了空文件,且plugins里的规则文件也没了。此时重新替换plugin_feed_info.inc,重启nessus服务,刷新网页看到变成了Unlimited,此时把之前复制的plugins目录再替换一下即可。

5.禁止Nessus自动更新

每次更新完后,plugin_feed_info.inc都会变回家庭版的配置(因为是通过下载家庭版的插件包来进行离线更新的),解决方法是:

1、禁止自动更新,需要更新时,手动下载插件包更新

2、每次更新完,用脚本自动把plugin_feed_info.inc文件替换回自定义内容,并且替换plugins目录

一、禁止自动更新

在hosts文件中添加代码:

1
2
3
127.0.0.1 plugins.nessus.org
127.0.0.1 www.nessus.org
127.0.0.1 www.tenable.com

因为不知道哪一个网站是负责更新的,所以就全部添加了,以防自动更新,可以具体抓包看下。

二、自动替换plugin_feed_info.inc文件

执行下面的脚本(修改URL为自己注册获取的,该链接可重复使用下载最新插件包),自动创建一个nessus-update文件,执行./nessus-update自动更新插件。

1
2
3
4
5
6
7
8
9
10
#!/bin/bash

rm ~/all-2.0.tar.gz 2&>1 >/dev/null
wget -O "all-2.0.tar.gz" "https://plugins.nessus.org/v2/nessus.php?f=all-2.0.tar.gz&u=xxxxx&p=xxxxx" && /opt/nessus/sbin/nessuscli update all-2.0.tar.gz

sed -i 's/"HomeFeed (Non-commercial use only)"/"ProfessionalFeed (Direct)"/g' /opt/nessus/var/nessus/plugin_feed_info.inc
sed -i 's/"HomeFeed (Non-commercial use only)"/"ProfessionalFeed (Direct)"/g' /opt/nessus/lib/nessus/plugins/plugin_feed_info.inc
EOF

chmod u+x nessus-update

然后设置定时执行更新脚本:crontab -l

进入Crontab编辑器,添加一行内容,如每天凌晨两点执行更新:

1
0 2 * * * bash /root/nessus-update

6.License问题

其中由于没有导入license授权文件,所以授权到期时间以及激活码均显示N/A。

如果想显示出来,可以在Web页面”Activation Code”处填入上面获取的激活码,填完之后会自动更新插件并初始化。

注:
这里需要注意,每次更新后plugin_feed_info.inc文件都会恢复到家庭版的配置,所以更新完成后需要手动修改plugin_feed_info.inc

(PLUGIN_FEED = “HomeFeed (Non-commercial use only)”)。

另一种离线激活,代替在线注册生成的Activation code的步骤

然后本地执行命令进行离线激活

1
nessuscli fetch --register-offline nessus.license

参考:https://docs.tenable.com/nessus/commandlinereference/Content/RegisterAScannerOffline.htm

后期维护

你需要这样做:

  1. 在Windows服务中将Tenable Nessus设置为手动
  2. 每次启动Nessus前,删除nessus/plugins目录下plugin_feed_info.inc
  3. 非常低的几率,你的Nessus/plugin_feed_info.inc会被重置,修改成破解版内容即可。

以下为详细:

由于Nessus服务每次重启后,都会重置plugin_feed_info.inc,这将会使nessus/plugins目录下所有的插件都被删除,无法扫描。

我试着把将Nessus服务设置成手动,这样plugins目录就不会被删除。

所以,在每次使用之前,建议手动覆盖Nessus目录下plugin_feed_info.inc文件,删除nessus/plugins目录下的plugin_feed_info.inc文件,再开启Nessus服务。

https://www.blueprintf.com/thread/4

1
2
3
4
5
6
7
8
9
10
11
12
13
14
"C:\Program Files\Tenable\Nessus\nessuscli.exe" fetch --challenge

Challenge code: d9e7d13547751bf9b67693300c7f8ebfee118e31

You can copy the challenge code above and paste it alongside your
Activation Code at:
https://plugins.nessus.org/v2/offline.php


Your activation code for Nessus Essentials is:
1086-245A-06F4-0BDB-9948


202101042100

https://www.freebuf.com/articles/web/262914.html

  • Post title:Nessus8.x破解
  • Post author:ssooking
  • Create time:2020-05-29 11:49:00
  • Post link:https://ssooking.github.io/2020/05/nessus8-x破解/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.