Обдирають viewtopic powered by phpbb. Захищаємо PhpBB

В одному з коментарів до моєї статті мене попросили розповісти — як прибрати поле копірайту творців движка phpBB: «Створено на основі phpBB». Так як ця інформація може бути корисною і іншим відвідувачам, я вирішив написати про цю статтю.

Навіщо видаляти це поле? Багато хто з вас може висловити обурення, мовляв, видалення цього поля буде розцінено як недотримання авторських прав. Однак це не зовсім так – phpBB є безкоштовним веб-форумом із вільним вихідним кодом. Тому будь-які зміни, зроблені вами, припускають, що авторськими правами безпосередньо на ваш продукт повністю володієте ви. Іншими словами, після створення форуму на цьому движку, він стає вашою інтелектуальною власністю. Автори phpBB написали механізм, інструмент створення форумів, а чи не готовий продукт. У разі, якщо ви видалите напис копірайту у футері форуму – це порушення авторських прав. З іншого боку, якщо ви все-таки залишите цей напис – це буде знак подяки та підтримки розробників, що однозначно добре!

Отже, якщо ви вирішили все ж таки позбутися цього напису, то першим кроком нам необхідно дізнатися, де знаходитися параметр, який відповідає за виведення інформації про копірайте. Для цього нам необхідно відкрити будь-яку сторінку форуму, де видно форум, в одному з браузерів, які підтримують функцію перегляду коду сторінки (Opera, Google Chrome, Firefox і т.д.), і, клацнувши правою кнопкою по самому напису, вибрати з випадаючого меню опцію перегляду коду (Inspect element).

Після відкриття код-інспектора ми зможемо побачити, що блок, який нас цікавить, називається copyright. У ньому і необхідно робити зміни, щоб відредагувати, сховати чи видалити інформацію.

Другим кроком буде пошук файлу, який містить блок «copyright». Оскільки назва файлу нам невідома, то пошук вручну займе дуже багато часу. Тому ми скористаємося зручною функцією - пошук за вмістом, якою володіє мій улюблений менеджер файлів - Total Commander, далі ТЗ (існують інші способи пошуку за вмістом, але в цій статті вони не розглядатимуться). У менеджері файлів відкриваємо папку, в яку встановлено форум на локальному сервері або FTP-сервері вашого хостера. Для полегшення пошуку ми відкриємо відразу папку, в якій зберігається файли вибраного за замовчуванням стилю. Далі вибираємо пошук файлів у меню «Команда» або просто натискаємо Alt+F7. У вікні пошуку ми залишаємо поза увагою поле "Шукати файли", тому що назва файлу нам невідома. У полі «Місце пошуку» повинен бути вказаний шлях до папки з встановленим двигуном форуму, за умовчанням ТС підхоплює шлях автоматично, якщо вікно пошуку було викликане з активної частини, де ви переглядаєте вміст папок. Далі ставимо галочку поруч із полем «З текстом» і вводимо у рядок пошуку «copyright», після чого сміливо тиснемо кнопку «Почати пошук» і чекаємо на виведення результатів.


Пошук видав нам кілька файлів, за ідеєю їх має бути 5, у яких згадується назва блоку копірайту. З усіх виданих файлів ми чітко бачимо, що нас цікавить файл з назвою «overall_footer.html», оскільки блок знаходиться у футері сторінки, а слово overall підказує, що в цьому файлі зберігаються глобальні налаштування, тобто для всього форуму. Тепер у нас є 2 варіанти, як відредагувати потрібний нам файл – через вбудований редактор шаблонів phpBB або з використанням стороннього редактора. Першим розглянемо варіант редагування через рідний інтерфейс phpBB.
Нам необхідно зайти «Центр адміністрування» та перейти у вкладку «Стилі». У розділі керування стилями ми дивимося, який стиль встановлений за замовчуванням, на це вказує зірочка після назви стилю. У прикладі встановлений лише один, базовий стиль – prosilve, але у вас їх може бути декілька.

Далі у розділі управління компонентами стилів ми переходимо до підрозділу «Шаблони» і вибираємо пункт «Змінити» поряд із нашою активною темою.


Тепер нам необхідно вибрати з списку, що цікавить нас файл під назвою «overall_footer.html »


У області редагування, що з'явилася, ми йдемо в самий низ сторінки і знаходимо рядок:

