Вот...  побродил по вашему сайту, нашел кое-что интересное для себя, и хочу
  поделиться с  вами  кое-какой  информацией.  Может  будет интересно. Навеяно
  статьей  про  то,  как  чаты поломали... Хотя действительно чат ломать - пара
  пустяков,  но смотря какой чат еще... :-)))
1. Дырка в чате http://chat.chuvashia.com
  В   общем   бываю   я иногда (редко очень :-((, но все ж заглядываю) на чате
  "Город   над   Волгой"  (http://chat.chuvashia.com).  Физически находится  в
  Чебоксарах  -  мой  родной город, так что сами понимаете, иногда  ностальгия
  начинает мучить,  так  что  сил  нет  терпеть,  просто  приходишь  туда и с
  земляками  (больше  с  землячками  конечно :-)), а их там много) душу просто
  отводишь...
  Ну вот значит... Залазим на чат под ником nick... Ага... залезли... Смотрим
  на нижний фреймик... Сохраняем его у себя и внимательно наблюдаем...
  Первый прикол.
     Смотрим на вторую форму... Дальше будут сокращенные цитаты:
     <form method="POST" action="mainprog.pl">
     	<input type="hidden" name="action" value="logof">
        <input type="hidden" name="username" value=nick>
        <input type="hidden" name="userid" value=7134NICK8817>
        <input src="https://xakep.ru/wp-content/uploads/post/11894/exit.GIF" border="0" name="exit" width="80" height="30"
        alt="EXIT!" type="image">
     </form>
ага... все ясно... Так, заменяем на следующую конструкцию
     <form method="POST" action="http://chat.chuvashia.com/mainprog.pl">
        <input type="edit" name="action" value="logof">
        <input type="edit" name="username">
        <input type=submit>
     </form>
     Заметили  10  отличий?  :-))).  Ну  что...  Пробуем ввести имя того, кто в
     чате  сидит,   например,   "ibz"...   Жмем   кнопку...  Ой... ibz ушел...
     Странно...   опять   зашел,   еще  раз  повторили операцию... Ой... Опять
     ушел... Все... работает значит :-))))
     Сам в это время в чате болтаю, с девчонкой одной... Назовем ее Земфира...
        nick: Земфира ты фокусы любишь?
     Земфира: люблю :-)))
        nick: А есть щас в чате, кто тебя чем-нибудь обидел?
     Земфира: Зидан
        nick: зидан,  говоришь?
     А сам в это время его убиваю :-)))
        nick: ой, смотри, чо-то он вылетел :-)))?
     Земфира: :-)), я уж подумала что это ты :-))))
     Зидан в это время еще раз заходит, и я его еще раз выкидываю...
        nick:  да  нет,  что  ты,  как я могу это сделать, это ж только админы
              могут, да и то, зидан же админ, его выкинуть нельзя :-)))?
     Зидан заходит еще раз и еще раз, и все так же вылетает
     Земфира: Да нет! это ты! Классно, я тоже так хочу! :-))))
     Пока  я  ей  обьяснял,  что  да как, зидан так и не появился... Видать комп
     перегружал   бедолага   :-)))).   Ага   вот  он снова появился... Тут мне
     конечно   нужно   было остановится,  но  раз уж взял заказ, то выполняй
     его  до  конца...  В  общем  бедный зидан пробовал влезать в чат, успевал
     бросить  одну  фразу  (или  не  успевал, зависело от моей реакции :-))) и
     сразу   же   вылетал   еще   раз   15  наверно...  Ну  потом  они конечно
     догадались,   выкинули   ту   девчонку,   я  выкинул того, кто ее выкинул,
     меня  тоже  выкинули...  В  общем  было весело. Мне прикрыли ип - я залез
     через   проксю   -   посмотрел,  что  там творится - а там трупы, трупы...
     зидан   озверел,   понял   наконец,   что   произошло и просто всех подряд
     убивал :-))) Вечеринка удалась :-)))))
  Мораль...
  Ошибка   у   них  (создателей  чата)  была в том, что они при action=logof
     не   проверяли   userid   (а   это   уникальный  параметр,  присваивается
     каждому   входящему   свой,   случайным  образом),  и выкидывали сразу по
     одному только username.
     Эта   ошибка   сразу   же   была   пофиксена,  поэтому на этом чате ее не
     ищите,   ищите   на  других  -  наверняка она у многих встречается, не на
     всех   чатах,   например,   уникальными  userid  пользуются... У многих все
     гораздо проще :-))))
  Второй прикол...
     Смотрим  теперь  на первую форму :-)))) Надо сказать, что тэги в этом чате
     запрещены,   и  поэтому  особо  не  побалуешься...  Шрифт  не  поменяешь,
     размер  не  увеличишь...  Обидно... Но не страшно... иба как говорится на
     каждую отвертку есть труба с лабиринтом (звучит не так конечно, но матом
     мы ругаться не будем :-))))
     Смотрим  на  первую форму... оля-ля-ля... сколько параметров, некоторые и
     не  используются...  О... кажется нашли что надо... среди прочих там есть
     и такой:
     <select name="colname">
     <option selected value=White style="color: White">White</option>
     <option value="#F0F8FF" style="color: #F0F8FF">Aliceblue</option>
     ... и т.д.
     <option value="#9ACD32" style="color: #9ACD32">Yellowgreen</option>
     </select>
     Быстренько меняем эту конструкцию на свою:
<input type=edit name="colname">
     Так...  сделали  то  что  нужно... открываем то что получилось. и в нашем
     поле вводим следующее:
red Face=Arial Size=6
     кто  догадался  -  это  мы тэг <FONT> просто своими параметрами дополнили
     :-))))  Набиваем  и  отправляем  свой  текст  -  оп-па...  Большая жирная
     красная  надпись  :-)))  (И  смачный  шлепок от админов за ваши баловства
     :-)))))
     Ну  вот,  теперь  мы крутые, как админы можем красиво писать :-)). Теперь
     другая фишечка... а не попробовать ли нам поставить вот так вот
"
     Правильно,   правильно   догадались.  Ставим  и  что  получаем  в  итоге?
     Страничка  с  сообщениями  "повисает",   и не думай что это у тебя одного
     так  :-))))  У  всех виснет... Дело в том,  что там яваскриптик стоит,  а
     он  как  раз на этой " спотыкается,  возникает ошибка, и страничка дальше
     не  грузится...  по  крайней мере у многих... :-))) НУ что... гадость это
     конечно  порядочная,  но  что  поделать - аляфер ком аляфер как говорится
     :-)))  Можно  конечно  утонченней  сделать  -  послать  такое сообщение в
     приват  врагу  и  он  лишается  привата  на  некоторое (иногда даже очень
     длительное :-)))) время.
     Ну  что  значит,   рассказал  я одному знакомому значит, он и побаловался
     немножко :-)))). В общем чат на ремонте у них сейчас :-))))
  Мораль...
  Ошибка у них в том что:
     первое  -  они  не проверяли то, что именно приходит по параметру colname
     второе  -  они  не конвертили " в " (хотя даже если б и конвертили -
  все равно неправильно было бы :-)))). Ладно хоть догадались > и 
              &rt убирать... а то сами понимаете:
              &rt< дальше любой тэг,  и пиши пропало... :-))))
     Еще  раз  повторюсь,  эти ошибки убрали уже (они старую версию чата вроде
     загрузили - может и ее заодно проверить думаю?)
 
