pythonsvr时序预测(利用Python半自动化生成Nessus报告的方法)
pythonsvr时序预测
利用Python半自动化生成Nessus报告的方法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/li[1]/li[3]/li' ) 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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。
原文链接:https://www.cnblogs.com/xiaozi/p/10490199.html
- python开启两个线程(Python开启线程,在函数中开线程的实例)
- 微信公众号文章 爬虫(python抓取搜狗微信公众号文章)
- python3字符串格式化怎么操作(python3实现字符串操作的实例代码)
- python实现层次遍历二叉树(Python实现的序列化和反序列化二叉树算法示例)
- python数据分割教程(python3对拉勾数据进行可视化分析的方法详解)
- python中统计一个字符出现的次数(Python统计一个字符串中每个字符出现了多少次的方法字符串转换为列表再统计)
- python opencv替换背景教程(基于OpenCV python3实现证件照换背景的方法)
- 多个图片拼接python实现(python实现两张图片的像素融合)
- python numpy数组拼接(Python快速转换numpy数组中Nan和Inf的方法实例说明)
- python中怎么实现登录程序(详解Python用户登录接口的方法)
- python爬虫书籍经典(Python利用lxml模块爬取豆瓣读书排行榜的方法与分析)
- python操作sql server数据库(Python 数据库操作 SQLAlchemy的示例代码)
- python飞机大战游戏背景(python实现飞机大战游戏)
- python里import的是什么(python中import与from方法总结推荐)
- python中列表操作五种常用方法(Python使用paramiko操作linux的方法讲解)
- wxpython 弹出对话框显示图片(WxPython建立批量录入框窗口)
- 荣耀手表 GS 3 真机亮相 不支持无线充电(荣耀手表GS3)
- 通过体温就能为智能手表充电 原来是用NASA在空间站用的黑科技(通过体温就能为智能手表充电)
- 智能手表兼容Windows和Android 无需充电挑战苹果(智能手表兼容Windows和Android)
- 一天一冲也算表 麦步,一款待机 21 天的智能手表体验评测(一天一冲也算表)
- 魅族智能手表充电座曝光 Type-C 接口,线座分离设计(魅族智能手表充电座曝光)
- 华为 Watch GT2 Pro 智能手表曝光,新增支持无线充电(华为WatchGT2)
热门推荐
- 404页面如何设置
- iframe跨域原理(详解使用postMessage解决iframe跨域通信问题)
- docker容器关闭后怎么启动(docker批量启动关闭所有容器的操作)
- python列表精讲33节(Python列表知识应知应会)
- sql怎么查询字段合并(SQL函数将某个字段合并在一起的操作)
- 怎么用powershell执行代码(如何在power shell添加vim实现代码示例)
- reactnative动态设置值(react native实现监控手势上下拉动效果)
- css3编程实战(详解CSS3开启硬件加速的使用和坑)
- mysql left join索引怎么使用(详解mysql 使用left join添加where条件的问题分析)
- thinkphp表单提交不到数据(ThinkPHP5.1表单令牌Token失效问题的解决)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9