0x01 前言
Nessus是一个功能强大而又易于使用的远程安全扫描器,Nessus对个人用户是免费的,只需要在官方网站上填邮箱,立马就能收到注册号了,对应商业用户是收费的。当然,个人用户是有16个IP限制,通过企业邮箱可以体验免费7天的Nessus专业版,IP无限制。
Nessus激活码获取地址:https://www.tenable.com/products/nessus/activation-code
0x02 Nessus使用
登录后通过New Scan创建扫描任务,扫描完成后,我们即可导出扫描报告。Nessus提供4种报告类型导出:
我们选择HTML类型,Report选择Custom,Croup By 选择Host,导出HTML报告。
但这些报告还需要进一步整理成我们想要的格式,并且去掉不必要的消息,得到最终我们希望能够得到信息。
那首先我们确认一下,想要得到的信息是哪些呢?
1、服务器IP
2、漏洞危害级别
3、漏洞名称
这三个最基本的信息,对我来说就差不都足够了,我就知道哪些服务器存在高危漏洞,并提供解决漏洞修复建议。
0x03 Python脚本
通过解析html文件,获取相关漏洞信息,并输出到csv文件。
#! /usr/bin/env python # _*_ coding:utf-8 _*_ #Author:Aaron from lxml import etree import csv import sys host='' title="' result_list=[] def htm_parse(l): if "#d43f3a' in etree.tostring(l): info=u"严重 - "+l.text elif '#ee9336' in etree.tostring(l): info=u"高危 - "+l.text elif '#fdc431' in etree.tostring(l): info=u"中危 - "+l.text elif '#3fae49' in etree.tostring(l): info=u"低危 - "+l.text elif '#0071b9' in etree.tostring(l): info=u'信息泄露 - '+l.text else: info='Parsing error,Check that the versions are consistent.' return info def main(filename): html = etree.parse(filename,etree.HTMLParser()) ls =html.xpath('/html/body/div[1]/div[3]/div') for i in ls: if "font-size: 22px; font-weight: bold; padding: 10px 0;" in etree.tostring(i): host=i.text elif "this.style.cursor" in etree.tostring(i): result=host+" - "+htm_parse(i) print result result_list.append(result) return result_list if __name__ == '__main__': filename=sys.argv[1] list_host = main(filename) with open('result.csv','wb') as f: f.write(u'\ufeff'.encode('utf8')) w = csv.writer(f) w.writerow(['服务器IP','漏洞级别','漏洞编号','漏洞名称']) for i in list_host: data=i.split('-',3) w.writerow([item.encode('utf8') for item in data])
脚本运行效果如下:
在同目录下生成result.csv,内容如下:
最后,通过excel进行相关信息的筛选、删除和整理,最后汇总成报告。
0x04 小结
本文提供了一个demo,用于半自动化生成Nessus报告,有需要的话,可入库扩展,增加自动翻译,提供修复建议等。Nessus中文漏洞库可参见这个项目,NessusReportInChinese:半自动化将 Nessus 英文报告(csv格式)生成中文 excel ,中文漏洞库已有700多条常见漏洞。
github地址:https://github.com/FunnyKun/NessusReportInChinese
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍oracle自动巡检脚本生成html报告的方法,包括了oracle自动巡检脚本生成html报告的方法的使用技巧和注意事项,需要的朋友参考一下 一、 前言 1、由于每月月底都需要对一些oracle数据库环境进行一些简单的巡检,而通过运行一条条语句,并依依去截图保存到word文档中效率低下,所以这里我就将手工巡检过程编写成shell脚本来提高巡检效率,同时也免去了截图照片图片不清晰的问题
本文向大家介绍jmeter如何自动生成测试报告,包括了jmeter如何自动生成测试报告的使用技巧和注意事项,需要的朋友参考一下 1、准备.jmx脚本文件 2、在脚本文件路径下执行cmd命令: 参数解析: ● -n: 非GUI模式执行JMeter ● -t: 执行测试文件所在的位置 ● -l: 指定生成测试结果的保存文件,.jtl文件格式 ● -e: 测试结束后,生成测试报告 ●
What the world really needs is more love and less paperwork. — Pearl Bailey 大型的基础设施架构往往是真正的第一受害者。如果你正管理着许多机器, 那么使用 Puppet 的报告设施,可以为你提供一些关于正在发生什么的有价值的信息。 操作步骤 要启用报告,只要将如下的行加入客户端的 puppet.conf 文件: report
输出: 测试于10:14开始...C:\users\user\appdata\local\programs\python\python38\python.exe“C:\program files\jetbrains\pycharm 2019.2.6\helpers\pycharm_jb_unittest_runner.py”--路径“f:/3-2 projects/pycharmprojects/
从过去6个月开始,我一直使用Selenium WebDriver和TestNG进行web应用程序功能测试。我还使用Apache Ant、Apache Maven和Apache POI库进行项目构建和MS Excel的数据驱动测试。 TestNG为我安排测试和执行测试提供了很好的灵活性。在听众和记者的帮助下,我也能够记录和记录测试事件和结果。 请建议使用selenium和TestNG的任何测试自动化
我正在使用Cucumber for Java 我没有使用来配置要使用的步骤或功能。我正在使用方法 它的一切工作发现,但我想生成一个报告的结果。我正在阅读有关它的信息,要配置它,我需要使用,如下所示: 如何使用该方法配置它??