"Не нужно путать cms бесплатные, разрабатываемые коммерческими компаниями и системы, пищущиеся энтузиастами. Open source тоже тут не при чем, поскольку и коммерческие системы могут поставляться в открытых кодах.

Видимо, нужно делить системы на производимые компаниями (в которые вкладываются деньги) и на те, которые делаются на энтузиазме определенной группы разработчиков. Хотя для простоты пусть будут "cms платные" и "cms бесплатные".

Защищенность системы никак от платности или бесплатности не зависит. Она зависит от:

1. распространенности системы (чем больше пользователей, тем быстрее находятся баги);

2. квалификации разработчиков и их желания что-то исправлять;

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

Пункт в) можно встретить в основном в профессиональных системах коммерческого толка. Остальное - бывает по разному.

Насчет открытости кода и взлома. Мифы и россказни про "открытый код, который можно поковырять самому" нужно отмести за несостоятельность с ходу. Профессионалов в области безопасности интернет-приложений по пальцам сосчитать, а тех, кто в состоянии грамотно разобрать и собрать чужую программу еще меньше. Если стоит задача сделать её при этом лучше чем была, то это очень долгий и дорогой процесс. Поэтому, открытость и закрытость кода де-факто почти никак не влияют на защищенность системы. Если у системы управления (читай - любого программного продукта) отлажена система поддержки и обновлений, плюс если пользователи этим пользуются (спасибо Microsoft за её идеологию patchей и service packов) - возможные риски эксплуатации любой CMS будут сведены к минимуму.

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

Абсолютно надежных систем нет. По РТР уже показывали сюжет про сайт на одной из самых известных российских CMS, который был взломан какими-то студентами, и никакая сертификация тут ничего не гарантирует.

Чем же реально отличается "cms платная" от "cms бесплатная"?

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

2. Компании-разработчики платных систем делают их с определенной целью и по определенному плану развития (roadmap). Я оговорюсь - как правило делают. Поэтому в них меньше разных ненужных функций, которые иногда появляются в системе из-за желания разработчика опробовать новую идею или технологию.

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

В общем случае это приводит к тому, что системой коммерческого плана:
1. удобнее пользоваться;

2. она более надежна в работе;

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

4. лучше документирована.

Если совсем кратко, то коммерческая система больше сфокусирована на нуждах пользователя, чем cms бесплатная. Потому, что это программный продукт, который производится для получения денег, а не для получения удовольствия разработчика, удовлетворения его эго и тщеславия.

Вообще, хочется еще отметить, что в настоящее время коммерческие системы только только доползают до той границы, где они начинают обладать бесспорными преимуществами перед бесплатными cms. Причин тут несколько, но основная - это узость рынка и малый его объем. Но судя по всему, в ближайшее время бесплатные cms начнут значительно отставать, поскольку новые требования к простоте и удобству использования уже не решить на уровне двухнедельного знания PHP, ASP, Perl или Java. Нужно иметь большой опыт разработок сложных распределенных систем и уйму времени для тестирования и отладки (или большую команду). В чем коммерческие компании, конечно, будут выигрывать."

Источник:http://www.twl.ru/articles

6.09.2007