思维导图
知识点
本课知识点:
Request 爬虫技术,Sqlmap 深入分析,Pocsuite 分析,框架代码二次修改等
目的
掌握安全工具的 API 接口开发利用,掌握优秀框架的二次开发插件引用等
演示案例:
Sqlmap_Tamper 模块脚本编写绕过滤
SqlmapAPI 调用实现自动化 SQL 注入安全检测
参考文章
https://www.freebuf.com/articles/web/204875.html
应用案例:前期通过信息收集拿到大量的URL地址,这个时候可以配合SqlmapAPI接口进行批量的SQL注入检测(SRC 挖掘)
开发当前项目过程:(利用 sqlmapapi 接口实现批量 URL 注入安全检测)
1.创建新任务记录任务 ID @get("/task/new")
2.设置任务 ID 扫描信息 @post("/option/<taskid>/set ")
3.开始扫描对应 ID 任务 @post("/scan/<taskid>/start")
4.读取扫描状态判断结果 @get("/scan/<taskid>/status")
5.如果结束删除 ID 并获取结果 @get("/task/<taskid>/delete")
6.扫描结果查看@get("/scan/<taskid>/data")
基础demo
import requests
import json
# 创建任务id
task_new_url='http://127.0.0.1:8775/task/new'
resp= requests.get(task_new_url)
task_id=resp.json()['taskid']
print(task_id)
# 设置任务id的配置信息(扫描信息)
data ={
'url':'http://127.0.0.1/sqli-labs-master/Less-2/?id=1'
}
headers={
'Content-Type':'application/json'
}
task_set_url='http://127.0.0.1:8775/option/'+task_id+'/set'
print(task_set_url)
task_set_resp=requests.post(task_set_url,data=json.dumps(data),headers=headers)
print(task_set_resp.json())
# 开始扫描对应 ID 任务
task_scan_url='http://127.0.0.1:8775/scan/'+task_id+'/start'
print(task_scan_url)
task_scan_resp=requests.post(task_scan_url,data=json.dumps(data),headers=headers)
print(task_scan_resp.json())
# 读取扫描状态判断结果
task_scan_status_url='http://127.0.0.1:8775/scan/'+task_id+'/status'
print(task_scan_status_url)
task_scan_status_resp=requests.get(task_scan_status_url)
print(task_scan_status_resp.json())
# 如果结束删除 ID 并获取结果
# 扫描结果查看
自动化SQL注入检测脚本
import time
import requests
import json
def sqlmapapi(url):
data = {
'url'