Pull to refresh

Comments 136

В связи с недавним скандальчиком, в котором я имел глупость поучаствовать, и где все мои реплики как-то очень слаженно и обильно заминусовали, я сделал для себя вывод, что большинство хабралюдей очень положительно относятся к идее публичного эксплуатирования уязвимостей и не считают это чем-то неэтичным.

Хотелось бы посмотреть, так ли это статистически.
надеетесь, что вам правдивые ответы дадут? :)
UFO just landed and posted this here
Набрать 2000 знаков в криво сделанной игре через «чёрный ход» — это, на мой взгляд, не уязвимость.
Т.е. это не та уязвимость, к которой стоит применять все идеи про public-disclosure и проч. В игре важен fun. Развлечения в написании подобных «эксплойтов» хватает :-)

Недавно помогал знакомому советами с протоколом одной клиент-серверной игрушки, первый вопрос, который я задал: «игра на деньги?».
Снова пример с онлайновой игрой какой-нибудь. Как думаете, насколько серьезно та же Близзард отнесется к эксплойту, позволяющему создавать из воздуха деньги в WoW? Скажет ли «Да фигня, это же игра — всего лишь фан, не та это уязвимость»?
Повторюсь, wow — игра на деньги а не на фантики.
Ой, вот только не вешайте ярлыков. Кривоватость сервиса (вы хотя бы решение предложите, раз так бойко словами раскидываетесь) всего лишь упрощает создание эксплойта, но не оправдывает его распространение.

То, что это игра — ничего не значит. Близзард недавно засудила WOWGlider на немаленькую сумму именно за автоматизацию игрового процесса.

Уязвимость — это необязательно серьезная дырка, влекущая доступ к конфиденциальным данным. Это любая брешь в любой защите. Даже в защите от автоматического зарабатывания золотых монет/цветных пикселей на экране/рейтинга в игре.
А wow — игра на деньги. Не?
Как-то мы с вами в шахматном порядке :)
В каком смысле на деньги? Абонентская плата есть, но золотые монеты за деньги не покупаются — это чистой воды виртуальный рейтинг, как в клавогонках знаки в минуту.
Да разве не покупаются? Я в wow не игрок и могу ошибаться, но о конвертации тамошних золотых в USD слышал не раз.
Не покупаются. Черный рынок всегда есть (на клавогонках он кстати тоже есть — бывает друг другу рейтинг поднимают, кто побыстрее печатает), но за это очень жестко банят.
Вообщем, для меня критерий опубликования эксплойта в такой ситуации как раз проходит по границе деньги/фантики. :-)

Более того, одно время я развлекался в IRC подобным образом решая анаграммы и викторины (где надо по определению восстановить понятие). С викторинами даже было довольно интересно — пришлось распарсить несколько энциклопедий и построить несложный алгоритм анализа этих данных.
Все верно. Для вас уязвимость несерьезная, для автора может быть серьезной, т.к. компрометирует что-то ценное в проекте. Именно поэтому многие игроки в WoW спокойно использовали WoWGlider для быстрой прокачки, не считая это чем-то зазорным; и именно поэтому Близзард их беспощадно банила тысячами. Хотя они исправно платили свою абонплату.
На клавогонках уже есть торговля персами? :-)

По-моему, вы всё-таки утрируете.
А что? Один скоростной клавогонщик уже предлагал всем желающим за вмз сделать покруче машинку :)
«как страшно жить»
Напишите и отпишитесь — повелительное наклонение с ударением на третий слог («сделайте»). В моем случае — «сделаете», с ударением на второй.
Что за ерунда? Причем тут вообще «сделаете»? Это совершенно другое слово. «Жи-ши пиши с буквой и».

Я полистал словарь — нет таких слов через «е».
Недавно нашел баг в системе, позволяющий войти под любым пользователем, но т.к. к системе имели отношения мои знакомые, то отписал авторам описание. Не получилось из меня кулхацкера. :)
Это смотря чей сайт. Вот был тут топик про сайт «Единой России»…
Ну понятно, но в целом одно и то же. Для Единой России убыток в миллион долларов может быть вполне субъективно равен расстройству Васи Пупкина по поводу взломанной гостевой книги на его домашней странице.
UFO just landed and posted this here
Может быть и так, а что?
Очень сильно зависит от уязвимости. Проголосовал за «Поиграетесь с багом, не используя его для личной выгоды и лично отпишете автору», но если мне весело и я не считаю её реально опасной, то могу и отписать публично. Или картинку вставить прикольную.
А кто в вашем случае должен определять опасность — вы или владелец сервиса?
Картинка (или другая публичная отписка о найденном баге, без публикации эксплойта) — это НЛО-содержащий ответ :)
Для этого есть объективные критерии
Например, повредит ли это чьему-то здоровью или кошельку.
Очевидно, что если, например, найти дырку в системе интернет-банк какой-нибудь, то это опасная штука.

А если, например, обход проверки пользовательских данных на каких-нибудь блогопорталах и форумах, например позволяющий воткнуть длинную подпись или там большой юзерпик — это просто шалости.
Выше я уже привел пример с онлайн-игрой, легкой уязвимостью по зарабатыванию пикселей на экране и иском на несколько миллионов долларов.
Какое отношение это имеет к моему комментарию?
Речь шла о критериях оценки опасности уязвимости.

То, что эксплуатирование уязвимостей в чужих проектах является нарушением закона — очевидно.
То, что степень вреда чьему-то кошельку может быть очень, очень опосредованной, и ее не оценить никому кроме владельца этого кошелька.
вообще я имел ввиду официальные классификации уязвимостей. ссылки искать лень
Я буду определять. И, скажем, XSS на дурацких сайтах — «мне весело».

Баг в игре (в т.ч. WoW) — тоже иногда весело, но серьёзную уязвимость я бы не публиковал.

А вот падение [игрового] сервера, утечка важной (важность определю я) приватной информации, физический взлом сервиса, дыра в понравившейся мне программе — это опасно.

А вот понять однозначно отношение к тому топику мне тяжело. Однозначно неприятны ваши комменты и некоторые я минусовал, при этом сами клавогонки нравятся, потому и публикация скрипта тоже смущает. Надеюсь, понятно сформулировал.
UFO just landed and posted this here
UFO just landed and posted this here
Да почему же. Интересно мне стало. Я давно не видел такой неадекватной реакции (комментарии в -30) на казалось бы очевидную вещь — неэтичность публикации эксплойтов.
Комментарии в -30 из-за того что вы как бабки две на базаре хай подняли. Неуместно и некрасиво это.
Комментарии в -30 были только мои, включая самый первый и сразу.
UFO just landed and posted this here
Где эксплоит? Сто раз уже вам сказали, эксплоит — это не то, что было указано в той статье. А указан там был способ автоматизации процесса, так сказать, к тому же совершенно безобидный: данные целы, юзвери довольны.

Посмеются люди и угомонятся, что вы так нервничаете? :)
Когда так будут смеятся над вашим проектом — поймёте.
Да никто над кем не смеётся. Вы слишком мнительны.
Благодарю за бесплатный диагноз, Дока :)

Должен отметить, однако, что эти высказывания несколько непоследовательны:
Посмеются люди и угомонятся.
Да никто над кем не смеётся.

Как бы то ни было, я имел в виду, что (имхо) многие из хабралюдей, оказавшись в положении artch ощущали бы себя точно так же. И хотя я кое-где несогласен с его тактикой ведения разговора, я отлично понимаю и разделяю его эмоции.
Смеяться можно не обязательно над кем-то, кстати.
Замените слово «посмеются» на «позабавятся», если вам так легче.
Иногда забавы из-за того что взломщик неотдает отчета в своих действиях выливаются в проблемы к примеру для владельцев портала(если к примеру речь о web-уязвимости) и для самого взломщика, если он создал такие проблемы, что его очень захотели найти. И вероятность его нахождения зависит от отношения желания и возможностей владельцев и того как обеспечил свою анонимность взломщик.

Анонимности не бывает, уже убеждался на своем опыте. Все мы под колпаков и внутри системы. Тоже убеждался на своем опыте.

