Каждый программист по сути своей - хакер. Ведь первоначально хакингом называли поиск искусного и неочевидного решения. Понимание принципов программирования помогает находить уязвимости, а навыки обнаружения уязвимостей помогают создавать программы, поэтому многие хакеры занимаются тем и другим одновременно. Интересные нестандартные ходы есть как в техниках написания элегантных программ, так и в техниках поиска слабых мест. С чего начать? Чтобы перезаписывать память с помощью переполнения буфера, получать доступ к удаленному серверу и перехватывать соединения вам предстоит программировать на Си и ассемблере, использовать шелл-код и регистры процессора, познакомиться с сетевыми взаимодействиями и шифрованием и многое другое.Как бы мы ни хотели верить в чудо, программное обеспечение и компьютерные сети, от которых зависит наша повседневная жизнь, обладают уязвимостями."Мир без хакеров - это мир без любопытства и новаторских решений".Джон Эриксон2-е издание
Kazhdyy programmist po suti svoey - khaker. Ved pervonachalno khakingom nazyvali poisk iskusnogo i neochevidnogo resheniya. Ponimanie printsipov programmirovaniya pomogaet nakhodit uyazvimosti, a navyki obnaruzheniya uyazvimostey pomogayut sozdavat programmy, poetomu mnogie khakery zanimayutsya tem i drugim odnovremenno. Interesnye nestandartnye khody est kak v tekhnikakh napisaniya elegantnykh programm, tak i v tekhnikakh poiska slabykh mest. S chego nachat? CHtoby perezapisyvat pamyat s pomoshchyu perepolneniya bufera, poluchat dostup k udalennomu serveru i perekhvatyvat soedineniya vam predstoit programmirovat na Si i assemblere, ispolzovat shell-kod i registry protsessora, poznakomitsya s setevymi vzaimodeystviyami i shifrovaniem i mnogoe drugoe.Kak by my ni khoteli verit v chudo, programmnoe obespechenie i kompyuternye seti, ot kotorykh zavisit nasha povsednevnaya zhizn, obladayut uyazvimostyami."Mir bez khakerov - eto mir bez lyubopytstva i novatorskikh resheniy".Dzhon Erikson2-e izdanie