Program szkolenia: Bezpieczny kod - podstawy

Podobne dokumenty
Praktyczne aspekty stosowania kryptografii w systemach komputerowych

Bazy danych i usługi sieciowe

Aplikacje webowe w obliczu ataków internetowych na przykładzie CodeIgniter Framework

Opis efektów kształcenia dla modułu zajęć

Aspekty bezpieczeństwa aplikacji internetowych

Bezpieczeństwo w sieci I. a raczej: zabezpieczenia wiarygodnosć, uwierzytelnianie itp.

Authenticated Encryption

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

Księgarnia PWN: Kevin Kenan - Kryptografia w bazach danych. Spis treści. Podziękowania O autorze Wprowadzenie... 15

WorkshopIT Komputer narzędziem w rękach prawnika

Bezpieczeństwo usług oraz informacje o certyfikatach

Wykład 4 Bezpieczeństwo przesyłu informacji; Szyfrowanie

Jak bezpieczne są Twoje dane w Internecie?

Praktyczne aspekty wykorzystania nowoczesnej kryptografii. Wojciech A. Koszek

ZAŁĄCZNIK Nr 3 do CZĘŚCI II SIWZ

2. Zastosowanie standardu Wi-Fi w systemach AMR... 21

Wykład 4. Metody uwierzytelniania - Bezpieczeństwo (3) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

WSIZ Copernicus we Wrocławiu

KUS - KONFIGURACJA URZĄDZEŃ SIECIOWYCH - E.13 ZABEZPIECZANIE DOSTĘPU DO SYSTEMÓW OPERACYJNYCH KOMPUTERÓW PRACUJĄCYCH W SIECI.

Zagrożenia związane z udostępnianiem aplikacji w sieci Internet

VPN Virtual Private Network. Użycie certyfikatów niekwalifikowanych w sieciach VPN. wersja 1.1 UNIZETO TECHNOLOGIES SA

ZAŁĄCZNIK Nr 1 do CZĘŚCI II SIWZ

ZiMSK. Konsola, TELNET, SSH 1

Podpis elektroniczny dla firm jako bezpieczna usługa w chmurze. mgr inż. Artur Grygoruk

Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi.

Zastosowania PKI dla wirtualnych sieci prywatnych

Projektowani Systemów Inf.

Bezpieczeństwo w Internecie

Szczegółowy program,,laboratorium Bezpieczeństwa Systemów Informatycznych

Bezpieczeństwo aplikacji typu software token. Mariusz Burdach, Prevenity. Agenda

Sieci komputerowe. Wykład 9: Elementy kryptografii. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

System Użytkowników Wirtualnych

The OWASP Foundation Session Management. Sławomir Rozbicki.

Bezpieczeństwo aplikacji. internetowych. 2. Szkolenie dla administratorów stron internetowych hufców Śląskiej Chorągwi ZHP

Bezpieczeństwo Systemów Komputerowych. Wirtualne Sieci Prywatne (VPN)

Wasze dane takie jak: numery kart kredytowych, identyfikatory sieciowe. kradzieŝy! Jak się przed nią bronić?

Wykład 3 Bezpieczeństwo przesyłu informacji; Szyfrowanie

Bezpieczeństwo bezprzewodowych sieci WiMAX

Laboratorium Programowania Kart Elektronicznych

POLITYKA CERTYFIKACJI KIR dla ZAUFANYCH CERTYFIKATÓW NIEKWALIFIKOWANYCH

Ataki na aplikacje WWW. Łomem, czy wytrychem? Jak dobrać się do aplikacji WWW

Serwery autentykacji w sieciach komputerowych

POLITYKA CERTYFIKACJI KIR dla ZAUFANYCH CERTYFIKATÓW NIEKWALIFIKOWANYCH

Zielona Góra, 22-X-2015

Wprowadzenie do PKI. 1. Wstęp. 2. Kryptografia symetryczna. 3. Kryptografia asymetryczna

Architektura bezpiecznych aplikacji internetowych na platformie Java Enterprise Edition. Jakub Grabowski Warszawa,

Bezpieczeństwo danych i elementy kryptografii - opis przedmiotu

Opracowanie protokołu komunikacyjnego na potrzeby wymiany informacji w organizacji

Bezpieczeństwo systemów komputerowych

Techniki komputerowe w robotyce

VPN Virtual Private Network. Użycie certyfikatów niekwalifikowanych. w sieciach VPN. wersja 1.1 UNIZETO TECHNOLOGIES SA

Bringing privacy back

Technologie informacyjne - wykład 5 -

Sieci VPN SSL czy IPSec?

Aplikacje webowe na celowniku. Leszek Miś IT Security Architect RHCA,RHCSS,Sec+ Linux Polska Sp. z o.o. 1

Infrastruktura klucza publicznego w sieci PIONIER

Rozproszone systemy uwierzytelniania użytkowników

Agenda. Quo vadis, security? Artur Maj, Prevenity

2.1. System kryptograficzny symetryczny (z kluczem tajnym) 2.2. System kryptograficzny asymetryczny (z kluczem publicznym)

Laboratorium nr 3 Podpis elektroniczny i certyfikaty

SSL (Secure Socket Layer)

Czy otwarte znaczy bezpieczne?

BSK. Copyright by Katarzyna Trybicka-Fancik 1. Nowy klucz jest jedynie tak bezpieczny jak klucz stary. Bezpieczeństwo systemów komputerowych

Wdrożenie infrastruktury klucza publicznego (PKI) dla użytkowników sieci PIONIER

Projekt wymagań bezpieczeństwa wobec statycznych bezpośrednich 1-fazowych i 3- fazowych liczników energii elektrycznej:

Zarządzanie systemami informatycznymi. Bezpieczeństwo przesyłu danych

Web Application Firewall - potrzeba, rozwiązania, kryteria ewaluacji.

Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami

ZARZĄDZANIE SIECIAMI TELEKOMUNIKACYJNYMI

Przewodnik użytkownika

Laboratorium nr 5 Podpis elektroniczny i certyfikaty

SSH - Secure Shell Omówienie protokołu na przykładzie OpenSSH

Modele uwierzytelniania, autoryzacji i kontroli dostępu do systemów komputerowych.

Metody uwierzytelniania klientów WLAN

Informacja o zasadach świadczenia usług zaufania w systemie DOCert Wersja 1.0

Sieci komputerowe Wykład 7. Bezpieczeństwo w sieci. Paweł Niewiadomski Katedra Informatyki Stosowanej Wydział Matematyki UŁ niewiap@math.uni.lodz.

Księgarnia PWN: Jan De Clercq, Guido Grillenmeier - Bezpieczeństwo Microsoft Windows. Podstawy praktyczne

Protokół SSL/TLS. Patryk Czarnik. Bezpieczeństwo sieci komputerowych MSUI 2009/10. Wydział Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski

SET (Secure Electronic Transaction)

Protokół IPsec. Patryk Czarnik

Wymagania bezpieczeństwa wobec statycznych bezpośrednich 1-fazowych i 3-fazowych liczników energii elektrycznej. Wymaganie techniczne

OWASP i Top 10 Sposób tworzenia Top 10 Czym jest a czym NIE jest Top 10? Zmiany w wersji 2013 Omówienie nowych podatności na liście Podsumowanie

Wykład 12. Projektowanie i Realizacja. Sieci Komputerowych. Bezpieczeństwo sieci

Poufność (słaba) Integralność (niekryptograficzna) Uwierzytelnienie (słabe) Brak kontroli dostępu Brak zarządzania kluczami

Gerard Frankowski, Błażej Miga Zespół Bezpieczeństwa PCSS. Konferencja SECURE 2008 Warszawa,

Seminarium Katedry Radiokomunikacji, 8 lutego 2007r.

Zagrożenia warstwy drugiej modelu OSI - metody zabezpieczania i przeciwdziałania Autor: Miłosz Tomaszewski Opiekun: Dr inż. Łukasz Sturgulewski

Protokół Kerberos BSK_2003. Copyright by K. Trybicka-Francik 1. Bezpieczeństwo systemów komputerowych. Złożone systemy kryptograficzne

Zdalne logowanie do serwerów

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Podstawy Secure Sockets Layer

Podpis elektroniczny

Zastosowania informatyki w gospodarce Wykład 8

!!!!!! FUDO% Architektura%Bezpieczeństwa! % % Warszawa,%28:04:2014%

Kielce, dnia roku. HB Technology Hubert Szczukiewicz. ul. Kujawska 26 / Kielce

Problemy z bezpieczeństwem w sieci lokalnej

Autor: Piotr Ignał Opiekun: prof. dr hab. inż. Zbigniew Kotulski

ZABEZPIECZENIE KOMUNIKACJI Z SYSTEMEM E-PŁATNOŚCI

Transkrypt:

Program szkolenia: Bezpieczny kod - podstawy Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Bezpieczny kod - podstawy Arch-Sec-intro Bezpieczeństwo developerzy 3 dni 75% wykłady / 25% warsztaty Niezwykle często programiści od pierwszych dni swojej kariery zawodowej tworzą złożone systemy, które wdrażane są w nieprzyjaznym środowisku, jakim jest dzisiejsza Sieć. Kurs został zaprojektowany tak, aby usystematyzować i przekazać uczestnikom praktyczną wiedzę dotyczącą pisania bezpieczengo oprogramowania, które miałoby szansę sprostać powszechnym zagrożeniom takim jak przepełnienie bufora czy cross-site scripting (XSS). Niniejsze szkolenie jest znakomitym i nastawionym na praktykę wprowadzeniem do tematyki bezpieczeństwa oprogramowania. Celem kursu jest wyposażenie uczestników w absolutne minimum wiedzy i umiejętności, które powinien posiadać każdy zawodowy programista. W trakcie szkolenia uczestnicy mogą nie tylko poznać zagrożenia i techniki obrony, ale także wyrobić sobie intuicję co do tego, jakie rozwiązania można uznać za bezpieczne i jak pisać kod odporny na ataki. Szkolenie skierowane jest zarówno do nowicjuszy jak i doświadczonych programistów, którzy dotychczas nie mieli styczności z pisaniem bezpiecznego kodu. Zalety szkolenia: Budowa solidnych fundamentów i odpowiedniej postawy wobec zagadnień bezpieczeństwa Praktyczna wiedza niezbędna każdemu profesjonalnemu programiście Demonstracja najpopularniejszych ataków i technik obrony Strona: 1/5

Szczegółowy program: 1. Zasady pisania bezpiecznego kodu 1.1. Podstawowe pojęcia 1.1.1. Uwierzytelnienie 1.1.2. Autoryzacja 1.1.3. Poufność 1.1.4. Integralność 1.1.5. Odpowiedzialność 1.1.6. Dostępność 1.1.7. Niezaprzeczalość 1.1.8. Podstawowe pojęcia w praktyce 1.2. Projektowanie bezpiecznego oprogramowania 1.2.1. Zagrożenia 1.2.2. Projektowanie z myślą o bezpieczeństwie 1.2.3. Bezpieczeństwo a użyteczność systemu 1.2.4. Security by obscurity 1.2.5. Kod otwarty vs kod zamknięty 1.3. Zasady 1.3.1. Zasada minimalnego uprzywilejowania 1.3.2. Defense-in-depth 1.3.3. Najsłabsze ogniwo 1.3.4. Obsługa sytuacji błędów i sytuacji wyjątkowych 1.3.5. Bezpieczeństwo jako proces 2. Techniki pisania bezpiecznego kodu Strona: 2/5

