Лицензирование Golang

Questions regarding purchasing or upgrading of VMProtect
graidara
Posts: 4
Joined: Wed Mar 04, 2020 2:18 pm

Лицензирование Golang

Postby graidara » Wed Mar 04, 2020 2:23 pm

Здравствуйте.

Не смог найти информацию о том как лицензировать программы написанные на golang (linux x64).

Это возможно сделать?

Admin
Site Admin
Posts: 1883
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: Лицензирование Golang

Postby Admin » Sat Mar 07, 2020 6:53 pm

К сожалению разработчики Golang не предусмотрели возможность импорта функций в виде PE/ELF структур, с которыми работает VMProtect при определении используемых функций из SDK.

graidara
Posts: 4
Joined: Wed Mar 04, 2020 2:18 pm

Re: Лицензирование Golang

Postby graidara » Sun Mar 08, 2020 5:13 pm

Случаем cgo не подойдёт? Он позволит "встроить" прямой вызов функции. Меня больше беспокоит как защита подружится с многопоточностью. В любом случае как я понял вы не тестировали совместимость?

Admin
Site Admin
Posts: 1883
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: Лицензирование Golang

Postby Admin » Tue Mar 10, 2020 10:41 am

Случаем cgo не подойдёт?

Можете прислать пример, в котором будет вызываться MessageBoxW? Насколько я знаю это все равно в конечном итоге работает через LoadLibrary+GetProcAddress.
Меня больше беспокоит как защита подружится с многопоточностью. В любом случае как я понял вы не тестировали совместимость?

У нас нет никаких проблем с многопоточностью.

graidara
Posts: 4
Joined: Wed Mar 04, 2020 2:18 pm

Re: Лицензирование Golang

Postby graidara » Tue Mar 10, 2020 8:29 pm

Как раз вызвать MessageBoxW из Go не самое простое дело.

Нашёл страничку с демкой. Прикрепил примеры вызова VMProtectIsProtected для windows и для linux. В обоих случаях что то ломается :cry:

./main.go - исходники

./windows/awesomeProject.exe - без защиты (работает если подсунуть dll из папки Lib)
./windows/awesomeProject.vmp.exe - с защитой (не работает, выводит варнинг и крашит)
./windows/crash.txt - текст краша
./windows/awesomeProject.exe.vmp - проект защиты


./linux/awesomeProject - без защиты (работает если подсунуть dll из папки Lib)
./linux/awesomeProject_vmp - с защитой (не работает, выводит варнинг и не выводит текст)
./linux/awesomeProject.exe.vmp - проект защиты

P.s. В exe вызов VMProtectIsProtected есть в IAT
Attachments
awesomeProject.zip
(5.17 MiB) Downloaded 149 times

Admin
Site Admin
Posts: 1883
Joined: Mon Aug 21, 2006 8:19 pm
Location: Russia, E-burg
Contact:

Re: Лицензирование Golang

Postby Admin » Fri Mar 13, 2020 8:36 am

Уберите из проекта "runtime.main"

graidara
Posts: 4
Joined: Wed Mar 04, 2020 2:18 pm

Re: Лицензирование Golang

Postby graidara » Tue Mar 17, 2020 10:42 am

Хм, работает. Попробую потестить