Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.79
TagaBenz
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 21
#1

Хакинг. Искусство эксплойта - C++

25.03.2013, 00:58. Просмотров 3301. Ответов 33
Метки нет (Все метки)

Прежде исложить свою проблему хочу спросить, читал ли кто-нибудь и пробовал на практике задачи описанные в книге Джона Эриксона: "Хакинг. Искусство эксплойта" ?
ссылка на книгу: http://www.ozon.ru/context/detail/id...abenz&from=bar
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2013, 00:58     Хакинг. Искусство эксплойта
Посмотрите здесь:

Wifi хакинг - Wi-Fi
Всем доброго времени суток! Искал подобную тему на форуме, не нашел, по этому решил создать, а так как речь идет о вафле, то принято...

Компьютерное искусство - Pascal
Всем привет. Кто может помочь решить эту задачу буду очень благодарен

Цифровое искусство
Японский художник Ютака Кагайя... Его картины выполнены только с помощью компьютерной техники, и они действительно завораживают..

Татуировка, как искусство
Такая вещь, как татуировка в наше время завоевывает все больше и больше последователей по всему миру, будь то мастера тату, люди изменяющие...

Искусство передавать мысли - Обо всем!
Как наверно многие иногда замечают непросто объяснить другому что думаешь=) И это может быть не так понято. Как научится правильно...

Ремесло или искусство? - Обо всем!
Что такое программирование: ремесло или искусство?

Вранье как искусство - Психология
Только совсем наивный человек скажет, что вранье - это пустяк, забава для незрелого ума. А ведь многие видавшие виды люди отдали много сил...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
chizz
979 / 493 / 54
Регистрация: 19.03.2013
Сообщений: 3,079
Записей в блоге: 18
Завершенные тесты: 1
26.03.2013, 18:24     Хакинг. Искусство эксплойта #21
Ошибку..
Ты хотел вызвать переполнение буфера - ты его вызвал. Теперь надо что-то с адресами делать, чтобы адрес возврата на шелкод указывал. Как это сделать - без понятия
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
27.03.2013, 06:02     Хакинг. Искусство эксплойта #22
Цитата Сообщение от TagaBenz Посмотреть сообщение
Как я понял шелкод прописывает команду в терминале, которая выводит владельца уязвимой программы, а именно команду whoami
По идее шеллкод грузит системную оболочку от имени владельца уязвимой программы, всё остальное - иные варианты эксплойнтов.
TagaBenz
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 21
27.03.2013, 11:32  [ТС]     Хакинг. Искусство эксплойта #23
Цитата Сообщение от taras atavin Посмотреть сообщение
По идее шеллкод грузит системную оболочку от имени владельца уязвимой программы, всё остальное - иные варианты эксплойнтов.
Крутяк))))
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
27.03.2013, 13:08     Хакинг. Искусство эксплойта #24
Чего крутяг? Он ведь называется шеллкод->shellcode->shell code->код shellа, а shell - это оболочка, а не мессага.

Добавлено через 1 час 24 минуты
Жил-был один парень, назовём его в целях конспирации Лёша. Году эдак в 2001–2002 Лёша очень сильно интересовался всяческим компьютерным хулиганством — началось это с прописывания в автозапуск разных пакостей, а вылилось в желание написать свой Первый Серьёзный Вирус. В качестве учебного пособия использовалось авторитетное печатное издание «Хакер».

Через неделю трудов Лёша написал-таки своего монстра. Задача была простая — убивать исполняемые файлы с расширением «exe». Способ убийства был весьма нехитрым: вирус откусывал определённое количество байтов от конца файла и переносил их в начало. Атакованный файл, разумеется, после этого при попытках запуска выдавал сообщения вроде «Кто я? Где я?», да и вообще вёл себя неадекватно.

Решил Лёша протестировать своё творение. Отключил антивирус и отдал на растерзание какой-то экзешник, который вирус моментально привёл в неработоспособнное состояние. Любопытство было удовлетворено. Лёша ушёл спать, оставив комп в рабочем состоянии с выключенным антивирусом.

Наутро обнаружилось, что вирус вышел из под контроля и поел все экзешники, до которых дотянулся. Каким-то чудом комп сохранял некоторую работоспособность, поэтому Лёша решил на скорую руку вылечить подобное подобным. На скорую руку в код вируса были внесены изменения; вторая версия переносила первые байты в конец.

Процесс пошёл — работоспособность некоторых экзешников вернулась. Но обрадовался Лёша крайне несвоевременно — в коде (анти)вируса не было никакого механизма, позволяющего определить, какие файлы он уже обработал, а какие — нет.