після якої видаляємо наступний код:

(CREDIT_LINE) (TRANSLATION_INFO) (DEBUG_OUTPUT)

У результаті ваш код має виглядати так:


Тепер натискаємо кнопку «Відправити» та voila, ми досягли бажаного результату – напису про копірайт більше немає.

Перейдемо до альтернативного варіанту як досягти того ж результату: коли ми вже назва потрібного файлу, ми переходимо в папку «template» теми, активованої за умовчанням, і шукаємо той самий файл з назвою «overall_footer.html».


Далі натискаємо правою кнопкою по файлу і в меню вибираємо «Відкрити за допомогою» і вибираємо улюблений вами редактор коду, в моєму випадку це Blumentals WeBuilder 2011. Після цього, так само як і у випадку з рідним редактором шаблонів phpBB, видаляємо вказаний раніше код та зберігаємо зміни. Також у програмі є дуже зручний вбудований FTP-клієнт, який дозволяє редагувати та зберігати зміни у файлах на віддаленому сервері.

Готово! Якщо ви виконали всі вказані вище дії, то у вас мало вийти прибрати напис. Вітаю!

Отже, дорогий друже, ти чомусь поставив собі на сайт PhpBB.
Можливо тому, що не читав журнал], а може тому, що тобі подобається цей движок. Однак шанс на те, що тебе не хакнуть мінімальним. Армії киддісів нишпорять в інеті у пошуках чергової жертви. Як же захиститься від примітивного
злому форуму? Спробую підкинути кілька ідей. Більшу частину ти зможеш використовувати і в інших скриптах.

Оновлення

Це за дефолтом. Оновлювати форум треба. І те, що у тебе коштує 5/10/15 (потрібне підкреслити) моди не відмовка. Просто в цьому випадку тобі слід використовувати «code changes», що дбайливо викладаються розробниками форуму у вигляді тих самих модів. Рекомендую також передплатити розсилку про нові версії форуму. Однак за всім не встежиш, та й лінь
буває, правда? Тому я пропоную тобі кілька пасивних способів захисту форуму.

Приховування версії

Нещодавно з'явилося в PhpBB і дуже допомагає проти гугл-хакерів. А якщо ти все-таки не оновлюєш форум, я думаю підправити файли simple_footer.tpl і overall_footer.tpl тобі не важко. Однак можна піти далі та написати злу фразу "Powered by PhpBB" за допомогою javascript



Невелика втрата, якщо у юзверя відключений JavaScript, хоча зовсім прибирати фразу не слід за моральними принципами. А можеш і знущатися, написавши "PhpBB 2.0.6". Коли хакер, все ж хакнувши тебе, дізнається справжню версію, то від злості він упустить тобі всю БД 😉 Можеш ще написати "Php BB"... Це не зовсім чесно, але працює!

Нестандартний стиль

Не лише прикрасить твій форум, а й трохи підвищить захист проти експлойтів, що видирають інфу з HTML-сторінки. І потім стандартний стиль створює відчуття, що адмін чи забив на форум чи ламо.

Префікс таблиць

Чому б не поставити туди чогось свого, наприклад "ExBB". До речі, це можна зробити і після встановлення шляхом редагування config.php і перейменування таблиць.

Модифікація БД

Надійний спосіб захисту від SQL-injection-Union атаки – це зміна БД. Додай до таблиці зайві порожні поля, пройдися кодом і примітивні (!) експлойти підуть лісом через розбіжність кількості полів. Або інший спосіб: перейменуй поле user_password в blahblahblah і виправте вихідники (автоматизувати цей процес можна запросто). Все, тепер при спробі роздобути хеш пароля адміну експлойт здивовано повисне 🙂 Та й не лише експлойт.

Приховування config.php

Спростить тобі життя, якщо хаксор отримає можливість читати файли на сервері завдяки include багу. Звичайно, в цьому випадку від вмісту файлу йому все одно буде мало користі, якщо ти тільки не ставиш однакові паси на все підряд.

Нормальний пароль

Як це не банально, але пароль має бути виду Sdh66rH904hG - тільки так ти зможеш не турбуватися про злом хешу. Зберігати його будеш у Password Commander. Ну, скажи, чи часто тобі доведеться його вводити? Тепер, якщо хеш все-таки буде вкрадений, то користі від нього буде менше.