Пара впн, смена мак адреса и использование публичных вайфай точек, макдональдс, к примеру, обеспечивают достаточную анонимность.
Был пример на прошлой работе. Обнаружился взлом. Человек решил сразу всем похвалиться, и свою деятельность скрывать не стал. Его нашли. А на сотрудничество он идти не захотел. Хвалился как он крут, сколько дырок нашел и что не скажет где. Но когда ему дали понять, что с ним будет, если он сунется еще раз и при этом откажется сотрудничать, реакция была понятна. Человек был очень сильно напуган, и желание куда либо еще раз суваться отпало.

Программистам тоже влетело, за неграмотность в информационной безопасности.
Эксплойт это, эксплойт. Там уже и определение привели. Безобидный или не безобидный — решать тоже не создателю эксплойта.

Но не в этом суть опроса. Суть в опубликовании.
Этой статьёй вы только его только пиарите, кстати. :)
Да скрипт автор убрал, к тому же я id-шники поменял.
UFO just landed and posted this here
А не страшно? А то, помню, какой-то кулхацкер у турецких банков денег наворовал, а потом в турцию отдыхать поехал. Так его там и посодили:)
UFO just landed and posted this here
а как же «гугл — корпорация зла»? половина хабравчан так считает )
UFO just landed and posted this here
сообщать или нет автору — зависит от настроения, не факт что этот ресурс вообще несет какую-то пользу, выгоду и тд. касаемо меня, так что как говорится «как подфартит» )
Полностью согласен, зависит от настроения и того, о чем ресурс, если какой-то очередной продвиженец или пафосная фигня то поломаю и опубликую в узком кругу ограниченных людей, если что то полезное и хорошее, то отпишу автору с описанием а то и ввяжусь помогать.
P.S. Субъективность оценки хорошо-плохо может так же зависить от настроения :)
От авторов правда спасибо фиг дождешься.
Некоторые еще и угрожают о_О
помнится написал администрации одного рессурса, что у них на всех страницах добавлены вредоносные ифреймы, а в ответе они начали втирать что не поддаются на шантаж (=
Я давеча одному отличному художнику (но неважному админу) написал, что у него на сайте в открытом доступе лежат явно личные файлы. Он поблагодарил, и в конце письма было, казалось бы стандартное, но в данном контексте немного зловещее
Take care of yourself.
Вот всё пытаюсь понять — то ли искренне, то ли угроза? o_O
Стандартное прощание. Учите английский, тогда не будут всякие глупости казаться :)
Спасибо за полезный совет :) Я знаю, что это стандартное прощание (и в комменте об этом написано), просто в данном контексте оно обретает некоторую двусмысленность, о чём, собственно, и речь.
Я это к тому, что если понимать английский, то никакой двусмысленности не возникает. Но ваше дело считать так, как вам больше нравится.
Прям тест на выбор профы в какой-нить РПГ))))
Сам бы использовать не стал, но всем бы рассказал:
Я нашёл бак в системе Webmoney и сделал эксплойт!
Этот эксплоит позволяет получать неограниченное количество денег от Webmoney!
Для использования просто отправьте сколько-нибудь WMZ на кошелёк Z089723… и через некоторое время вам вернётся удвоенная сумма!

:)
Единственное, что не хватает еще одного варианта

«Поиграетесь с багом, не используя его для личной выгоды и лично отпишете автору… потом отпишете еще раз автору, уже с намеком, как устранить данную уязвимость, потом уже просто устраните, напишите автору и пришлете уже пофиксенные исходники, а потом уже сделаете, какой то легкий дефейс» )
UFO just landed and posted this here
это если компания крупная и начальство адекватное, а то и схлопотать за такое можно. Нехилых таких п*здюлей.
помню нашел уязвимость на recordings.ru. там была xss-ка при заполнении формы регистрации. выгоды особой я не видел и как добрый самаритянин отослал багрепорт. через пару дней мне пришло уведомление о пополнении счета (на recordings.ru) и благодарности. вот так вот :)
К стати самый логичный сценарий поведения админа.
Более трети хабралюдей чтут заветы Митника, что неможет не радовать!
UFO just landed and posted this here
Всегда пишу разработчикам. Особенно часто возникает желание проверить на дырявости на форумах, где пишут, к примеру — «Зацените-ка движок».
Я давно научился качать полноразмерные фото с istockphoto.com
это лекго проверить ) Задайте любую фотку (не векторную) в которой есть размер large
… и вы её купите :)
а, точно, их же можно и покупать) Не подумал )
Значит там уже 2 эксплоита! :D
последний вариат — «воздержаться» от использования ;)
Понятное дело, что автора обидели, что выложили публично дырку в его сервисе.
Но зато у вас, автора, появится бОльшая мотивация поскорее придумать алгоритм, который исправит этот недочет.
Это же здорово! Посмотрите на это с другой стороны: считайте, вас подтолкнули к самосовершенствованию =)
Да что ж вы все про мой конкретный случай вспоминаете. У меня эта мотивация уже год как есть, публикацией эксплойтов тут не поможешь, тут надо либо на флеш все переводить, либо картинками текст отдавать — ни то, ни другое неприемлимо.

