Безопасность на вконтакте.

    Буквально сегодня у меня спросили, как делать многострочные статусы в одной малоизвестной социальной сети.
    Спросили — надо отвечать. Ну ладно, дело нехитрое, написал простенький джаваскриптик. Все работало.
    Решил поделится с менее образованными товарищами и выложил скрипт в Моих Записках.
    Какое-же было удивление, что после этого скрипт отказался работать. После краткого осмотра оказалось, что все очень просто — вконтакт заменяет в слове javascript некоторые буквы русские.
    Стал смотреть дальше в этом направлении. Обнаружил, что убираются буквы из слов DELETEDROP. На все, как скулевые, так и прочие извращения вконтакт не реагировал.
    Вот мне просто стало интересно, что это? Такая оригинальная защита? Зачем она нужна?
    Что вы думаете по этому поводу, уважаемые хабрачеловеки?

    Комментарии 10

      0
      Это у Хабраадминистрации нужно спросить - Хабр то же самое делает с URLями. Но не всегда. Тоже непонятно - отчего, зачем...
        +3
        это такая супер оригинальная защита - "все равно мы где-то продолбали, давай превентивно будем еще и юзерский ввод ламать" )
          0

          - Здравствуйте, Вам звонят из школы вашего сына. У нас тут небольшие проблемы с сервером.
          - Опаньки, мы что-то испортили?
          - Ну, это как посмотреть... Вы действительно назвали вашего сына "Robert '); DROP TABLE Students;--"?
          - Ах да, мы зовём его Маленький Бобби Табличкин.
          - Ну так вот, мы потеряли все записи по студентам за этот год. Надеюсь, Вы довольны.
          - А я надеюсь, что вы получили урок по очистке введённых данных.
          0
          > вконтакт заменяет в слове javascript некоторые буквы русские

          думаю эта такая защита «от дурака», т.е. вроде бы и должно работать, но не работает, и уводит не «профессионального» злоумышленника в дебри.
            0
            Скорее всего прмитивный вид зашиты. Ведь не все пользователи контакта являются специалистами. Большая часть это всего лишь простые пользователи. А банальный копипаст знают все. Это хоть чуть-чуть снижает количество работы админам. Представте, если бы каждый пользователь контакта, найдя какой-нить скрипт, запустил его. Вот админы и страхуются как могут
              0
              скрипт для многострочных статусов скиньте то )
                +1
                Да легко.
                javas cript:{
                var aj = new Ajax();
                aj.transport.open('POST', '/profile.php', false);
                aj.transport.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
                aj.transport.send("setactivity=test\ntest&activityhash="+ge('activityhash').value);
                window.location.reload();
                }


                setactivity=test\ntest - вот этой строкой устанавливается статус. Жирным выделен текст статуса.
                Вообще немного криво, но зато работает -)
                  0
                  упс, пробел в javascript убрать только надо. Скопипастил из вконтактовской заметки просто.
                    0
                    спасибо!
                0
                помниться на хабаре было что-то подобное...
                *злобно хихикает

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

                Самое читаемое