Sunday, September 27th, 2009 02:34 pm
Тут вот пишут об очередной дыре в безопасности сайтов. Надо сказать, я не удивлен. Система безопасности, которая бы не позволила таком случиться - на уровне программном или на уровне организационном - неудобна, дорога, а главное - когда она работает, всему этому нет ровно никакого оправдания - ничего же не случается! А если случается, то чаще всего - это ложное срабатывание.
Если вы думаете, что это что-то новое в компьютерной отрасли - то вот вам пример.

A suburban New York City nuclear power plant's siren system has mistakenly
blared out the warning, "Emergency! Emergency! Emergency!"  The ominous
message rattled some of the residents of New City, about 30 miles north of
midtown Manhattan. Auto shop worker Rudy Gaspari says the mechanical voice
had an unsettling, post-apocalyptic overtone to it.

The voice came from an Indian Point plant siren located downtown during a
test Friday, The Journal News reported.  Indian Point spokesman Jerry Nappi
says the voice message "shouldn't have happened." He says plant officials
have disabled the voice mechanism in the siren.

Т.е. на атомной электростанции есть механизм, который о чем-то там предупреждает. Пост-апокалиптичексим голосом. В один прекрасный день эту систему проверяют, и в ходе проверки она ложно срабатывает. Что делают в этом случае люди? Выключают голосовой механизм. Как замечают в рассылке RISKS, what could possibly go wrong there?

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

А Британские Ученые (TM) тем временем собираются доверить компьютерам чтение экзаменационных сочинений.

Конечно, школьные сочинения типа "Онегин как образ лишнего человека" и писать можно компьютером, не то что читать, но я бы предпочел, чтобы мое сочинение читал кто-то разумный. Что, впрочем, и без участия компьютеров совсем не гарантировано. 
Sunday, September 27th, 2009 09:51 pm (UTC)
Не совсем разглядел Дыру. Не позволить такому случиться очень просто: production серверы на *всем* адресуемом http-пространстве сайта не должны содержать ничего, кроме доступного конечному пользователю. Тем более не содержать исходников, систем контроля версий, файлов паролей к швейцарским сейфам и т.п. Дыра там в голове у админов. Торвальдс отнесся бы еще суровее к людям, использующим SVN :), но в данном случае публичному веб-серверу нельзя содержать даже каталог .git :)
Monday, October 12th, 2009 05:28 pm (UTC)
Вообще говоря, я не вижу проблемы в том, чтобы исходники php публичного сервиса, типа почты, были доступны. В том числе, через SVN. До тех пор, конечно, пока туда не вписаны в виде строковых констант пароли доступа к данным этого сайта.
Monday, October 12th, 2009 06:09 pm (UTC)
А разве есть другой способ держать пароли доступа (к БД и проч.) для PHP сайта, кроме как строковой константой?
Monday, October 12th, 2009 07:43 pm (UTC)
:)
Тем не менее, находятся ли данные в строковых константах или отдельном файле, эти данные должны быть доступны самому PHP-скрипту, то есть любому посетителю сайта. Или за те 10 лет, что я не работал с PHP, произошли какие-то кардинальные изменения в PHP-security?
Или я просто торможу и предлагается вынести файл с паролями за веб-пространство вообще, типа mkdir /secretphpdata && chown apache:apache /secretphpdata? Но и это достаточно уродливое решение. Не, с PHP я всё же был бы однозначен: *никаких* посторонних файлов, ни даже вебсерверного доступа к существующим. Хэндлинг только через PHP.
Monday, October 12th, 2009 08:14 pm (UTC)
Уж не утверждаете ли вы, что посетитель сайта автоматически имеет право доступа к любым данным, к которым имеет доступ код сайта? Это было бы замечательно, с точки зрения безопасности.

Ну так в доброй половине расшаренных вебхостингов мое утверждение истинно. И если не принимать никаких специальных телодвижений вроде .htaccess с deny all, то таки да, посетитель и скрипт имеют одинаковый доступ к данным, т.к. имеют одинаковый uid. На грамотном хостинге, собственном сервере или VPS свободы разумеется больше, т.к. скрипту доступна файловая система, а посетителю только заданные директории и DocumentRoot.
Tuesday, October 13th, 2009 04:21 pm (UTC)
кстати, про явки и пароли... Можно еще одну книжку у тебя купить?
Tuesday, October 13th, 2009 05:41 pm (UTC)
Ой, да вы тут в серьез это обсуждаете? Прости, я думал, это ты прикололся. Потому что разговор-то не про доступ к скриптам сайта, а к их исходникам (т.е. SVN-копия этого же сайта). На самом деле, файлы конфигурации, вместе с работающими скриптами, должны конечно храниться в сторонке. А вот класть эти файлы, с прописанными в них паролями, в публичный SVN не следует.
Tuesday, October 13th, 2009 07:31 pm (UTC)
Да, можно.
Tuesday, October 13th, 2009 08:24 pm (UTC)
Игорь ведь e-bookи в Израиль импортирует