Bezpieczeństwo stron opartych na popularnych CMSach
1. BEZPIECZEŃSTWO STRON OPARTYCH NA
POPULARNYCH SYSTEMACH ZARZĄDZANIA TREŚCIĄ
KONFERENCJA „BEZPIECZNIE W SIECI”
PPNT GDYNIA – 4.10.2018
Katarzyna Javaheri-Szpak
specjalista ds. administracji i bezpieczeństwa systemu WordPress
3. Szacuje się, że aż 40% wszystkich
cyberataków kierowanych jest do
sektora tzw. małego biznesu,
a ogólnoświatowy koszt ataków to
około 600 miliardów dolarów rocznie.
źródło: Economic Impact of Cybercrime— No Slowing Down, McAfee, luty 2018, strona 6
4. Ruch, który generuje sieć internetowa
tylko w 48% to działalność człowieka.
Pozostałe 52% to działalność robotów,
botów, automatów.
źródło: Raport CERT Orange Polska za rok 2017, strona 27
5. 6 na 10 wiadomości e-mail
w skali światowej
to SPAM
źródło: Raport CERT Orange Polska za rok 2017, strona 60
6. CZYM JEST CMS?
CMS (Content Management System) czyli system zarządzania treścią
• około 53% wszystkich stron internetowych używa jakiegoś CMSa
• najczęściej CMSy napisane są w językach: PHP, Python, Java
• korzystają z baz danych – w przeważającej większości z MySQL/MariaDB
źródło: w3techs.com
8. • są bezpłatne i łatwe w instalacji
• tysiące darmowych lub
przystępnych cenowo dodatków
(motywy, wtyczki, komponenty)
• intuicyjne funkcjonalności
• darmowe wsparcie techniczne
od innych użytkowników (fora,
grupy na Facebooku)
• kod jest znany i dostępny
• kompleksowe zabezpieczenie
jest praktycznie niemożliwe
• konieczność serwisowania stron
• wtyczki i motywy może
wydawać każdy, także
cyberprzestępca lub osoby
z małym doświadczeniem
PLUSY I MINUSY OPEN SOURCE’OWYCH
SYSTEMÓW ZARZĄDZANIA TREŚCIĄ
9. WORDPRESS
Najbardziej popularny CMS
60% z wszystkich CMSów*
32% wszystkich stron*
Najczęściej atakowany CMS
ponad 80% wszystkich zarejestrowanych
ataków na sucuri.net
*źródło: w3techs.com
11. 71
47 44
19
14
6
backdoor malware spam SEO mailer hacktool dropper
% ataków
źródło: Sucuri Hacked Website Report 2017
NAJPOPULARNIEJSZE RODZAJE ATAKÓW
NA STRONY INTERNETOWE 2017
12. Luka montowana przez cyberprzestępcę do późniejszego wykorzystania.
Pozwala na późniejsze, każdorazowe ominięcie zabezpieczeń i zdalne
zarządzanie systemem.
Przykład:
W grudniu 2017, po aktualizacji wtyczki typu captcha firmy BestWebSoft
(ok. 300 tys. instalacji), okazało się, że zawiera ona backdoor i może
przeprowadzać aktualizacje omijając oficjalne repozytorium WordPressa.
71%
źródło: https://sekurak.pl/plugin-captcha-do-wordpressa-300-000-instalacji-z-backdoorem/
BACKDOOR
(DOSŁ. TYLE DRZWI)
13. W kontekście stron internetowych –
ogólny termin określający złośliwe
oprogramowanie użyte po stronie
przeglądarki internetowej
(zwykle JavaScript)
47%MALWARE
MALICIOUS + SOFTWARE
14. SEO - optymalizacja strony/serwisu
pod kątem wyszukiwarek
Atak mający na celu obniżenia
pozycjonowania konkurencji
lub wypromowanie słów kluczowych,
z wykorzystaniem witryny ofiary.
- zmiany w kodzie
- zmiany w bazie danych
- zmiany w pliku .htaccess
Przykład:
Japoński SEO spam
Reklamy medyczne (Viagra itp.)
Reklamy modowe (tanie Ray-Bany)
44%
wzrost
o 17%
SPAM SEO
15. 19%
Złośliwy kod (najczęściej w języku PHP), którego celem jest użycie
funkcjonalności wysyłania e-maili przez zainfekowaną stronę.
Kod może zostać dodany jako osobny plik lub jako dodatkowe linijki do
istniejących plików.
Najczęściej spam powstaje przez błąd w implementacji. Luka pozwala wysłać
dowolny email do dowolnej osoby preparując odpowiedni link i dane
(wysyłane metodą POST/GET).
Przykład:
Hostingodawca informuje klienta, że jego strona wykazuje niecodzienną
aktywność w zakresie ruchu mailowego.
Podpowiedź:
Ruch i zużycie transferu można śledzić w panelu klienta.
MAILER
16. exploity - programy mające na celu wykorzystać błędy
lub
narzędzia do ataków DDOS – czyli prowadzące do zajęcia wszystkich wolnych
zasobów systemu ofiary
używane do dalszych ataków na inne strony
Są to ataki typu komputery-zombie: atak ofiary następuje na dany sygnał z wielu
miejsc jednocześnie.
Przykład:
kwiecień 2017 – atak na australijskiego rejestratora domen Melbourne IT.
Między 10:00 a 11:30 nie działał hosting, e-maile i inne usługi.
14%
źródło: https://www.tripwire.com/state-of-security/featured/5-notable-ddos-attacks-2017/
HACKTOOL
17. Rodzaj trojana zaprojektowanego do instalacji kilku niezwiązanych ze sobą
złośliwych programów.
Celem droppera jest odwrócenie uwagi użytkownika (np. fałszywymi
alarmami) lub ominięcie skanerów antywirusowych.
Sam dropper nie wyrządza krzywdy atakowanemu systemowi,
ale łatwiej go napisać niż nowego złośliwego trojana.
Przykład:
Załącznik do e-maila, który wygląda jak faktura w PDF.
Plik do pobrania ze strony (np. bestseller w formie e-booka w PDF).
6%
DROPPER
18. LICZBA PLIKÓW W CORE
(RDZENIU)
WORDPRESS
około 1500 plików
JOOMLA
około 6000 plików
2016 rok - 92 pliki
2017 rok - 168 plików
najczęściej zainfekowane
(WordPress):
• index.php
• .htaccess
• functions.php
Usunięcie kilku plików, które wydają się
nam zainfekowane zwykle nie wystarcza.
źródło:sucuri.net
ŚREDNIA LICZBA
ZAINFEKOWANYCH PLIKÓW
19. • brak aktualizacji systemów CMS
• wyciek / przejęcie haseł (np. złośliwe aplikacje jak
„Zobacz kto widział Twój profil”)
• nieodpowiednie (nieaktualne, nierozwijane,
złośliwe) dodatki, wtyczki
• inżyniera społeczna / socjotechnika
(np. manipulacja uprawnionych pracowników)
źródło: developers.google.com 26/02/2018
NAJWIĘKSZE ZAGROŻENIA DLA STRON
INTERNETOWYCH WG GOOGLE
20. NALEŻY ZAŁOŻYĆ, ŻE NASZA
STRONA ZOSTANIE WCZEŚNIEJ
CZY PÓŹNIEJ ZAATAKOWANA
CO MOŻEMY ZROBIĆ
W OBLICZU ZAGROŻEŃ?
21. ✓ Hosting posiada opcję wyboru PHP
✓ Oferowane wersje PHP są wspierane
(obecnie 5.6, 7.0, 7.1, 7.2)
✓ Hosting oferuje profesjonalną
i szybką pomoc techniczną
✓ Hosting sporządza (realne) backupy bezpłatnie lub
po niewygórowanych cenach
Uwaga! W grudniu 2018 kończy się
wsparcie dla wersji 5.6 i 7.0
http://php.net/supported-versions.php
HOSTING I WERSJA PHP
22. Darmowe wersje płatnych wtyczek i motywów
Cyberprzestępcy wykorzystują ludzkie skłonności do
kombinowania i doklejają złośliwy kod do płatnych
komponentów, a następnie dystrybuują je
darmowo w sieci.
Wtyczki i motywy należy pobierać
tylko z oficjalnych źródeł!
PODEJRZANE OKAZJE
23. Silne hasło czyli jakie?
Dotychczasowe zalecenia:
co najmniej 8-12 znaków
co najmniej jedna cyfra
co najmniej jeden znak specjalny
co najmniej jedna duża litera
SILNE HASŁO
24. Powyższe zalecenia wypracowały schemat, który łatwo złamać…
Dodatkowo badania z University of North California wykazały,
że wymóg zmiany hasła co 30-90 dni powoduje,
że użytkownicy tworzą słabe lub w przewidywalny
sposób zmodyfikowane hasła.
źródło: https://techinfo.uodo.gov.pl/hasla-praktyczne-wskazowki-czy-naprawde-trzeba-zmienic-haslo-co-30-dni/
SILNE HASŁO
26. Brak schematów
Brak pojedynczych wyrażeń słownikowych
Nie używać tych samych haseł w kilku serwisach
Lepiej przypadkowe cztery słowa
(np. w różnych językach)
niż schematyczne Xyz123%
SILNE HASŁO
28. Dwustopniowe logowanie chroni nawet
w przypadku wycieku hasła
Instalacja wtyczki wykorzystującej dodatkowe kody:
SMS, na maila lub z Google Authenticator
DWUSTOPNIOWE
LOGOWANIE
(2FA)
30. Ograniczenie liczby kont administratora i innych
z uprawnieniami wyższymi niż zwykły użytkownik
Monitorowanie zarejestrowanych kont pod kątem
podejrzanych użytkowników
Usuwanie nieaktywnych kont
Kontrola kto ma dostęp do panelu strony,
na których urządzeniach zapisaliśmy hasła
KONTROLA DOSTĘPU
31. Nie powinno się ignorować aktualizacji systemu CMS.
Często wprowadzają poprawki do luk bezpieczeństwa,
które już są powszechnie znane.
Na podstawie znanych, ale niezałatanych
luk bezpieczeństwa cyberprzestępcy
mogą planować ataki.
AKTUALIZACJE SYSTEMÓW CMS
32. Automatyczne aktualizacje są wygodne, ale należy
pamiętać, by sporządzać regularne
kopie zapasowe strony.
Niektóre aktualizacje mogą zepsuć stronę, dlatego
warto mieć zawsze kopie zapasowe.
Wtyczki do kopii zapasowych:
Akeeba, UpDraft
lub ręcznie
w Drupalu 7+ jest to wbudowany moduł
AUTOMATYCZNE AKTUALIZACJE
33. Należy weryfikować pochodzenie wtyczek
Nie instalować źle ocenionych, porzuconych
(np. dodanych 3 lata temu bez żadnej aktualizacji),
pobranych z nieoficjalnych źródeł
Instalować tylko realnie potrzebne wtyczki
Bardzo ważne!
Wtyczki należy aktualizować możliwie jak najszybciej
WTYCZKI (PLUGINY)
34. Najlepsza alternatywa dla wtyczek bezpieczeństwa
Pozwala skonfigurować parametry serwera (Apache),
w tym te dotyczące dostępu i bezpieczeństwa
Działa w obrębie katalogu, w którym został
umieszczony oraz we wszystkich podkatalogach
Popularne wtyczki bezpieczeństwa uzyskują
uprawnienia do nadpisywania reguł w .htaccess
(ma to plusy i minusy)
PLIK .HTACCESS
35. Ograniczenie logowania do
jednego IP
#Limit Login Only For One IP
<Limit GET POST PUT>
order deny,allow
deny from all
allow from 111.222.333.444
</Limit>
Ochrona pliku wp-config.php
#Protect wp-config.php
File<Files wp-config.php>
order allow,deny
deny from all
</Files>
PLIK .HTACCESS - PRZYKŁAD
36. Certyfikat SSL czyli Secure Socket Layer
protokół bezpieczeństwa zapewniający poufność
transmisji danych
Plusy:
• szyfrowanie danych przesyłanych przez stronę
(danych klientów, użytkowników, a także loginów
administratorów)
• zgodność z wymogami RODO
• większe zaufanie użytkowników (zwłaszcza w obliczu
zmian w Google Chrome)
SZYFROWANIE
CERTYFIKAT SSL
37. Socjotechnika i manipulacja święci triumfy
Nawet najlepiej chronione systemy mogą
zostać złamane przez błąd ludzki
Zdrowy rozsądek i myślenie krytyczne!
CZŁOWIEK – NAJSŁABSZE OGNIWO
38. • (PL) Raport CERT Orange Polska – https://www.cert.pl
• (EN) Raport Sucuri Hacked Report – https://w3techs.com
• (EN) Statystyki dotyczące stron i systemów – https://w3techs.com
• (PL) Mini-kurs rozpoznawania phishingu – https://phishingstop.aliorbank.pl
Phishing – oszustwo internetowe, którego celem jest
kradzież tożsamości (hasła, loginy, dane osobowe)
ŹRÓDŁA INFORMACJI
39. „More secure software,
NOT more security software.”
(Bardziej bezpieczne oprogramowanie,
a NIE więcej oprogramowania
zabezpieczającego.)
Website Security Statistics Report 2015 (WhiteHat)