C++ Elementarz hakera.pdf
(
1017 KB
)
Pobierz
Hackish C++ Pranks & Tricks
IDZ DO
PRZYK£ADOW
Y ROZDZIA£
C++. Elementarz
SPIS TRECI
hakera
KATALOG KSI¥¯EK
KATALOG ONLINE
Autor: Michael Flenov
T³umaczenie: Przemys³aw Szeremiota
ISBN: 83-7361-801-5
Tytu³ orygina³
u:
Hackish C++ Pranks & Tricks
Format: B5, stron: 296
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Haker, wbrew utartym pogl¹dom, nie jest osob¹, której g³ównym celem jest niszczenie
— haker to kto, kto podchodzi do standardowych problemów programistycznych
w niestandardowy sposób, tworz¹c w³asne rozwi¹zania, czêsto zaskakuj¹ce innych.
Opracowywanie takich nietypowych rozwi¹zañ wymaga wszechstronnej wiedzy
z zakresu programowania, znajomoci systemu operacyjnego i umiejêtnoci
wynajdowania i stosowania nieudokumentowanych funkcji jêzyków programowania
i platform systemowych.
„C++. Elementarz hakera” to ksi¹¿ka przeznaczona dla wszystkich tych, którym
„zwyk³e” programowanie ju¿ nie wystarcza i którzy chc¹ stworzyæ co wyj¹tkowego.
Przedstawia techniki, dziêki którym programy bêd¹ dzia³aæ szybciej, a efekty ich
dzia³ania bêd¹ zachwycaæ i zaskakiwaæ. Czytaj¹c j¹ nauczysz siê pisaæ aplikacje,
które rozbawi¹ lub zirytuj¹ innych u¿ytkowników, jak tworzyæ narzêdzia do
skanowania portów i jak wykorzystywaæ wiedzê o systemach operacyjnych
i jêzykach programowania do optymalizacji i przyspieszania dzia³ania programów.
• Optymalizacja kodu ród³owego i usuwanie w¹skich garde³
• Zasady prawid³owego projektowania aplikacji
• Tworzenie programów-¿artów
• Programowanie w systemie Windows
• Sieci i protoko³y sieciowe
• Implementacja obs³ugi sieci we w³asnych aplikacjach
• Sztuczki ze sprzêtem
• Techniki hakerskie
Wiedz¹c, jak dzia³aj¹ hakerzy, bêdziesz w stanie zabezpieczyæ swoje aplikacje przed
atakami tych, którzy swoj¹ wiedzê wykorzystuj¹ w niew³aciwy sposób.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treci
Wstp ............................................................................................... 7
Wprowadzenie ................................................................................... 9
O ksice...........................................................................................................................9
Kim jest haker? Jak zosta hakerem?..............................................................................11
Rozdział 1. Jak uczyni program zwartym, a najlepiej niewidzialnym? .................. 19
1.1. Kompresowanie plików wykonywalnych.................................................................19
1.2. Ani okna, ani drzwi…..............................................................................................24
1.3. Wn'trze programu....................................................................................................30
1.3.1. Zasoby projektu.............................................................................................31
1.3.2. Kod -ródłowy programu................................................................................33
1.4. Optymalizacja programu..........................................................................................43
Zasada 1. Optymalizowa mona wszystko.............................................................44
Zasada 2. Szukaj wskich gardeł i słabych ogniw....................................................44
Zasada 3. W pierwszej kolejno0ci optymalizuj operacje cz'sto powtarzane............45
Zasada 4. Pomy0l dwa razy, zanim zoptymalizujesz operacje jednorazowe............47
Zasada 5. Poznaj wn'trze komputera i sposób jego działania..................................48
Zasada 6. Przygotuj tabele gotowych wyników oblicze6 i korzystaj z nich
w czasie działania programu..................................................................................49
Zasada 7. Nie ma niepotrzebnych testów.................................................................50
Zasada 8. Nie bd- nadgorliwy................................................................................50
Podsumowanie.........................................................................................................51
1.5. Prawidłowe projektowanie okien.............................................................................51
1.5.1. Interfejs okna głównego.................................................................................54
1.5.2. Elementy sterujce.........................................................................................55
1.5.3. Okna dialogowe.............................................................................................55
Rozdział 2. Tworzenie prostych programów-'artów.............................................. 61
2.1. Latajcy przycisk Start.............................................................................................62
2.2. Zacznij prac' od przycisku Start...............................................................................71
2.3. Zamieszanie z przyciskiem Start..............................................................................73
2.4. Wi'cej dowcipów z paskiem zada6..........................................................................76
2.5. Inne arty..................................................................................................................83
Jak „zgasi” monitor?..............................................................................................83
Jak uruchamia systemowe pliki CPL?....................................................................83
Jak wysun tack' nap'du CD-ROM?.....................................................................84
Jak usun zegar z paska zada6?..............................................................................86
4
C++. Elementarz hakera
Jak ukry cudze okno?.............................................................................................86
Jak ustawi własn tapet' pulpitu? ..........................................................................87
2.6. Berek z mysz..........................................................................................................88
Szalona mysz...........................................................................................................88
Latajce obiekty.......................................................................................................89
Mysz w klatce..........................................................................................................90
Jak zmieni kształt wska-nika myszy?....................................................................91
2.7. Znajd- i zniszcz........................................................................................................92
2.8. Pulpit........................................................................................................................93
2.9. Bomba sieciowa .......................................................................................................94
Rozdział 3. Programowanie w systemie Windows ............................................... 97
3.1. Manipulowanie cudzymi oknami..............................................................................97
3.2. Gorczkowa drczka.............................................................................................102
3.3. Przełczanie ekranów.............................................................................................103
3.4. Niestandardowe okna.............................................................................................107
3.5. Finezyjne kształty okien.........................................................................................113
3.6. Sposoby chwytania nietypowego okna...................................................................119
3.7. Ujawnianie haseł....................................................................................................121
3.7.1. Biblioteka deszyfrowania haseł....................................................................122
3.7.2. Deszyfrowanie hasła....................................................................................126
3.7.3. Obrómy to w art........................................................................................128
3.8. Monitorowanie plików wykonywalnych................................................................130
3.9. Zarzdzanie ikonami pulpitu..................................................................................132
3.9.1. Animowanie tekstu......................................................................................133
3.9.2. Od0wieanie pulpitu.....................................................................................134
3.10. Garty z wykorzystaniem schowka..........................................................................134
Rozdział 4. Sieci komputerowe ........................................................................ 139
4.1. Teoria sieci i protokołów sieciowych.....................................................................139
4.1.1. Protokoły sieciowe.......................................................................................141
Protokół IP...................................................................................................142
Protokół ARP a protokół RARP..................................................................143
4.1.2. Protokoły transportowe................................................................................143
Protokół UDP — szybki ..............................................................................143
Protokół TCP — wolniejszy, ale solidniejszy..............................................144
TCP — zagroenia i słabo0ci.......................................................................145
4.1.3. Protokoły warstwy aplikacji — tajemniczy NetBIOS..................................145
4.1.4. NetBEUI......................................................................................................146
4.1.5. Gniazda w Windows....................................................................................147
4.1.6. Protokoły IPX/SPX......................................................................................147
4.1.7. Porty.............................................................................................................148
4.2. Korzystanie z zasobów otoczenia sieciowego........................................................148
4.3. Struktura otoczenia sieciowego..............................................................................151
4.4. Obsługa sieci za po0rednictwem obiektów MFC....................................................158
4.5. Transmisja danych w sieci za po0rednictwem obiektu CSocket.............................165
4.6. Bezpo0rednie odwołania do biblioteki gniazd........................................................174
4.6.1. Obsługa bł'dów ...........................................................................................175
4.6.2. Wczytywanie biblioteki gniazd....................................................................175
4.6.3. Tworzenie gniazda.......................................................................................179
4.6.4. Funkcje strony serwera ................................................................................180
4.6.5. Funkcje strony klienta..................................................................................184
4.6.6. Wymiana danych..........................................................................................186
4.6.7. Zamykanie połczenia..................................................................................191
4.6.8. Zasady stosowania protokołów bezpołczeniowych....................................192
Spis treci
5
4.7. Korzystanie z sieci za po0rednictwem protokołu TCP...........................................194
4.7.1. Przykładowy serwer TCP.............................................................................194
4.7.2. Przykładowy klient TCP..............................................................................199
4.7.3. Analiza przykładów.....................................................................................202
4.8. Przykłady wykorzystania protokołu UDP..............................................................204
4.8.1. Przykładowy serwer UDP............................................................................204
4.8.2. Przykładowy klient UDP .............................................................................205
4.9. Przetwarzanie odebranych danych..........................................................................207
4.10. Wysyłanie i odbieranie danych...............................................................................209
4.10.1. Funkcja select..............................................................................................210
4.10.2. Prosty przykład stosowania funkcji select....................................................211
4.10.3. Korzystanie z gniazd za po0rednictwem komunikatów systemowych.........213
4.10.4. Asynchroniczna wymiana danych z wykorzystaniem obiektów zdarze6.....220
Rozdział 5. Obsługa sprztu ............................................................................. 223
5.1. Parametry podsystemu sieciowego.........................................................................223
5.2. Zmiana adresu IP komputera..................................................................................229
5.3. Obsługa portu szeregowego....................................................................................234
5.4. Pliki zawieszajce system.......................................................................................239
Rozdział 6. Sztuczki, kruczki i ciekawostki ...................................................... 241
6.1. Algorytm odbioru-wysyłania danych.....................................................................242
6.2. Szybki skaner portów.............................................................................................245
6.3. Stan portów komputera lokalnego..........................................................................252
6.4. Serwer DHCP.........................................................................................................257
6.5. Protokół ICMP.......................................................................................................260
6.6. Mledzenie trasy w'drówki pakietu..........................................................................267
6.7. Protokół ARP.........................................................................................................273
Podsumowanie .............................................................................. 283
Skorowidz...................................................................................... 285
Rozdział 3.
Programowanie
w systemie Windows
W niniejszym rozdziale przyjrzymy si rónym narzdziom systemowym. Zobaczymy
przykłady programów, które pomagaj podglda przebieg pracy komputera. Nie słu
one tylko do zabawy. Bdziemy w istocie pracowa z systemem operacyjnym, cho w wielu
przykładach bdziemy si ucieka do artów. Pisałem ju, e kady haker to profe-
sjonalista — powinien wic zna tajniki systemu operacyjnego, z którego korzysta.
Zakładam tutaj, e Czytelnik korzysta z systemu Windows i pisze bd) ma zamiar pisa
programy przeznaczone do uruchamiania w tym wła*nie systemie. Rozdział ten ma
Czytelnikowi pomóc lepiej zrozumie system. Jak zwykle, zamiast przecia pami
teori, bdziemy si uczy przez praktyk. Czytelnicy moich poprzednich ksiek z pew-
no*ci pamitaj to podej*cie. Zawsze twierdziłem, e jedynie praktyka daje prawdziw
wiedz. Dlatego wszystkie moje ksiki s wprost przeładowane przykładami. Nie in-
aczej bdzie tym razem.
Zabierzemy si za chwil za analiz kilku ciekawych przykładów. Bd one ilustrowa
techniki pracy w systemie operacyjnym Windows i uczy praktycznego ich zastoso-
wania. Mam nadziej, e cho niektóre z nich przydadz si Czytelnikowi w pracy.
Bd starał si w tym rozdziale stopniowa poziom zaawansowania przykładów, tak
aby kolejne prezentacje wnosiły co* nowego i Czytelnik nie stracił zainteresowania
tematem.
3.1. Manipulowanie cudzymi oknami
W mojej skrzynce poczty elektronicznej czsto lduj pytania: „Jak zamkn czyje*
okno albo co* w nim zmieni?”. Zasadniczo zadanie to mona łatwo zrealizowa
funkcj
, z któr zdyli*my si ju zapozna. Je*li jednak zachodzi potrzeba
Plik z chomika:
Ravel25
Inne pliki z tego folderu:
Asembler dla procesorow Intel Vademecum profesjonalisty.pdf
(400 KB)
Asembler cwiczenia praktyczne.pdf
(358 KB)
Architektura systemow zarzadzania przedsiebiorstwem Wzorce projektowe.pdf
(829 KB)
Architektura oprogramowania Metody oceny oraz analiza przypadkow.pdf
(429 KB)
Aplikacje w Visual C++ 2005 Przyklady.pdf
(296 KB)
Inne foldery tego chomika:
(X) HTML
algorytmy i struktury danych
asembler
C++
Core JAVA2 Podstawy
Zgłoś jeśli
naruszono regulamin