Опрос этот я сделал не из-за конкретно той стычки, а из-за реакции выставляющих оценки комментариям — все комментарии о неэтичности были дружно заминусованы.
А что с картинками-то не так?
Неиграбельно совсем будет. Придется отказаться от подсветки текущего слова в тексте и сообщения об опечатке.
Подчёркивание текущего слова реализуется layer-ом поверх картинки.

Выдавать сообщение об опечатке в конце набора слова тривиально передавая хэш обильно посоленного слова вместо самого слова.

Выдавать его в середине слова, на мой взгляд, не верно — т.к. это удаляет игру от реальных систем проверки орфографии. Правда, возможно, это улучшает игровой процесс — но хэшировать и передавать N хэшей префиксов слова можно, но надо думать, как это сделать безопасно.
Комментарии к методу? Или всё-таки опасаетесь OCR на javascript? :-)
Поясните. Что помешает злоумышленнику просто использовать весь выложенный как на ладони механизм хэширования для использования его в обратную сторону? Какой вообще смысл что-то шифровать и хэшировать, когда любому желающему открыт алгоритм хэширования?

Насчет OCR — если делать текст четким и читаемым, то тут будет достаточно одного хот-кея в файнридере и копипаста в браузер. Если делать капчевидным — то это издевательство над игроками.
Запустить хэш в обратную сторону? Ну запустите в обратную сторону стандартный хэш MD5, алгоритм расписан в RFC1321. Значение «9178195379b9ce67adeb399cbf4cc114». На входе была строка в utf-8, первый символ «б». MD5 не идеален с точки зрения безопасности но зато быстр.

Что-то у меня складывается впечатление, что даже основы прикладной криптографии вы не изучали.

А что касается FineReader… Вообще говоря, печатный текст без искажений распознавать можно гораздо проще, особенно, если шрифт жестко задан. Другой вопрос, что сложность написания даже примитивного OCR, на мой взгляд, на порядок выше чем сложность операций с DOM-деревом для выдирания строк.

Я полагаю, что люди, которые способны это сделать, найдут себе занятие поинтереснее. Например, sapka contest :-)
С криптографией я знаком, в институте когда-то сдавал экзамен по матаппарату избыточных кодов (в простонародье CRC).

Вы меня не поняли. Я говорю про открытость яваскрипта. Так или иначе, при любых типах защиты, где-то в коде будет ключевая точка, к которой всё сводится, и которая никак не защищена. Например расшифровка хэша, сравнивание с введенным словом, и выставление некого флага — вот этот флаг злоумышленник напрямую и выставит. Если защищать механизм его выставления — точка будет лишь чуть глубже. И найти ее ни капли не сложнее, чем сделать простейший скрипт копипаста, потому что яваскрипт открыт.

Единственный разумным решением я считаю тотальную и невероятно замороченную обфускацию кода — но это делать страшно из-за возможных глюков.
Нет, судя по фразе «расшифровка хэша» с прикладной криптографией вы знакомы весьма поверхностно.
Кстати, контрольная сумма CRC криптографически не стойка, насколько я помню.

Вообщем, если не ставить задачу о выдачи сообщения «исправь опечатку» после первой ошибочной буквы — то алгоритм видится достаточно хорошим относительно именно копипаста.

