-Цитатник

Дождь. Удивительно ласковая и приятная песня Мурата Тхагалегова-Дождь - (6)

Дождь !!!!   https://i0.wampi.ru/2019/10/23/DOZD.gif

С Днем рождения от Юрия Шифрина. Это круто!!! - (0)

С Днём рождения Муза моя (Cadmii) Есть много...

Как показать собеседнику по Скайпу то, что происходит у Вас на экране. - (0)

   Как показать собеседнику по Скайпу то, что происходит у Вас...

УБЕЖАВШИЙ ПОЕЗД - (0)

Убежавший поезд Бывают в жизни чудеса

Поздравления с Благовещением от MissKcu - (2)

Поздравления с Благовещением от MissKcu ...

 -Помощь новичкам

Всего опекалось новичков: 15
Проверено анкет за неделю: 0
За неделю набрано баллов: 0 (86343 место)
За все время набрано баллов: 48 (14541 место)

 -Рубрики

 -Приложения

  • Перейти к приложению Открытки ОткрыткиПерерожденный каталог открыток на все случаи жизни
  • Перейти к приложению Я - фотограф Я - фотографПлагин для публикации фотографий в дневнике пользователя. Минимальные системные требования: Internet Explorer 6, Fire Fox 1.5, Opera 9.5, Safari 3.1.1 со включенным JavaScript. Возможно это будет рабо
  • Перейти к приложению Всегда под рукой Всегда под рукойаналогов нет ^_^ Позволяет вставить в профиль панель с произвольным Html-кодом. Можно разместить там банеры, счетчики и прочее
  • Перейти к приложению Кнопки рейтинга «Яндекс.блоги» Кнопки рейтинга «Яндекс.блоги»Добавляет кнопки рейтинга яндекса в профиль. Плюс еще скоро появятся графики изменения рейтинга за месяц
  • Перейти к приложению Онлайн-игра "Empire" Онлайн-игра "Empire"Преврати свой маленький замок в могущественную крепость и стань правителем величайшего королевства в игре Goodgame Empire. Строй свою собственную империю, расширяй ее и защищай от других игроков. Б

 -Кнопки рейтинга «Яндекс.блоги»

 -неизвестно

 -Я - фотограф

 -Поиск по дневнику

Поиск сообщений в Cadmii

 -Подписка по e-mail

 

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 24.02.2011
Записей: 5014
Комментариев: 27221
Написано: 44352


Как взломать сайт?

Вторник, 30 Августа 2011 г. 02:06 + в цитатник

Специалист Роман Кобленц

photoinnovation

(Фото: photoinnovation, Shutterstock)

Для начала определимся с тем, что данной статьей я ни в коем случае не призываю кого-либо взламывать чьи-либо интернет-ресурсы, используя описанные ниже методы.

Основная цель статьи – продемонстрировать пользователю важность темы защиты данных в Интернете на примере сайта, не защищенного должным образом. В качестве способа атаки на сайт будет использоваться, пожалуй, самый распространенный метод взлома сайта – SQL-инъекция.

Для начала определимся с тем, что все без исключения современные объемные, сложные сайты строятся на основе базы данных. Работа с данными, хранящимися в базе данных вашего сайта, осуществляется посредством структурного языка запросов SQL.

SQL-инъекция – техника внедрения в исходный SQL-запрос определенного кода (не нарушающего структуры самого запроса) с целью получения доступа к данным, содержащимся в БД.

Таким образом при определенных условиях, связанных, как правило, с отсутствием в коде и запросах сайта функций, направленных на защиту данных, взломщик может посредством SQL-инъекции прочитать содержимое любых таблиц, а также удалить, изменить или добавить данные, получить возможность чтения и/или записи локальных файлов и выполнения произвольных команд на атакуемом сервере. Не будем долго останавливать на теории и перейдем к действиям.

Итак, для начала познакомимся с таким понятием, как передача данных методом GET. Не замечали ли вы, путешествуя по страничкам бесконечного Интернета, что ссылки, по которым вы путешествуете, зачастую имеют вид типа:

www.хххххх.ru/index.php?что-то = чему-то&еще_что-то = еще_чему-то,

где на месте моих условных «что-то» и «чему-то» стоят всевозможные значения.

Так вот, знайте, что url, выглядящие подобным образом, содержат в себе определенную информацию, а именно: за знаком вопроса следует сначала переменная (ее имя), а затем = ее значение. Знак & отделяет переменные друг от друга.

А делается это все лишь для того, чтобы страница, к которой вы обращаетесь, могла изменяться в зависимости от этих переменных, то есть их значения передаются тем самым методом GET в код страниц сайта, там эти значения обрабатываются, а на основе полученных результатов и получается наша веб-страница.

Но только вдумайтесь! Ведь никто не может вам запретить взять и вручную подправить этот url, сделать его таким, как нужно вам, нажать после этого клавишу enter и отправить данные этого url-а на обработку серверу БД!! Именно здесь и возникает возможность внедрения SQL-инъекции.

Итак, начнем. Мы имеем сайт, который на основании параметра id, переданного методом GET, вынимает определенные данные из БД и формирует на их основе нашу страницу. Вот код этого SQL-запроса, который обрабатывает наши данные из url-а:

$result3 = mysql_query('SELECT * FROM raspisanie WHERE cat=$id').

Если перевести на русский язык, запрос выполняет выборку всех данных из базы данных raspisanie, где поле cat=$id. По сути все, что в запросе идет за нашей переменной $id, которую мы передаем из url-а, нам уже не важно, и позже я поясню почему. Теперь разберемся с самим url-ом. Пусть изначально он выглядит так:

www.хххххх.ru/index.php?id=3.

То есть мы передаем этим url-запросом параметр id=3, и страница формируется на основе этого параметра, значит он помещается в наш SQL-запрос и получается, что из базы данных извлекаются все данные из таблицы raspisanie, где поле cat=$id=3. А теперь перейдем к самому интересному. Допустим, мы знаем, что в базе данных атакуемого сайта в таблице users хранятся логин и пароль от администраторской зоны сайта – в полях login и password соответственно. И тогда, просто изменив наш url следующим образом:

www.хххххх.ru/index.php?id =3+union+select+1,2,login,password,5,6,7 +from+user/*

– страница поместит всю эту большую переменную в наш запрос, который станет выглядеть как

$result3 = mysql_query('SELECT * FROM raspisanie WHERE cat=3 union select 1,2,login,password,5,6,7 from user/*').

И, обработав такой новый запрос, который никак не нарушает структуру таблиц БД, сервер сам вернет нам, помимо обычной информации, соответствующей значению id=3, еще и логин с паролем от сайта!

Чтобы было совсем понятно, я переведу наш новый «волшебный запрос»:

«Выбрать все данные из таблицы raspisaniе, где поле cat=3, а также сделать другой запрос: вывести, помимо полученных данных, значения логина и пароля из таблицы users».

Числа 1, 2 и т.д. являются произвольными и используются для сохранения структуры запроса, и число таких значений определяется подбором - до тех пор, пока число таких значений не станет равным числу значений, которые выводятся из базы данных по умолчанию.

Имена таблицы users и значения полей для логина и пароля также определяются подбором, ведь согласитесь, везде они имеют примерно одинаковые названия. И, наконец, символы в конце нашего url-а «/*» служат для отбрасывания хвоста начального запроса в случае его присутствия, чтобы он не нарушил структуру запроса внедренного.

Итак, мы наглядно, на примере успешного внедрения SQL-инъекции, ознакомились с одним из возможных способов взлома сайта.

Не пренебрегайте вопросами защиты информации своего сайта и спите спокойно!

 


Cadmii

 

Рубрики:  Компьютеры и интернет
Программы. Новинки. Информеры. Виджеты. Гаджеты. Скачать. Сделать.
Скачать программы
Фотошоп.Флеш.Видео. Музыка.Картинки.Программы.


Процитировано 2 раз
Понравилось: 1 пользователю

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку