вы к сожалению не понимаете о чем пишите. встречный вам совет - не мерьте всех по своему аршину. узкая специализация имеет место быть. и профессионалы высочайшего класа но с очень узкой специализацией тоже имеют место быть. и они не обязаны разбираться в нюнсах присущих веб программированию. Относительно быстро понять что из себя представляют теже самые sql инъекции - несомненно да. Быстро понять как их предотвращать в коде - возможн что да хотя не уверен, думаю есть такеи вариации сабжа которые мне прсто не представить и оно только с опытом приходит. Что то более хитропопое привести не могу ибо повторюсь в пхп я не в теме. Аналогично что профессионал пхп довольно быстро поймет что такое дедлок в многопоточных приложениях. Сможет ли он ыстро понять как искать и фиксить такие места в проекте - ой не уверен. Он от этого перестал быть профи в пхп? атнють.
SQL не является частью какого-то языка, это отдельный язык запросов. Запросы просто генерируются в любых приложениях из написанных руками строк и подставляемыми переменными. Чтобы обезопаситься от инъекции, надо проверить, откуда приходят и как обрабатываются переменные. Касательно mysql, все функции называются примерно одинаково в разных языках. Достаточно быть знакомым с синтаксисом языка. SQL-инъекция это еще ерунда, зачем разработчику ваша админка - из неё же нельзя систему грохнуть =) Закладки - как правило shell для выполнения любого (присланного) PHP-кода. А если вы пустили человечка под рутом, то сервер может быть сконфигурирован таким образом, что позволит php-скрипту выполнять любые системные команды.
проблема причём настолько серьёзна, что кроме как юридически, я даже и не знаю способа защититься. nda и тому подобное. (если не считать способа из фильма Джей_и_Молчаливый_Боб_наносят_ответный_удар)
[vs] это был как пример поиска функции обращения к базе по названию. если не нравиться call_user_func, то можно $this->$method - такой код приемлем?) и потребовать разъяснений у разработчика можно только увидев проблемный участок. вот с вопросом об его поиске автор и обратился (как мне кажется).
к сожалению в РФ физик практически накакой отвественности не несет за нарушения NDA в худшем случае пальчиком погрозят или штраф в пару МРОТ дадут. ПО крайней мере я не знаю прецидентов чтобы программисту за нарушения NDA в РФ что то было. описанный способ это уже как самая крайняя мера разресолвить конфликт :twisted: ну собственно это меня и интересоввало - практические способы оставить в коде что то не нужное чтобы потом через это ненужное сделать что то плохое.
о_О опа как в пхп оказывается можно. хотя что удивляться почти во всех языках можно взять адрес исполняемой функции по ее строковому имени и вызвать ее. гы если при этом еще mysql_connect просто заксорить посимвольно и передавать через функцию декодировщик то в коде вообще не будет этой строки. хотя в таком ключе способ вызова через call_user_func будет подозрителен. спасибо. поставлю на заметку.