前言:
这是对之前文章内容的总结:
脚本的作用是:
扫描目标网站的基本信息,探测目标网站的后台,并寻找是否存在一些高危漏洞
使用方法:
python3 work.py url
如:
python3 work.py 192.168.26.133
源码:
import requests
import sys
#url = "http://192.168.26.133"
url = sys.argv[1]
#定义基本属性
headers = {
"User-Agent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0"}
dir = ['admin.php','admin.jsp','admin.asp','admin.html','login.jsp','login.php','login.asp','login.html']
#字典后期可以改为文件导入
#判断url格式是否正确
if "http" in url:
url = url + "/"
else:
url = "http://" + url + "/"
r = requests.get(url)
Status_code = r.status_code
#输出当前网站的返回状态码
if Status_code == 200:
print("当前网站的返回状态码是:200")
r1= requests.get(url,headers=headers)
#返回当前服务器的信息
print("当前服务器采用的技术为:" + r1.headers['Server'])
#判断不同的情况
if "X-Powered-By" in str(r1.headers):
print("服务器使用脚本语言是:"+ r1.headers["X-Powered-By"])
else:
server=""
#寻找网站后台
print()
print("正在寻找当前网站的后台,请稍等...")
for line in dir:
r2 = requests.get(url + line)
if r2.status_code == 200:
print("网站后台地址可能是:" + r.url + line)
dir_admin = 1 #找到网站后台传值
break
else:
dir_admin = 2 #未找到网站后台传值
if(dir_admin == 2):
print("未找到当前网站的后台")
#扫描网站是否存在ms15-034漏洞,目前仅仅增加了一个。之后可以自定义函数调用,增加多个
print()
print("正在测试当前网站是否存在ms15-034...")
r3 =requests.get(url)
server = r3.headers["Server"]
if server.find("IIS/7.5") or server.find("IIS/8.0"):
payloay = {
"Host": "irrelevant", "Range": "bytes=0-18446744073709551615"} # 注意字典内容格式
r3 = requests.get(url, headers=payloay)
if r3.text.find("Requested Range Not Satisfiable"):
print("检测存在ms15-034")
else:
print("未检测到ms15-034")
else:
print("服务器组件不是IIS 7.5或者IIS 8.0")
else:
print("当前网站的返回值是" + Status_code)