mendel

mendel
Рейтинг
232
Регистрация
06.03.2008
wano-moroz:
Вот в этом ваша главная ошибка

Ну а Ваша главная ошибка в том, что ищете у меня ошибки. :)

Приведите пример где от такого подхода может быть вред, а не теоретизируйте.

mendel добавил 05.02.2011 в 12:55

И да, это:

wano-moroz:
при заливании в бензобак воды вместо опасного бензина, вред будет

не пример если что :)

wano-moroz:
Будет и не малый.

И какой будет? Что вместо хтмл выведется исходный код?

Ну и фиг с ним... зато уязвимости на ровном месте не заработаем.

wano-moroz, мне кажется у нас с вами недопонимание именно в постановке вопроса.

Я говорю о фреймворке, а вы похоже о прикладном скрипте.

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

LEOnidUKG, давайте вы оцените качество моей повести, но рукопись я вам не дам. :)

Тема топика немного не о том. Да и потом отсутствие исходников лишь усложняет работу хакера. Увеличивает время, но абсолютно не защищает.

LEOnidUKG, чтобы оценить "масштабы бедствия" много времени не надо. XSRF или XSS видно невооруженным взглядом. Не всегда но видно...

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

Пример:

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

Открываю и вижу что-то вроде:

$x = $_GET['x'];

$x = (int) $x;

$sql = 'SELECT * FROM `xxx` WHERE x='.$x;

В принципе тут нет уязвимости. Но масштабы проекта дают мне понять, что где-то она есть...

и 15 минут поисков увенчались успехом - нахожу первое вхождение без эскейпинга и приведения типов (тоже самое но без второй строчки). Чтобы использовать уязвимость ушло еще полчаса, чтобы найти все подобные места и залатать их - ушел день. Но вывод о вероятной проблеме был ясен в первые минуты, стоило открыть код.

(пример реальный, факты лишь чуток подправлены).

Заглянул интереса ради на трастлинк.

Скормил их калькулятору сайт пр4 тиц100

ответ немного улыбнул:

Вы сможете зарабатывать 69.68 рублей ежемесячно уже через 1 неделю

Красота кода понятие абстрактное. А вот уязвимость вполне реальна. Скорость работы, кол-во запросов. Это вещи более-менее поддающиеся формализации.

Как вы будете оценивать качество текста?

Если вы носитель языка и знаете тему, то все просто.

Но вот заказали вы статью у копирайтера на тему в которой вы "плаваете", и на языке который вы "читаете со словарем". Как вы оцените качество такого текста? ОК. Поставим вопрос иначе. Если вы язык знаете и тему знаете, и вас просят научить проверять тексты человека который языка почти не знает, и темы не знает. На что вы посоветуете ему обращать внимание? :)

Фактически кроме как привлечением специалистов для оценки решения нет. Вы не являетесь "носителем" php и плохо разбираетесь в предмете "безопасность и эффективность". У вас просто нет другого пути.

Важное замечание: уязвимости объективны, все остальное довольно субъективно. Поэтому желательно определиться с максимально ограниченным количеством "критиков", и чтобы они имели более-менее синхронные "вкусы". К примеру это могут быть последователи одного и того-же фреймворка. Тогда эти требования вы сможете выставлять в ТЗ. Так будет проще.

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

PS: Вообще можете почитать топик у меня в подписи. Там короткая статейка о том, что такое плохой код. Но поскольку это дело сильно субъективно, то в основном я описывал вопросы безопасности :)

PPS: вообще замечание о том, что исправлять ошибки дороже чем написать изначально правильно верное. Но не стоит путать исправление ошибок и "вычитку". Просто проверить на ошибки стоит обычно заметно дешевле чем стоимость скрипта. Другое дело что в результате вы можете получить не только исправленные ошибки но и вердикт "лечить бесполезно, проще пристрелить".

PPPS: И если вы даете скрипт на анализ, то человек должен быть доверенным. Потому что вы даете ему свой код. Некоторые умудряются код не давать, но просить анализа. Глупо - цена в разы растет, а качество анализа в те же разы падает.

wano-moroz, в чем ошибка собственно? :)

В том, что нельзя доверять инфе от пользователя?

от эскейпа "для профилактики" краха не будет.

Ну а если данные вызывают специфические действия, то их надо дополнительно фильтровать.

Не вижу противоречий.

mendel добавил 04.02.2011 в 14:44

Да еще к статейке интересный момент.

Как оказалось довольно многие (недавно два скрипта таких встретил) разработчики ленятся проверять подписи у сообщений от платежных систем. Как результат - возможность пополнения счета в сервисе без денег. А если сервис позволяет денежку выводить, то.... то взгреть могут хорошо.

Не посоветую. Когда я работал с смс у меня были очень специфичные требования, что сильно ограничивало выбор. Сейчас тоже всплыл вопрос о недорогом смс, но пока руки не доходили...

так что когда найдете, отпишите тут, поделитесь опытом :)

Согласен - не известно что за бизнес, но отговаривать начали :)

Не знаю как в РФ, но в Украине банки стабильно идентифицируют мелких потреб-заемщиков исключительно по стационарному телефону.

Я лишь говорю, что плохая идея работать с людьми которые позволяют себе такие надписи:

uvoiceme.ru:

Мы сегодня пьем пиво!
Сайт будет доступен с 03.02.2011 18-00 (крайний срок)
По всем вопросам сюда nodirmcsd@gmail.com

В области телекомуникации я в свое время обжегся на одном таком провайдере услуг.

Они в своей нише уникальные. Большие объемы и все такое... а отношение к клиентам очень интересное - деньги берутся не за оказанную услугу, а за ПОПЫТКУ. Вполне не редки сообщения типа "служба поддержки ушла в отпуск, будет через две недели". А уйти некуда :)

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

Да кстати, попробуйте покурить в сторону форумов по айпителефонии, астериску и т.п.

Если я еще что-то помню, то курить стоит в сторону http://asteriskforum.ru/ http://asterisk-support.ru/forum/ ну и им подобным. Думаю "диванный" оператор вполне может за недорого сделать Вам такой сервис на своем сервере. Ведь у них у всех стоит звездочка (Астериск), и все они умеют писать подобные конфиги под него.... В общем попробуйте создать тему на подобных форумах. Уж они то лучше знают о наличии таких сервисов, ну или могут предложить сами...

WhiteSmartFox, skype зло :)

есть четыре причины не использовать скайп там где можно без него обойтись:

1 - он заметно дороже нормальной телефонии (нормальной ip-телефонии)

2 - он очень агресивен, и это уже один раз послужило механизмом распространения вирусной эпидемии...

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

4 - зачем извращаться над тем, что закрыто если есть качественные готовые инструменты? В принципе если настроить Asterisk нужно будет создавать файлики с телефоном и кодом в папке, и сервер будет звонить сам, все говорить и по результату удалять файлики.... Сложность только в том, что спецы по Астериску довольно дорогие. Но реально там поставить программу и написать один конфигурационный файл.

Всего: 1906