reklama - zainteresowany?

Gray Hat C#. Język C# w kontroli i łamaniu zabezpieczeń - Helion

Gray Hat C#. Język C# w kontroli i łamaniu zabezpieczeń
Autor: Brandon Perry
Tytuł oryginału: Gray Hat C#: Creating and Automating Security Tools
Tłumaczenie: Radosław Meryk
ISBN: 978-83-283-4063-3
stron: 336, Format: 170x230, okładka: miękka
Data wydania: 2018-01-01
Księgarnia: Helion

Cena książki: 17,90 zł (poprzednio: 57,74 zł)
Oszczędzasz: 69% (-39,84 zł)

Dodaj do koszyka Gray Hat C#. Język C# w kontroli i łamaniu zabezpieczeń

Tagi: .NET - Programowanie | C# - Programowanie | Linux | Mac OS | Windows 10 | Windows 2000 | Windows 7 | Windows 8 | Windows 98 | Windows ME | Windows Mobile

C# to nowoczesny język programowania, który został od podstaw zaprojektowany jako obiektowy. Ta dojrzała technologia jest często wybierana przez twórców oprogramowania, również tego służącego do pokonywania zabezpieczeń systemów. Dzięki temu, że platforma .NET jest oprogramowaniem open source, w C# można pisać kod, który bez problemu będzie działał w każdym systemie operacyjnym. Co prawda język ten jest prosty i łatwy do nauczenia się, jednak dopiero gruntowna znajomość C# umożliwia efektywne tworzenie narzędzi związanych z bezpieczeństwem, służących choćby do wyszukiwania luk w infrastrukturze czy prowadzenia testów penetracyjnych.

Ta książka jest przeznaczona dla specjalistów ds. bezpieczeństwa, którzy chcą korzystać z języka C# do takich zadań jak fuzzowanie, skanowanie w poszukiwaniu luk zabezpieczeń i analiza złośliwego oprogramowania. Opisano tu zarówno podstawy języka C#, jak i jego dość zaawansowane funkcje. Przedstawiono szereg bibliotek dostępnych dla tego języka. Pokazano, jak pisać kod wyszukujący luki w zabezpieczeniach i jak tworzyć eksploity. Przedstawiono sposoby korzystania z takich narzędzi jak Nessus, sqlmap i Cuckoo Sandbox. Dzięki technikom zaprezentowanym w książce administrator bezpieczeństwa bez problemu zautomatyzuje nawet najbardziej żmudne codzienne zadania!

W tej książce między innymi:

  • Podstawowe i zaawansowane funkcjonalności języka C#
  • Generowanie kodu ładunków, również wieloplatformowych
  • Skanery, w tym OpenVAS, Nessus i Nexpose
  • Automatyczna identyfikacja luk umożliwiających wstrzyknięcie kodu SQL
  • Tworzenie w C# narzędzi do inżynierii wstecznej

C#. Sprawdź swój system zabezpieczeń!


Brandon Perry jest programistą i gorącym zwolennikiem idei open source. Odkąd pojawiło się środowisko Mono, pisze aplikacje w języku C#. Tworzy też moduły dla frameworka Metasploit, analizuje pliki binarne i zarządza ciekawymi projektami (https://volatileminds.net/). Fascynuje się badaniami nad bezpieczeństwem systemów informatycznych. Chętnie dzieli się swoją wiedzą, pisze książki i pomaga innym w tworzeniu solidniejszego oprogramowania.

Dodaj do koszyka Gray Hat C#. Język C# w kontroli i łamaniu zabezpieczeń

Spis treści

Gray Hat C#. Jzyk C# w kontroli i amaniu zabezpiecze -- spis treci

Sowo wstpne (11)

Przedmowa (15)

  • Dlaczego naley ufa Mono? (16)
  • Dla kogo jest ta ksika? (16)
  • Organizacja tej ksiki (17)
  • Podzikowania (19)
  • Ostatnia uwaga (19)

1. Byskawiczny kurs jzyka C# (21)

  • Wybór rodowiska IDE (22)
  • Prosty przykad (22)
  • Wprowadzenie do klas i interfejsów (24)
    • Tworzenie klasy (24)
    • Tworzenie interfejsu (25)
    • Tworzenie podklas klasy abstrakcyjnej i implementacja interfejsu (26)
    • Powizanie wszystkiego z metod Main() (28)
    • Uruchamianie metody Main() (30)
  • Metody anonimowe (30)
    • Przypisywanie delegata do metody (30)
    • Aktualizacja klasy Firefighter (31)
    • Tworzenie argumentów opcjonalnych (31)
    • Aktualizacja metody Main() (32)
    • Uruchomienie zaktualizowanej metody Main() (33)
  • Integracja z bibliotekami natywnymi (34)
  • Podsumowanie (35)

2. Fuzzing. Wykorzystanie XSS oraz iniekcji SQL (37)

  • Konfigurowanie maszyny wirtualnej (38)
    • Dodawanie sieci wirtualnej "tylko do hosta" (38)
    • Tworzenie maszyny wirtualnej (39)
    • Uruchamianie maszyny wirtualnej z obrazu ISO z systemem BadStore (39)
  • Iniekcje SQL (41)
  • Skrypty krzyowe (43)
  • Fuzzing da GET z wykorzystaniem fuzzera mutacyjnego (45)
    • Preparowanie parametrów i testowanie luk (46)
    • Budowanie da HTTP (47)
    • Testowanie fuzzowanego kodu (48)
  • Fuzzowanie da POST (49)
    • Pisanie fuzzera dania POST (50)
    • Rozpoczyna si fuzzing (52)
    • Fuzzowanie parametrów (54)
  • Fuzzowanie danych w formacie JSON (56)
    • Konfigurowanie wraliwego urzdzenia (56)
    • Przechwytywanie wraliwych da JSON (56)
    • Tworzenie fuzzera JSON (57)
    • Testowanie fuzzera JSON (62)
  • Wykorzystywanie iniekcji SQL (63)
    • Wykorzystywanie eksploita bazujcego na instrukcji UNION rcznie (64)
    • Wykorzystywanie eksploita bazujcego na instrukcji UNION programowo (66)
    • Wykorzystywanie luk SQL typu Boolean-blind (70)
  • Podsumowanie (79)

3. Fuzzowanie punktów kocowych SOAP (81)

  • Konfiguracja wraliwych punktów kocowych (82)
  • Parsowanie pliku WSDL (83)
    • Tworzenie klasy dla dokumentu WSDL (84)
    • Podstawowe metody parsowania (85)
    • Klasy dla typu SOAP i parametrów (87)
    • Tworzenie klasy SoapMessage definiujcej przesyane dane (90)
    • Implementacja klasy reprezentujcej czci komunikatu (90)
    • Definiowanie operacji portu za pomoc klasy SoapPortType (91)
    • Implementacja klasy zawierajcej operacje na porcie (93)
    • Definiowanie protokoów uywanych w powizaniach SOAP (93)
    • Kompilacja listy operacji wzów potomnych (95)
    • Znajdowanie usug SOAP w portach (96)
  • Automatyczne fuzzowanie punktów kocowych SOAP pod ktem wraliwoci na iniekcje SQL (98)
    • Fuzzowanie pojedynczych usug SOAP (99)
    • Fuzzowanie portów SOAP HTTP POST (103)
    • Fuzzowanie portu XML usugi SOAP (106)
    • Uruchomienie fuzzera (110)
  • Podsumowanie (111)

4. Pisanie adunków typu connect-back, bind i metasploit (113)

  • Tworzenie adunku Connect-Back (114)
    • Strumie sieci (114)
    • Uruchomienie polecenia (116)
    • Uruchomienie adunku (117)
  • Wizanie adunku (118)
    • Odbieranie danych, uruchamianie polece i zwracanie wyników (119)
    • Uruchamianie polece ze strumienia (120)
  • Wykorzystanie protokou UDP do ataku na sie (121)
    • Kod dla komputera docelowego (122)
    • Kod napastnika (125)
  • Uruchamianie adunków typu Metasploit x86 i x86-64 za pomoc jzyka C# (128)
    • Konfigurowanie frameworka Metasploit (128)
    • Generowanie adunków (130)
    • Wykonywanie natywnych adunków systemu Windows jako kodu niezarzdzanego (131)
    • Uruchamianie natywnych adunków w systemie Linux (133)
  • Podsumowanie (137)

5. Automatyzacja skanera Nessus (139)

  • REST i API systemu Nessus (140)
  • Klasa NessusSession (141)
    • Wykonywanie da HTTP (142)
    • Wylogowanie i sprztanie (144)
    • Testowanie klasy NessusSession (145)
  • Klasa NessusManager (146)
  • Wykonywanie skanowania Nessus (148)
  • Podsumowanie (150)

6. Automatyzacja Nexpose (153)

  • Instalacja Nexpose (154)
    • Aktywacja i testowanie (155)
    • argon Nexpose (156)
  • Klasa NexposeSession (157)
    • Metoda ExecuteCommand() (158)
    • Wylogowanie i zniszczenie sesji (161)
    • Znajdowanie wersji interfejsu API (162)
    • Korzystanie z Nexpose API (163)
  • Klasa NexposeManager (163)
  • Automatyzacja skanowania sabych punktów (165)
    • Tworzenie lokalizacji z aktywami (165)
    • Rozpoczynanie skanowania (166)
  • Tworzenie raportu na temat lokalizacji w formacie PDF i usuwanie lokalizacji (167)
  • Kompletowanie rozwizania (168)
    • Rozpoczcie skanowania (169)
    • Generowanie raportu i usuwanie lokalizacji (170)
    • Uruchamianie automatyzacji (170)
  • Podsumowanie (171)

7. Automatyzacja OpenVas (173)

  • Instalacja systemu OpenVAS (173)
  • Budowanie klas (174)
  • Klasa OpenVaSSession (175)
    • Uwierzytelnianie na serwerze OpenVAS (176)
    • Tworzenie metody do uruchamiania polece OpenVAS (177)
    • Odczytywanie komunikatu z serwera (177)
    • Konfiguracja strumienia TCP do wysyania i odbierania polece (178)
    • Walidacja certyfikatów i odmiecanie (179)
    • Odczytywanie wersji OpenVAS (180)
  • Klasa OpenVASManager (181)
    • Pobieranie konfiguracji skanowania i tworzenie celów (182)
    • Opakowanie automatyzacji (186)
    • Uruchamianie automatyzacji (187)
  • Podsumowanie (187)

8. Automatyzowanie programu Cuckoo Sandbox (189)

  • Konfigurowanie Cuckoo Sandbox (190)
  • Rczne uruchamianie API systemu Cuckoo Sandbox (190)
    • Uruchamianie API (191)
    • Sprawdzanie stanu rodowiska Cuckoo (192)
  • Tworzenie klasy CuckooSession (193)
    • Metody ExecuteCommand() do obsugi da HTTP (194)
    • Tworzenie wieloczciowych danych HTTP za pomoc metody GetMultipartFormData() (196)
    • Przetwarzanie danych z pliku za pomoc klasy FileParameter (198)
    • Testowanie klasy CuckooSession i klas pomocniczych (199)
  • Klasa CuckooManager (201)
    • Metoda CreateTask() (201)
    • Szczegóy zadania i metody tworzenia raportów (203)
    • Tworzenie abstrakcyjnej klasy Task (204)
    • Sortowanie i tworzenie rónych typów klas (205)
  • Poczenie elementów ze sob (207)
  • Testowanie aplikacji (209)
  • Podsumowanie (211)

9. Automatyzacja sqlmap (213)

  • Uruchamianie sqlmap (214)
    • Interfejs API REST programu sqlmap (215)
    • Testowanie API programu sqlmap za pomoc curl (216)
  • Tworzenie sesji dla programu sqlmap (220)
    • Tworzenie metody do wykonywania da GET (221)
    • Wykonywanie dania POST (222)
    • Testowanie klasy obsugi sesji (223)
  • Klasa SqlmapManager (225)
    • Lista opcji sqlmap (227)
    • Tworzenie metod realizujcych skanowanie (229)
    • Nowa metoda Main() (230)
  • Raport ze skanowania (231)
  • Automatyzowanie penego skanu sqlmap (232)
  • Integracja sqlmap z fuzzerem SOAP (234)
    • Dodanie obsugi da GET do fuzzera SOAP (235)
    • Dodanie obsugi da POST do programu sqlmap (236)
    • Wywoywanie nowych metod (238)
  • Podsumowanie (240)

10. Automatyzacja ClamAV (241)

  • Instalacja programu ClamAV (242)
  • Natywna biblioteka ClamaAV kontra demon sieciowy clamd (243)
  • Automatyzacja z wykorzystaniem natywnych bibliotek ClamAV (244)
    • Pomocnicze enumeracje i klasy (244)
    • Dostp do funkcji natywnej biblioteki ClamAV (247)
    • Kompilacja silnika programu ClamAV (248)
    • Skanowanie plików (250)
    • Sprztanie (252)
    • Testowanie programu przez skanowanie pliku EICAR (252)
  • Automatyzacja z wykorzystaniem demona clamd (254)
    • Instalacja demona clamd (254)
    • Uruchamianie demona clamd (255)
    • Tworzenie klasy obsugi sesji dla demona clamd (255)
    • Tworzenie klasy menedera demona clamd (257)
    • Testowanie z wykorzystaniem demona clamd (258)
  • Podsumowanie (259)

11. Automatyzacja Metasploit (261)

  • Uruchamianie serwera RPC (262)
  • Instalacja Metasploitable (263)
  • Pobranie biblioteki MSGPACK (264)
    • Instalowanie menedera pakietów NuGet w rodowisku MonoDevelop (264)
    • Instalacja biblioteki MSGPACK (265)
    • Dodanie referencji do biblioteki MSGPACK (266)
  • Klasa MetasploitSession (267)
    • Tworzenie metody Execute() dla da HTTP i interakcje z bibliotek MSGPACK (268)
    • Przeksztacanie danych odpowiedzi z formatu MSGPACK (270)
  • Testowanie klasy sesji (272)
  • Klasa MetasploitManager (273)
  • Scalamy komponenty w cao (275)
    • Uruchamianie eksploita (276)
    • Interakcje z powok (277)
    • Pobieranie powok (278)
  • Podsumowanie (279)

12. Automatyzacja Arachni (281)

  • Instalacja Arachni (281)
  • Interfejs API REST systemu Arachni (282)
    • Tworzenie klasy ArachniHTTPSession (284)
    • Tworzenie klasy ArachniHTTPManager (285)
  • Poczenie klas sesji i menedera (286)
  • RPC systemu Arachni (287)
    • Rczne uruchamianie mechanizmu RPC (288)
    • Klasa ArachniRPCSession (290)
    • Metody pomocnicze operacji ExecuteCommand() (292)
    • Metoda ExecuteCommand() (293)
    • Klasa ArachniRPCManager (296)
  • Scalamy komponenty w cao (297)
  • Podsumowanie (300)

13. Dekompilacja i inynieria wsteczna zarzdzanych zestawów (301)

  • Dekompilacja zestawów zarzdzanych (302)
  • Testowanie dekompilatora (305)
  • Wykorzystanie narzdzia monodis do analizowania zestawu (306)
  • Podsumowanie (309)

14. Czytanie gazi rejestru w trybie offline (311)

  • Struktura gazi rejestru (312)
  • Pobieranie gazi rejestru (313)
  • Czytanie gazi rejestru (314)
    • Klasa do parsowania pliku gazi rejestru (315)
    • Tworzenie klasy reprezentujcej klucze wzów (316)
    • Implementacja klasy do przechowywania kluczy wartoci (321)
  • Testowanie biblioteki (322)
  • Zrzucanie klucza Boot (323)
    • Metoda GetBootKey() (323)
    • Metoda GetValueKey() (325)
    • Metoda GetNodeKey() (325)
    • Metoda StringToByteArray() (326)
    • Uzyskanie klucza rozruchowego (327)
    • Weryfikacja klucza rozruchowego (327)
  • Podsumowanie (328)

Skorowidz (331)

Dodaj do koszyka Gray Hat C#. Język C# w kontroli i łamaniu zabezpieczeń

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2023 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.