Да развенчая малко митове свързани със сигурността на Wordpress

netsurfer

Well-Known Member
От: Да развенчая малко митове свързани със сигурността на Wordpress

А например да се забранят права за писане в папката с плугините и темите, а само за четене?
Или повечето хакват през фтп?
 

ktomov

Premium
Re: От: Да развенчая малко митове свързани със сигурността на Wordpress

А например да се забранят права за писане в папката с плугините и темите, а само за четене?
Или повечето хакват през фтп?
Това по принцип е удачен вариант, но за съжаление не е напълно приложим за всички инсталации. Проблем може да дойде както от самата сървърна конфигурация, така и от самият потребител.
Наистина е препоръчително да се държат възможно най-ниските възможни за правилна употреба права - 644, но как да стане това, като в този случай дори администратора в някои случаи няма да може да качи една картинка през администраторския интерфейс, защото ще получи грешка, че няма право да пише в дадена папка?

Отделно седи и факта, че някои добавки като w3 total cache искат 777 (755 при някои инсталации (за сървърно ниво на конфигурация)) за да си създаде необходимите файлове. Голяма част от потребителите просто слагат 777, а в последствие забравят да го променят на препоръчителното 644/755 и т.н.

Извода от това е, че не трябва да си бърникате инсталацията на пиян акъл или да помните много добре какво сте правили в последните 30 минути. Съветите написани по-рано в темата все още са в сила ;)
 

mantaman

Well-Known Member
От: Да развенчая малко митове свързани със сигурността на Wordpress

Томов аз кондома съм го сложил като не ползвам УП за важни неща - не че като ми падна сателита средата на декември и пострада в серпа не ме е яд ама пак е по безболезнено от това да беше паднал онлайн магазина. Дето се вика пичите въшки са за предпочитане пред трипера :)
 

ktomov

Premium
Re: От: Да развенчая малко митове свързани със сигурността на Wordpress

Томов аз кондома съм го сложил като не ползвам УП за важни неща - не че като ми падна сателита средата на декември и пострада в серпа не ме е яд ама пак е по безболезнено от това да беше паднал онлайн магазина. Дето се вика пичите въшки са за предпочитане пред трипера :)
Хахахаха. Това беше добро, тук определено ме удари под кръста и в момента не знам как да изскоча с реплика ;) Нищо и утре е ден :Д

П.П. Имаш грешка в линка за новините в подписа ти, съмнява ме да искаш да линкваш към домейн.име// ;) Предполагам не е кой знае колко фрапантно от СЕО гледна точка, ама да си кажа :) Ей по такъв начин с елементарна грешка се получават доста голяма част от дупките ;)
 
Последно редактирано:

ktomov

Premium
Бях решил да не пиша вече подобни теми, защото почнах много да се дразня на неблагодарната част от форума, но въпреки това трябва да допълня тази тема, защото дупката не е малка и този път е в ядрото.

Не е нова, открита е в края на декември, но сега почнаха масово да се възползват от нея. Всички wordpress инсталации включително и най-новата 3.3.1. Става дума за експлойта който е посочен ето тук http://www.exploit-db.com/exploits/18417/

Има два варианта да се предпазите от него. Не е нов, а и до скоро мен лично не ме интересуваше, защото по-голямата част от инсталациите ми имаха .htaccess в папката wp-admin за да се изисква още един потребител/парола, преди да има достъп до wp-admin.

Проблема дойде от това, че един от сайтовете ми използва функции от административната част и съответно ползването на .htaccess вече е невъзможно, защото нито един потребител не може да достъпи самият сайт ако не въведе потребител/парола.

Решението на горният проблем е да се изтрият два файла от папката wp-admin - файловете които се експлойтват:
1) setup-config.php
2) install.php


И двата файла са абсолютно ненужни при завършена wordpress инсталация. Както се подразбира от имената на файловете, те се ползват за инсталацията и създаването на wp-config.php файла.

От два дни ги няма по моите сайтове и не съм забелязал проблем във функционирането на сайта.

Съветвам всички да ги изтриете от вашата инсталация за да си нямате проблеми!

Имайте предвид, че при ъпгрейд на wordpress към по-нова версия, тези файлове отново ще се появят и ако няма фикс от страна на wordpress, ще е най-добре да ги изтриете отново.
 

harkon

New Member
От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

Решението на горният проблем е да се изтрият два файла от папката wp-admin - файловете които се експлойтват:
1) setup-config.php
2) install.php
Премахнах ги. Вече отговаряш за всякакви бъгове и проблеми по моите WP инсталации с живота си! :mrgreen:
 

ktomov

Premium
Re: От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

Премахнах ги. Вече отговаряш за всякакви бъгове и проблеми по моите WP инсталации с живота си! :mrgreen:
Код:
[[email protected] ------]$ find . | xargs grep '/install.php'
./wp-includes/load.php:         $link = wp_guess_url() . '/wp-admin/install.php';
./wp-admin/includes/upgrade.php:if ( file_exists(WP_CONTENT_DIR . '/install.php') )
./wp-admin/includes/upgrade.php:        require (WP_CONTENT_DIR . '/install.php');
Този файл се извиква от два други, както се вижда по-горе. В първият - wp-includes/load.php той се намира в тази функция
Код:
function wp_not_installed() {
	if ( is_multisite() ) {
		if ( ! is_blog_installed() && ! defined( 'WP_INSTALLING' ) )
			wp_die( __( 'The site you have requested is not installed properly. Please contact the system administrator.' ) );
	} elseif ( ! is_blog_installed() && false === strpos( $_SERVER['PHP_SELF'], 'install.php' ) && !defined( 'WP_INSTALLING' ) ) {

		$link = wp_guess_url() . '/wp-admin/install.php';

		require( ABSPATH . WPINC . '/kses.php' );
		require( ABSPATH . WPINC . '/pluggable.php' );
		require( ABSPATH . WPINC . '/formatting.php' );
		wp_redirect( $link );
		die();
	}
}
Това е функцията отговаряща за действията, ако в wordpress не е инсталиран. А при вече инсталиран wordpress горната функция няма за какво да се ползва.

Във втория файл wp-admin/includes/upgrade.php, install.php се съдържа в следващите редове:
Код:
/** Include user install customize script. */
if ( file_exists(WP_CONTENT_DIR . '/install.php') )
	require (WP_CONTENT_DIR . '/install.php');
Тук пък се проверява за редактиран install.php, а не за оригиналния.

Няма от какво да се притесняваш.
 

harkon

New Member
От: Да развенчая малко митове свързани със сигурността на Wordpress

Не се притеснявам - всичко е бекъпнато.

Я кажи колко да сложа, като default permission на htaccess-a. 666?
 

ktomov

Premium
Ако не мислиш да го редактираш (т.е. да променяш пермалинк структурата) - най-удачно е 644. Така никой няма да може да пише в него.
 

voic4e

New Member
От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

Проблема дойде от това, че един от сайтовете ми използва функции от административната част и съответно ползването на .htaccess вече е невъзможно, защото нито един потребител не може да достъпи самият сайт ако не въведе потребител/парола.
Аз преди време се отнасях доста рестриктивно и ограничавах достъпа до някои администраторски неща, в това число и SSH само през виртуална частна мрежа. Ако трябва да направя връзка между два сайта, най-вероятно ще го направя чрез VPN. (но едва ли хостингите позволяват такава екстра).


Решението на горният проблем е да се изтрият два файла от папката wp-admin - файловете които се експлойтват:
1) setup-config.php
2) install.php


И двата файла са абсолютно ненужни при завършена wordpress инсталация.
Аз като инсталирам примерно CMS Made Simple, трия папка install, логично е и при други системи да се прави това, не да си стои... Още по-добра идея според мен е файлова с пароли и др. важна информация от сорта на config.php да са извън Document Root Изобщо нещата са комплексни и има много фактори, но това с install.php е голям пропуск според мен...
 

snux

Well-Known Member
От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

Решението на горният проблем е да се изтрият два файла от папката wp-admin - файловете които се експлойтват:
1) setup-config.php
2) install.php


И двата файла са абсолютно ненужни при завършена wordpress инсталация. Както се подразбира от имената на файловете, те се ползват за инсталацията и създаването на wp-config.php файла.
Забелязах, че има и install-helper.php. Нужен ли е или може той да мине под ножа :)
 

ktomov

Premium
Re: От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

Забелязах, че има и install-helper.php. Нужен ли е или може той да мине под ножа :)
Нужен е да. Той се ползва при инсталирането на добавки.
 

docenta

New Member
От: Да развенчая малко митове свързани със сигурността на Wordpress

Ако няма да променяш .htaccess-а още по-добре е да му сложиш права : 444
 

voic4e

New Member
От: Да развенчая малко митове свързани със сигурността на Wordpress

Винаги съм се чудил, защо аджеба файловете са с права за четене и на всички останали (o+r). Ако не upload-ваш файлове с код (PHP, JS, .htaccess и др.) през уеб-базиран интерфейс, а ги качваш през FTP-то, е най-логично правата на файловете да са 640, собственик - потребителя с който влизаш през FTP, група - такава, в която членува само потребителя на уеб-сървъра.

Ебаси! :shock: :? :evil:
 

ktomov

Premium
Защото може да имаш друго приложение, което да чете от тези файлове, а да не искаш да го стартираш с права на апачето? :)
 

ExtazY

New Member
От: Да развенчая малко митове свързани със сигурността на Wordpress

Тази система е написана много лошо поне за потребителите да бяха направили да не ползва папката wp-admin като се публикува нов пост
 

voic4e

New Member
От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

Първо ситуацията, която разисквам е следната: създавам група wp_site и в нея поначало слагам само apache. Потребителя с който редактирам файловете, е примерно wp_admin. И така директорията с WordPress получава собственик wp_admin и група wp_site, на всички файлове с код слагам права 640 и готово.


Защото може да имаш друго приложение, което да чете от тези файлове, а да не искаш да го стартираш с права на апачето? :)

Съмнявам се! Едва ли имам такова приложение и едва ли работата му е да чете тези файлове - това е PHP код, който се изпълнява от интерпретатор, а основния смисъл е да бъдат изпълнени при заявка от сървъра. Ако искам и друго приложение да чете от тях, ще добавя неговия потребител в групата (в нея вече ще членуват apache и приложението, никой друг) и нещата ще си дойдат на мястото.


Но не се сещам какво ще да е това приложение и за какво му е да чете тези файлове. Освен някой архивиращ скрипт или нещо от сорта. Вярно, че може да има ситуация, в която нещо друго да ги извиква, но това се решава лесно - добавяш го във въпросната група wp_site и той си получава права за четене.


644 е напълно излишно според мен.
 

Barmolino

New Member
От: Да развенчая малко митове свързани със сигурността на Wordpress

Интересна Тема доста.
Аз затова отдавна предпочитам сам да синапиша темичката.
Чист HTML,CSS + най-необходимите функции за дадения сайт по който работя.
Защо трябва да се ровиш в десетки понякога стотици страници с код като можеш сам да си направиш Великолепна тема с не повече от 10 php странички в които да е включено всичко нужно за да работи дадения сайт.
Поздравления на автора.
Искам да добавя само един коментар,че WordPress е достатъчно сигурен стига да си го настроиш правилно.
WordPress e eдна от най-леките системи за Управление която ползвам повече от 6 години и имам над 40+ сайта изработени с тази система именно поради това,че с инсталира бързо и лесно.
За да стартираш един сайт с тема е нужно малко четене и практика.
Какво има във файоловете на една Тема за WordPress
5-6 важни php страници index.php,header.php,footer.php,page,php,single.php,archives.php,functions.php ето с това можеш да пуснеш сайта си като кодовете вътре са елементарни не хиляди безмислени и тежки функции като на голяма част от другите CMS systems.
Прост пример за да извикаш целия си сайт в index.php е нужно да поставиш 4 реда код
<?php get_header();?>
<?php get_sidebar();?>
<?php include(TEMPLATEPATH. '/includes/homepage.php'); ?>
<?php get_footer();?>
това е само прост пример.
Ако знаеш малко HTML,CSS много Бързо и лесно можеш да построиш твоя тема със фукнциите които искаш или са нужни за да работи сайта.
Като всяка Функция е подробно описана но на Английски естествено в WordPress Codex
Лично аз преди години започнах да се самообучавам в google.com като първоначално започнах ест с Adobe Dreamweaver не помня коя версия точно но ми се стори с твърде много опции менюта,бутони и какво ли още не,може би защото не бях толкова добър тогава с Английския след това преминах на една тъкмо навлизаща CMS e107 предполагам,че голяма част от вас са ползвали и тази система понеже имаше замесни и Българи доста там.
Накрая преминах от Photoshop PSD to WordPress Themes Convert.
Сега за около 10-ина мин. правя готова работеща тема за WordPress с най-важните неща за един уебсайт,като ползвам само Notepad++ и малко Firebug за Firefox.
Надявам се да не съм ви досадил с моя коментар,ако има желаещи мога да помагам.
Не смея да твърдя,че съм WordPress Expert,но работя в Тази сфера повече от 5 години основно с WordPress - така,че ако има желаещи винаги на драго сърце ще се опитам да помогна.
Лека и Успешна Седмица и честит 1-ви април ;)
 

voic4e

New Member
От: Да развенчая малко митове свързани със сигурността на Wordpress

Браво! :) Явно темите на Wordpress са повече от просто дизайн, т.е. има и код. Защото CMS-а, който ползвам аз, в шаблоните има само HTML и маркер-етикети, т.е. парсер ги пълни с информация, като заменя маркерите със съдържание. Като цяло PHP код в темите няма, а самите теми се съхраняват в БД. Явно wordpress е по-особен :)
 

Горе