SlideShare a Scribd company logo
Bezpieczeństwo aplikacji webowych
Założenia, technologie, tips and tricks do codziennego zastosowania
przy zabezpieczaniu aplikacji webowych od strony serwerowej.
Założenia
 W każdym sprzęcie, oprogramowaniu czy
postępowaniu ludzkim istnieje
prawdopodobieństwo wystąpienia zagrożenia
 Planowanie polityki bezpieczeństwa należy
rozpocząć od czynnika ludzkiego, wyżej jest
sprzęt, oprogramowanie serwerowe,
oprogramowanie środowiskowe – ograniczamy
zaufanie
 W zespole powinno się posiadać osobę, która
jest odpowiedzialna za bezpieczeństwo
Cele
 Dbanie o bezpieczeństwo klienta, jak i firmy
(naszej) :-)
 Zapewnienie odpowiedniej jakości usług dla
klienta
 Poprawa stosunków biznesowych z klientem –
bezpieczny klient – spokojny klient
 Poszerzanie wiedzy na temat zabezpieczeń
oraz rozwiązywanie problemów jeszcze w
zarodku poprzez specjalistyczne szkolenia
Identyfikacja
 Identyfikacja środowiska pracy – sprzęt,
oprogramowanie serwerowe, oprogramowanie
środowiskowe, dostarczane rozwiązania firm
trzecich
 Weryfikacja CVE – Common Vulnerabilities And
Exposures – ogólnodostępna baza zagrożeń
dla w/w środowisk
 Aplikowanie aktualizacji bezpieczeństwa
zgodnie z ich przeznaczeniem
 Sprawdzanie w miarę na bieżąco czy dany
produkt nie jest w statusie EOL, czy planowane
Identyfikacja – sprzęt oraz
oprogramowanie serwerowe
 Sprzęt – weryfikacja pod kątem zgłoszonych
problemów bezpieczeństwa – tak… Intel i
zgłoszone luki Meltdown oraz Spectre,
aktualizacje systemowe jak i microcode’u CPU
w BIOS, ostatnie zalecenia odnośnie
wyłączenia SMT na procesorach Xeon jak i
jednostkach konsumenckich np. Core i7
 Oprogramowanie serwerowe bazowe –
włączenie powiadamiania o aktualizacjach
krytycznych, wykonywanie aktualizacji
automatycznie, w przypadku systemów z
Identyfikacja – sprzęt oraz
oprogramowanie serwerowe
 Sprzęt – weryfikacja pod kątem zgłoszonych
problemów bezpieczeństwa – tak… Intel i
zgłoszone luki Meltdown oraz Spectre,
aktualizacje systemowe jak i microcode’u CPU
w BIOS, ostatnie zalecenia odnośnie
wyłączenia SMT na procesorach Xeon jak i
jednostkach konsumenckich np. Core i7
 Oprogramowanie serwerowe bazowe –
włączenie powiadamiania o aktualizacjach
krytycznych, wykonywanie aktualizacji
automatycznie, w przypadku systemów z
Bezpieczeństwo aplikacji webowych
Identyfikacja – Oprogramowanie
firm trzecich, tzw gotowce
 Sprawdzanie na bieżąco luk w systemie
bezpieczeństwa oraz ich łatanie
 Ocena pod kątem ewentualnych podatności na
atak – SQL Injection
 Używanie skanerów do sprawdzenia
frontpage’u pod kątem możliwych ataków
Bezpieczeństwo aplikacji webowych
Aktualizacje w związku z lukami
bezpieczeństwa
 Firmy posiadające ISO/IEC 27001
Administratorów Bezpieczeństwa Informacji
(ABI) narzucają wręcz konieczność
aktualizowania oprogramowania, które jest
podatne na ataki
 Na chwilę obecną operatorzy usług
hostingowych nie wymuszali restartów maszyn
wobec sprzętowych luk systemowych
 Aktualizacje należy poprzedzać po uprzednim
kontakcie z klientem, jeżeli tylko tyczy się to
aktualizacji krytycznych nie zmieniających nic w
Aktualizacje serwerowych systemów
operacyjnych
 Należy dostarczać jak najnowsze wersje
oprogramowania, trzymając się dystrybucji o jak
najdłuższym wsparciu technicznym bądź
społeczności np. Ubuntu LTS oraz Debian
 Aktualizacje kernela (jądra systemowego)
należy poprzedzać po uprzednim kontakcie z
klientem – wymagany jest restart systemu
operacyjnego
HTTPS/SSL/TLS
 Jeżeli jest to możliwe – używajmy SSL, z racji
tego iż od dłuższego czasu dostępne są
narzędzia do zarządzania certyfikatami SSL
OpenSource Let’s Encrypt SSL
 Unikajmy zawartości nieszyfrowanej w postaci
