Благодарности |
C++ глазами хакера |
Введение |
О книге |
|
Кто такой хакер? Как им стать? |
|
Глава 1. Минимизация и невидимость |
1.1. Сжатие запускаемых файлов |
|
1.2. Без окон, без дверей |
|
1.3. Простейшая программа |
|
1.3.1. Ресурсы проекта |
|
1.3.2. Код программы |
|
1.4. Оптимизация программ |
|
ЗАКОН № 1 |
|
ЗАКОН № 2 |
|
ЗАКОН № 3 |
|
ЗАКОН № 4 |
|
ЗАКОН № 5 |
|
ЗАКОН № 6 |
|
ЗАКОН № 7 |
|
ЗАКОН № 8 |
|
Итог |
|
1.5. Правильное оформление окон |
|
1.5.1. Интерфейс главного окна |
|
1.5.2. Элементы управления |
|
1.5.3. Диалоговые окна |
|
Глава 2. Простые шутки |
2.1. Летающий Пуск |
|
2.2. Начните работу с кнопки Пуск |
|
2.3. Светомузыка над кнопкой Пуск |
|
2.4. Продолжаем шутить над Панелью задач |
|
2.5. Маленькие шутки |
|
2.5.1. Как программно потушить монитор |
|
2.5.2. Запуск системных CPL-файлов |
|
2.5.3. Программное управление CD-ROM |
|
2.5.4. Удаление часов из Панели задач |
|
2.5.5. Исчезновение чужой программы |
|
2.5.6. Установка на Рабочий стол собственных обоев |
|
2.6. Шутки с мышкой |
|
2.6.1. Безумная мышка |
|
2.6.2. Летающие объекты |
|
2.6.3. Мышка в клетке |
|
2.6.4. Изменчивый указатель |
|
2.7. Найти и уничтожить |
|
2.8. Блокировка Рабочего стола |
|
2.9. Сетевая бомба |
|
Глава 3. Система |
3.1. Работа с чужыми окнами |
|
3.2. Дрожь в ногах |
|
3.3. Переключение экранов |
|
3.4. Нестандартные окна |
|
3.5. Безбашенные окна |
|
3.6. Перемещение окна за любую область |
|
3.7. Подсматриваем пароли |
|
3.7.1. Динамическая библиотека для расшифровки паролей |
|
3.7.2. Программа расшифровки пароля |
|
3.7.3. От пользы к шутке |
|
3.8. Мониторинг исполняемых файлов |
|
3.9. Управление ярлыками на Рабочем столе |
|
3.9.1. Анимация текста |
|
3.9.2. Обновление иконки |
|
3.10. Использование буфера обмена |
|
Глава 4. Работа с сетью |
4.1. Теория сетей и сетевых протоколов |
|
4.1.1. Сетевые протоколы |
|
4.1.2. Транспортные протоколы |
|
4.1.3. Прикладные протоколы — загадочный NetBIOS |
|
4.1.4. NetBEUI |
|
4.1.5. Сокеты Windows |
|
4.1.6. Протоколы IPX/SPX |
|
4.1.7. Сетевые порты |
|
4.2. Работа с ресурсами сетевого окружения |
|
4.3. Структура сети |
|
4.4. Работа с сетью с помощью объектов Visual C++ |
|
4.5. Передача данных по сети с помощью CSocket |
|
4.6. Работа напрямую с WinSock |
|
4.6.1. Обработка ошибок |
|
4.6.2. Запуск библиотеки |
|
4.6.3. Создание сокета |
|
4.6.4. Серверные функции |
|
4.6.5. Клиентские функции |
|
4.6.6. Обмен данными |
|
4.6.7. Завершение соединения |
|
4.6.8. Принцип работы протоколов без установки соединения |
|
4.7. Примеры работы с сетью по протоколу TCP |
|
4.7.1. Пример работы TCP-сервера |
|
4.7.2. Пример работы TCP-клиента |
|
4.7.3. Анализ примера |
|
4.8. Примеры работы по протоколу UDP |
|
4.8.1. Пример работы UDP-сервера |
|
4.8.2. Пример работы UDP-клиента |
|
4.9. Обработка принимаемых данных |
|
4.10. Прием и передача данных |
|
4.10.1. Функция select |
|
4.10.2. Простой пример использования функции select |
|
4.10.3. Использование сокетов через события Windows |
|
4.10.4. Асинхронная работа через объект события |
|
Глава 5. Работа с железом |
5.1. Параметры сети |
|
5.2. Изменение IP-адреса |
|
5.3. Работа с СОМ-портом |
|
5.4. Подвисшие файлы |
|
Глава 6. Полезные алгоритмы |
6.1. Алгоритм приема/передачи данных |
|
6.2. Самый быстрый сканер портов |
|
6.3. Состояние локального компьютера |
|
6.4. DHCP-сервер |
|
6.5. Протокол ICMP |
|
6.6. Определение пути пакета |
|
6.7. ARP-протокол |
|
Заключение |
Список литературы и ресурсы Интернета |
Описание компакт-диска |
Предметный указатель |