Символ [процент]AD

Обсуждение серверного программирования.

Модераторы: Duncon, Yurich

Аватара пользователя
Oscar
Сообщения: 963
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

Help!

Может кто знает, что обозначает символ:
[процент]AD

в HTTP протоколе (наверное).

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

Есть чат, на Perl+файлы.
Если ввести этот символ - чат его, похоже, вообще не обрабатывает.

- Видишь там суслика?
- Нет.
- И я не вижу, а он там есть.
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Oscar, есть большое подозрение на работу файервола...
Даже самый дурацкий замысел можно воплотить мастерски
Аватара пользователя
Oscar
Сообщения: 963
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

AiK,
быть может, но это немного не то, что я хотел услышать.

Чат.
Если человек вводит ник Oscar[процент]AD (не в поле ввода, а при передаче параметров в строке адреса), то в чат входит Oscar.
Полностью идентичный мне.

Мне вроди как уже удалось закрыть эту дырку, но просто интересно, что это было ...
Что означает этот символ. Почему он так некорректно воспринимался. И если есть один такой - не может ли быть и других?....
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Oscar, а! Понял. В строке адреса передаются ескейп-последовательности. В частности тире в поле ввода заменяется браузером в URL на %AD. Всё согласно спецификации. А скрипт чата должен сделать обратное преобразование, что он и делает. А некоторые символы видимо игнорирует. Попробуй, например %25 скормить (это процент) - наверняка тот же эффект получишь.
Даже самый дурацкий замысел можно воплотить мастерски
Аватара пользователя
Oscar
Сообщения: 963
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

AiK,
нет, проценты и ещё парочку особых симсолов, как то (/ . = > < : & \ % #) обрабатывались и раньше .. А вот это самое тире как раз осталось неучтённым. (и оно даже никак не отображается броузером!)

Ладно, будем надеяться, что больше проблем не будет.

Спасибо за ответ!
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Кавычки двойные и одинарные, плюс, точка с запятой.
Даже самый дурацкий замысел можно воплотить мастерски
Аватара пользователя
Oscar
Сообщения: 963
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

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

Но я не могу понять следующего.
Я проверил все символы &#n; (от 0 до 1024 :) ) и нигде, кроме [процент]AD не было вышеупомянутого эффекта.

P.S. Кстати, этот форум тоже не понимает этого символа.
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Как раз в минусе нет особой опасности.
А точку с запятой нельзя в mySQL пропускать - разделитель пакетов. Ну и другие варианты есть, но наверное в основном в сочетании со скобками...
Подробности тут:
http://www.cert.org/tech_tips/malicious ... ation.html
Даже самый дурацкий замысел можно воплотить мастерски
UUU
Сообщения: 310
Зарегистрирован: 17 фев 2004, 09:27
Откуда: Иваново
Контактная информация:

AiK писал(а):Как раз в минусе нет особой опасности.
А точку с запятой нельзя в mySQL пропускать - разделитель пакетов.
Не понял. Что присходит и как пропускать? С примером. :-)
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

UUU, да очень просто. Многие версии PHPbb именно так и ломались.
Пример: идёт какой-нибудь update, который, допустим, заканчивается ... where a =$a. И $a ну никак не проверяется. Ну и подпихиваешь вместо какой-нибудь единицы такое значение: '1; delete from table BLABLA where a=1'.
Дальше сам эксперементируй - у нас обсуждение хакерских вопросов не приветствуется. Ну или Гугль мучай. :)
Даже самый дурацкий замысел можно воплотить мастерски
Ответить