网站采用什么字体,视频营销,上海城隍庙小吃推荐,上海企业网站改版HVV笔记——常见漏洞扫描工具AWVS、AppScan、Nessus的使用1 AWVS1.1 安装部署1.2 激活1.3 登录1.4 扫描web应用程序1.4.1 需要账户密码登录的扫描1.4.2 利用录制登录序列脚本扫描1.4.3 利用定制cookie扫描1.5 扫描报告分析1.5.1 AWVS报告类型1.5.2 最常用的报告类型#xff1a…
HVV笔记——常见漏洞扫描工具AWVS、AppScan、Nessus的使用1 AWVS1.1 安装部署1.2 激活1.3 登录1.4 扫描web应用程序1.4.1 需要账户密码登录的扫描1.4.2 利用录制登录序列脚本扫描1.4.3 利用定制cookie扫描1.5 扫描报告分析1.5.1 AWVS报告类型1.5.2 最常用的报告类型1.6 GobyAWVS联动2 AppScan2.1 扫描方式2.2 安装部署2.3 扫描web应用程序2.4 手动探索扫描2.5 安装证书和登录绕过2.5 测试报告3 Nessus3.1 Kali安装Nessus3.2 离线激活Nessus3.2.1 去Nessus官方申请激活码3.2.2 获得质询码challenge code3.2.3 获得插件、激活码和证书3.2.4 安装证书和插件3.3 解除IP限制3.4 解决重启失效3.4.1 编写启动脚本3.4.2 Nessus命令合集3.4.3 BUG解决3.5 使用Nessus进行主机发现3.6 使用Nessus扫描log4J漏洞3.6.1 靶场环境搭建3.6.2 log4Jshell扫描3.6.1 靶场环境搭建3.6.2 log4Jshell扫描1 AWVS AWVSAcunetix Web Vulnerability Scanner是一款知名的网络漏洞扫描工具通过网络爬虫测试网站安全检测流行的Web应用攻击如跨站脚本、sql 注入等。 1.1 安装部署
Windows安装没有什么难度这里主要记录Kali环境下的安装与部署。
准备acunetix_trial.sh和激活包pathc_awvs。
下载地址
修改acunetix_trial.sh和patch_awvs权限
chmod 777 acunetix_trial.sh patch_awvs执行安装命令
./acunetix_trial.sh点击Enter继续 后续一直按Enter根据提示输入yes。
根据提示输入主机名称:127.0.0.1email:asdfgqq.comPassword:m123456点击Enter
注意不能输错退格键方向键都会被转义。Email格式中后面应该是必须字母密码也有复杂度要求。 等待安装完成
1.2 激活
将激活补丁复制到指定目录下并设置运行权限
#1 复制补丁
cp -a patch_awvs /home/acunetix/.acunetix_trial/v_190325161/scanner/
#2 设置权限
chmod 777 /home/acunetix/.acunetix_trial/v_190325161/scanner/patch_awvs
#3 运行补丁
/home/acunetix/.acunetix_trial/v_190325161/scanner/patch_awvs为了保护原始license不失效这里尽快执行如下的命令不然license会被修改然后就无法破解成功。
chattr i /home/acunetix/.acunetix_trial/data/license/license_info.json
rm -fr /home/acunetix/.acunetix_trial/data/license/wa_data.dat
touch /home/acunetix/.acunetix_trial/data/license/wa_data.dat
chattr i /home/acunetix/.acunetix_trial/data/license/wa_data.dat重新启动AWVS进程
#重启进程
systemctl restart acunetix_trial.service
#启动进程
systemctl start acunetix_trial.service
#停止进程
systemctl stop acunetix_trial.service
#查看进行状态
systemctl status acunetix_trial.service1.3 登录
访问https://127.0.0.1:13443 进入AWVS首页点击Advanced..,点击【Accept the Risk and Continue】输入刚才注册的用户名密码登录即可。
在界面右上角点击用户名选择profile往下滚动页面即可看到激活信息。 1.4 扫描web应用程序
Targets→add Targets输入扫描地址和扫描描述,点击右上角的save 1.4.1 需要账户密码登录的扫描
如果目标网站需要登录那么可以在AWVS的目标界面设置找到并勾选Site Login选择try to auto-login into the site,输入登录IP地址、用户名、密码和重复密码。 找到HTTP Authentication输入用户名密码重复密码。 点击右上角save→Scan弹出扫描设置对话框设定相应的选项后点击Create Scan 上图中选择的时间表为立即扫描如果是future scan可以在扫描列表中单击IP进入到扫描情况界面。
1.4.2 利用录制登录序列脚本扫描
Targets→add Target设置IP后进入目标设置页面勾选Site Login选择Use pre-recorded login sequence,点击New 输入用户名密码点击目标网站的登录按钮。检查右侧操作流程是否正确且完整。
检查无误后点击next点击finishi。然后就可以扫描了。
1.4.3 利用定制cookie扫描
扫描过程会遇到网站存在手机验证码、图形验证码、滑动验证等等而这些验证码都是一次性的这时候想要深度扫描时就需要进行登录绕过。
添加目标打开目标设置页面找到并点击最下面的Advanced勾选Custom Cookies输入目标网站的地址
这时切换到其他浏览器获取网站的cookie值返回到AWVS输入cookie的值点击保存后即可扫描。
1.5 扫描报告分析
1.5.1 AWVS报告类型 Standard Reports标准报告 Affected Items受影响项目 Comprehensive (new)综合新 Developer开发者 Executive Summary执行摘要 Quick快速报告
1.5.2 最常用的报告类型 Executive Summary执行摘要 给公司大领导看只关注整体情况不关注具体细节 Comprehensive (new)综合新一般给QA和产品经理看 Developer开发者给开发人员看 OWASP Top 10 2017 行业报告的代表 WASC Threat Classification 行业报告的代表
1.6 GobyAWVS联动
将AWVS的api_key添加到Goby的AWVS插件中即可扫描。AWVS的api_key获取如下 扫描完成后找到扩展程序中的AWVS可以一键生成报告。
2 AppScan
2.1 扫描方式 Static 静态分析 白盒扫描 源码分析支持Taint analysis\pattern matching Dynamic 动态分析 黑盒扫描 Hybrid混合分析黑白【知道源代码】 Run-Time 运行时分析玻璃盒【不知道源代码】 Client-Side客户端分析(Javascript)
2.2 安装部署 安装前需安装.NET Framework 4.7.2 下载地址
运行安装程序一路next即可之后将补丁AppScanSDK.dll 和 HclLicenseProvider.dll 拷贝到安装目录D:\Program Files (x86)\HCL\AppScan Standard下替换原来的文件。
2.3 扫描web应用程序
自动扫描采用的是类似爬虫的方式。
打开AppScan后选择扫描web应用程序输入目标地址会自动检测是否可连接此页面可以勾选是否配置代理。而后点击下一步
在登录管理页面如果目标网站需要登录后才能操作那么可以选择记录。
在测试策略页面点击左下角的完全扫描配置可以自行设定。 跳转到如下界面后即可进行扫描 2.4 手动探索扫描
扫描→手动扫描→外部设备 将浏览器的代理IP设为本地端口设为上图中的端口。打开目标网站浏览页面进行操作。然后切换到AppScan页面点击停止记录进行扫描即可。
使用内置浏览器扫描时按照需要配置cookie。
2.5 安装证书和登录绕过
主要应对https协议
打开AppScan后手动探索→外部设备→记录代理配置→导出SSL证书→在外部浏览器中导入证书→浏览器设置代理让AppScan抓取流量。
如果目标网站采用了验证码那么可以使用外部浏览器先登录网站然后将cookie添加到AppScan中或者登录后开启代理再使用AppScan扫描。
2.5 测试报告 3 Nessus
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 --challenge3.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限制。 获取当前plugins的版本 https://plugins.nessus.org/v2/plugins.php 202304091403 停止Nessus服务 serice nessusd stop创建plugin_feed_info.inc vi plugin_feed_info.inc内容如下 PLUGIN_SET 202304091403;
PLUGIN_FEED ProfessionalFeed (Direct);
PLUGIN_FEED_TRANSPORT Tenable Network Security Lightning;将plugin_feed_info.inc替换到 /opt/nessus/var/nessus/plugin_feed_info.inc cp plugin_feed_info.inc /opt/nessus/var/nessus/删除/opt/nessus/lib/nessus/plugins/plugin_feed_info.inc 启动nessus服务
这时如果设置页面显示Licensed Hosts Unlimited则无限制。但可能会出现重启后插件被删除的情况解决方案请看下一步。
3.4 解决重启失效
接上一步。
由于Nessus服务每次重启后都会重置plugin_feed_info.inc这将会使nessus/plugins目录下所有的插件都被删除无法扫描。因此要将Nessus服务设置为手动并且先停止Nessus服务。可以写成批处理解决此问题。
3.4.1 编写启动脚本
vi qd_nessus.shservice 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.sh3.4.2 Nessus命令合集
#启动
service nessusd start;
#重启
service nessusd restart;
#查看状态
service nessusd status
#停止服务
service nessusd stop3.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进行主机发现 启动Nessus cd nessus
sh qd_nessus.sh进入Nessus网站并登录点击New Scan选择Host Discovery按照提示输入相关内容 注意到左侧的Schedule是配置定时任务的Notifications是配置邮件提醒的 可暂时不予理睬。 点击Discovery选择常用端口扫描 这里细心的道友可能发现页面主题变了我是在Settings→Advanced→User Interface→UI Theme设置的。 保存后即可在My Scans中找到计划启动扫描了。
3.6 使用Nessus扫描log4J漏洞
3.6.1 靶场环境搭建 centos7dockervulhub 安装dockervulhub部署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 ps3.6.2 log4Jshell扫描
登录后点击New Scan→Log4Shell→输入Name和Target→点击Discovery→选择扫描类型Thorough→点击Report→选择Credentials选项卡→点击SSH→选择身份验证方法password→输入被扫描服务器的用户名和密码→在plugins页面选择插件→运行扫描即可。
漏洞
3.6.1 靶场环境搭建 centos7dockervulhub 安装dockervulhub部署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 ps3.6.2 log4Jshell扫描
登录后点击New Scan→Log4Shell→输入Name和Target→点击Discovery→选择扫描类型Thorough→点击Report→选择Credentials选项卡→点击SSH→选择身份验证方法password→输入被扫描服务器的用户名和密码→在plugins页面选择插件→运行扫描即可。 此外Nessus还提供Log4Shell 漏洞生态系统扫描的功能。