Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

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

Перед тем как создать тему или задать вопрос, ознакомьтесь с данной темой, там собраны наиболее распространенные уязвимости и способы устранения.
Так же не поленитесь воспользоваться поиском, вполне возможно, что ваш вопрос уже поднимался на форуме.
При создании новой темы уделите внимание ее названию, оно должно кратко описывать суть вашего вопроса/проблемы. Все вновь созданные темы с названиями "Помогите", "Объясните", "Подскажите" и т.д. будут удалены, а их авторы наказаны.

Bug в Colored Translit

, Пока в защите полежит пусть =)
Статус пользователя znautolk
сообщение 13.11.2012, 12:42
Сообщение #1


Стаж: 16 лет

Сообщений: 52
Благодарностей: 2
Полезность: 32

Баг с % исправил
Цитата
Баг найденный в colored translit:
Последствия: После ввода неких символов в консоль игрока у всех закрывается, либо зависает клиент Counter-Strike 1.6.
Исправление бага:
Скрытый текст
1) Заходим в \cstrike\addons\amxmodx\scripting\colored_translit
2) Ищем: say.inl и say_team.inl
3) В обоих файлах найти:
replace_all(s_Msg, charsmax(s_Msg), "%s", "")
заменить на:
replace_all(s_Msg, charsmax(s_Msg), "%", "")

Для тех у кого в файлах типо такого:
replace_all(s_Msg, charsmax(s_Msg), "%s", "")
replace_all(s_Msg, charsmax(s_Msg), "%d", "" )
replace_all(s_Msg, charsmax(s_Msg), "%i", "" )
replace_all(s_Msg, charsmax(s_Msg), "%f", "" )
replace_all(s_Msg, charsmax(s_Msg), "%c", "" )
replace_all(s_Msg, charsmax(s_Msg), "%S", "")
replace_all(s_Msg, charsmax(s_Msg), "%D", "" )
replace_all(s_Msg, charsmax(s_Msg), "%I", "" )
replace_all(s_Msg, charsmax(s_Msg), "%F", "" )
replace_all(s_Msg, charsmax(s_Msg), "%C", "" )
Заменяем всё это так же на:
replace_all(s_Msg, charsmax(s_Msg), "%", "")

4) Сохраняем.
5) Компилируем заново colored_translit.sma находится здесь: \cstrike\addons\amxmodx\scripting

Везде в чате будет вырезаться %, зато нет бага :) .
ps.gif Либо удаляем вообще плагин colored translit


в .inl нашёл и исправил указанные строки, перекомпилировал плагин - в чате действительно вырезается "%". Сегодня в логах обнаружил следующее:
L 11/13/2012 - 02:43:33: Start of error session.
L 11/13/2012 - 02:43:33: Info (map "as_oilrig") (file "addons/amxmodx/logs/error_20121113.log")
L 11/13/2012 - 02:43:33: Invalid player id 44688
L 11/13/2012 - 02:43:33: [AMXX] Run time error 10 (plugin "colored_translit.amxx") (native "client_cmd") - debug not enabled!
L 11/13/2012 - 02:43:33: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).

Кто встречался с подобной проблемой? Из-за чего собственно "crash"?

Мой plugins.ini

amxbans_core.amxx; AMXBans Core
amxbans_main.amxx; Main plugin of AMXBans

.
.
Стандартные плагины

; Custom - Add 3rd party plugins here
galileo.amxx
loading_banner.amxx
statsx_shell.amxx
ps_heatmaps.amxx
colored_translit.amxx


Плагин хороший и функциональный, хотелось бы его использовать.
Буду признателен за ответ

Отредактировал: mazdan, - 13.11.2012, 13:56
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Rejiser
сообщение 13.11.2012, 12:49
Сообщение #2


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

