|
|
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Всем привет, сразу оговорюсь случай когда функция не является членом класса. В случае класса через MethodAdress как то так: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. А если функция не член класса? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:00 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. "Унутре" оно всё равно именно так и действует. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:04 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, это одна из функций имя которой берётся из шифрованного файла. Если использовать такой метод то при отладке легче разобраться какую функцию вызывать и взлом облегчается. Понятно можно методом перебора найти нужную функцию. Но это хоть как то осложнит взлом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:09 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Ну тогда Код: sql 1. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:14 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
hlopotun, Я бы попробовал посоветовать отказаться от идеи защищать самому. По многим причинам. Если кратко - это сложно сделать качественно и в 99% случаев вообще не нужно. Воспользуйся готовой защитой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:16 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Dimonkahlopotun, Я бы попробовал посоветовать отказаться от идеи защищать самому. По многим причинам. Если кратко - это сложно сделать качественно и в 99% случаев вообще не нужно. Воспользуйся готовой защитой. на 100% и ненужно защищать. Просто усложнить взлом. Серьёзной защиты требуют дорогие программы. Эта из разряда которую проще купить чем оплачивать взлом. Область применения довольно узкая а стоимость низкая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:21 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
hlopotunПросто усложнить взлом. Парень, вытащи уже голову из... песка. То, что массив соответствия имён адресам спрятан (от тебя) под ковриком какой-то библиотеки, для отладчика - ничего не меняет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:24 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovhlopotunПросто усложнить взлом. Парень, вытащи уже голову из... песка. То, что массив соответствия имён адресам спрятан (от тебя) под ковриком какой-то библиотеки, для отладчика - ничего не меняет. да, но надо знать ещё какую функцию вызвать. А имя её в шифрованном файле лицензии. Можно конечно купить лицензию и потом сломать. Но сломают так сломают, в след версии функция поменяется …. это не то что меня разорит :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:31 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
hlopotunВсем привет, сразу оговорюсь случай когда функция не является членом класса. В случае класса через MethodAdress как то так: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. TRttiMethod.Invoke спасет отца дельфийской демократии ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:35 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
hlopotunнадо знать ещё какую функцию вызвать. А имя её в шифрованном файле лицензии. Ты серьёзно? Имя?.. Массив указателей на функции, а в лицензию прошиваешь индекс нужной. Если уж так хочется заморочиться. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:40 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Квейд, через RTTI тоже вроде только через класс: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:46 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovhlopotunнадо знать ещё какую функцию вызвать. А имя её в шифрованном файле лицензии. Ты серьёзно? Имя?.. Массив указателей на функции, а в лицензию прошиваешь индекс нужной. Если уж так хочется заморочиться. а где гарантия что этот индекс не изменится при перекомпиляции итп через имя и проще и надёжнее. Ещё раз повторюсь. 100% защита не нужна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 13:49 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Вот тут есть пример, если функция это функция обычная. https://github.com/NyaSik/php_wincall7.1/blob/master/php_WinCall.dpr#L543 Для вызова загружается через обычный GetProcAddress Значит подойдёт и обычный адрес на функцию. https://github.com/NyaSik/php_wincall7.1/blob/master/php_WinCall.dpr#L566 То есть, адрес надо куда - то добавить, что бы потом искать его. Тот же TDictionary<string, Pointer> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 14:02 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
hlopotunна 100% и ненужно защищать. Просто усложнить взлом. Серьёзной защиты требуют дорогие программы. Эта из разряда которую проще купить чем оплачивать взлом. Область применения довольно узкая а стоимость низкая. Вот в чём дело.... Отладчик это дело такое, ему надо всего лишь установится на момент работы программы. И он сразу перекинет в активный выполняемый кол. И человек сразу узнает где он сейчас, при выполнение каких - то условий. Это никак не защитить, кроме того как запретить коннектится к процессу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 14:05 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
hlopotunа где гарантия что этот индекс не изменится при перекомпиляции Это твой массив, ты его заполняешь собственными руками. Где гарантия, что твои руки делают то, что хочет твой мозг? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 14:15 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Мне кажется задача решается проще и надежнее таким образом: 1) запрет на работу отладчика 2) сжатие экзешника Думаю, есть недорогие готовые решения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 16:20 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
hlopotun... А если функция не член класса? Например, ничто не мешает объявить функцию экспортируемой, все как в .dll - Код: pascal 1. 2. 3. 4. 5. 6. Доступ к процедуркам - посредством LoadLibraryEx*: https://docs.microsoft.com/en-us/windows/desktop/api/libloaderapi/nf-libloaderapi-loadlibraryexw https://docs.microsoft.com/en-us/windows/desktop/api/libloaderapi/nf-libloaderapi-loadlibraryexa - с флажком DONT_RESOLVE_DLL_REFERENCES. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2019, 22:35 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
ёёёёёhlopotun... А если функция не член класса? Например, ничто не мешает объявить функцию экспортируемой, все как в .dll - Код: pascal 1. Доступ к процедуркам - посредством LoadLibraryEx*: +1 Только можно обойтись без LoadLibraryEx Объявление функции: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Вызов функции: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. С уважением, Polesov. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2019, 10:55 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
Использование GetModuleHandleA тоже не требуется: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2019, 11:01 |
|
||
|
Выполнить функцию по её названию из строки
|
|||
|---|---|---|---|
|
#18+
hlopotun, Кодируй скрипт разблокировки в ключе и запускай его после введения ключа. Делов-то. Скрипт можно пропустить через обфускатор, чтобы названия функций были F1, F2, F3.. В скрипторе зарегистрировать миллион функций, чтобы взломщикам угадывать было интереснее. Как-то так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2019, 11:27 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39809268&tid=2039520]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
455ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
74ms |
get tp. blocked users: |
2ms |
| others: | 238ms |
| total: | 821ms |

| 0 / 0 |
