| Благодарности | |
| 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-протокол | |
| Заключение | |
| Список литературы и ресурсы Интернета | |
| Описание компакт-диска | |
| Предметный указатель |
![]() |
![]() |