
Python文件批量检测CVE-20190708的补丁是否安装
发布日期:2021-06-27 12:56:24
浏览次数:13
分类:技术文章
本文共 1601 字,大约阅读时间需要 5 分钟。
批量检测内网主机的CVE-2019-0708补丁的安装情况,写了一个python文件:
文件内容如下:
'''扫描主机是否安装了CVE2019-0708的补丁思路:
1. 读取txt文件夹中的网段
2. 遍历网段执行命令,将结果导入txt文件中
3. 整理数据将数据分为已安装补丁和未安装补丁的文件
'''import osimport redef scan_ip(): #扫描ip并将结果放入相应ip段命名的文件中
flist = []
ip_txt = input("请输入你想导入的网段文件名,请确认你的网段的形式如下:10.175.101.1-10.175.101.254 :")
for i in open(ip_txt,"r"):
#print(i.strip())
m = i.strip()
#去除空格
ms = m.split(".") #将网段分隔,取出前面三个元素组成文件
#print(ms)
res_txt = ms[0] + "_" + ms[1] + "_" + ms[2] + ".txt"
flist.append(res_txt)
if not os.path.exists(res_txt): #判断文件是否存在,不存在则创建
f = open(res_txt,"w")
f.close()
print("{}已创建".format(res_txt))
else:
print("{}已存在".format(res_txt))
print("开始扫描{}网段".format(m))
cmd1 = "rdpscan " + m + " > " + res_txt #执行检测命令并且导入文件中
print(cmd1)
os.system(cmd1)
print("{0}网段已扫描完".format(m))
print("已全部扫描完")
return flistdef coll_data(flist): #将生成的结果文件中的数据分类为已安装和未安装两大类
re_list = []
for f in flist: # 遍历所有文件,把文件中的数据取出来放入re_list中
for i in open(f,"r"):
m = i.strip()
if m != '':
re_list.append(m)
#print(re_list)
#假如之前存在文件,为了避免数据出现重复,删除之前的文件
if os.path.exists("vul.txt") :
os.remove("vul.txt")
elif os.path.exists("safe.txt"):
os.remove("safe.txt")
# 使用正则来整理数据
for i in re_list:
pat = re.compile(r"\d+.\d+.\d+.\d+ - VULNERABLE")
res = pat.match(i)
#print(res)
if res != None:
with open("vul.txt","a+") as vf:
#创建vul.txt文件放入没有安装CVE-20190708补丁的主机
vf.write(i+"\n")
else:
with open("safe.txt","a+") as sf:
#创建safe.txt文件放入已经安装CVE-20190708补丁的主机
sf.write(i+"\n")
print("已规整好数据")if __name__ == "__main__":
#flist = scan_ip()
flist = ["10_175_101.txt"]
#用已存在的文件检测函数是否能成功执行
coll_data(flist)
检测的exe文件,链接和提取码如下:
链接:
提取码:6ip9
转载地址:https://blog.csdn.net/weixin_43458262/article/details/93040754 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2023年03月05日 17时20分14秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
最新文章
工业循环冷却水处理设计规范_循环冷却水系统及其水处理
2019-12-02 01:43:34
c++ 多线程 类成员函数_C++11多线程
2019-12-02 01:43:34
vb6 怎么把一个数组的 0 值 去掉_解决逆向查找问题?VLOOKUP、CHOOSE、IF,索引数组,轻松解决...
2019-12-02 01:43:34
sqlite3 加密版本 下载_制作Sqlcipher+SM4加密的framework包(OC)
2019-12-02 01:43:34
python中基础知识_Python中的一些基础知识
2019-12-02 01:43:35
高通的快充协议_高通发布QC5.0快充技术最高100W+功率!手机厂商私有协议更好...
2019-12-02 01:43:32
csv逗号分隔符转换_文件系统(02):基于SpringBoot管理Xml和CSV
2019-12-02 01:43:32
python函数作用的描述_python基础之函数内容介绍
2019-12-02 01:43:33
python存数据到impala_0039-如何使用Python Impyla客户端连接Hive和Impala
2019-12-02 01:43:33
python设计模式pdf_精通python设计模式豆瓣-精通python设计模式第二版电子书pdf下载-精品下载...
2019-12-02 01:43:33
eclipse代码量统计插件_推荐一波代码量、行数、提交量、作者等全维度统计神器...
2019-12-02 01:43:33
python运维脚本部署jdk_Python+PyDev+Jdk+Eclipse开发环境部署
2019-12-02 01:43:33
idea重写接口没有@override_1.重载和重写的区别
2019-12-02 01:43:33
python爬取网页代码_python爬虫爬取网页的内容和网页源码不同?
2019-12-02 01:43:31
采样频率和带宽的关系_发送端测试的主力设备 - 实时示波器朝向高带宽高位数发展...
2019-12-02 01:43:31
python线程监控_Python 使用摄像头监测心率!这么强吗?
2019-12-02 01:43:31
win7安装python3.6失败_win7下python3.6安装配置方法图文教程
2019-12-02 01:43:31
python读取sas数据集_Python 数据处理库 pandas 入门教程基本操作
2019-12-02 01:43:31
python3字符串操作_python3字符串常用方法
2019-12-02 01:43:32
python字典添加元素使用技巧大全_字典里添加元素有哪些方法
2019-12-02 01:43:32