渗透测试中利用Python实现自动化案例分享-自动提取靶机网页特定内容
靶机信息
靶机名称:Vulnhub:Samsara
靶机地址:
https://www.vulnhub.com/entry/samsara-1,643/
场景描述
在Kali Linux利用浏览器发现访问url有一定规律,即增加数字,返回的信息不同:
http://192.168.56.254/1-index.html
如:2-index.html, 3-index.html......将返回不同的信息
此时当然可以用人工的方式逐个访问,直到URL不存在为止,但是这种方式效率较低,也容易出错,可以用Python代码来自动化该过程。
Python代码实现
import requests
import sys
import re
def retrieve(url):
# 下载网页函数,参数为url
try:
response = requests.get(url)
if response.status_code == 200:
# 当返回响应状态码为200,表明该URL存在,因此返回页面的内容
return response.text
else:
# 当返回响应状态码为其他码时,比如400等,表明该URL不存在
return False
except Exception as e:
print("Something is wrong: %s" % e)
sys.exit()
def extract_chr(content):
# 利用正则表达式对页面内容提权特定信息
pattern = r'<h2>I am\s+(.*)\s+</h2>'
result = re.findall(pattern,content)
if len(result) > 0:
return result[0]
def main():
text = ""
i = 1
while True:
url = 'http://192.168.56.254/%d-index.html' % i
response = retrieve(url)
if not response:
#表明无需再递增i了,可以退出循环
break
if response:
text = text + extract_chr(response)
i = i+1
print(text)
if __name__ == '__main__':
main()
运行结果:
──(kali㉿kali)-[~/Vulnhub/So_simple]
└─$ python extract.py
Soyouareheretoknowhisname.Sorry,Idon'tknowhisnamebutIhaveamessageforyou:@UX=h@rGmh/otH<F(')t/n8g:
标签:__,网页,Python,text,url,靶机,response
From: https://www.cnblogs.com/jason-huawen/p/17213319.html