Как по мне хакинг(крэкинг) нужно изучать не так - после ознакомления с основами работы сети, языка программирования(как по мне perl в этом деле оч полезен), нужно постоянно искать в сети инфу по дырам и багам, писать(юзать) эксплойты, теорию комбинировать с практикой - для лучшего освоения и того и другого(это был не призыв, не стоит идти ДДоСить майнкрафтеров).