Python自动化脚本编写
Python自动化脚本编写
为什么需要自动化
安全测试中存在大量重复性工作。通过 Python 自动化,可以将繁琐的手工操作转化为高效的一键脚本。
批量信息收集
import requests
import json
domains = ['example1.com', 'example2.com']
results = []
for domain in domains:
# DNS 解析
import socket
try:
ip = socket.gethostbyname(domain)
results.append({'domain': domain, 'ip': ip})
except:
results.append({'domain': domain, 'ip': '解析失败'})
with open('result.json', 'w') as f:
json.dump(results, f, indent=2)自动化漏洞检测
# 批量检测未授权访问
targets = ['http://target1:8080', 'http://target2:8080']
for url in targets:
try:
r = requests.get(f'{url}/api/admin', timeout=3)
if r.status_code == 200 and 'admin' in r.text.lower():
print(f'[!] {url} 存在未授权访问')
except:
pass报告生成
使用 Jinja2 模板生成 HTML 报告,或将结果导出为 CSV/JSON 格式。
总结
自动化脚本的价值在于"一次编写,反复使用"。将安全测试流程脚本化,能够大幅提升工作效率和测试一致性。