|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.03.2010, 22:26 | #1 |
Новичок
Джуниор
Регистрация: 18.03.2010
Сообщений: 3
|
Поиск программы в процесах, а также блокиро....
Приветствую всех участников форума.
Не могли бы вы мне помочь, по данному вопросу, всем чем угодно, приветствуются все советы. Я не начинающий программист, но плохо знаю как работать с сетью и процессами. Задача заключается вот в чем. Есть программа клиент и программа сервер. Между программой сервером и программой клиентом установлена связь через Интернет (TCP). Как общается, точнее какие пакеты программа сервер и программа клиент между собой посылает не известно. Однако существует ряд программ на стороне клиента которые могут перехватить пакет и изменить его, далее послать на сервер тем самым обманув его для получения выгоды. (Список всех программ нарушителей известен ) Что требуется сделать: Требуется защитить сервер от обмана. Придуманные мной методы: На стороне клиента запускать клиент и собственную программу защиты которая будет вылавливать программы нарушители. А также запустить собственную программу защиты на сервере, которая будет общаться с программой защитой клиента. Если программа защиты клиента нашла программу вредителя, то она посылает пакет программе защиты сервера и программа защиты сервера блокирует определенный порт программы сервера, для данного ip адресе клиента. Или Просто программа защита клиента, не пускает программу клиент на данный порт программы сервера. Однако я не знаю как мне обнаружить программу вредителя ? и как можно прослушивать порт программы сервера и заблокировать его для определённых ip адресов? Какие существуют методы для поиска нужной мне программы? Не могли бы вы дать советы как поступить в данной ситуации, плох ли мой метод? я буду благодарен за любые ссылка на разные статьи и советы. |
18.03.2010, 23:10 | #2 | |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Цитата:
Так не пойдёт. Если неохота возиться с SSL, просто защищай передаваемые данные контрольной суммой, алгоритм расчёта которой знает только сервер и клиент. Тогда даже подменив данные, злобный хакир не сможет их правильно подписать, след-но сервер их не примет, придётся ломать ломать программу-клиент, а это уже совсем другая история.
пыщь
|
|
18.03.2010, 23:24 | #3 |
somewhere else
Участник клуба
Регистрация: 17.07.2008
Сообщений: 1,409
|
Если я правильно понимаю у вас есть сервер онлайн-игры и вы хотите сделать для него защиту? Сразу скажу что помогу пока только теорией.
Для начала стоит уяснить что читеры могут сделать: - Выключить вашу программу - Воспользоваться программой для сокрытия чит-программы - Взломать вашу программу, так что б ее не пришлось выключать. Первое что вам нужно сделать, если и будет локальный модуль защиты, то либо он должен быть встроен в exe-игры. Либо должен быть выполнен в виде wrapper-а или же элементарный метод - модификация одного - двух байтов в exe-файле и последующий запуск. В программе защиты проверяет запущен ли клиент, как только хендл на процесс утрачивается - обратная модификация. Или же можно сделать модификацию самого процесса, это даже лучше. По идее из KernelMode можно контролировать все дескрипторы процесса, это уже метод поизящней и посложней. С его помощью можно будет узнать открыт ли процесс еще какой программой. Естественно не помешает циклически проверять(раз в 1-2 секунды) не запущены ли вредоносные программы. Но! Если они и запущены, не стоит их закрывать, модифицируйте их память так что б они сами отказывались бы работать - это будет самым серьезным ударом, т.к. визуально это будет напоминать глюки. Ну и разумеется нужно будет защитить свою программу от модификации. Для этого подойдет сокрытие процесса программы.
"Тяжело в учении, легко в бою" - А.В. Суворов
|
19.03.2010, 18:38 | #4 |
Новичок
Джуниор
Регистрация: 18.03.2010
Сообщений: 3
|
Ivan_32
Вы угадали это для игры. Выключить вашу программу - Воспользоваться программой для сокрытия чит-программы - Взломать вашу программу, так что б ее не пришлось выключать. на счет 2-3 вариантов такая возможность есть. Посоветуйте пожалуйста какие нибудь хорошие книги или может статьи про KernelMode и про то как можно встроить свою программу в другую и самое главное про перехваты пакетов и перехваты сокетов. Ivan_32 Вообще на этой защите можно хорошо заработать, если вас это заинтересовало, то давайте это обсудим. Последний раз редактировалось Market; 19.03.2010 в 18:43. |
19.03.2010, 18:49 | #5 |
somewhere else
Участник клуба
Регистрация: 17.07.2008
Сообщений: 1,409
|
Windows Internals - Марка Руссиновича. WASM.RU, у них еще конференция в джаббере есть - могут проконсультировать если что(wasm@conference.jabber.ru). По части встраивания - это вам про вирусы стоит почитать, у Billy Belcebu был Туториал по написанию вирусов под Win32. Там как раз рассказывается про внедрение в PE-Exe. Ну и статьи раздела "Секреты Win32" - тоже очень полезны.
Кстати, ProcessExplorer вроде как и без драйвера получает список открытых дескрипторов на процесс(OpenProcess), думаю, если покопаться в дизассемблах - вполне можно найти код за это отвечающий.
"Тяжело в учении, легко в бою" - А.В. Суворов
|
19.03.2010, 19:29 | #6 |
Новичок
Джуниор
Регистрация: 18.03.2010
Сообщений: 3
|
спасибо Ivan_32 но к сожалению я не знаю assambler.
У меня последний вопрос, эта игра запускается не по-обычному, то есть сам exe файл переименован в game.bin, а игра запускается через дополнительную программу start.exe, самое главное если переименовать game.bin в game.exe то она запустить и после загрузки игры при старте меню, игра пишет что ошибка запуска. Как мне написать свою программу для запуска game.bin как вообще я сам могу узнать как её запускает start.exe, вот этого я не как не могу понять. |
19.03.2010, 20:07 | #7 |
somewhere else
Участник клуба
Регистрация: 17.07.2008
Сообщений: 1,409
|
Должно быть только дизассемблером, у этой самой start.exe довольно простой код скорее всего. А что за игра если не секрет?
"Тяжело в учении, легко в бою" - А.В. Суворов
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Есть ли в моих процесах вирус? | Slavik | Безопасность, Шифрование | 10 | 27.05.2009 18:04 |
на каком языке создаются такие программы ,какое СУБД и структура реализации БД,также на каком языке соста | оля87 | Помощь студентам | 13 | 25.05.2009 18:08 |
Решение задачи на нахождение площади и обьема куба(а также вписанного шара) | soldm | Помощь студентам | 4 | 30.09.2008 08:32 |