Security WordCamp Kyiv 2016

Preview:

Citation preview

САМБО дляWordPress https://wphost.me

Привіт!Мене звуть - Дмитро

І я алкоголік люблю WordPress.

Додавайте у друзі:fb.me/azzepis

Привіт!

Коли хтось сказав

«небезпека»...

16,600,000

Атак за 7 днів, з них 2,036,508 з однієї IP адреси, направлені проти 30+ тис.

сайтів.Статистика Wordfence https://goo.gl/ktyQBa

Meet Ivan from St. Petersburg, Russia

і з чим його їдять…..

Ща за звір - OpenSource

6,611,909Атак за 16 годин, направлених проти 70+ тис.

сайтів.Статистика Wordfence https://goo.gl/nYzZrR

Meet Svitogor from Ukraine

Робота сайту 24/7

SEO – результати в google/yandex

Цей сайт може нашкодити вашому комп'ютеру

Цей сайт може нашкодити вашому комп'ютеру

Цей сайт може нашкодити вашому комп'ютеру

Екран смерті :)

Яке мені діло?[root@server ~]# cat /var/log/exim/main.log | grep "steam“

2016-09-07 00:27:10 H=smtp01.steampowered.com [208.64.202.37] F=<noreply@steampowered.com> rejected RCPT <admin@***>: rejected because 208.64.202.37 is in a black list at dnsbl.sorbs.net\nCurrently Sending Spam See: http://www.sorbs.net/lookup.shtml?208.64.202.37

2016-09-07 22:58:12 H=smtp03.steampowered.com [208.64.202.39] F=<noreply@steampowered.com> rejected RCPT <admin@***>: rejected because 208.64.202.39 is in a black list at dnsbl.sorbs.net\nCurrently Sending Spam See: http://www.sorbs.net/lookup.shtml?208.64.202.39

Ecommerce – доступність сайту 24/7 SEO – результати в google/yandex Репутація домену , IP Доставка листів з корпоративних

скриньок Витрати – оплата дод.ресурсів,

дод.робіт (хостинг, чистка, відновлення даних…..)

Особисті дані (напр. Дані клієнтів)

Яке мені діло?

https://wordpress.org/showcase/

ЯК ЛАМАЮТЬ ЖИТТЯ )

Чому саме WP?

«Дірки» у плагінах + слабкий пароль > 70% проблем

ЯК?

Основні причини

Ви у списку

Випадково ) Ви - ціль

Ваш логин admin и пароль Qwerty123

Тепер слухай уважно!

Плагін Всього атак

Сайтів атаковано

filedownload 46037 21373ajax-store-locator-wordpress 44123 20558plugin-newsletter 38227 18351pica-photo-gallery 37795 18126simple-download-button-shortcode 37684 18066wp-filemanager 37457 17236tinymce-thumbnail-gallery 37270 17888dukapress 36697 17495XXXXXX* 36303 17358db-backup 34966 16627

Проблеми з плагінами

https://wordpress.org/plugins/slug

Преміум сегмент не панацея

Регулярно оновлюйтесь!

Ваш логін admin и пароль Qwerty123

Якщо як пароль використатислова «Чак Норіс», отримаєтеповідомлення, що пароль занадто МІЦНИЙ…

10 цифр, за 0,001

секПароль з 10 символів (літери + цифри) може

бути підібрано приблизно за 1 добу.

Суперкомп’ютер підбере пароль, що складається з

Цікава статистика https://www.betterbuys.com/estimating-password-cracking-times/

Як не втрапити у пастку?

Проблеми з Шаблонами

Шаблон Всього атак Сайтів

infocus 83095 20587acento 43898 20481XXXXX* 43613 20340jarida 43451 20292markant 43307 20259yakimabait 43291 20300tess 43015 20110felis 42854 20030ypo-theme 42671 19995persuasion 41527 20316echelon 41398 20264modular 41322 20263awake 41123 20145fusion 41012 20132method 40908 20101myriad 40702 20007elegance 40677 19976dejavu 40551 19997construct 40278 19882epic 37141 17850linenity 36656 17619parallelus-salutation 36586 17623trinity 36295 17503antioch 36180 17322urbancity 36118 17416parallelus-mingle 35740 17179authentic 35683 17073churchope 35532 17040lote 35445 17027

