security wordcamp kyiv 2016

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

Upload: dmitry-kondryuk

Post on 21-Apr-2017

167 views

Category:

Internet


0 download

TRANSCRIPT

Page 1: Security WordCamp Kyiv 2016

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

Page 2: Security WordCamp Kyiv 2016

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

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

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

Page 3: Security WordCamp Kyiv 2016

Привіт!

Page 4: Security WordCamp Kyiv 2016

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

Page 5: Security WordCamp Kyiv 2016

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

Page 6: Security WordCamp Kyiv 2016

16,600,000

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

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

Meet Ivan from St. Petersburg, Russia

Page 7: Security WordCamp Kyiv 2016

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

Ща за звір - OpenSource

Page 8: Security WordCamp Kyiv 2016

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

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

Meet Svitogor from Ukraine

Page 9: Security WordCamp Kyiv 2016

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

Page 10: Security WordCamp Kyiv 2016

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

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

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

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

Page 11: Security WordCamp Kyiv 2016

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

Page 12: Security WordCamp Kyiv 2016

Яке мені діло?[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=<[email protected]> 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=<[email protected]> 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

Page 13: Security WordCamp Kyiv 2016

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

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

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

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

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

Page 14: Security WordCamp Kyiv 2016

https://wordpress.org/showcase/

Page 15: Security WordCamp Kyiv 2016

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

Page 16: Security WordCamp Kyiv 2016

Чому саме WP?

Page 17: Security WordCamp Kyiv 2016

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

ЯК?

Page 18: Security WordCamp Kyiv 2016

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

Ви у списку

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

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

Page 19: Security WordCamp Kyiv 2016

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

Page 20: Security WordCamp Kyiv 2016

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

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

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

Page 21: Security WordCamp Kyiv 2016

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

Page 22: Security WordCamp Kyiv 2016

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

Page 23: Security WordCamp Kyiv 2016

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

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

Page 24: Security WordCamp Kyiv 2016

10 цифр, за 0,001

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

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

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

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

Page 25: Security WordCamp Kyiv 2016

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

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

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

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

Page 26: Security WordCamp Kyiv 2016

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

Page 27: Security WordCamp Kyiv 2016

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

Page 28: Security WordCamp Kyiv 2016

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

Ядро

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

Page 29: Security WordCamp Kyiv 2016

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

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

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

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

Page 30: Security WordCamp Kyiv 2016

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

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

Page 31: Security WordCamp Kyiv 2016

shut up and dance

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

Page 32: Security WordCamp Kyiv 2016

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

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

Page 33: Security WordCamp Kyiv 2016

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

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

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

Page 34: Security WordCamp Kyiv 2016

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

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

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

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

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

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

Page 35: Security WordCamp Kyiv 2016

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

Page 36: Security WordCamp Kyiv 2016

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

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

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

Page 37: Security WordCamp Kyiv 2016

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

Рекомендую:✖ Не використовувати логін 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!» . Використовувати слова «Чак» та «Норіс», але тіьльки по одному!

Page 38: Security WordCamp Kyiv 2016

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

?L)sn7`@Fdy8(F!#

)fuTrm [_H9&vx

v7}bcKuD~u"98A8b

TSxs4PV*Yw@/

3R?#Du_nCBed

WtGfhjkmXfrfYjhscf

Page 39: Security WordCamp Kyiv 2016

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

Page 40: Security WordCamp Kyiv 2016

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

Page 41: Security WordCamp Kyiv 2016

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

Page 42: Security WordCamp Kyiv 2016

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

Page 43: Security WordCamp Kyiv 2016

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

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

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

Page 44: Security WordCamp Kyiv 2016

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

Page 45: Security WordCamp Kyiv 2016

/wp-content/uploads/.htaccess

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

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

Page 46: Security WordCamp Kyiv 2016

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

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

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

robots.txt , .htaccess, sitemap.xml

Page 47: Security WordCamp Kyiv 2016

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

define( 'DISALLOW_FILE_EDIT', true );

define( 'DISALLOW_FILE_MODS', true );

Одне з двох…

Page 48: Security WordCamp Kyiv 2016

wp-config.php

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

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

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

Page 49: Security WordCamp Kyiv 2016

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

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

Page 50: Security WordCamp Kyiv 2016

Адмінка# 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>

Page 51: Security WordCamp Kyiv 2016

Адмінка

Page 52: Security WordCamp Kyiv 2016

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

Page 53: Security WordCamp Kyiv 2016

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

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

Page 54: Security WordCamp Kyiv 2016

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

Вирубити )

Page 55: Security WordCamp Kyiv 2016

CDN/Firewall

Ваш сайт

https://www.cloudflare.com/

Page 56: Security WordCamp Kyiv 2016

Ще раз бекап!

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

тому»

Page 57: Security WordCamp Kyiv 2016

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Page 58: Security WordCamp Kyiv 2016

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

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

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

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

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

Page 59: Security WordCamp Kyiv 2016

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

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

[email protected]

Page 60: Security WordCamp Kyiv 2016

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