Название: Идентификация компа Отправлено: serg_hd от Июнь 03, 2013, 14:03 Понимаю, что таких тем в сети достаточно, но что делать - так и не решил. Надо как-то идентифицировать комп для того, чтобы отключать клиентку от сервера на случай "спама" с этого компа. Вариант взятия ID'ов материнки/винта не подходит ввиду того, что не все железки его выдают или могут выдавать пустыми. MAC сетевухи тоже не подходит, т.к. его можно менять. Может быть всё-таки есть ещё какой-нить вариант?
Название: Re: Идентификация компа Отправлено: Bepec от Июнь 03, 2013, 15:35 Берём, сканим структуру каталогов диска D. Сравниваем с эталоном и убиваем клиента.
PS зависит от привилегий вашей программы. Тот же запуск ipconfig -all (для винды) даёт достаточно индивидуальную информацию, хотя % 30 ошибок будет наверно :D Название: Re: Идентификация компа Отправлено: Alex Custov от Июнь 03, 2013, 22:42 Может быть всё-таки есть ещё какой-нить вариант? Клиент в сети - это чёрный ящик, 100% идентифицировать его нельзя, практически всё можно обойти. Название: Re: Идентификация компа Отправлено: LisandreL от Июнь 04, 2013, 09:14 Как вариант - генерируйте GUID при первом запуске и сохраняйте где-нибудь подальше от глаз пользователя.
Но вариант, конечно, обходится, как нахождением этого места, так и виртуалкой/сендбоксом. Название: Re: Идентификация компа Отправлено: Bepec от Июнь 04, 2013, 15:51 Нельзя сделать не взламываемую идентификацию компьютера. Но можно сделать защиту, которую будет невыгодно ломать как и по времени, так и по возможностям.
PS допустим берём скан дисков, скан пользователей винды, HWID, MAC, разбавляем это дело папкой где установлена программа, а так же, допустим, при первом запуске создаём скрытый файл рандомного размера. Совокупность этих факторов отследить возможно, но невыгодно :D Ах да, добавляем ещё ключ реестра, в котором будет папка с программой и проверяем на нахождение программы именно в этой папке. :D PPS а можно не заморачиваться. Название: Re: Идентификация компа Отправлено: Alex Custov от Июнь 06, 2013, 13:02 PS допустим берём скан дисков, скан пользователей винды, HWID, MAC, разбавляем это дело папкой где установлена программа, а так же, допустим, при первом запуске создаём скрытый файл рандомного размера. Совокупность этих факторов отследить возможно, но невыгодно :D Ах да, добавляем ещё ключ реестра, в котором будет папка с программой и проверяем на нахождение программы именно в этой папке. :D А подлинность определяется всеми этими факторами сразу? Если да, то достаточно запустить ccleaner и ваша программа станет невалидной. Если нет, то какой в них смысл? А все эти методы ловятся в дебагерах типа SoftICE за пять минут. Название: Re: Идентификация компа Отправлено: Bepec от Июнь 06, 2013, 15:11 Если вы не в курсе, CCleaner не тупо удаляет ключи реестра :D И установленные нормально программы не теряют своих ключей.
CCleaner может повлиять только на ключ в реестре и то при неправильной установке. Остальные факторы не изменятся. PS по-моему вы не совсем понимаете моих предложений или верите в "чистота в два раза быстрей вместе с CCleaner". Название: Re: Идентификация компа Отправлено: Alex Custov от Июнь 06, 2013, 15:47 PS по-моему вы не совсем понимаете моих предложений или верите в "чистота в два раза быстрей вместе с CCleaner". да, не понимаю - ответь да поставленный выше вопрос каким образом определяется подлинность клиента, по всем факторам сразу или по некоторым. Название: Re: Идентификация компа Отправлено: Igors от Июнь 06, 2013, 16:04 Полагаю какая-то "клиентская часть" так или иначе есть. Тогда чем плохо то что предложил LisandreL? Да и вообще ничего не прятать, сервер дает клиенту уникальный ID который тот без затей сохраняет напр в реестре. Да, переустановка клиента ведет к новому уникальному ключу - опять если обнаружен спам - опять отключить. Пусть перустанавливает пока руки не заболят, до long long там далеко
Название: Re: Идентификация компа Отправлено: Bepec от Июнь 06, 2013, 16:07 По совокупности. Ты можешь изменить один, но общий процент совпадения уменьшится максимум на 5-10 %. Т.е. отсеивается %60 аудитории которая хочет взломать или скрыться.
PS так же есть возможность сделать 15-20 таких мини - закладок, а передаваемые идентификаторы от клиента могут стать составными и меняться в зависимости от настроек сервера :D Название: Re: Идентификация компа Отправлено: Alex Custov от Июнь 06, 2013, 16:40 PS так же есть возможность сделать 15-20 таких мини - закладок, а передаваемые идентификаторы от клиента могут стать составными и меняться в зависимости от настроек сервера :D В этом случае ты сам нарушишь своё правило, которое можно перефразировать как "усиленно защищать нужно то, что действительно нужно", то есть будешь только и заниматься только защитой какой-то микроскопической никому не нужной программки. Потому что эти примитивные закладки вычисляются за пять минут с помощью нужного отладчика, и вся твоя защита, которую ты писал два дня, пойдёт насмарку. Наиболее правильным способом защитить программу, по моему мнению, будет это зашифровать экзешник, как скайп, использовать только шифрованные каналы связи и предусмотреть умышленный мусор в протоколе общения, чтобы никогда не посылать одинаковые пакеты. Да и тут будет вопрос - а всё это ДЕЙСТВИТЕЛЬНО нужно? Название: Re: Идентификация компа Отправлено: Bepec от Июнь 06, 2013, 16:50 Нет, ты не понимаешь )
20 простых закладок, которые рандомно каждый день меняются обеспечат достаточную защиту за 5-10 минут твоего времени. Определить что сегодня проверяется - очень просто :) Но невозможно или очень трудно рассчитать рандомную последовательность :P PS Вы не видите гибкой системы. Вы видите монолит, который можно сломать простым молотком. А я вижу сеть из десяток переплетающихся нитей, которую распутать возможно, но сложно :D PPS я такую защитку напишу за пару минут, просто копируя нужный функционал из готовых моих программ :D А вот взломать её довольно сложно, нужно будет отснифферить все комбинации и написать более сложную в десятки раз программу. Даже по прикидкам - даём 20 параметров, рандомно выбирающихся и проверяющихся по 3 за день. Т.е. даётся 60 комбинаций, меняющихся раз в день. В лучшем случае необходимо будет 40-60 дней для полного взлома :D PPPS а если найдется спец реверс-инжиниринга, то не спасёт ничего :) Но такие спецы такими вещами не занимаются :D Название: Re: Идентификация компа Отправлено: Alex Custov от Июнь 06, 2013, 17:20 Определить что сегодня проверяется - очень просто :) Но невозможно или очень трудно рассчитать рандомную последовательность :P По незашифрованному каналу? А зачем рассчитывать, если сервер опросит нас послать определённую комбинацию, и мы её пошлём? И какую именно комбинацию? Структуру диска C, к примеру? Тут возникает ещё одна проблема - а как сервер узнает, что присланная точка проверки правильная? Откуда от узнает структура диска C: изначально? Клиент сам пошлёт её при регистрации? Тут нас уже будет ждать сниффер и клиент, который уже наготове слать спам. PS Вы не видите гибкой системы. Вы видите монолит, который можно сломать простым молотком. А я вижу сеть из десяток переплетающихся нитей, которую распутать возможно, но сложно :D Очень пафосно, но ломается очень просто, если канал незашифрован. А вот взломать её довольно сложно, нужно будет отснифферить все комбинации и написать более сложную в десятки раз программу. В десятки раз? Ты о чём вообще? В ложном клиенте нужно просто повторить алгоритм авторизации, шли дальше спам сколько хочешь. PPS я такую защитку напишу за пару минут, просто копируя нужный функционал из готовых моих программ За пару минут двадцать точек проверки? Я бы тебя в спецы по безопасности не брал. И что делать человеку, у которого нет готового кода? Сидеть писать его за "5-10 минут"? Ломается такое поделие тоже за "5-10 минут". Даже по прикидкам - даём 20 параметров, рандомно выбирающихся и проверяющихся по 3 за день. Т.е. даётся 60 комбинаций, меняющихся раз в день. В лучшем случае необходимо будет 40-60 дней для полного взлома :D Никто не сидит и не смотрит за этими комбинациями, пишется программа, которая на основе данных сниффера работает себе и подбирает недостающие части протокола, и всё. Название: Re: Идентификация компа Отправлено: Bepec от Июнь 06, 2013, 18:10 Никто не сидит и не смотрит за этими комбинациями, пишется программа, которая на основе данных сниффера работает себе и подбирает недостающие части протокола, и всё. 5 дней устойчивости программы меня удовлетворит (а вы мне уже даёте 30-60 ;) ). Вы не понимаете, что не надо сложных алгоритмов и шифрования - они то как раз ломаются профессиональными решениями. А если моё решение продержится 5 дней - это блестяще. Больше я с вами спорить не буду - бесполезно. PS например новый протокол lineage с gameGuardom, Freez'ом и дополнительной лапутнёй сломали где то за месяц. А его разрабатывали десятки специалистов :D Возьмите любую лицензионную программу. Продающаяся за десятки, если не сотни тысяч. Их ломают за считанные дни. А ведь в разработку той же самой защиты вбуханы в разы большие деньги. Название: Re: Идентификация компа Отправлено: Alex Custov от Июнь 06, 2013, 19:30 5 дней устойчивости программы меня удовлетворит (а вы мне уже даёте 30-60 ;) ). Вы не понимаете, что не надо сложных алгоритмов и шифрования - они то как раз ломаются профессиональными решениями. А если моё решение продержится 5 дней - это блестяще. Для тебя именно блестяще? Ну, пока ты будешь радоваться своей изобретательности спам-боты будут слать спам. И уж поверь, если сеть имеет интерес для рассылки спама, её будут пасти и пять дней, и двадцать, и пятьдесят. В автоматическом режиме, конечно. Возьмите любую лицензионную программу. Продающаяся за десятки, если не сотни тысяч. Их ломают за считанные дни. А ведь в разработку той же самой защиты вбуханы в разы большие деньги. Ты же сказал, что программа взлома будет просто в десятки раз больше, чем алгоритм защиты? Название: Re: Идентификация компа Отправлено: Bepec от Июнь 06, 2013, 19:52 Я с вами не спорю ^.^
|