Форум » Свободное общение » Выводим из строя ToMB v2.x :) » Ответить

Выводим из строя ToMB v2.x :)

st.Anger: Поизучал немного коды чата и понял, какая страшная вещь притаилась в дебрях операций с данными :) Пока ТехнОкраТ не доделал Tombadmin, возможности получить контроль над чатиком вряд ли предвидится, но можно на некоторое время его вывести из строя. Для этого нам понадобится: 1. Мини-чатик ToMB версии не ниже 2.18 ( а ниже и не выпускают уже ) 2. Незадачливый админ 3. Пара хорошо печатающих рук Включаем чатик и набираем до отказа (300 символов) символы двойной или одинарной кавычки вроде: """""""""" '''''''''' В целях безопасности для базы данных автор скрипта заставляет эти символы преобразовываться в их НTML-аналоги, то есть " и ₖ или какой там последний. В результате, минуем ограничение в 300 символов в сообщении, ведь записывается 300*6 или 300*7 символов! Тогда, если администратор не менял в файле конфигурации значение переменной $tomb[buf]=65536 на более высокое (эта переменная очевидно указывает, сколько символов с строке следует обрабатывать при считывании данных из файла), то мым можем эдак за тридцать отправок заставить считывающий аппарат взглюкнуть и вернуть непонятное месиво из символов. А РНР-компилятор выдаст как минимум двадцать ошибок при попытке обратиться к строке, как к ассоциативному массиву. В исходящем коде тоже может оказаться символьное месиво, если повезёт, и компилятор продолжит работать со скриптом, а не выкинет его к чьей-нибудь бабушке. Итог: чат не работает, а догадаться почему смогут не сразу (если только не откроют вручную файл с массивом чата). Исправить правда это дело легко: открываем config.php, меняем значение переменной $tomb[buf] на более высокое. Например $tomb[buf] = 500 000 Тогда считывание будет происходить нормально, а толку от произведённого флудинга - ноль. ----------------------- 2аФФтар, который жжот: А зачем вообще в конфиг была вынесена эта переменная ?!

Ответов - 8

ТехнОкраТ: st.Anger пишет: А зачем вообще в конфиг была вынесена эта переменная ?! Вдруг, админ чатика догадается как-то переделать под свой вкус Базу Данных, а она будет требовать считывать больше символов :)

st.Anger: Ясно. А если попробовать сделать такой скрипт, чтобы определялся размер базы данных перед её копированием, а на основе полученных данных генерировать переменную $tomb[buf] , причём в конфиге её не указывать?

ТехнОкраТ: st.Anger Быстродействие, быстродействие и ещё раз... безопасность )) Нечего тогда, не дожидаясь выхода ToMB v2.20-4 и ToMBAdmin v0.1demo , с настройками чата шуровать


ТехнОкраТ: st.Anger Кстати, спорим, что при значении переменной $tomb[max_buf]=1 чатик версии 2.20 не выйдет из строя ? (Это я на локалке проникся идеей угробить чатик, а он, сволочь, никак не хотел погибать. Только гнусно показывал кучи кавычек ))) )

st.Anger: ТехнОкраТ Вот блин! А я на 2.18 эту штуку заметил, а когда скачал 2.20-3 увидел ту же переменную в конфиге :) А на кой она до сих пор там делает, если библиотекой не используется?

ТехнОкраТ: st.Anger пишет: А на кой она до сих пор там делает, если библиотекой не используется? Не знаю. Я ЕхВВ-шную библиотеку переписал под себя, а о остатках старой версии как-то не задумывался... И вправду, на кой курень там она прописана... ещё ведь и в ридми уделил внимание проблеме буфера обмена в чате Чес-слово: сделал и забыл

st.Anger: ТехнОкраТ пишет: ЕхВВ-шную библиотеку Так... это чат или форум?

ТехнОкраТ: st.Anger пишет: это чат или форум? Это чат с движком от форума



полная версия страницы