利用sqlmapapi批量检测

访客4年前黑客资讯525

获取sqlmapapi接口信息

python.exe sqlmapapi.py -s

开发当前项目过程(利用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)

import requests
import json

#创建任务ID
task_new_rul='http://127.0.0.1:8775/task/new'
resp=requests.get(task_new_rul)

print(resp.json()['taskid'])

返回结果获取ID ? (ID值每次都不同)

url用的本地搭建的sqllabs

#设置任务ID的配置信息(扫描信息)
data={
    'url':'http://127.0.0.1/sqlilabs/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.content.decode('utf-8'))

返回结果:

http://127.0.0.1:8775/option/895795f56c98f534/set

#启动对应ID的扫描任务
task_start_url='http://127.0.0.1:8775/scan/'+task_id+'/start'
task_start_resp=requests.post(task_set_url,data=json.dumps(data),headers=headers)
print(task_start_resp.content.decode('utf-8'))

返回结果为true

#获取对应ID的扫描状态
task_status_url='http://127.0.0.1:8775/scan/'+task_id+'/status'
task_status_resp=requests.get(task_status_url)
print(task_status_resp.content.decode('utf-8'))

出现的问题,每运行一次ID值都会改变,状态一直都是running

改进代码假如判定条件

1.txt里可以加入批量待检测的url

import  requests
import  json
import  time

def sqlmapapi(url):
    data={
        'url': url
    }
    headers={
        'Content-Type': 'application/json'
    }
    task_new_rul='http://127.0.0.1:8775/task/new'
    resp=requests.get(task_new_rul)
    task_id=resp.json()['taskid']
    if 'success' in resp.content.decode('utf-8'):
        print('sqlmapapi task create success!')
        task_set_url='http://127.0.0.1:8775/option/' + task_id + '/set'
        task_set_resp=requests.post(task_set_url, data=json.dumps(data), headers=headers)
        if 'success' in task_set_resp.content.decode('utf-8'):
            print('sqlmapapi task set success!')
            task_start_url='http://127.0.0.1:8775/scan/' + task_id + '/start'
            task_start_resp=requests.post(task_start_url, data=json.dumps(data), headers=headers)
            if 'success' in task_start_resp.content.decode('utf-8'):
                print('sqlmapapi start success!')
                while 1:
                    task_status_url='http://127.0.0.1:8775/scan/' + task_id + '/status'
                    task_status_resp=requests.get(task_status_url)
                    if 'running' in task_status_resp.content.decode('utf-8'):
                        print('sqlmapapi taskid scan running')
                        pass
                    else:
                        task_data_url='http://127.0.0.1:8775/scan/' + task_id + '/data'
                        task_data_resp=requests.get(task_data_url)
                        print(task_data_resp.content.decode('utf-8'))
                        break
                time.sleep(3)


if __name__=='__main__':
    for url in open('1.txt'):
        url=url.replace('
','')
        sqlmapapi(url)

其实还可以更加完善,比如把检测的结果导出到一个文件,这样就可以从网上爬取带参数的地址批量导入sqlmap里去检测

相关文章

黑客帝国4部完整解读(黑客帝国内容解析)

黑客帝国4部完整解读(黑客帝国内容解析)

本文目录一览: 1、黑客帝国4深度解析 2、黑客帝国4剧情解析 3、黑客帝国4讲的是什么故事 4、黑客帝国4影评 黑客帝国4深度解析 (⊙o⊙)…很简单啊。黑客帝国4就是解救尼奥的故事啊...

年夜饭吃什么(除夕年夜饭不知道吃什么)

  新春佳节的团圆饭是我们中国人的传统式美味,一家人相聚在一起吃团圆饭,欢欢喜喜,既温暖又幸福快乐,它是每家每户最繁华开心的情况下。除夕年夜饭吃啥?这个问题无需犯愁,我给大伙儿强烈推荐几个年夜饭菜谱,...

贝壳粉都有什么牌子呢(哪些牌子的贝壳粉好)

贝壳粉都有什么牌子呢(哪些牌子的贝壳粉好)

贝壳粉是一种装饰材料,那么贝壳粉品牌有哪些,今天就让PChouse来为大家讲一下。 1、金贝壳 北京贝壳屋新材料科技有限公司的产品,产品已获得国家发明专利1项,以及实用新型专利2项。 2、半...

怎么建立qq群?教你建群赚钱的方法,轻松月入五

怎么建立qq群?教你建群赚钱的方法,轻松月入五

昨天我们讲到有一个能赚钱的QQ群,必须是一个能产生价值的QQ群。那么今天我们就讲讲一个QQ群是如何生产价值的。 价值这种东西不是天生天长的,是靠人为创造出来的,而一个QQ群的价值是要靠群成员才能创造...

黑客帝国小说结构图,怎样和黑客联系方式,网赌输了能不能找黑客

“过错装备”的影响真的取决于运用自身!在运用中找到一个包括灵敏信息的页面,比方一个web运用中答运用户发送/收取电子邮件(like Yahoo,gmail..)阅览他的电子邮件就是一个灵敏行为。 又比...

手机通话记录怎么导出(手机通话记录删除了还能查到吗)

  手机通话记录怎么导出(手机通话记录删除了还能查到吗)   有人希望将微信语音或视频通话中双方的语音保存为MP3格式的文件,也有人希望将手机发送或接收的微信语音信息导出为通用音频格式存储在电脑上。如...