Відрубати пошук

І так би не заважало. Працює він дуже глючно, жере неймовірну кількість місця в БД і жахливо знижує продуктивність. І потім є джерелом багів, того ж високогосвіту. На жаль, зробити це стандартними засобами не можна, але не дарма ж ти читаєш ][? Забирай файли, що відносяться до нього, роняй таблиці і вичисти сирці та теми. Результат - підвищення продуктивності та безпеки. Якщо ліньки розбиратися, то підкажу: усуни виклики функцій, що знаходяться у functions_search.php. За винятком останньої, звісно. А які тремтіти таблиці сам подумай .... У мене проблем не виникло.

Fake-адмінка

Справжню адмінку упрягти подалі, а у фейці видали всі запити до БД типу INSERT, UPDATE і т.п. А ще краще, замість виконання логіруй їх у файл, разом з IP та іншими корисними даними. Уявляєш, як гальмуватиме хакер, коли зміни, які вони роблять, не будуть застосовуватися? Прямо honeypot, а не форум!

Зміна алгоритму хешування

Взагалі корисний прийом. Зміни всі виклики функцій, пов'язані з хешуванням на свої, які після виклику стандартних злегка модифікують хеш. Наприклад, ac45e53bc8dc478e->ac45e53bc8da478e.
Хакер навряд чи запідозрить каверзу... Більше того, глянувши на ці два хеші він і різницю не відразу помітить...

Ну накой цей юніон винайшли, стільки він дір приніс. Так відкрий іклуд для роботи з БД і додай фільтрацію запитів з UNION!

Висновок

Чим більше ти перейменуєш файли, таблиці та поля, тим

  • Складніше буде хаксорові
  • Складніше тобі буде оновлювати форум
  • Більше помилок ти наліпиш

Так що знай міру і не хворій на параної. Перевернувши всі ці приймачі, ти відлякаєш/зупиниш і кіддіса і хаксора, якщо тільки в останнього не буде конкретної мети хакнути саме тебе. Хоча перейменування полів таблиці дає практично непробивний захист від SQL-injection, бо перед хакером, вважай, не буде сорців.

Ну що ж, почнемо давати маленькі поради щодо оптимізації та просування сайтів (форумів) на phpBB. В даному випадку ми проведемо невеликий хак, який допоможе позбутися зовнішнього посилання на вид "Powered by phpBB © ...". У цій публікації ми розглянемо 2 способи, за допомогою яких можна це зробити - прийом для phpBB 3.x.x.

Видаляємо зовнішнє посилання Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group та Російська підтримка phpBB

Перший спосіб видалення зовнішнього посилання з написом Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group . І так, найлегший спосіб – видалити за допомогою панелі адміністратора. Заходимо в адміністративну панель, переходимо до пункту меню "Стилі", зліва бачимо панель, де розташований блок у меню, нас цікавить блок "Компоненти стилів", а в ньому "Шаблони". За стандартом у запропонованому вікні ми побачимо такі: prosilver і subsilver2, хоча можуть бути й інші, якщо Ви їх встановлювали. Загалом не суть. З наведеного набору вибираємо використовуваний за замовчуванням. Натискаємо на кнопку "змінити" поряд із шаблоном. Далі з'являється вікно із пропозицією "Вибрати файл шаблону". Далі вибираємо "Файл шаблону" - "overall_footer.html". Нижче з'являється HTML редактор. Знаходимо наступний код: "Powered by phpBB 2000, 2002, 2005, 2007 phpBB Group" і просто видалімо, хоча можна встановити своє посилання і напис. "
(TRANSLATION_INFO) " (який знаходиться нижче, також можна видалити) - це код відповідає за локалізацію наприклад зовнішнє посилання з написом "Російська підтримка phpBB".

Другий спосіб видалення зовнішнього посилання з написом Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group . Цей спосіб аналогічний, але ми підключаємося до сайту з пратаколу ftp. Переходимо наступним шляхом styles/ім'я_шаблону/template/overall_footer.html. І редагуємо той самий код, який ми редагували вище. Якщо змінюватимете код, то не забудьте встановити кодування UTF - так на місці анкорів можуть з'явитися "кракозябли" (квадратики та інші незрозумілі символи).

Поділитися