znautolk,
Код
[AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя znautolk
сообщение 13.11.2012, 13:00
Сообщение #3


Стаж: 16 лет

Сообщений: 52
Благодарностей: 2
Полезность: 32

Цитата(Rejiser @ 13.11.2012, 13:49) *
znautolk,
Код
[AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).

В plugins.ini добавить плагин с режимом отладки colored_translit.amxx - debug
Так делается ? Это вообще нормально. Что он даёт этот параметр?

* плагин будет исправлять "ошибки на лету" возможные?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 13.11.2012, 13:04
Сообщение #4


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

ага, исправлять и перекомпилироваться :D
Код
colored_translit.amxx debug

Цитата
Плагин хороший и функциональный, хотелось бы его использовать.
:D
Тему разделю =) Судя по айди это не дыра\уязвимость :D
i
Уведомление:
Включите дебаг, а там видно будет

Ах да, при debug будет выводить более подробную информацию =)
Ах да! еще вот по идее не должен от этого упасть сервер =)

Отредактировал: mazdan, - 13.11.2012, 13:09


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя znautolk
сообщение 13.11.2012, 13:14
Сообщение #5


Стаж: 16 лет

Сообщений: 52
Благодарностей: 2
Полезность: 32

Цитата(mazdan @ 13.11.2012, 13:04) *
ага, исправлять и перекомпилироваться :D
Код
colored_translit.amxx debug

:D
Тему разделю =) Судя по айди это не дыра\уязвимость :D
i
Уведомление:
Включите дебаг, а там видно будет

Ах да, при debug будет выводить более подробную информацию =)
Ах да! еще вот по идее не должен от этого упасть сервер =)

Включу.
От чего "от этого"?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 13.11.2012, 13:25
Сообщение #6


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

от ошибки неверный id в client_cmd

Отредактировал: mazdan, - 13.11.2012, 13:26


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Shurik_7773.cfg
сообщение 14.11.2012, 0:37
Сообщение #7


Стаж: 13 лет

Сообщений: 80
Благодарностей: 8
Полезность: 82

Парни , подкажите что сделать с руским чатом .
Стоит следующий плагины ;
colored_translit.amxx
colored_translit_config.amxx

Какой - то злоумышлиник как я понимаю пишит слишком длинное сообщение , как лимит сообщения повысить повысить ?
Вот те плагины которые у меня стоят : Прикрепленный файл  scripting.rar ( 7,81 килобайт ) Кол-во скачиваний: 11


Вот сама ошибка:
Fatal error - Host_Error: PF_MessageEnd_I: Refusing to send user message SayText of 193 bytes to client, user message size limit is 192 bytes
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Akushi
сообщение 14.11.2012, 4:07
Сообщение #8


Стаж: 16 лет

Сообщений: 883
Благодарностей: 313
Полезность: 604

Цитата(Shurik_7773.cfg @ 14.11.2012, 4:37) *

В stocks.inl замени:
Код
stock WriteMessage(player, message[])
{
    message_begin (MSG_ONE, get_user_msgid("SayText"), {0, 0, 0}, player)
    write_byte(player)
    write_string(message)
    message_end()
}

на:
Код
stock WriteMessage(player, message[])
{
    message[192] = '^0'
    message_begin (MSG_ONE, get_user_msgid("SayText"), {0, 0, 0}, player)
    write_byte(player)
    write_string(message)
    message_end()
}

И замени в say.inl и в say_team.inl:
Код
    if(strlen(Message) >= 192)
    {
        format(Info, 191, "^x04[%s] ^x01%L", PLUGIN, LANG_PLAYER, "CT_LONGMSG")
        WriteMessage(id, Info)
        return PLUGIN_HANDLED
    }

На:
Код
    if(strlen(Message) >= 191)
    {
        format(Info, 191, "^x04[%s] ^x01%L", PLUGIN, LANG_PLAYER, "CT_LONGMSG")
        WriteMessage(id, Info)
        return PLUGIN_HANDLED
    }

Делал очень давно, должно помочь.
Вообщем если что покопайся на http://amx-x.ru
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: