Facebook - konwersja
  • promocja

Po pierwsze: bezpieczeństwo. Przewodnik dla twórców oprogramowania - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
20 grudnia 2022
Format ebooka:
EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.

Po pierwsze: bezpieczeństwo. Przewodnik dla twórców oprogramowania - ebook

Bezpieczeństwo oprogramowania jest niezwykle ważnym i złożonym zagadnieniem. Proste i zawsze sprawdzające się zasady właściwie nie istnieją. Aby zapewnić systemom IT bezpieczeństwo, trzeba zacząć o nim myśleć już na wstępnym etapie projektowania oprogramowania i zaangażować w ten proces cały zespół, od najwyższego kierownictwa, przez architektów, projektantów, po testerów, a nawet przyszłych użytkowników systemu. Często się okazuje, że świadomość wagi problemów bezpieczeństwa jest w takim zespole niewielka, a wiedza - fragmentaryczna.

Ta książka powstała z myślą o architektach oprogramowania, projektantach, programistach i dyrektorach do spraw technicznych. Zwięźle i przystępnie opisano w niej, jak zadbać o bezpieczeństwo na wczesnym etapie projektowania oprogramowania i jak zaangażować w ten proces cały team. Najpierw zaprezentowano podstawowe pojęcia, takie jak zaufanie, zagrożenia, łagodzenie skutków, bezpieczne wzorce projektowe i kryptografia. Omówiono też szczegółowo proces tworzenia projektu oprogramowania i jego przegląd pod kątem bezpieczeństwa. Wyjaśniono, jakie błędy najczęściej pojawiają się podczas kodowania i w jaki sposób powodują powstawanie luk w zabezpieczeniach. Poszczególne zagadnienia zostały uzupełnione obszernymi fragmentami kodu w językach C i Python.

W książce:

  • identyfikacja ważnych zasobów, obszarów ataku i granic zaufania w systemie
  • ocena skuteczności różnych technik łagodzenia zagrożeń
  • wzorce projektowe ułatwiające zapewnianie bezpieczeństwa
  • podatności, w tym XSS, CSRF i błędy związane z pamięcią
  • testy bezpieczeństwa
  • ocena projektu oprogramowania pod kątem bezpieczeństwa

Troska o bezpieczeństwo jest najlepszą praktyką!

Spis treści

Słowo wstępne

Przedmowa

Podziękowania

Wprowadzenie

  • Kto powinien przeczytać tę książkę?
  • Jakie tematy są omawiane w książce?
    • Część I: Koncepcje
    • Część II: Projektowanie
    • Część III: Implementacja
    • Posłowie
    • Dodatki
  • Dobra, bezpieczna zabawa

Część I. Koncepcje

1. Podstawy

  • Zrozumieć bezpieczeństwo
  • Zaufanie
    • Obdarzanie zaufaniem
    • Nie możesz zobaczyć bitów
    • Kompetencja i niedoskonałość
    • Poziomy zaufania
    • Decyzje dotyczące zaufania
    • Komponenty, którym ufamy w sposób pośredni
    • Bycie wiarygodnym
  • Klasyczne zasady
    • Bezpieczeństwo informacji - C-I-A
    • Złoty standard
    • Prywatność

2. Zagrożenia

  • Perspektywa napastnika
  • Cztery pytania
  • Modelowanie zagrożeń
    • Praca na bazie modelu
    • Identyfikacja aktywów
    • Identyfikacja obszarów ataku
    • Określanie granic zaufania
    • Identyfikacja zagrożeń
    • Łagodzenie zagrożeń
  • Rozważania o ochronie prywatności
  • Modelowanie zagrożeń w każdym miejscu

3. Łagodzenie

  • Przeciwdziałanie zagrożeniom
  • Strukturalne strategie łagodzenia skutków
    • Minimalizuj obszary ataku
    • Zawężanie okienka podatności
    • Zminimalizuj ekspozycję danych
  • Polityka dostępu i kontrola dostępu
  • Interfejsy
  • Komunikacja
  • Przechowywanie danych

4. Wzorce

  • Cechy projektu
    • Ekonomia projektowania
    • Przejrzysty projekt
  • Minimalizacja narażenia
    • Najmniejsze przywileje
    • Jak najmniej informacji
    • Bezpieczny z założenia
    • Listy dozwolonych zamiast List zabronionych
    • Unikaj przewidywalności
    • Bezpieczna awaria
  • Zdecydowane egzekwowanie reguł
    • Pełna mediacja
    • Jak najmniej współdzielonych mechanizmów
  • Nadmiarowość
    • Wielowarstwowa obrona
    • Rozdzielanie przywilejów
  • Zaufanie i odpowiedzialność
    • Zasada ograniczonego zaufania
    • Przyjmij odpowiedzialność za bezpieczeństwo
  • Antywzorce
    • Reprezentant wprowadzony w błąd
    • Przepływ zwrotny zaufania
  • Haczyki innych firm
    • Komponenty, których nie da się załatać

5. Kryptografia

  • Narzędzia kryptograficzne
  • Liczby losowe
    • Liczby pseudolosowe
    • Kryptograficznie bezpieczne liczby pseudolosowe
  • Kody uwierzytelniania komunikatów
    • Używanie MAC do zapobiegania manipulacjom
    • Ataki metodą powtórzenia
    • Bezpieczna łączność z użyciem MAC
  • Szyfrowanie symetryczne
    • Jednorazowy bloczek
    • Zaawansowany standard szyfrowania
    • Używanie kryptografii symetrycznej
  • Szyfrowanie asymetryczne
    • Kryptosystem RSA
  • Podpisy cyfrowe
  • Certyfikaty cyfrowe
  • Wymiana kluczy
  • Korzystanie z kryptografii

Część II. Projekt

6. Projektowanie z uwzględnieniem bezpieczeństwa

  • Uwzględnianie bezpieczeństwa w projektowaniu
    • Zadbaj o wyraźne doprecyzowanie założeń projektowych
    • Określanie zakresu
    • Określanie wymagań dotyczących bezpieczeństwa
    • Modelowanie zagrożeń
  • Wprowadzanie środków łagodzących
    • Projektowanie interfejsów
    • Projektowanie obsługi danych
  • Uwzględnianie prywatności w projekcie
  • Planowanie pełnego cyklu życia oprogramowania
  • Osiąganie kompromisów
  • Prostota projektu

7. Przeglądy bezpieczeństwa

  • Logistyka SDR
    • Po co przeprowadzać SDR?
    • Kiedy należy przeprowadzić SDR?
    • Dokumentacja jest niezbędna
  • Proces SDR
    • 1. Przestudiuj projekt
    • 2. Pytaj
    • 3. Identyfikuj
    • 4. Współpracuj
    • 5. Pisz
    • 6. Śledź dokonywane zmiany
  • Ocena bezpieczeństwa projektu
    • Wykorzystanie czterech pytań jako wskazówek
    • Na co zwracać uwagę
    • Przegląd związany z prywatnością
    • Przeglądy aktualizacji
  • Zarządzanie różnicą zdań
    • Komunikuj się w taktowny sposób
    • Studium przypadku: trudny przegląd
    • Eskalowanie braku porozumienia
    • Ćwicz, ćwicz, ćwicz

Część III. Implementacja

8. Programowanie z uwzględnieniem aspektów bezpieczeństwa

  • Wyzwania
    • Złośliwe działanie
    • Podatności na ataki są błędami
    • Łańcuchy podatności na zagrożenia
    • Błędy i entropia
    • Czujność
  • Studium przypadku: GotoFail
    • Jednolinijkowa podatność
    • Uwaga na "strzał w stopę"
    • Wnioski z GotoFail
  • Podatność na błędy w kodowaniu
    • Niepodzielność
    • Ataki związane z pomiarem czasu
    • Serializacja
  • Typowi podejrzani

9. Błędy w niskopoziomowym programowaniu

  • Podatności związane z arytmetyką
    • Błędy w zabezpieczeniach dla liczb całkowitych o stałej szerokości
    • Luki w zabezpieczeniach precyzji zmiennoprzecinkowej
    • Przykład: niedomiar wartości zmiennoprzecinkowych
    • Przykład: przepełnienie liczby całkowitej
    • Bezpieczna arytmetyka
  • Luki w zabezpieczeniach dostępu do pamięci
    • Zarządzanie pamięcią
    • Przepełnienie bufora
    • Przykład: podatność alokacji pamięci
    • Studium przypadku: Heartbleed

10. Niezaufane dane wejściowe

  • Walidacja
    • Poprawność danych
    • Kryteria walidacji
    • Odrzucanie nieprawidłowych danych wejściowych
    • Poprawianie nieprawidłowych danych wejściowych
  • Podatności w łańcuchach znaków
    • Problemy z długością
    • Problemy z kodowaniem Unicode
  • Podatność na wstrzyknięcia
    • Wstrzyknięcie SQL
    • Trawersowanie ścieżek
    • Wyrażenia regularne
    • Niebezpieczeństwa związane z językiem XML
  • Łagodzenie ataków typu wstrzyknięcie

11. Bezpieczeństwo sieci Web

  • Buduj, korzystając z gotowych frameworków
  • Model bezpieczeństwa sieciowego
    • Protokół HTTP
    • Certyfikaty cyfrowe i HTTPS
    • Zasada tego samego pochodzenia
    • Cookies
  • Często spotykane podatności w sieci Web
    • Skrypty międzywitrynowe (XSS)
    • Fałszowanie żądania pomiędzy stronami (CSRF)
  • Więcej podatności i środków łagodzących

12. Testowanie bezpieczeństwa

  • Czym jest testowanie bezpieczeństwa?
  • Testowanie bezpieczeństwa na przykładzie podatności GotoFail
    • Testy funkcjonalne
    • Testy funkcjonalne z wykorzystaniem podatności
    • Przypadki testowe do testowania bezpieczeństwa
    • Ograniczenia testów bezpieczeństwa
  • Pisanie przypadków testowych do testów bezpieczeństwa
    • Testowanie walidacji danych wejściowych
    • Testowanie podatności na ataki XSS
  • Testowanie odporności na błędne dane
  • Testy regresji bezpieczeństwa
  • Testowanie dostępności
    • Zużycie zasobów
    • Badanie progu
    • Rozproszone ataki typu Denial-of-Service
  • Najlepsze praktyki w testowaniu zabezpieczeń
    • Rozwój oprogramowania oparty na testach
    • Wykorzystanie testów integracyjnych
    • Testy bezpieczeństwa - nadrabianie zaległości

13. Najlepsze praktyki w tworzeniu bezpiecznych projektów

  • Jakość kodu
    • Higiena kodu
    • Obsługa wyjątków i błędów
    • Dokumentowanie bezpieczeństwa
    • Przeglądy kodu pod kątem bezpieczeństwa
  • Zależności
    • Wybieranie bezpiecznych komponentów
    • Zabezpieczanie interfejsów
    • Nie wymyślaj na nowo koła w bezpieczeństwie
    • Postępowanie z przestarzałymi zabezpieczeniami
  • Klasyfikowanie zagrożeń
    • Oceny DREAD
    • Tworzenie działających exploitów
    • Podejmowanie decyzji w triażu
  • Zabezpieczanie środowiska programistycznego
    • Oddzielenie prac rozwojowych od produkcji
    • Zabezpieczanie narzędzi programistycznych
    • Wypuszczanie produktu na rynek

Posłowie

  • Wezwanie do działania
    • Bezpieczeństwo to zadanie każdego z nas
    • Zaprawiony w bezpieczeństwie
  • Bezpieczeństwo w przyszłości
    • Poprawa jakości oprogramowania
    • Zarządzanie złożonością
    • Od minimalizowania do maksymalizowania przejrzystości
    • Zwiększanie autentyczności, zaufania i odpowiedzialności oprogramowania
  • Dostarczanie na ostatnim kilometrze
  • Wnioski

A. Przykładowa dokumentacja projektowa

  • Tytuł: dokument projektowy komponentu rejestrującego prywatne dane
    • Spis treści
  • Sekcja 1. Opis produktu
  • Sekcja 2. Przegląd
    • 2.1. Cel
    • 2.2. Zakres
    • 2.3. Pojęcia
    • 2.4. Wymagania
    • 2.5. Cele poza zakresem projektu
    • 2.6. Nierozstrzygnięte kwestie
    • 2.7. Alternatywne rozwiązania
  • Sekcja 3. Przypadki użycia
  • Sekcja 4. Architektura systemu
  • Sekcja 5. Projekt danych
  • Sekcja 6. Interfejsy API
    • 6.1. Żądanie Witaj
    • 6.2. Żądanie definicji schematu
    • 6.3. Żądanie dziennika zdarzeń
    • 6.4. Żądanie Żegnaj
  • Sekcja 7. Projekt interfejsu użytkownika
  • Sekcja 8. Projekt techniczny
  • Sekcja 9. Konfiguracja
  • Sekcja 10. Odwołania

B. Słowniczek

C. Ćwiczenia

D. Ściągi

Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-283-9433-9
Rozmiar pliku: 5,0 MB

BESTSELLERY

Kategorie: