Кандидат cms - російська cms, ↓ сайтостроєніє ↓

Відкривши Кандидата, я був вражений. Відразу обмовлюся, ця система є скоріше трешову CMS, трохи відстала (років на 10) від сфери світового сайтобудування, але від того дуже простий, і, отже огляд буде зрозумілий і корисний нижчих верств програмістів - школярам і недавно звільнилися з заводів хлопцям.

Давайте подивимося що простіше, звичайну CMS без всяких новин і блогів. Остання версія на момент написання поста - 1.5.2.

Перше знайомство

Отже, відкривши сторінку завантаження CMS, я бачу наступний список нововведень, в якому перераховані «10.11.13: 16.11.13: підправлені файли»:

Світ з нетерпінням чекає позбавлення від всіх кодувань, крім UTF-8, тому не смій створювати файли в 1251, цим ти гальмуєш весь світовий прогрес.

В архіві нас чекає файлик readme.txt, а там - ліцензія, з якої я повинен ознайомитися.

Як же я відвик від аматорських російських CMS! Уже з подивом дивлюся на проекти, які потрібно качати нема на Гітхабе. Але навчався PHP я саме на такому треш, як зараз пам'ятаю, - 5 років тому жадібно досліджував локшину в исходниках толі «Максі ЦМС», чи то «Мішаня ЦМС».

відкриваємо index.php

Після «першого Знакоство» відразу стає зрозуміло, з чим ми маємо справу. Проте, відкриваємо index.php і бачимо стару добру «локшину» і говнокод:

Кандидат cms - російська cms, ↓ сайтостроєніє ↓

У файлі «@» зустрічається 23 рази, а це, між іншим, 23 милиці. Всього в Кандидат CMS символ «@» зустрічається 3299 е ** ь ** * * о * раз.

Якщо ти не хочеш, щоб виводилися помилки, просто встав функцію error_reporting (0); в найпершу рядок своєї CMS, не обов'язково друкувати «@» 3299 раз перед усіма зустрічаються змінними.

Класика: код .htaccess файлу у мене не влазить на висоту екрану, доводиться використовувати коліщатко мишки. Чомусь росіяни розробники полюбили об'єднувати роутинг і контролери в саме .htaccess файлі. Коли над сайтом попрацюють сеошникі зі своїми редирект, цей файл може розростися до розмірів операційної системи Колібрі.

Йдемо далі

Кандидат CMS - ікона поганий аматорської CMS. Тут зустрічаються абсолютно все найогидніші прийоми бидлопрограммірованія, наприклад - не винесеної в окремий файл шаблон всередині функції.

При цьому теги присмачені інлайн стилями, що є «терпимою» практикою в працюючому проект, але в таких коробкових продуктах, як цей, досконалим милицею і неповагою до майбутніх користувачам. Судячи з назви функції - знову замішано СЕО, даній сфері прощається все. Але, на жаль, бидлокод виконані не тільки функції для пошукових роботів, а взагалі все. Огидний код, який не відповідає ніяким стандартам, це видно відразу, - по рандомних кількості прогалин між операторами = і <> (Це безпомилковий почерк маестро говнокода і, так би мовити, «клеймо майстра»).

відкриваємо сайт

Кандидат cms - російська cms, ↓ сайтостроєніє ↓

Адаменко проста і зрозуміла, купа інструментів для сеошників і копачів коду.

Безпека

Все, що потрібно було зробити - це послати даному скрипту мій PHP файл Z: //script.php через CURL, підробивши заголовки на image / png (представившись картинкою).

Мій PHP файл завантажувався / media / images / і вільно викликається з браузера, це повноцінний експлойт, тобто повний доступ до всіх файлів сайту (CMS використовує в якості бази даних тільки файли).

Щоб не повторювати помилки Кандидат CMS, ніколи не довіряй заголовкам, які прийшли від користувача, адже користувачем можу опинитися я. В даному випадку скрипт перевіряє тільки mime тип, який можна без проблем підробити. Найбезпечніший і надійний спосіб перевірити, картинка чи прийшла від користувача - фунция getimagesize (), поверне false, якщо їй передати нам не картинку:

поширення

Загальна оцінка: 3 з 10. Два бали система отримує за простоту і один за безкоштовність. Поріг входження вкрай низький, зрозуміти код і відредагувати його може будь-який бидокодер або просто людина, що тягнеться до знань, але поки не досяг рівня своєї CMS (такий тип людей я називаю «копач»). Система ідеальна для вивчення PHP, як практичний посібник до книги.

В цілому, враховуючи, що це треш, перераховувати всі плюси і мінуси немає сенсу. Одне радує - російський Open Source є, нехай навіть в такому вигляді. Коли-небудь збірний образ російського Кандидата за якістю коду наздожене і пережене Захід, але, на жаль, не сьогодні і не завтра.

Навігація по публікаціям

Схожі статті