Ну а что до «критической точки» ­— если на сервер вместе с результатом отправлять и набранный текст, то можно однозначно будет говорить, что текст был действительно распознан тем или иным образом.
Ну не расшифровка хэша, а вычисление нового для введенного слова и сравнение его с полученным — не придирайтесь к словам.
CRC вообще не используется для шифрования и на коллизии их смысла мало проверять, это именно классическое хэширование.

Отправлять текст вместе с хэшем — это уже интереснее, надо подумать над этим моментом.
Я не то чтобы к словам придраться хотел особо — просто я вижу грубую ошибку, которую регулярно повторяют «чайники» :-)

Тогда полагаю, вам очевидно, почему я отдельно упоминал про то, что проверка ошибки после каждой буквы сведёт почти на нет всю идею… Или у вас есть мысли как и эту фичу можно реализовать безопасно, не дергая при этом сервер на каждый чих?
В имеете в виду посимвольно, начиная с первой буквы, перебирать возможные варианты букв, добавлять их к слову и сравнивать полученный хэш с хэшем текущего префикса, таким образом получая буква за буквой слово? Это гораздо, гораздо сложнее, чем скрипт копипаста, и уменьшит количество читеров на несколько порядков.
Ага, именно про это.

Как раз на мой взгляд, перебор 70 вариантов для получения следующей буквы тривиально по сравнению с реализацией OCR.
А зачем OCR реализовывать, не пойму? Чем не нравится банально распознать на лету файнридером и всунуть полученный текст в игру? Кстати, эту проблему картинка не решает, а читеры с файнридером у меня уже тоже были.
Ну по-моему если автоматизировать — то до конца. А как вызвать API файнридера из javascript… Нет, можно, конечно, использовать mozrepl или написать плагин к firefox, но это уже решение выходящие за рамки простого monkeypatching-а кода :-)

Что до читеров с файнридером — вам лучше знать, я его не пользовал.
Ну это уже мегаизвращение. Есть цель — сделать результат на клавогонках X зн/мин. Цель «сделать это максимально изящно» обычно не ставится. А для неизящного читерства вполне достаточно файнридера, и здесь вообще нет вариантов кроме капчевидного текста.
Ну да. Хочется оставить комп и пойти спать, а он пусть там гоняет :-)

Я считаю, что картинка плюс хэши минус побуквенная проверка орфографии — компромиссный вариант. По крайней мере мне лучше вариантов не приходит с разбегу.
Подумаю, спасибо за идею. Геморроя с ней конечно много, и обходные пути опять-таки есть, но может быть это того стоит.
Обходные пути… компьютеры уже в шахматы играют — что уж там до клавогонок.

А я пойду изучать правила Го, пожалуй :-)
Ну или не текст отправлять, а хэш результирующего текста — но это уже скучные детали.
p.s. когда будете генерировать картинку — учитывайте, пожалуйста, разрешение монитора и прочие подобные особенности, чтоб текст слишком мелким не получился ;-)
расшифровка хэша

Бросайте курить.
Выше читайте. Под расшифровкой я имел в виду сравнение вычисленного с полученным. Зачем педантствовать?
Нередко использую обфускацию и ни каках проблем не вижу. Многие JS фрейморки используют обфускацию и тоже не имеет проблем. Поисковые сервисы использую обфускацию и у них не возникает нареканий. Что мы все делаем на так? о_О
А мне все равно страшно. Если уж появится глюк в результате обфускации (а об этом всегда предупреждает любой обфускатор), то его выловить будет невозможно.
С таким подходом можно программы бросить писать вообще. Ну вот мало ли так на стадии компиляции к примеру вылезет какой глюк :D

Обфускация есть тру, отформатированный исходник есть зло. И потом, кто говорит о максимальной степени оной? Можно применить первый уровень, т.е. ни чего не менять в коде, просто вырезать все переносы строк, каменты и лишние пробелы.
А это уже называется не обфускация, а минификация, и в клавогонках она, разумеется, применяется.

