Bezpieczeństwo aplikacji WWW

Slides:



Advertisements
Podobne prezentacje
Internetowe Bazy Danych
Advertisements

Systemy uwierzytelniania w serwisach internetowych
Marcin Piotrowski. Najpopularniejszymi darmowymi przeglądarkami są Internet Explorer, Opera, Mozilla Firefox, Google Chrome.
SQL INJECTION Wykorzystanie błędów w językach skryptowych
Wprowadzenie do języka skryptowego PHP
Kamil Smitkiewicz Bezpieczeństwo w PHP.
PHP + MySQL część II.
SIECI KOMPUTEROWE (SieKom) PIOTR MAJCHER WYŻSZA SZKOŁA ZARZĄDZANIA I MARKETINGU W SOCHACZEWIE Zarządzanie.
Arkadiusz Twardoń ZTiPSK
Obsługa bazy danych z poziomu phpMyAdmin
Damian Urbańczyk PHP Obsługa sesji.
Obsługa serwera zdalnego przez klienta FTP
Honorata Prokop, Izabela Ubowska
Proxy (WWW cache) Sieci Komputerowe
Systemy zarządzania treścią CMS
Architektura systemów wykorzystujących bazy danych (systemów bazodanowych) Wykład S. Kozielski.
prototypy metod i ingerencji w system czynna i bierna ingerencja
SIEĆ P2P 1. Definicja sieci równouprawnionej. To taka sieć, która składa się z komputerów o takim samym priorytecie ważności, a każdy z nich może pełnić.
Jak przeżyć w Internecie? Czyli o bezpieczeństwie słów kilka… Michał Jankowski MJ Software Solutions Services.
Rozwój aplikacji przy wykorzystaniu ASP.NET
Jak przeżyć w Internecie? Czyli o bezpieczeństwie słów kilka… Michał Jankowski MJ Software Solutions Services.
Lokalne serwery www Serwer WWW - ang. Web server jest to oprogramowanie zainstalowane na serwerze podłączonym do sieci Internet. Używające technologii.
System zamawiania on-line
Buforowanie D e f i n i c j a.
Temat 2: Edytory HTML.
Internetowe surfowanie
Wirusy i robaki komputerowe
„Bezpieczeństwo w Internecie”
Informatyka Poczta elektroniczna.
Narzędzia klienta usługi archiwizacji Warsztaty „Usługa powszechnej archiwizacji” Michał Białoskórski, CI TASK Bartłomiej Balcerek, WCSS.
Nieograniczone źródło informacji
Archiwizacja bazy danych
Razem tworzymy bezpieczny Internet
Przykłady błędów bezpieczeństwa w kilku krokach, Mateusz Olejarka czyli rzecz o atakowaniu procesów.
Jak przeżyć w Internecie? Czyli o bezpieczeństwie słów kilka… Michał Jankowski MJ Software Solutions Services.
Agenda O Nas Ogólne informacje o Produkcie Job Manager – idealne rozwiązanie Aplikacja Webowa Aplikacja Kliencka Najnowsze zmiany.
Temat 2: Instalacja Apache, PHP i bazy danych MySQL.
Technologie internetowe Wykład 5 Wprowadzenie do skrytpów serwerowych.
Zbiór danych zapisanych zgodnie z określonymi regułami. W węższym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyjętymi dla danego.
Andrzej Majkowski 1 informatyka +. 2 Bezpieczeństwo protokołu HTTP Paweł Perekietka.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Internetowy serwis map powiatu wałbrzyskiego Wyk. Kamil Jankowski.
Uprawnienia w Windows Server
Podstawy języka skryptów
PHP Zmienne Damian Urbańczyk. Czym są zmienne? Zmienne zajmują pewien obszar pamięci, aby przechować pewne dane. W przypadku PHP, zmienne stosuje się.
niezawodności Z problemem jakości systemów informacyjnych wiąże się problem zapewnienia odpowiedniej niezawodności ich działania.
1. Podaj definicję kartografii internetowej. 2. Geographic Markup Language: a) Jest schematem XML a) Opisuje obiekty w fizycznej przestrzeni a) Jest formatem.
Programy pocztowe _________________________________________________________________________________________________________________ [ Przedmiot: Projektowanie.
Informatyka – szkoła gimnazjalna – Scholaris - © DC Edukacja Tworzenie stron WWW w programie Microsoft FrontPage Informatyka.
INTERNET jako „ocean informacji”
Ochrona antywirusOWa i ograniczenia w dostępie do zasobów sieciowych.
Portal edukacyjny J A V A S C R I P T JĘZYK PROGRAMOWANIA STRON HTML Opracowała: Anna Śmigielska.
Instalacja certyfikatu Dostęp do Rachunku przez Internet BS Pawłowice dla przeglądarki Mozilla Firefox.
Informatyka Zakres rozszerzony Zebrał i opracował : Maciej Belcarz OPROGRAMOWANIE„ZŁOSLIWE”
Maciej Wierzchowski Mariusz Sołtysiak. Założenia  Autentykacja użytkownia  Autentykacja dostawcy  Zapewnienie bezpiecznego połączenia.
ASP.NET Dostęp do bazy danych z poziomu kodu Elżbieta Mrówka-Matejewska.
Aplikacje Baz Danych ASP.NET
Zarządzanie stanem w aplikacjach ASP.NET Elżbieta Mrówka-Matejewska
Elementy przeglądarki internetowej Pasek menu Pasek kart Pasek adresowy Pasek wyszukiwania Okno z zawartością strony internetowej Zakładki (ulubione)
Internet to nie tylko gry
Zabezpieczanie komputerów przed zawirusowaniem Metody ataków sieciowych.
Wydział Matematyki, Informatyki i Architektury Krajobrazu
PODSTAWOWE ZARZĄDZANIE KOMPUTERAMI Z SYSTEMEM WINDOWS
AudaPad / AudaShare AudaShare PRO (2.8)
PROGRAMY DO KONTROLI RODZICIELSKIEJ
PROGRAMY DO KONTROLI RODZICIELSKIEJ
Content Management System
Tworzenie stron WWW w programie Microsoft FrontPage
Zapis prezentacji:

Bezpieczeństwo aplikacji WWW Michał Pośnik s4132 2008

Rodzaje ataków XSS (Cross-Site Scripting) SQL Injection HTML Injection CSRF (Cross-Site Request Forgery

Cross-Site Scripting

Od strony atakującego Zasada ataku XSS Rodzaje ataku XSS Reflected XSS Persistent XSS Lokalny atak XSS Proste próby ataku XSS

Reflected XSS Najczęściej spotykany wśród ataków z serii XSS Trzeba nakłonić ofiarę do odwiedzenia spreparowanego URL Umożliwia dostęp do haseł użytkownika, adresów e-mail, loginów, fraz wpisywanych w search'u http://www.heise-online.pl/security/Bezpieczenstwo-aplikacji-internetowych--/features/205/0

Persistent XSS Także bardzo powszechny atak Nie wymaga nakłaniania ofiary do kliknięcia w URL Za pomocą kodu ukrytego w URL, możemy dostać się do bazy danych Serwer bazodanowy rozsyła szkodliwy kod do użytkowników odwiedzających stronę Raz wstrzyknięty kod pozostaje już na serwerze http://www.heise-online.pl/security/Bezpieczenstwo-aplikacji-internetowych--/features/205/0

Lokalny atak XSS Odbywa się na komputerze ofiary Wykonywane w przeglądarce, za pomocą JavaScript Serwer "dostarcza" w przeglądarce błędny skrypt, a nie złośliwy kod Najczęściej podatne są aplikacje Web 2.0 http://www.heise-online.pl/security/Bezpieczenstwo-aplikacji-internetowych--/features/205/0

Proste próby ataku XSS Aby wykonać prosty atak XSS musimy zrobic/znac: Sprawdzenie podatności strony WWW na atak XSS Podstawowa znajomość JavaScript Szczęście  http://www.heise-online.pl/security/Bezpieczenstwo-aplikacji-internetowych--/features/205/0

Jedna ze stron, którą znalazłem  http://www.heise-online.pl/security/Bezpieczenstwo-aplikacji-internetowych--/features/205/0

SQL INJECTION

Od strony atakującego Jeden z podstawowych i najczęściej wykorzystywanych ataków w Internecie Wykorzystuje lukę w systemie polegającą na nieprawidłowym filtrowaniu Wszystkie bazy danych są podatne w mniejszym lub większym stopniu na te ataki http://webhosting.pl/SQL.Injection..Jak.hakerzy.omijaja.zabezpieczenia.stron.WWW.?page=1

Zasada działania Polega na wysłaniu na serwer spreparowanego kodu SQL Dzięki odpowiednim zapytaniom, możemy dostać się do serwera i wykraść dane http://webhosting.pl/SQL.Injection..Jak.hakerzy.omijaja.zabezpieczenia.stron.WWW.?page=1

Przeprowadzanie ataku Sprawdzamy czy w atakowanej stronie występują luki Jeśli znaleźliśmy takowe, sprawdzamy poprawność działania naszych zapytań Jeśli nie występują błędy, sprawdzamy efekt działania wstrzykniętego kodu Gromadziny dane w celu identyfikacji rodzaju zapytania, rodzaju bazy danych, czy uprzywilejowania użytkownika http://webhosting.pl/SQL.Injection..Jak.hakerzy.omijaja.zabezpieczenia.stron.WWW.?page=1

HTML INJECTION

Od strony atakującego Ataki HTML Injection, podobnie jak ataki XSS i SQL Injection, polegają na dodawaniu kodu do źródła strony WWW Pozwalają nam modyfikować wygląc strony, oraz jej funkcjonalność W zależności od zapytania, możemy zmienić wygląd strony na stałe

Prostota HTML Injection Znajomość HTMLa, nawet w podstawach, pozwoli nam na wykonanie prostego ataku Wiele stron jest podatnych na tego typu atak Po prawej znajduje się przykładowy kod HTML, który możemy wstrzyknąć w stronę podatną na atak. <a href=http://www.naszserwer.pl><img src=http://jakistamserwerznasztymobraz kiem.pl /> Kliknij na zdjecie, aby je powiekszyc! </a>

Przykład wykorzystania HTML Injection Prosty tag <h1><u> … </u></h1>

Cross-Site request forgery

Od strony atakującego Często pomijana technika, a także często mieszana jako „podzbiór” ataków XSS Polega na wykorzystaniu przeglądarki ofiary, w celu wysyłania żądań HTTP, bez wiedzy ofiary Umożliwia wykonywanie czynności administratorskich bez konieczności przechwytywania sesji czy łamania haseł Umożliwia wykonanie ataku mimo skonfigurowanego firewalla http://www.eioba.pl/a75448/cross_site_request_forgeries_csrf_zarys_problemu

Schemat przedstawiający zwykły atak CSRF http://www.eioba.pl/a75448/cross_site_request_forgeries_csrf_zarys_problemu

Schemat przedstawiający atak CSRF z włączonym firewallem http://www.eioba.pl/a75448/cross_site_request_forgeries_csrf_zarys_problemu

Przeprowadzenie ataku CSRF Wystarczy znajomość HTMLa "Podszycie" pod kod HTML jakiegos linka Pozyskiwanie potrzebnych nam informacji http://www.eioba.pl/a75448/cross_site_request_forgeries_csrf_zarys_problemu

Bezpieczeństwo aplikacji WWW XSS SQL Injection HTML Injection CSRF

Bezpieczeństwo aplikacji WWW od strony programisty Znajomość pewnych funkcji PHP może okazać się przydatna. Przykładowe funkcje zabezpieczające

O należy pamiętać? Ustawienie walidacji parametrów wejściowych Wyłączenie opcji zmiennych globalnych Prawidłowa kontrola dostępu Prawidłowa autentykacja i zarządzanie sesjami Prawidłowe zabezpieczenie przed przepełnieniem bufora Prawidłowa obsługa błędów Bezpieczne przechowywanie danych Prawidłowe zabezpieczenie przed atakiem typu DoS Ustawienie funkcji uniemożliwiających wstrzykiwanie kodu

Kilka przykładów znalezionych w sieci

Kilka przykładów znalezionych w sieci

Kilka przykładów znalezionych w sieci

Dziękuję za uwagę