2.1. Przepełnienie bufora, czyli wróg publiczny numer 1 2.1.1. Anatomia ataku typu "stack smashing" 2.1.2. Pomocne biblioteki 2.1.3. Analiza statyczna 2.1.4. A co ze stertą? 2.1.5. Ataki polegające na "przekręcaniu liczników" 2.2. Manipulacja stanem klienta HTTP, czyli dlaczego nie możemy ufać przeglądarkom? 2.2.1. Atak na naiwną aplikację Webową 2.2.2. Rozwiązania 2.2.2.1. Przechowywanie stanu aplikacji na serwerze 2.2.2.2. Zabezpieczenie integralności stanu po stronie klienta 2.2.3. Ciasteczka (cookies) 2.2.3.1. Gdzie kryje się niebezpieczeństwo? 2.2.3.2. Zasady bezpiecznego obchodzenia się z ciasteczkami 2.2.4. Kod JavaScript 2.2.4.1. Czy można zaufać programom działającym w przeglądarce? 2.2.4.2. Kod JavaScript jako wektor ataku 2.3. Wstrzykiwanie SQL, czyli najpopularniejsze zagrożenie dla aplikacji Webowych 2.3.1. Scenariusz ataku 2.3.2. Rozwiązania 2.3.2.1. Blacklisting 2.3.2.2. Whitelisting 2.3.2.3. Escaping 2.3.2.4. Jak może pomóc Twoja biblioteka dostępu do bazy danych? 2.3.2.5. Procedury składowane Strona: 3/5

2.3.3. Zasada minimalnego uprzywilejowania (znowu!) 2.4. Jak bezpieczenie zarządzać kontami użytkowników? 2.4.1. Ataki słownikowe na hasła 2.4.2. Szkic bezpiecznego rozwiązania 2.4.2.1. Rejestracja 2.4.2.2. Logowanie 2.4.2.3. Odzyskiwanie i resetowanie haseł 2.4.2.4. Wylogowanie 2.5. Bezpieczeństwo aplikacji działających w przeglądarce 2.5.1. Cross-Site Request Forgery (CSRF) 2.5.1.1. Przykładowy atak 2.5.1.2. Techniki obrony 2.5.2. Cross-Site Script Inclusion (CSSI) 2.5.2.1. Przykładowy atak 2.5.2.2. Techniki obrony 2.5.3. Cross-Site Scripting (XSS) 2.5.3.1. Przykładowy atak 2.5.3.2. Techniki obrony 3. Ochrona danych poufnych, czyli kryptografia dla początkujących 3.1. Szyfrowanie jako metoda ochrony przed nieuprawnionym dostępem 3.1.1. Algorytmy szyfrujące 3.1.2. Jak poprawnie wybrać tryb działania szyfru blokowego? 3.1.3. Bezpieczny wybór: algorytm AES 3.1.4. Poznajemy bibliotekę i narzędzia OpenSSL 3.2. Kryptografia asymetryczna jako rozwiązanie problemu wymiany kluczy Strona: 4/5

3.2.1. Problem kryptografii symetrycznej: jak bezpiecznie wymieniać się kluczami? 3.2.2. Algorytmy stosowane w praktyce: 3.2.2.1. Teraźniejszość: algorytm RSA 3.2.2.2. Przyszłość: algorytm ECC 3.2.2.3. Czy przyszłość już nadeszła? 3.2.3. Infrastruktura klucza publicznego (PKI), czyli powiązanie klucza z jego właścicielem 3.3. Klucze, czyli dlaczego diabeł tkwi w szczegółach 3.3.1. Jak wygenerować dobry klucz? 3.3.2. Jak bezpieczenie przechowywać klucze? 3.4. Podpisy i uwierzytelnianie, czyli chronimy przed nieuprawnioną modyfikacją danych 3.4.1. Wykrywanie niepożądanych modyfikacji danych za pomocą kodów uwierzytelniających MAC 3.4.2. Weryfikacja tożsamości nadawcy i integralności wiadomości za pomocą podpisów cyfrowych 3.5. SSL, czyli zabezpieczamy połączenia sieciowe 3.5.1. Jak działa protokół SSL? 3.5.2. Certyfikaty SSL: o czym należy wiedzieć wybierająć wystawcę certyfikatu 4. Podsumowanie 4.1. Bezpieczeństwo to proces 4.2. Co dalej? Strona: 5/5