Серьезная обфускация (с заменой имен переменных и функций, иначе от нее толку мало) — это серьезное оконфуживание кода и такой же серьезный источник глюков.
Видите, люди предложили свои варианты =)
Создали бы топик, где спросили людей про то, как решить эту проблему.
Уверен, была бы куча комментариев с весьма интересными ходами ;)

А вообще, искренне спасибо за сервис! Он классный!
Поиграюсь с багом, попытавшись извлечь выгоду и напишу автору письмо подробно описывающее все мои действия.

Если через месяц дырка так и останется открытой, то выложу на каком-нибудь «кулхацкерском» форуме. Ибо нефиг.
Зависит от автора, если это какой-нибудь Microsoft или быдлосоциальная сеть, выложу на форум, если что-то, симпатичное лично мне — напишу автору.
В зависимости от системы… если буржуйская, то 90% что останется в привате, если конешно, с нее можно извлечь какую либо пользу для себя и друзей, если отечественная — скорее всего баги улетят автору
Выбрал вариант 1. Не совсем согласен с формулировкой, так как обычно не пишу подробно как использовать, чтобы школьники не воспользовались и не навредили. В общем случае без разницы отпишусь я автору о баги или нет. ИМХО Тот кто ищет всегда найдет, ни эту дырку так другую. Тут уже зависит от разработчика и как он относится к своему продукту. К буржуским сервисам обращятся бесполезно, как правило просто игнорируют.
Не, результаты честные. Просто каждый для себя трактует слово «уязвимость» и «эксплоит» и отвечают соответственно.
Если бы я серьезно этим занимался и меня волновала слава и известность, то, наверное, публично опубликовал бы. Но учитывая, что я не любитель такого рода шумихи вокруг себя, то скорее всего, вообще, ничего не стал бы делать, даже автору писать.
и все очень правдиво кинулись отвечать :)
Я бы написал авторам об уязвимости, а через несколько дней, если бы авторы уязвимость не устранили, сделал бы как romanser.
Случайно обнаружил пару багов в процессе написания (вернее даже тестирования) собственного альтернативного клиента к некоему веб-сервису. Никому ничего не сообщал, сам никак не использовал.
Поиграетесь с багом, извлечете максимум пользы для себя и лично отпишете автору об уязвимости.

У меня тут прикол был… нашел на одном сайте пагу багов, интересно было алгоритм посмотреть, оказалось правда, что его нету, а все забито тупо в базу, НО тут на следующий день этот сайт показывают по телеку по всем каналам. Простите, но я обо***лся… я досих пор не захожу на него из дома)
Честно говоря, я не очень понимаю, как можно отвечать на такие вопросы обобщённо.

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

Я воздержался в этом опросе.
Попробовал тут как (более полугода назад) то зайти на ftp одного известного производителя железок, попал на ftp одного известного отечественного издателя игрушек. Там файлы какие-то валяются, но явно не для общего доступа, написал несколько писем последним — отписали одно, что типа так и задумано… ппц. Там у них какие то анкеты с личными данными, паролями, мылами… Сейчас вспомнил про это, зашел — ничего не исправлено, так же все в общем доступе. И вот как к такому относиться?
Издатель это — бука, напрямую заходить у них нормально, пароль требует, а вот через другой домен… пароль не спрашивает.
Слов нет… На всё про всё ушло минуты три. Тоже отписал им, с указанием конкретных файлов.
Если не исправят — отправлю те же ссылки по некоторым адресам из списка, пускай «засветившиеся» Буку покошмарят :)
Если я правильно понял о чем речь то у меня ушло 20 секунд. Из них 15 чтобы найти сайт в поисковике.
Просто зайти на FTP недостаточно, нужно ещё найти правильные файлы в той свалке, на это уходит порядочно времени.
Это зависит и от проекта, хочется ли чем поживиться или проект так понравился, что хочется его улучшить.
И еще: у меня уже создалось впечатление, что движок не позволяет создать опрос, не содержащий вариант с НЛО. =) Это правда?
И еще: у меня уже создалось впечатление, что движок не позволяет создать опрос, не содержащий вариант с НЛО. =) Это правда?
Официально — нет, но так как никто не видел автороов тех опросов, которые не содержали вариант с НЛО, то рисковать никто не хочет.
Sign up to leave a comment.

Articles