溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何利用sqlmapapi批量檢測

發(fā)布時間:2021-07-15 12:11:04 來源:億速云 閱讀:206 作者:chen 欄目:網(wǎng)絡管理

這篇文章主要介紹“如何利用sqlmapapi批量檢測”,在日常操作中,相信很多人在如何利用sqlmapapi批量檢測問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何利用sqlmapapi批量檢測”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

獲取sqlmapapi接口信息

python.exe sqlmapapi.py -s

如何利用sqlmapapi批量檢測

開發(fā)當前項目過程(利用sqlmapapi接口實現(xiàn)批量url注入安全檢測

1 創(chuàng)建新任務記錄任務ID @get("/task/new")

2 設置任務ID掃描信息 @post("/option/<taskid>/set")

3 開始掃描對應ID任務 @post("/scan/<taskid>/start")

4 讀取掃描狀態(tài)判斷結果 @get("/scan/<taskid>/status")

5 如果結束刪除ID并獲取結果 @get("/task/<taskid>/delete")

6 掃描結果查看 @get("/scan/<taskid>/data)

import requests
import json

#創(chuàng)建任務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的掃描狀態(tài)
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'))

出現(xiàn)的問題,每運行一次ID值都會改變,狀態(tài)一直都是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('\n','')
        sqlmapapi(url)

其實還可以更加完善,比如把檢測的結果導出到一個文件,這樣就可以從網(wǎng)上爬取帶參數(shù)的地址批量導入sqlmap里去檢測

到此,關于“如何利用sqlmapapi批量檢測”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI