проблема в том, что ида быстро палит статически слинкованый функционал по сигнатурам. пока в голову пришло только пересобрать RTL при помощи LLVM и намусорить, в поисках готового решения дёрнулся было на гит - https://github.com/obfuscator-llvm/ - но там вроде просто ж сорцы ллвм, или я чёто не понимаю?! может кто встречал опенсорсные решения?
sn0w, У вас ответ в первом предложении содержится. Ида это дизасм, вот и палит" только статически. Нужно динамическую защиту использовать, как это делают любые крипторы/протекторы. Обычный мусор, который простой автоматикой генерится так же просто и чистится скриптами иды на сколько знаю.
это я понимаю, тут пока не в аверах дело, а в иде, и плюсовом рантайме, к которому у ней есть готовые сигнатуры. вот рантайм библю(её статическую версию) и надо перекомпилить с перемешиванием бб и скрытием литералов хотябы, просто чтобы дефолтные сиги не подощли.
sn0w, Вы с уровнем защиты определитесь. Если вы сделали что то сложное как вам кажется, это ничего не значит. Такое разбирается за минуты под пивасик, у тех кто заточен на это есть скилл и большой опыт. Так защита не строится.
Indy, я знаю кто вы(большой вам + и уважение), но меня интересует не защита, а конкретно описанная тематика темы, а именно - обфускация на базе ir llvm
а что интересного? самый обычный регистровый IR, который обфусцируется самым обычным для такого IR способом... хорошие коммерческие решения уже давно есть, оупенсорсовые - полный гуан... берешь сорсы llvm и clang, компилишь cmake'ом, берешь полученные либы и пишешь плагины... но имхо куда удобнее и быстрее делать обфускацию на уровне абстрактного синтаксического дерева clang'а, чем на базе LLVM IR... можно даже обойтись без плагинов, просто написать ала-препроцессор для сорсов, а из clang'а заюзать лексер и парсер только... это достаточно удобно сделать из питона, используя официальные байндинги сишного апи...
да вообщемто так и сделал. почти. нашёл еще поинтереснее ,- и косвенное ветвление и мусорокод и инлайнинг и контрол флоу и замес ББ и до фига еще всего. вообщем то что нужно.(но по ситуации нужно то всего было прологи разбавить)