Преміум сегмент не панацея

Преміум сегмент не панацея

Жодних правок у ядрі!

Ядро

Тільки код, написаний Чаком Норісом, має одну версію…А той, хто сповістить про баг, не доживає до світанку…

Кожен раз, коли ви редагуєте файли

ядра, вмирає одне кошеня…

Оновлюйтесь до «мінорних» версій, намагайтеся оновлюватися до «мажорних»

П.С. Бекап..…

Жоден сайт не захищений на 100%

Безпека сайту - це НЕ продукт, це процес

shut up and dance

Х+1 метод захисту для усіх і кожного

Про всякий випадок…..Мене звуть, Дмитро

Додавайте у друзі:fb.me/azzepis

ТРИ КИТИОновленняОдна з найбільших «дірок» у безпеці WP – це застаріле ПЗ (ядро, плагіни, теми)Оновлюйтесь хоча б до мінорних версій ядра!

ПароліУсі знають, що потрібно використовувати складні паролі. Це ускладнює підбір.

БекапЩе раз бекап, і потім все це забекапити разок…..

ВИКОРИСТОВУЮ- Переглянути активні плагіни і

половину вимкнути - З тих, що залишились

активними, обрати такі, якими будете користуватись, інші вимкнути

- З тих, що вціліли, залишити лише ті, без яких сайт не буде працювати взагалі…

ПЛАГІНИНЕ ВИКОРИСТОВУЮУсі плагіни, що Ви не використовуєте, необхідно видалити з серверу/сайту.

П.С. Обновлення – також не забуваємо..!

Паролє…..Паролє…..

Пароль та сторінка входуПроблема - brute force, рішення:

✖ Змінити адресу входу, реєстрації, відновлення паролів.

✖ Складний пароль✖ Обмеження по IP✖ Авторизація по email

Пароль та сторінка входу

Рекомендую:✖ Не використовувати логін admin (не надавати роль адміна

кому заманеться)✖ Плагін https://wordpress.org/plugins/better-wp-security/✖ Плагін https://wordpress.org/plugins/rename-wp-login/✖ Плагін https://wordpress.org/plugins/wp-email-login/✖ Приховати імена користувачів в адресах сторінок

https://wordpress.org/plugins/edit-author-slug/✖ В якості паролів можна використати будь-яку фразу,

напр., «Ласкаво просимо до WordPress!» . Використовувати слова «Чак» та «Норіс», але тіьльки по одному!

Приклади паролівpassworddefaultadminpassword1dima1234p@ssw0rdg0ldf1shcrabcrabstopstoppasspassqwerty12345asdfgh1

