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

Дискусията в 'Wordpress Форум' стартирана от ktomov, Февру 20, 2012.

  1. netsurfer

    netsurfer Well-Known Member

    Рег.:
    Февру 3, 2008
    Съобщения:
    2,602
    Харесвания:
    94
    Точки:
    48
    Място:
    Sofia City
    От: Да развенчая малко митове свързани със сигурността на Wordpress

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

    ktomov Premium

    Рег.:
    Ян 22, 2010
    Съобщения:
    2,707
    Харесвания:
    513
    Точки:
    113
    Re: От: Да развенчая малко митове свързани със сигурността на Wordpress

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

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

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

    mantaman Well-Known Member

    Рег.:
    Ноем 25, 2009
    Съобщения:
    4,290
    Харесвания:
    358
    Точки:
    83
    Място:
    London
    От: Да развенчая малко митове свързани със сигурността на Wordpress

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

    ktomov Premium

    Рег.:
    Ян 22, 2010
    Съобщения:
    2,707
    Харесвания:
    513
    Точки:
    113
    Re: От: Да развенчая малко митове свързани със сигурността на Wordpress

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

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

    ktomov Premium

    Рег.:
    Ян 22, 2010
    Съобщения:
    2,707
    Харесвания:
    513
    Точки:
    113
    Бях решил да не пиша вече подобни теми, защото почнах много да се дразня на неблагодарната част от форума, но въпреки това трябва да допълня тази тема, защото дупката не е малка и този път е в ядрото.

    Не е нова, открита е в края на декември, но сега почнаха масово да се възползват от нея. Всички 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, ще е най-добре да ги изтриете отново.
     
    coolice харесва това.
  6. harkon

    harkon New Member

    Рег.:
    Февру 16, 2009
    Съобщения:
    3,436
    Харесвания:
    279
    Точки:
    0
    Професия:
    PHP programmer
    Място:
    localhost:8080
    От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

    Премахнах ги. Вече отговаряш за всякакви бъгове и проблеми по моите WP инсталации с живота си! :mrgreen:
     
  7. ktomov

    ktomov Premium

    Рег.:
    Ян 22, 2010
    Съобщения:
    2,707
    Харесвания:
    513
    Точки:
    113
    Re: От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

    Код:
    [-------@vps ------]$ 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, а не за оригиналния.

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

    harkon New Member

    Рег.:
    Февру 16, 2009
    Съобщения:
    3,436
    Харесвания:
    279
    Точки:
    0
    Професия:
    PHP programmer
    Място:
    localhost:8080
    От: Да развенчая малко митове свързани със сигурността на Wordpress

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

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

    ktomov Premium

    Рег.:
    Ян 22, 2010
    Съобщения:
    2,707
    Харесвания:
    513
    Точки:
    113
    Ако не мислиш да го редактираш (т.е. да променяш пермалинк структурата) - най-удачно е 644. Така никой няма да може да пише в него.
     
    harkon харесва това.
  10. voic4e

    voic4e New Member

    Рег.:
    Ноем 16, 2007
    Съобщения:
    661
    Харесвания:
    30
    Точки:
    0
    Професия:
    Freelance web developer
    Място:
    Пловдив/Видин
    От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

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


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

    Noke Well-Known Member

    Рег.:
    Септ 15, 2008
    Съобщения:
    3,551
    Харесвания:
    489
    Точки:
    83
    От: Да развенчая малко митове свързани със сигурността на Wordpress

    За тия дето нарушават т. нар. Golden Rule of WordPress Deployments:

    [​IMG]
     
  12. snux

    snux Well-Known Member

    Рег.:
    Февру 22, 2009
    Съобщения:
    1,460
    Харесвания:
    100
    Точки:
    63
    От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

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

    ktomov Premium

    Рег.:
    Ян 22, 2010
    Съобщения:
    2,707
    Харесвания:
    513
    Точки:
    113
    Re: От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

    Нужен е да. Той се ползва при инсталирането на добавки.
     
  14. docenta

    docenta New Member

    Рег.:
    Ноем 28, 2010
    Съобщения:
    262
    Харесвания:
    15
    Точки:
    0
    Място:
    Sevlievo, Bulgaria
    От: Да развенчая малко митове свързани със сигурността на Wordpress

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

    voic4e New Member

    Рег.:
    Ноем 16, 2007
    Съобщения:
    661
    Харесвания:
    30
    Точки:
    0
    Професия:
    Freelance web developer
    Място:
    Пловдив/Видин
    От: Да развенчая малко митове свързани със сигурността на Wordpress

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

    Ебаси! :shock: :? :evil:
     
  16. ktomov

    ktomov Premium

    Рег.:
    Ян 22, 2010
    Съобщения:
    2,707
    Харесвания:
    513
    Точки:
    113
    Защото може да имаш друго приложение, което да чете от тези файлове, а да не искаш да го стартираш с права на апачето? :)
     
  17. ExtazY

    ExtazY New Member

    Рег.:
    Март 16, 2012
    Съобщения:
    22
    Харесвания:
    2
    Точки:
    0
    От: Да развенчая малко митове свързани със сигурността на Wordpress

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

    voic4e New Member

    Рег.:
    Ноем 16, 2007
    Съобщения:
    661
    Харесвания:
    30
    Точки:
    0
    Професия:
    Freelance web developer
    Място:
    Пловдив/Видин
    От: Re: Да развенчая малко митове свързани със сигурността на Wordpress

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



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


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


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

    Barmolino New Member

    Рег.:
    Дек 5, 2007
    Съобщения:
    13
    Харесвания:
    2
    Точки:
    0
    Професия:
    CEO at DIRWNS - Web Development Web Design Search
    Място:
    London
    От: Да развенчая малко митове свързани със сигурността на 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-ви април ;)
     
    coolice и Вискяр Градинаров харесват това.
  20. voic4e

    voic4e New Member

    Рег.:
    Ноем 16, 2007
    Съобщения:
    661
    Харесвания:
    30
    Точки:
    0
    Професия:
    Freelance web developer
    Място:
    Пловдив/Видин
    От: Да развенчая малко митове свързани със сигурността на Wordpress

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

Сподели страницата

  1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies.
    Dismiss Notice