Змінюй хід війни! Допомагай ЗСУ!

Помогите защитить прогу

  • Автор теми Автор теми Vlad1k
  • Дата створення Дата створення
Блин вы вгоняете меня в краски с каждым сообщением..:страта: Я новичек и просто поинтересовался, кстати спасибо всем за советы...:пиво:!

Вообщем мне сегодня на форум пришло сообщение такого содержания:

This was leaked by anze....
Helped cracked by RH. Take the competition out.
Unpacked loader to crack noob protection. GB learn to hide protection strings.

⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

Опять вопрос из раздела защиты и кр***нга..Ы не пинайте плиз.
Помогите расшифровать что это значит...нехочу выглядеть *****ом перед буржуями.
--(там есть файлик gbu.exe если его запускаеш то начинается обновление и вы увидите то что на скриншоте:))

смысл в том что для того чтобы все начало работать нужно ввести правильный логин и пароль....

Вот такую защчиту тяжело поломать ? и тяжело ли её сделать ?:)
 
Останнє редагування:
ТС прямо как мое начальство - хочет защиту от копирования да еще на халяву. А она нужна эта твоя программа "в паблике"? Что она хоть делает?
 
Ух... мы хорошо посмеялись! Поверте, если кому нужно будет - взломают программу Вашу, и учитывая что вы не Microsoft - без особых усилий))) Но вышеупомянутый софтёрный гигант специально не делает достойную защиту из некоторых причин, но способы защитить Ваш продукт есть, что бы взломать его было невероятно сложно! Разумеется бесплатно помогать Вам никто не будет, потому что защита продуктов - для этого у нас 4 человека работают, но советую посмотреть в сторону электронных ключей, схема работы их такова:

Программа (Набор функций) - (Электронный ключ(В нём набор фуункций)), если ключа нет, и выполнятся нечему! Никто Ваши алгоритмы бесплатно не украдёт! И советую проверок с сообщениями типа (У вас нет электронного ключа! Вставте ключ для работы с программой) не делать - это упрощает взлом, даже просто принципы его работы! Есть пару фирм, название которых я сказать не могу, это секрет, они делают очень надёжные ключи, которые до сих пор никто не взломал!

Невероятно сложно кому? Домохозяйке или студенту? Если кому то надо, взломают и весьма быстро, И КейДонгл тоже...

2ТС: А что там с привязкой к железу? Берешь серийники Винта, Сетевухи, Матери, шифруешь, сохраняешь, при старте сверяешь, если не те нестартуешь. А способов защитить сам код достаточно много, но практически все они, доступные широкой общественности, способны защитить разве что от блондинки с дизасемблером...

Опять вопрос из раздела защиты и кр***нга..Ы не пинайте плиз.
Помогите расшифровать что это значит...нехочу выглядеть *****ом перед буржуями.
--(там есть файлик gbu.exe если его запускаеш то начинается обновление и вы увидите то что на скриншоте:))

смысл в том что для того чтобы все начало работать нужно ввести правильный логин и пароль....

Вот такую защчиту тяжело поломать ? и тяжело ли её сделать ?:)

95% что такая защита ломаетсо легко, для начала ставяться бряки на апи функции чтения из эдитов... А дальше дело техники...
 
На самом деле, привязать программу к аппаратному обеспечению очень просто. Для этого исполняемый код шифруют любым обычным асимметричным криптографическим алгоритмом, приватным ключем для которого является какая-то характеристика оборудования.

В таком случае снять защиту можно только на том оборудовании к которому привязано (и то нелегко), а копия кода без самого оборудования - просто мусор.
 
На самом деле, привязать программу к аппаратному обеспечению очень просто. Для этого исполняемый код шифруют любым обычным асимметричным криптографическим алгоритмом, приватным ключем для которого является какая-то характеристика оборудования.

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

А зачем ассеметричное шифрование? Если все будет крутиться в рамках одной системы то подойдет и семитричное :)
Да и если человек достал прогу, привязанную к конкретному железу, то и его параметры узнать он тоже сможет, а дальше совсем уж дело техники, написать либу хук, которая будет перехватывать обращения к функциям, возвращающим параметры железа и аместо реальных возвращать нужные :)
 
Если зашифровать исходный код можно дамп снять прямо из памяти. Единственное, геморрой с восстановлением ресурсов. Это ж вас не armadillo какой нибудь =)
А формочка как на рисунке малюется минут за 20.
 
Если зашифровать исходный код можно дамп снять прямо из памяти. Единственное, геморрой с восстановлением ресурсов. Это ж вас не armadillo какой нибудь =)
А формочка как на рисунке малюется минут за 20.

Зачем дамп? Спалить могут пока снимать буш, патчит замучишсо... А так тупо вызовы подменил и все, даж код Рихтера модифицировать нинадо :D
 
В тему..
Вот выдрал кой откуда..

Код:
/*---------------------------------------*/           /*--------------------------------------------*/
//    SkyH4x's VIP Private Hook v5.2.3   //           //               Credits:                     //
//                                       //           //                                            //
//        Coded by SkyH4x (Careem)       //           //  SkyH4x - v3n0m4 - P47R!CK - Fum1n         //
//                                       //   ---->   //  Tetsuo - s0beit - Mattdog - Critycal      //
//            Visit Now:                 //           //  aVitamin - JaVeX - Anubis82 - Player      //
//                                       //           //  H1web - Holz - Siodine - Lawgiver - Wakka //
//     HTTP://PHOENIX-HACKS.ATH.CX       //           //  DarkDog - Punisher - Mac - Sn4p - IceCube //
/*---------------------------------------*/           /*--------------------------------------------*/

#include "sdk.h"
#include "cMemory.h"

#ifndef _CANTILEAK_H_
#define _CANTILEAK_H_

//===================================================================================
class cAL
{
public:

	bool Verified();
};
extern cAL m_pAL;
//extern cAL base.m_pAL;

//===================================================================================
//===================================================================================
#endif

Код:
/*---------------------------------------*/           /*--------------------------------------------*/
//    SkyH4x's VIP Private Hook v5.2.3   //           //               Credits:                     //
//                                       //           //                                            //
//        Coded by SkyH4x (Careem)       //           //  SkyH4x - v3n0m4 - P47R!CK - Fum1n         //
//                                       //   ---->   //  Tetsuo - s0beit - Mattdog - Critycal      //
//            Visit Now:                 //           //  aVitamin - JaVeX - Anubis82 - Player      //
//                                       //           //  H1web - Holz - Siodine - Lawgiver - Wakka //
//     HTTP://PHOENIX-HACKS.ATH.CX       //           //  DarkDog - Punisher - Mac - Sn4p - IceCube //
/*---------------------------------------*/           /*--------------------------------------------*/

#include "cAntiLeak.h"
#include "cMemory.h"
//#include "crc32.h"

bool cAL::Verified()
{ 
	//DONT TOUCH HERE -> SEE BELOW TO ADD HWIDS
	//-------------------------------------
	//-------------------------------------
	//-------------------------------------
	DWORD nSize;DWORD nSize2;int nSize3;DWORD lVolSerialNbr=0;
	char cUsername[255] = "";char cComputername[255] = "";char cComputerhost[255] = "";char sHDSerial[255] = "";
	nSize = sizeof( cUsername );nSize2 = sizeof( cComputername );nSize3 = sizeof( cComputerhost );

	GetUserName( cUsername, &nSize );
	GetComputerName( cComputername, &nSize2);

	GetVolumeInformation( "C:\\", 0, 0, &lVolSerialNbr, 0, 0, 0, 0);
    ultoa(lVolSerialNbr, sHDSerial, 10);

	DWORD crcComputerName = calc.crc32(cComputername);
	DWORD crcUserName = calc.crc32(cUsername);
	DWORD crcHDSer = calc.crc32(sHDSerial);
    DWORD HardWareID = crcComputerName+crcUserName+crcHDSer;

	int asdf = HardWareID;

#define AddUser( HWID , Name )									\
	if (HardWareID == HWID)										\
	{															\
		return true;											\
	}															
	//-------------------------------------
	//-------------------------------------
	//-------------------------------------
	//HWIDґS HERE Example of how to use the func->
	AddUser(2949808286, SkyH4x);//Phoenix-Hacks - Leader
	AddUser(1982654689, Killa M4a1);//Phoenix-Hacks - Member
	AddUser(289723641, ****oexe);//Phoenix-Hacks - Member
	AddUser(2984445140, User-LoL);//Phoenix-Hacks - Member
	AddUser(1744349752, Dylan);//Phoenix-Hacks - Member
	AddUser(363678831, HeadShot);//Phoenix-Hacks - Member
	AddUser(3000316268, Destiny);//Phoenix-Hacks - Member
	AddUser(522257067, HдscHisch);//Phoenix-Hacks - Member
	AddUser(1065605161, Luca ^^);//Phoenix-Hacks - Member
	AddUser(2753128323, BrainCracker);//Phoenix-Hacks - Designer
	AddUser(3482336206, Critycal);//Phoenix-Hacks - SMOD
	AddUser(494140270, ImRich);//Phoenix-Hacks - Member
	AddUser(84296637, Skillz);//Phoenix-Hacks - LifeTime VIP Member
	AddUser(2899553277, Deagle);//Phoenix-Hacks LifeTime VIP Member
	AddUser(2420725419, Home Drengen);//Phoenix-Hacks LifeTime VIP Member
	AddUser(3440152530, Sebentox);//Phoenix-Hacks LifeTime VIP Member
	//AddUser(/*PUT THERE HWID HERE*/, /* put there name so u can remember whos hwid it is*/ );

  return false;
}

Вам это о чем нибудь говорит ? Помойму крутая защита :D
 
Невероятно сложно кому? Домохозяйке или студенту? Если кому то надо, взломают и весьма быстро, И КейДонгл тоже...

2ТС: А что там с привязкой к железу? Берешь серийники Винта, Сетевухи, Матери, шифруешь, сохраняешь, при старте сверяешь, если не те нестартуешь. А способов защитить сам код достаточно много, но практически все они, доступные широкой общественности, способны защитить разве что от блондинки с дизасемблером...



95% что такая защита ломаетсо легко, для начала ставяться бряки на апи функции чтения из эдитов... А дальше дело техники...

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

Насчёт невероятно сложно: Я разве написал невозможно? Сломать можно всё, просто сколько это времени займёт - вот это вопрос и стоит ли его тратить! Если бы Microsoft поставляла копии своей Windows c ключами - взломать винду было бы просто практически невозможным! (Может что тобы и сделали, но с невероятно огромными усилиями - проще купить лицензию)
 
А вы подумайте, почему M$ этого не делает.
 
Ну при схемах с электроными ключами взломать не возможно, потому что нечего ломать! В основном в ключ вшиваються жизненно-необходимые алгоритмы софта, и если ключа нет - нет куска программы! И даже особо напрягаться не нужно! Поверте, это работает и очень успешно! А слить алгоритмы с ключа - это невозможно аппаратно! Проще написать аналогичный софт, чем заниматься его взломом!

1 лицензионная копия, хук для прочтения данных, эмулятор флехи. фсе.
 
Вот-вот. Самый простой способ. Только там нужен не хук, а эмулятор и подавну.

Не пнял... Хуком на самом низком уровне, до спец драйвера, если такой есть считавыем "секретные" данные. Потом пишем умулятор, которые эти данные будет поставлять на том же уровне но в пиратских копиях. Просто перед нашей камандой полтора года назад стояла подобная задача. Первым делом мы начали исследования с ломания защит различных демок под кейдонгл в разных видах и упаковщиков типо Аспака :))) Весьма продвинулись в этом деле, но так как практически все пиратского софта мы не приемлем, проффесиональными хакерами не стали. А для своего продукта в конечном счете остановились на примитивной защите: Шифрованая конфига оборудования, простозапутанный механизм активации, без лоховства, свой упаковщик и антидебагер. Дальше мутить было нецелесообразно, ибо дорого, а при желании ломаеться очень даже просто.
 
Ну при схемах с электроными ключами взломать не возможно.

Бред. Яркий пример 1С, MVTS...

Значид так.

У меня есть программа, которая как вы уже догадались не должна попасть в паблик. Состоит из 2х частей dll и exe. к чему я это сказал - так вот если заменить экзешник на другой (коих в нете полно;)) то прога будет работать... так вот мне нужно эту Dll ку так привязать или слепить экзешник и дллку в одно целое, вообщем чтоб без моего разрешения ни один хитрый лосось не мог это запустить:).

Интересует привязка к винту еще. В инете очень мало нашел, может кто знает какие то бесплатные или какие еще проги для защиты или советы буду преблагодарен.:rolleyes:


Если решенная вами задача, настолько гениальна и востребована на рынке, что требует защиты, то единственно возможные способы защиты:
- реализация функционала вашей библиотеки на кристале (ПЛИС). И то, такая защита будет "ограниченной" ибо на восстановление таблицы истинности вашего вычислителя путем подачи на входы псевдокода уйдет не более 5-10 лет :)
- реализовать функционал вашей библиотеки на удаленном сервере, при этом клиентский .exe должен будет лишь отсылать данные на сервер и получать результат их обработки.

Других методов защиты программного обеспечения устойчивых к методам reverse engineering не существует :)
 
Останнє редагування:
Я бы сказал, что существуют и другие методы, но у них есть другие недостатки. И, конечно, нету простых методов, которые не имеют существенных ограничений и которые одновременно трудно сломать.

Например, можно реализовать какую-нибудь свою виртуальную машину внутри программы и исполнять весь свой код в ней. При этом язык машины должен быть максимально низкоуровневым и при этом использующим какие-нибудь нетривиальные операции, желательно плохо или совсем необратимые. Что-нибудь в духе какого-нибудь нетрадиционного функционально полного набора булевых функций (не ДНФ, не КНФ, не NAND и не NOR), желательно из одного оператора, совмещённого с оператором условного перехода в зависимости от результата вычисления.

Удачный выбор набора операций виртуальной машины сделает reverse engineering крайне трудоёмким и муторным. Если при этом большую часть исполняемого внутри виртуальной машины кода ещё и зашифровать, пусть даже не сложно, но так, чтобы расшифровка кода происходила с помощью операций самой виртуальной машины, то несчастный взломщик может просто утонуть в деталях. Правда и разработка такой системы более, чем нетривиальна. Да и скорость, скорее всего, будет, мягко говоря, не очень высока.
 
Останнє редагування:
Я бы сказал, что существуют и другие методы, но у них есть другие недостатки. И, конечно, нету простых методов, которые не имеют существенных ограничений и которые одновременно трудно сломать.

Например, можно реализовать какую-нибудь свою виртуальную машину внутри программы и исполнять весь свой код в ней. При этом язык машины должен быть максимально низкоуровневым и при этом использующим какие-нибудь нетривиальные операции, желательно плохо или совсем необратимые. Что-нибудь в духе какого-нибудь нетрадиционного функционально полного набора булевых функций (не ДНФ, не КНФ, не NAND и не NOR), желательно из одного оператора, совмещённого с оператором условного перехода в зависимости от результата вычисления.

Удачный выбор набора операций виртуальной машины сделает reverse engineering крайне трудоёмким и муторным. Если при этом большую часть исполняемого внутри виртуальной машины кода ещё и зашифровать, пусть даже не сложно, но так, чтобы расшифровка кода происходила с помощью операций самой виртуальной машины, то несчастный взломщик может просто утонуть в деталях. Правда и разработка такой системы более, чем нетривиальна. Да и скорость, скорее всего, будет, мягко говоря, не очень высока.

Бред.
 
Это делает Armadillo последних версий, и насколько я знаю он тоже вполне ломаем (динамическая шифровка страниц, собственная виртуальная машина)
Скорость, наверное, падает жутко. Да и надежность.
 
1 лицензионная копия, хук для прочтения данных, эмулятор флехи. фсе.

ну в данных ключах, которые мы используем и ещё ряд компаний включая таких как Apple (Они вначале защщали свой Word... я просто не помню ак он назывался, но потом отказались, потому что никто им не пользовался - взломать невозможно, а купить - дорого, поэтому они ключи убрали) сделать то что вы описали не получиться, почему - секрет фирмы, но это входит в её гарантии! В договоре написано, что если кто взломает ключ - компания сама оплатит всю компенсацию за это... если так пишут, значит что то знают
 
ну в данных ключах, которые мы используем и ещё ряд компаний включая таких как Apple (Они вначале защщали свой Word... я просто не помню ак он назывался, но потом отказались, потому что никто им не пользовался - взломать невозможно, а купить - дорого, поэтому они ключи убрали) сделать то что вы описали не получиться, почему - секрет фирмы, но это входит в её гарантии! В договоре написано, что если кто взломает ключ - компания сама оплатит всю компенсацию за это... если так пишут, значит что то знают
Ну спорить не буду... Но что то невломанная защита напоминает мне анекдот про неуловимого джо.
 
Назад
Зверху Знизу