?L)sn7`@Fdy8(F!#

)fuTrm [_H9&vx

v7}bcKuD~u"98A8b

TSxs4PV*Yw@/

3R?#Du_nCBed

WtGfhjkmXfrfYjhscf

І це не дурня! )) Додай /?author=1

І це не дурня! )) Додай /?author=1

Зберігайте копію шаблона, редагуйте через дочірні теми.

І на десертКорисні хаки

Ховаємось, захищаємось

#.htaccess<files readme.html> order allow,deny deny from all </files>

// functions.phpfunction wpua_remove_version() { return '';}add_filter('the_generator', 'wpua_remove_version');

https://wordpress.org/plugins/wp-hide-security-enhancer/

/wp-content/uploads/.htaccess

<Files *.php>deny from all</Files>

У цій директорії не має бути подібних файлів

Будьте у курсі…..

- Додайте сайт у консоль google search

- Переглядайте час від часу зміст файлів

robots.txt , .htaccess, sitemap.xml

Редактор кодів, встановлення «модів»

define( 'DISALLOW_FILE_EDIT', true );

define( 'DISALLOW_FILE_MODS', true );

Одне з двох…

wp-config.php

<files wp-config.php>order allow,denydeny from all</files>

Чи на рівень вище…..

Одне з двох чи два ))…

Сторінка авторизації

<Files wp-login.php>order deny,allowDeny from all# только мой IP адресallow from 102.108.5.1</files>

Адмінка# Block access to wp-admin.order deny,allowallow from x.x.x.x deny from all# Allow access to wp-admin/admin-ajax.php<Files admin-ajax.php> Order allow,deny Allow from all Satisfy any</Files>

Адмінка

404 – Indexes = Love!GET /wp-admin/admin-ajax.php?action=revslider_show_image&img=../wp-config.php

inurl:/wp-content/plugins/revslider//wp-content/force-download.php?file=../wp-config.php HTTP/1.1/wp-content/plugins/ajax-store-locator-wordpress_0/sl_file_download.php?download_file=../../../wp-config.php HTTP/1.1/wp-content/plugins/filedownload/download.php/?path=../../../wp-config.php HTTP/1.1/wp-content/plugins/google-mp3-audio-player/direct_download.php?file=../../../wp-config.php HTTP/1.1/wp-content/plugins/pica-photo-gallery/picadownload.php?imgname=../../../wp-config.php HTTP/1.1/wp-content/plugins/plugin-newsletter/preview.php?data=../../../../wp-config.php HTTP/1.1/wp-content/plugins/simple-download-button-shortcode/simple-download-button_dl.php?file=../../../../wp-config.php HTTP/1.1/wp-content/plugins/tinymce-thumbnail-gallery/php/download-image.php?href=../../../../wp-config.php HTTP/1.1/wp-content/themes/MichaelCanthony/download.php?file=../../../wp-config.php HTTP/1.1/wp-content/themes/Newspapertimes_1/download.php?filename=../../../wp-config.php HTTP/1.1/wp-content/themes/SMWF/inc/download.php?file=../../../../wp-config.php HTTP/1.1/wp-content/themes/TheLoft/download.php?file=../../../wp-config.php HTTP/1.1/wp-content/themes/acento/includes/view-pdf.php?download=1&file=../../../../wp-config.php HTTP/1.1/wp-content/themes/churchope/lib/downloadlink.php?file=../../../../wp-config.php HTTP/1.1/wp-content/themes/corporate_works/downloader.php?file_download=../../../wp-config.php HTTP/1.1/wp-content/themes/felis/download.php?file=../../../wp-config.php HTTP/1.1/wp-content/themes/jarida/download.php?uri=../../../wp-config.php HTTP/1.1/wp-content/themes/lote27/download.php?download=../../../wp-config.php HTTP/1.1/wp-content/themes/markant/download.php?file=../../../wp-config.php HTTP/1.1/wp-content/themes/parallelus-mingle/framework/utilities/download/getfile.php?file=../../../../../../wp-config.php HTTP/1.1/wp-content/themes/parallelus-salutation/framework/utilities/download/getfile.php?file=../../../../../../wp-config.php HTTP/1.1/wp-content/themes/tess/download.php?file=../../../wp-config.php HTTP/1.1/wp-content/themes/yakimabait/download.php?file=../../../wp-config.php HTTP/1.1/wp-content/themes/ypo-theme/download.php?download=../../../wp-config.php HTTP/1.1

Попереджуйте

https://perishablepress.com/blackhole-bad-bots/

Інтерфейс xml-rpc

Вирубити )

CDN/Firewall

Ваш сайт

https://www.cloudflare.com/

Ще раз бекап!

«3 дня тому»На вчора «Тиждень

тому»

- Робити бекап- Додати сайт у гугл-

консоль- Оновлювати ядро- Оновлювати плагіни- Видалити неактивні

плагіни- Оновлювати

шаблони- Використовувати

актуальну версію php

- Ставити коректні права на директорії/файли

- Не використовувати логін admin

- Не використовувати префікс таблиць wp_

ЧЕКЛІСТ- Використовувати

складний пароль- Захист від підбору

паролів- Обмежити доступ до

адмін-панелі- Використовувати

плагін «захисту»- За можливості,

використовувати https, sftp

- Слідкувати за безпекою свого локального комп’ютера

- Робити бекап бекапу )))

- Хостинг с дод.захистом

Давай, до побачення…

Плагіни захисту- Ithemes Security- Wordfencehttps://wordpress.org/plugins/search.php?type=term&q=firewall

П.С. В першому є чудова опція, блокувати усіх, хто авторизуєтся під admin

КориснеСтатті по темі http://bit.ly/wpdefence

Ще приклади кодуhttps://codex.wordpress.org/Brute_Force_Attacks

Дякую!Нагадаю, мене звати

Дмитро Кондрюк )Я на фейсбук:fb.me/azzepis

info@wphost.me

Трошки оплисків не завадить )

Recommended