Как предотвратить взлом GoLang exe в отладчике - PullRequest
0 голосов
/ 22 марта 2020

Я собираюсь продать свой golang exe некоторым клиентам за плату - впервые в жизни.

В настоящее время процесс проверки очень прост - клиент приобретает ключ активации, Когда программа запускается, она отправляет ключ активации клиента на мой сервер, а затем мой сервер проверяет, является ли ключ действительным или нет. Если программа недействительна, программа перестанет работать.

Я знал, что вышеуказанный процесс может быть прерван, если кто-то знает, как выполнить обратный инжиниринг exe-файла, и я видел много видео на YouTube, демонстрирующих, как взломать программу, например, преобразование вышеуказанной проверки в NOP на языках ассемблера, например, в OllyDbg и других отладчиках.

Итак, я попытался запустить свой golang exe в OllyDbg, и я могу сделать это для своей программы, например, повернув линии в NOP, и это меня беспокоит.

Я также пытался запустить другое коммерческое программное обеспечение в OllyDbg, но почти все они скажут что-то вроде «не удалось запустить foo.exe» «Уже есть отладчик присоединен к foo.exe "

- поэтому у них есть дополнительная защита, которая усложняет работу хакеров.

Я знаю, что невозможно на 100% предотвратить реверс-инжиниринг, но я просто хочу сделать это немного сложнее - под этим я подразумеваю только то, что я должен делать, если я просто хочу предотвратить запуск моего golang exe. OllyDbg (и другой популярный отладчик) - как foo.exe, описанный выше.

PS Я использую библиотеку walk для части GUI, так что это только для windows, и я использую

go build -ldflags="-s -w -H windowsgui" -tags walk_use_cgo

для сборки мой golang Отлично

...