Закончилось всё тем, что совместными усилиями первый и второй вирус нашинковали все найденные *.exe в капусту. Как Лёша с этим справился — неизвестно, но меры наверняка были радикальными.
Надеюсь, не надо объяснять, что это и был новичок?
TagaBenz
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 21
27.03.2013, 14:42  [ТС]     Хакинг. Искусство эксплойта #25
Надеюсь, не надо объяснять, что это и был новичок?
К чему ты клонишь?)))
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
27.03.2013, 15:46     Хакинг. Искусство эксплойта #26
К тому, что даже новичку могут быть понятны некоторые защиты, но ни одному новичку не доступен качественный, вдумчивый взлом. Сначала надо изучить предметную область, похулиганить на своём вируталбоксе, до"расти" до эксперта и только тогда можно в серьёз ломать софт.
Avazart
7101 / 5278 / 267
Регистрация: 10.12.2010
Сообщений: 23,283
Записей в блоге: 17
27.03.2013, 16:00     Хакинг. Искусство эксплойта #27
Цитата Сообщение от taras atavin Посмотреть сообщение
К тому, что даже новичку могут быть понятны некоторые защиты, но ни одному новичку не доступен качественный, вдумчивый взлом. Сначала надо изучить предметную область, похулиганить на своём вируталбоксе, до"расти" до эксперта и только тогда можно в серьёз ломать софт.
Я так не думаю области знаний разнятся и как говорится - "ломать не строить".
Tmin100
6 / 6 / 0
Регистрация: 12.10.2012
Сообщений: 71
27.03.2013, 16:03     Хакинг. Искусство эксплойта #28
Не думаю, что без знаний устройства защиты возможно её обойти...
TagaBenz
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 21
27.03.2013, 16:05  [ТС]     Хакинг. Искусство эксплойта #29
А по делу кто-инбудь хочет мне помочь?? На что ругается мой отладчик?
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
27.03.2013, 16:42     Хакинг. Искусство эксплойта #30
Цитата Сообщение от Avazart Посмотреть сообщение
Я так не думаю области знаний разнятся и как говорится - "ломать не строить".
А ты учёл, что не руками? Переполнение заткнуть - много ума не надо. А ты пробуй ломани даже не заткнутую прогу. Для взлома нужен асм, а защита делается походя на плюсах. И если вдруг есть защита от исполнения стека, или просто буфер, которым ты пытаешься ломануть адрес возврата вынесен из стека в кучу, а адрес возврата остался в стеке, или ломаешь кучу. Элементарные различия в прогах, начиная просто с размера буфера и у хакера проблемы, которые надо разбирать с дебагером. А для того, чтоб эксплойнты переполнения буфера отсечь на корню, достаточно сопоставлять размеры копируемых строк с размерами буферов. То есть всего то делов: переписать свой цикл копирования вместо strcpy и вводить/выводить потоками и целый класс эксплойтов становится полностью бесполезным.
TagaBenz
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 21
28.03.2013, 01:22  [ТС]     Хакинг. Искусство эксплойта #31
Цитата Сообщение от taras atavin Посмотреть сообщение
А ты учёл, что не руками? Переполнение заткнуть - много ума не надо. А ты пробуй ломани даже не заткнутую прогу. Для взлома нужен асм, а защита делается походя на плюсах. И если вдруг есть защита от исполнения стека, или просто буфер, которым ты пытаешься ломануть адрес возврата вынесен из стека в кучу, а адрес возврата остался в стеке, или ломаешь кучу. Элементарные различия в прогах, начиная просто с размера буфера и у хакера проблемы, которые надо разбирать с дебагером. А для того, чтоб эксплойнты переполнения буфера отсечь на корню, достаточно сопоставлять размеры копируемых строк с размерами буферов. То есть всего то делов: переписать свой цикл копирования вместо strcpy и вводить/выводить потоками и целый класс эксплойтов становится полностью бесполезным.
Я все это использую исключительно ради добра честно!))) Подкаскажи только мне в чем моя ошибка?)
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
28.03.2013, 05:34     Хакинг. Искусство эксплойта #32
Верю, но подсказать не могу, так как читай мой статус. Все мои хаки были по обезьяньим методам: искать байт со взятым с потолка значением и менять это значение без учёта соседних бюайт на другое потолочное, подсунуть цельнорандомный файл вместо файла, в который игра сохранила, чего налетал.
TagaBenz
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 21
30.03.2013, 02:11  [ТС]     Хакинг. Искусство эксплойта #33
Всем спасибо за многочисленные ответы не по делу в моей теме)) разобрался в проблеме сам)
Ввел команду в терминале $ dmesg | less и увидел вот такую вот строку!: [ 0.000000] NX (Execute Disable) protection: active

Пояснение
Современные процессоры поддерживают функцию NX-защиты (NX - сокращение от No eXecute). Это защита областей памяти, которая используется для предотвращения распространения вирусов. Для более подробной информации гугл в помошь))))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.03.2013, 12:03     Хакинг. Искусство эксплойта
Еще ссылки по теме:

Графити как искусство
примеры того, что делают настоящие творцы, когда в их руки попадает баллончик с краской. как можно красиво разукрасить дом.

в искусство вложен не малый программный код)))
это какие мозги надо иметь что бы так точно рассчитать все действия, а помимо того программист скорее всего еще и творческий человек...

есть ли программисты занимаюшиеся Багуачжан(боевое искусство)? - Спорт
Просто интересно есть ли здесь единомышленники

Искусство веб-дизайна - где взять информацию для курсовой работы - Web-дизайн
Привет всем!:) Дали мне курсовую работу по теме "Искусство веб-дизайна". Я лично этим особо не увлекаюсь, хотелось бы посоветоваться с...

где можно скачать книгу Михаил Фленов: DirectX и Delphi. Искусство программирования (+CD)? - Delphi
добрый вечер, не подскажите где можно скачать книгу Михаил Фленов: DirectX и Delphi. Искусство программирования (+CD)? (а то уже часа два...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
30.03.2013, 12:03     Хакинг. Искусство эксплойта #34
Шеллкод отработал? А теперь попробуй изменить уязвимую программу сначала так:
C++
1
2
3
4
5
6
7
8
9
#include <string.h>
#include <iostream>
int main(int argc, char *argv[])
{
 char buffer[500];
 strcpy(buffer, argv[1]);
 std::cout<<buffer;
 return 0;
}
, а потом так:
C++
1
2
3
4
5
6
7
8
#include <string.h>
int main(int argc, char *argv[])
{
 std::string buffer;
 buffer=argv[1];
 std::cout<<buffer;
 return 0;
}
. Эти две версии функционально идентичны, но первая и уязвима для эксплойта, и может просто сглючить при переполнении, а вторая для данного эксплойта не уязвима и не глючит. Попробуй на них и данные, и эксплойт.
Yandex
Объявления
30.03.2013, 12:03     Хакинг. Искусство эксплойта
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru