Atak_na_siec_okiem_hakera_Wykrywanie_i_eksploatacja_luk_w_zabezpieczeniach_sieci_ataksi.pdf

(1348 KB) Pobierz
Tytuł oryginału: Attacking Network Protocols: A Hacker’s Guide to Capture,
Analysis, and Exploitation
Tłumaczenie: Andrzej Grażyński
ISBN: 978-83-283-5390-9
Copyright © 2018 by James Forshaw. Title of English-language original: Attacking Network Protocols:
A Hacker’s Guide to Capture, Analysis, and Exploitation, ISBN 978-1-59327-750-5, published by No Starch
Press.
Polish-language edition copyright © 2019 by Helion S.A. All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Helion SA dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne
i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym
ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Helion SA nie ponoszą również
żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.
Helion SA
ul. Kościuszki 1c, 44-100 Gliwice
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/ataksi.zip
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/ataksi
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
O AUTORZE ............................................................................................. 10
O RECENZENCIE ...................................................................................... 10
PRZEDMOWA ........................................................................................... 11
PODZIĘKOWANIA ................................................................................... 15
WSTĘP ...................................................................................................... 17
Po co czytać tę książkę? .........................................................................................................17
Co znajdziesz w tej książce? ...................................................................................................18
Jak korzystać z tej książki? ......................................................................................................19
Skontaktuj się ze mną .............................................................................................................20
1
PODSTAWY SIECI KOMPUTEROWYCH .................................................... 21
Architektura sieci i protokoły sieciowe ..................................................................................21
Zestaw protokołów internetowych .......................................................................................23
Enkapsulacja danych ...............................................................................................................25
Nagłówki, stopki i adresy ...................................................................................................25
Transmisja danych ..............................................................................................................27
Trasowanie w sieci .................................................................................................................28
Mój model analizy protokołów sieciowych ............................................................................29
Podsumowanie .......................................................................................................................31
2
PRZECHWYTYWANIE RUCHU SIECIOWEGO ............................................ 33
Bierne przechwytywanie ruchu sieciowego ...........................................................................34
Wireshark — podstawy .........................................................................................................34
Alternatywne techniki biernego przechwytywania ................................................................37
Śledzenie
wywołań funkcji systemowych ...........................................................................37
Linuksowy program strace .................................................................................................38
Monitorowanie połączeń sieciowych za pomocą programu DTrace .................................39
Monitor procesów Windows .............................................................................................41
Kup książkę
Poleć książkę
Zalety i wady biernego przechwytywania ............................................................................. 43
Czynne przechwytywanie ruchu sieciowego ........................................................................ 43
Proxy sieciowe ...................................................................................................................... 44
Proxy z przekierowaniem portów .................................................................................... 44
Proxy SOCKS .................................................................................................................... 48
Proxy HTTP ...................................................................................................................... 53
Proxy przekazujące HTTP ................................................................................................ 54
Proxy odwrotne HTTP ..................................................................................................... 57
Podsumowanie ...................................................................................................................... 60
3
STRUKTURA PROTOKOŁÓW SIECIOWYCH ............................................. 61
Struktury protokołów binarnych ........................................................................................... 62
Dane numeryczne ............................................................................................................. 62
Tekst i dane czytelne dla człowieka .................................................................................. 68
Binarne dane o zmiennej długości ..................................................................................... 72
Data i czas ............................................................................................................................. 75
Czas w systemach Unix/POSIX ......................................................................................... 76
Znacznik FILETIME w systemie Windows ........................................................................ 76
Wzorzec typ – długość – wartość ......................................................................................... 76
Multipleksowanie i fragmentacja ........................................................................................... 77
Informacje sieciowe ............................................................................................................... 79
Strukturalne formaty binarne ................................................................................................ 80
Struktury protokołów tekstowych ........................................................................................ 81
Dane numeryczne ............................................................................................................. 81
Wartości logiczne (boolowskie) ........................................................................................ 82
Data i czas ......................................................................................................................... 82
Dane zmiennej długości ..................................................................................................... 82
Strukturalne formaty tekstowe ......................................................................................... 83
Kodowanie danych binarnych ................................................................................................ 86
Kodowanie szesnastkowe ................................................................................................. 86
Base64 ............................................................................................................................... 87
Podsumowanie ...................................................................................................................... 89
4
ZAAWANSOWANE TECHNIKI
PRZECHWYTYWANIA RUCHU SIECIOWEGO ........................................... 91
Przetrasowywanie ruchu ....................................................................................................... 92
Program Traceroute .......................................................................................................... 92
Tablice trasowania ............................................................................................................. 93
Konfigurowanie routera ........................................................................................................ 95
Włączanie trasowania w Windows .................................................................................... 96
Włączanie trasowania w systemach uniksowych ............................................................... 96
4
Spis tre
ś
ci
Kup książkę
Poleć książkę
NAT — translacja adresów sieciowych .................................................................................97
Włączanie SNAT ................................................................................................................97
Konfigurowanie SNAT w Linuksie .....................................................................................98
Włączanie DNAT ...............................................................................................................99
Przekierowanie ruchu do bramy ..........................................................................................101
Ingerencja w DHCP .........................................................................................................101
Infekowanie ARP ..............................................................................................................104
Podsumowanie .....................................................................................................................107
5
ANALIZA „NA DRUCIE” ....................................................................... 109
SuperFunkyChat — aplikacja generująca ruch .....................................................................109
Uruchamianie serwera .....................................................................................................110
Uruchamianie aplikacji klienckiej ......................................................................................110
Komunikacja między aplikacjami klienckimi .....................................................................111
Wireshark na kursie kolizyjnym ...........................................................................................112
Generowanie ruchu sieciowego i przechwytywanie pakietów ........................................113
Podstawowa analiza .........................................................................................................115
Odczytywanie zawartości sesji TCP ................................................................................115
Identyfikowanie elementów struktury pakietu na podstawie zrzutu szesnastkowego ........117
Podgląd pojedynczych pakietów ......................................................................................117
Odkrywanie struktury protokołu .....................................................................................119
Weryfikowanie założeń ....................................................................................................120
Dysekcja protokołu przy użyciu języka Python ................................................................121
Dysektory dla Wiresharka w języku Lua ..............................................................................127
Tworzenie dysektora .......................................................................................................130
Dysekcja protokołu w języku Lua ....................................................................................131
Parsowanie pakietu komunikatu ......................................................................................132
Czynne analizowanie ruchu za pomocą proxy .....................................................................135
Konfigurowanie proxy ......................................................................................................136
Analiza protokołu przy użyciu proxy ................................................................................138
Podstawowe parsowanie protokołu ................................................................................140
Zmiany w zachowaniu się protokołu ...............................................................................142
Podsumowanie .....................................................................................................................144
6
INŻYNIERIA WSTECZNA ....................................................................... 147
Kompilatory, interpretery i asemblery .................................................................................148
Języki interpretowane ......................................................................................................149
Języki kompilowane .........................................................................................................149
Konsolidacja statyczna kontra konsolidacja dynamiczna ..................................................150
Architektura x86 ..................................................................................................................150
Zestaw instrukcji maszynowych .......................................................................................151
Rejestry procesora ...........................................................................................................152
Przepływ sterowania w programie ..................................................................................156
5
Spis tre
ś
ci
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin