Перейти к контенту
  • 0

SQL инъекция получение списка пользователей


Galenfea

Вопрос

Получил от хостера такие данные.

Кто-то пытался взломать форум 2.1.7, вроде как через инъекцию.

GET /index.php?s=&act=xmlout&do=get-member-names&name=А�

В результате был превышен лимит по выделяемой под запрос памяти и хостинг заблочен.

 

Подскажите пожалуйста, где может быть дыра, как её зашить и чего собственно хотел добиться хакер?

 

name=А� - это видимо не полный урл, доступа к логам апача у меня пока нет. Но я помню, что имя одного из пользователей имеющего админские права на форуме (причём по нику хакеры могли подумать, что именно он является рут админом) начинается на русскую "А", то есть А

 

Я так понимаю, была попытка получить список пользователей, причём сделать это от имени админа. Но, чем отличаются список пользователей полученный от списка пользователей, полученных кем-либо ещё? Чего хакер может добиться с помощью этого списка?

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0
Ни о каком "от имени админа" по данному урл речи не идёт. Урл здесь следует читать как "дайте мне все имена пользователей, имена которых начинаются на А". Так что следует посмотреть в ошибках на wiki.iblink.ru об этом, и проверить как фильтруются данные на входе этого файла. Не ясно при чём тут взлом тем не менее.
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Так что следует посмотреть в ошибках на wiki.iblink.ru об этом

 

Именно ошибок, а не уязвимостей? Среди ошибок я там нашёл "Ошибки, возникающие при работе с БД на MySQL", но разве это имеет какое-то отношение к моей ситуации?

 

Среди уязвимостей увидел Опасности при GET и POST запросах

У меня вместо var $acpversion = '21012.060516.s'; стоит var $acpversion = '21013.60712.u'; Что это означает?

А в остальном всё как указано в исправлении уязвимости.

 

В этом дело?

 

и проверить как фильтруются данные на входе этого файла

 

о_О Я отдаю себе отчёт, в том, что некоторые вещи для большинства посетителей этого форума очевидны, и ламеры - зло. Тем не менее, если не очень сложно, не могли бы вы уточнить, что имеется в виду?

 

Какого файла, xml файла который получается у пославшего запрос в результате исполнения приведённого url ? Данные по этому запросу из базы? Кем фильтруются? Зачем они фильтруются, чего этим хотят добиться? Что такое вход файла?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

не волнуйтесь, это не уязвимость, по крайней мере если у вас есть в sources/action_public/xmlout.php в функции get_member_names строчка

$name = $this->ipsclass->parse_clean_value( rawurldecode( $_REQUEST['name'] ) );

или похожая

ключевая здесь функция parse_clean_value

Ссылка на комментарий
Поделиться на других сайтах

  • 0

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

У меня такая херня несколько дней назад прошлась :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Arhar, да такая строка у меня есть.

 

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

У меня такая херня несколько дней назад прошлась :D

 

А как избежать этого вытравливания? Есть способ кроме установки защиты от ботов?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Вообщем нет, потому как этот запрос ничем не отличается от запроса браузера из пользователя.

И защиту от ботов там ставить нельзя, ибо это ажакс вызов.

Он просто тогда не будет работать.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

раз уж это яваскрипт вызов, то почему бот, который яваскрипта не имеет, смог его заюзать?

не, как раз таки можно добавить что-нибудь хитрое

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Его смог заюзать автор ботопрограммы. В качестве защиты достаточно переименовать поля в HTML и коде.
Ссылка на комментарий
Поделиться на других сайтах

  • 0
раз уж это яваскрипт вызов, то почему бот, который яваскрипта не имеет, смог его заюзать?

не, как раз таки можно добавить что-нибудь хитрое

дык а причём тут ява-скрипт?

Ява-скрипт собирает только ajax запрос и возвращает результат на страницу. А ajax запрос - это обычный POST-пакет, который я могу сформировать из пхп или перла и натравить на сервер.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

вот именно

надо сделать формирование секретного ключа на странице формы лс

в xmlout этот ключ проверять (он будет в базе)

если ключа нет - пошел нафиг бот

каждый раз при отправке ключ будет разный и будет присваиватся hidden значению на онклике по кнопке отправить или лучше на онсабмите формы

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Ещё нагрузить xmlout.php, который и так нужно оптимизировать? Проще как я выше сказал, это и от регистрации вполне неплохо помогает.
Ссылка на комментарий
Поделиться на других сайтах

  • 0

да че там грузить..один запрос и одна проверка

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

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.