luźnych odnośników http:// - Mixed Content
Warning
 W związku z wygaszanym wsparciem od 2020r
wskazane jest używanie TLS w wersji >= 1.2 –
producenci przeglądarek rezygnują ze wsparcia
dla TLS <= 1.1.
Zabezpieczenia serwerowe #1
 SSH na innym porcie niż standardowy oraz
wyłączenie logowania poprzez hasła
 Jeżeli istnieje możliwość serwery należałoby
spiąć serwisowym VPN
 W przypadku użycia IPTABLES – wyłączamy
ruch przychodzący na porty usług innych niż
HTTP/HTTPS/FTP/SMTP, jeżeli jest
konieczność dodania wyjątków – dodajemy
 Włączenie TCPFILTER via iptables
 Używanie load balancerów – np. Haproxy – w
Zabezpieczenia serwerów WWW #1
 SSL, jeżeli jest konieczność użycia protokołu
http z konieczności prowadzenia integracji
poprzez wystawione endpointy np. soap via
serwer http, robimy reguły via adres ip z którego
się komunikuje z użyciem wąskiej maski */32
 Redirect z HTTP na HTTPS – zawsze włączony
 W przypadku ograniczeń hostingowych – warto
użyć zewnętrznego DNS z możliwością SSL out
of the box np. Cloudflare – także możliwość
zabezpieczenia przed DoS
 Używanie load balancerów – np. Haproxy –
Zabezpieczenia serwerowe #2
 Zaprzestać lub wyciąć dostęp do aplikacji typu
WHM, phpMyAdmin z zewnątrz, na zasadzie
weryfikacji ssl klucza prywatnego w
przeglądarce klienta
 W przypadku mySQL jak i PGSQL ustawiajmy
nasłuch na localhost bądź w przypadku użycia
serwerów wirtualizacji adres wewnętrznej sieci
serwisowej
Zabezpieczenia serwerów WWW i
aplikacji webowych
 Rezygnacja z apache2 (http2 wprowadzono
zbyt późno bo z 10.2018r) – tutaj wygrywa
nginx.
 W przypadku ataków brute-force warto włączyć
captcha
 Przezorny zawsze ubezpieczony – dbajmy o
backupy baz danych oraz konfiguracji
serwerowych, im dalej od głównego serwera
tym lepiej
 Tworzenie backupów transakcyjnych bazy
danych – mySQL, pgSQL – w przypadku zmian
Q&A
Dziękuję za uwagę

More Related Content

PDF
Bezpieczenstwo to podstawa
PDF
Dekalog bezpieczeństwa Magento
PPTX
Zabezpieczenia sieci komputerowych
PPT
Co Zrobić By PożąDnie Zabezpieczyć Serwer W Sieci
PPT
Bezpieczenstwo sieci komputerowych
DOCX
Przemysław śliż-ms
PDF
Devops/Sysops security
PDF
Krytyczne błędy konfiguracji
Bezpieczenstwo to podstawa
Dekalog bezpieczeństwa Magento
Zabezpieczenia sieci komputerowych
Co Zrobić By PożąDnie Zabezpieczyć Serwer W Sieci
Bezpieczenstwo sieci komputerowych
Przemysław śliż-ms
Devops/Sysops security
Krytyczne błędy konfiguracji

Similar to Bezpieczeństwo aplikacji webowych (20)

PDF
Apache. Zabezpieczenia aplikacji i serwerów WWW
PDF
NGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.com
PDF
Linux. Serwery. Bezpieczeństwo
PDF
Web Application Firewall -- potrzeba,rozwiązania, kryteria ewaluacji
PPTX
PLNOG14: Analiza obecnych zagrożeń DDoS według najnowszego raportu bezpieczeń...
PDF
OWASP Appsensor in action
PDF
Linux. Bezpieczeństwo. Receptury
PDF
Atmosphere 2014: Scalable and under control - open cloud architecture conside...
PPTX
Czy twoje zabezpieczenia są skuteczne? Błędy i podatności w rozwiązaniach zab...
PDF
Devops security
PPTX
Rozwiązania do zarządzania serwerami.pptx
PDF
Hack Proofing Linux. Edycja polska
PDF
Bezpieczeństwo stron opartych na popularnych CMSach
PDF
JDD2014/ 4Developers 2015: Błędy uwierzytelniania i zarządzania sesją w JEE -...
PPTX
Healthcare: bezpieczeństwo pacjentów zaczyna się od IT
PDF
Raport. Bezpieczeństwo infrastruktury IT w polskich organizacjach
PDF
Hosting, serwer i terminy pokrewne – Paweł Pliszka
PPTX
Shall we play a game? PL version
PDF
5 rzeczy, które możesz zrobić w 30 min, żeby poprawić bezpieczeństwo strony www
PDF
Testowanie poziomu bezpieczeństwa aplikacji internetowych
Apache. Zabezpieczenia aplikacji i serwerów WWW
NGSec 2016 - Ile warstw, tyle szans. - Leszek Miś@Defensive-Security.com
Linux. Serwery. Bezpieczeństwo
Web Application Firewall -- potrzeba,rozwiązania, kryteria ewaluacji
PLNOG14: Analiza obecnych zagrożeń DDoS według najnowszego raportu bezpieczeń...
OWASP Appsensor in action
Linux. Bezpieczeństwo. Receptury
Atmosphere 2014: Scalable and under control - open cloud architecture conside...
Czy twoje zabezpieczenia są skuteczne? Błędy i podatności w rozwiązaniach zab...
Devops security
Rozwiązania do zarządzania serwerami.pptx
Hack Proofing Linux. Edycja polska
Bezpieczeństwo stron opartych na popularnych CMSach
JDD2014/ 4Developers 2015: Błędy uwierzytelniania i zarządzania sesją w JEE -...
Healthcare: bezpieczeństwo pacjentów zaczyna się od IT
Raport. Bezpieczeństwo infrastruktury IT w polskich organizacjach
Hosting, serwer i terminy pokrewne – Paweł Pliszka
Shall we play a game? PL version
5 rzeczy, które możesz zrobić w 30 min, żeby poprawić bezpieczeństwo strony www
Testowanie poziomu bezpieczeństwa aplikacji internetowych
Ad

More from PHPstokPHPstok (14)

PPTX
Jak ograniczyć używanie tablic w PHP.pptx
PPTX
Blaski i cienie pracy Project Managera.pptx
PDF
Refaktoryzacja
PDF
PDF
Zarządzanie złożonością
PDF
Clean Code
PDF
Testy mutacyjne
PDF
Najczęstsze błędy początkujących programistów PHP
PPTX
Wzorce projektowe w praktyce
PPTX
Sztuka samodoskonalenia programisty
PPTX
Testy jednostkowe - PHPUnit
PPTX
PPTX
PPTX
PSR czyli dobre praktyki programistyczne
Jak ograniczyć używanie tablic w PHP.pptx
Blaski i cienie pracy Project Managera.pptx
Refaktoryzacja
Zarządzanie złożonością
Clean Code
Testy mutacyjne
Najczęstsze błędy początkujących programistów PHP
Wzorce projektowe w praktyce
Sztuka samodoskonalenia programisty
Testy jednostkowe - PHPUnit
PSR czyli dobre praktyki programistyczne
Ad

Bezpieczeństwo aplikacji webowych

  • 1. Bezpieczeństwo aplikacji webowych Założenia, technologie, tips and tricks do codziennego zastosowania przy zabezpieczaniu aplikacji webowych od strony serwerowej.
  • 2. Założenia  W każdym sprzęcie, oprogramowaniu czy postępowaniu ludzkim istnieje prawdopodobieństwo wystąpienia zagrożenia  Planowanie polityki bezpieczeństwa należy rozpocząć od czynnika ludzkiego, wyżej jest sprzęt, oprogramowanie serwerowe, oprogramowanie środowiskowe – ograniczamy zaufanie  W zespole powinno się posiadać osobę, która jest odpowiedzialna za bezpieczeństwo
  • 3. Cele  Dbanie o bezpieczeństwo klienta, jak i firmy (naszej) :-)  Zapewnienie odpowiedniej jakości usług dla klienta  Poprawa stosunków biznesowych z klientem – bezpieczny klient – spokojny klient  Poszerzanie wiedzy na temat zabezpieczeń oraz rozwiązywanie problemów jeszcze w zarodku poprzez specjalistyczne szkolenia
  • 4. Identyfikacja  Identyfikacja środowiska pracy – sprzęt, oprogramowanie serwerowe, oprogramowanie środowiskowe, dostarczane rozwiązania firm trzecich  Weryfikacja CVE – Common Vulnerabilities And Exposures – ogólnodostępna baza zagrożeń dla w/w środowisk  Aplikowanie aktualizacji bezpieczeństwa zgodnie z ich przeznaczeniem  Sprawdzanie w miarę na bieżąco czy dany produkt nie jest w statusie EOL, czy planowane
  • 5. Identyfikacja – sprzęt oraz oprogramowanie serwerowe  Sprzęt – weryfikacja pod kątem zgłoszonych problemów bezpieczeństwa – tak… Intel i zgłoszone luki Meltdown oraz Spectre, aktualizacje systemowe jak i microcode’u CPU w BIOS, ostatnie zalecenia odnośnie wyłączenia SMT na procesorach Xeon jak i jednostkach konsumenckich np. Core i7  Oprogramowanie serwerowe bazowe – włączenie powiadamiania o aktualizacjach krytycznych, wykonywanie aktualizacji automatycznie, w przypadku systemów z
  • 6. Identyfikacja – sprzęt oraz oprogramowanie serwerowe  Sprzęt – weryfikacja pod kątem zgłoszonych problemów bezpieczeństwa – tak… Intel i zgłoszone luki Meltdown oraz Spectre, aktualizacje systemowe jak i microcode’u CPU w BIOS, ostatnie zalecenia odnośnie wyłączenia SMT na procesorach Xeon jak i jednostkach konsumenckich np. Core i7  Oprogramowanie serwerowe bazowe – włączenie powiadamiania o aktualizacjach krytycznych, wykonywanie aktualizacji automatycznie, w przypadku systemów z
  • 8. Identyfikacja – Oprogramowanie firm trzecich, tzw gotowce  Sprawdzanie na bieżąco luk w systemie bezpieczeństwa oraz ich łatanie  Ocena pod kątem ewentualnych podatności na atak – SQL Injection  Używanie skanerów do sprawdzenia frontpage’u pod kątem możliwych ataków
  • 10. Aktualizacje w związku z lukami bezpieczeństwa  Firmy posiadające ISO/IEC 27001 Administratorów Bezpieczeństwa Informacji (ABI) narzucają wręcz konieczność aktualizowania oprogramowania, które jest podatne na ataki  Na chwilę obecną operatorzy usług hostingowych nie wymuszali restartów maszyn wobec sprzętowych luk systemowych  Aktualizacje należy poprzedzać po uprzednim kontakcie z klientem, jeżeli tylko tyczy się to aktualizacji krytycznych nie zmieniających nic w
  • 11. Aktualizacje serwerowych systemów operacyjnych  Należy dostarczać jak najnowsze wersje oprogramowania, trzymając się dystrybucji o jak najdłuższym wsparciu technicznym bądź społeczności np. Ubuntu LTS oraz Debian  Aktualizacje kernela (jądra systemowego) należy poprzedzać po uprzednim kontakcie z klientem – wymagany jest restart systemu operacyjnego
  • 12. HTTPS/SSL/TLS  Jeżeli jest to możliwe – używajmy SSL, z racji tego iż od dłuższego czasu dostępne są narzędzia do zarządzania certyfikatami SSL OpenSource Let’s Encrypt SSL  Unikajmy zawartości nieszyfrowanej w postaci luźnych odnośników http:// - Mixed Content Warning  W związku z wygaszanym wsparciem od 2020r wskazane jest używanie TLS w wersji >= 1.2 – producenci przeglądarek rezygnują ze wsparcia dla TLS <= 1.1.
  • 13. Zabezpieczenia serwerowe #1  SSH na innym porcie niż standardowy oraz wyłączenie logowania poprzez hasła  Jeżeli istnieje możliwość serwery należałoby spiąć serwisowym VPN  W przypadku użycia IPTABLES – wyłączamy ruch przychodzący na porty usług innych niż HTTP/HTTPS/FTP/SMTP, jeżeli jest konieczność dodania wyjątków – dodajemy  Włączenie TCPFILTER via iptables  Używanie load balancerów – np. Haproxy – w
  • 14. Zabezpieczenia serwerów WWW #1  SSL, jeżeli jest konieczność użycia protokołu http z konieczności prowadzenia integracji poprzez wystawione endpointy np. soap via serwer http, robimy reguły via adres ip z którego się komunikuje z użyciem wąskiej maski */32  Redirect z HTTP na HTTPS – zawsze włączony  W przypadku ograniczeń hostingowych – warto użyć zewnętrznego DNS z możliwością SSL out of the box np. Cloudflare – także możliwość zabezpieczenia przed DoS  Używanie load balancerów – np. Haproxy –
  • 15. Zabezpieczenia serwerowe #2  Zaprzestać lub wyciąć dostęp do aplikacji typu WHM, phpMyAdmin z zewnątrz, na zasadzie weryfikacji ssl klucza prywatnego w przeglądarce klienta  W przypadku mySQL jak i PGSQL ustawiajmy nasłuch na localhost bądź w przypadku użycia serwerów wirtualizacji adres wewnętrznej sieci serwisowej
  • 16. Zabezpieczenia serwerów WWW i aplikacji webowych  Rezygnacja z apache2 (http2 wprowadzono zbyt późno bo z 10.2018r) – tutaj wygrywa nginx.  W przypadku ataków brute-force warto włączyć captcha  Przezorny zawsze ubezpieczony – dbajmy o backupy baz danych oraz konfiguracji serwerowych, im dalej od głównego serwera tym lepiej  Tworzenie backupów transakcyjnych bazy danych – mySQL, pgSQL – w przypadku zmian
  • 17. Q&A