Anonymous
Такое происходит с x64dbg, и вроде в OllyDbg.
А у IDA Pro ломается режим графа
xor eax, eax
xor eax, eax
Там делают что-то вроде call, потом pop reg и модификация reg
Anonymous
Ну это из раздела мусора в коде. Его убрать можно.
А вообще, тут всё ограничивается только фантазией. Но руками тут точно не обойтись.
Ну как минимум макросы написать, которые будут сами шифровать, ломать строчки кода, вставлять мусор посреди каждой строчки и т.д.
Но на ЯВУ такое вряд ли прокатит.. Тут полюбому писать утилиту нужно будет, морочиться с PE форматами, патчить файл отдельно, после компиляции и т.д
disba1ancer
я вообще не вижу смысла в защите кода, поскольку для выполнения, он должен быть расшифрован на месте, значит такое шифрование легко сломать поскольку все ключи будут известны
Lo
tstring strItemName = pItem->pDisplayInfo->szName;
TCHAR szText[X_LONG_NAME];
TCHAR szBuff[X_LONG_NAME];
INT16 n16Num = pEvent->n16Num;
if( n16Num>=1 )
{
_stprintf(szBuff, g_StrTable[_T("CombatForChat15")], strItemName.c_str());
CombatSysUtil::Inst()->ShowCombatMsg(szBuff);
_stprintf(szText, _T("%s%d"), _T("GetItem"),pEvent->nQuality);
Lo
мне нужна функция подсчета и от нее взять метод в строку, и пихнуть как выше дополнительный _stprintf
Lo
вот как сейчас выглядит на примере
Lo
помогите систему научить считать хД
Lo
Читы пилишь?
Нет,у меня исходный код игрухи.Там сложный исходный код,но на нем можно тренировать свои знания)
Lo
И приводить их в практику.Уже разобрался,подключил функцию Сount.
Lo
Lo
Anonymous
Eugene
Ну или заменил байты на нопы.
Lo
Идеальной защиты не существует,верно?)
Anonymous
Перешёл к нужному адресу, и всё снова выстроилась как надо.
Это если только одна такая ловушка. А если через каждую инструкцию?
Дизассемблер превратит код в набор неопределённых инструкций, и из-за таких вот неопределённых байтов, ломаются последующие инструкции, потому что он думает, что это - продолжение какой-либо инструкции
Anonymous
Дизассемблер линейно дизассемблирует, он не предсказывает, что какие-то инструкции выполняться не будут.
Anonymous
Да и в любом случае, это же только один из методов антиотладки.
В идеале для получения хорошей защиты, использовать нужно сразу всё. От самых простых, для лохов, до самых сложных, смешав всё в кучу.
Anonymous
cmp eax, 1033
je @f
db '1dhjc19i2hcoiz12-='
@@:
add eax, 50000
push edx
IDA Pro не прожевал, и весь код далее превратился просто в db, а потом и вовсе в ?
Anonymous
Eugene
И там нельзя переключить в режим кода?
Anonymous
Lo
Какие есть варианты защитить свои консольные приложения от DDos на которые подключаются люди?Сервера стоят на Windows server.
Anonymous
Андрей
кто-нибудь на at&t пишет?
threadedstream
Не знаю, почему его так не любят :)
threadedstream
В принципе, если почаще работать с gcc и не менять ассемблерный синтаксис, то потихоньку начинаешь не любить интеловский.
Eugene
Eugene
ИМХО, конечно.
M
Ну типп
M
Это же at&t, сильный бренд,они художники - они так видят.
M
Это же вечный холивар в имплиментации чего угодно - изобретать велосипед наоборот, так как он тоже имеет право на существование или проникнуться парадигмой разработчика работающего велосипеда.
Aiwan \ (•◡•) / _bot
Это всё вопрос привычки.
Удобство в нём только одно: суффиксы (не надо писать word (ptr) и т.п.).
А всякие там проценты перед регистрами, доллары перед числами — зачем?
Изменение логики инструкций типа subrp и subp на противоположную — что за тупость вообще (subrp работает в стиле sub, а subp — в стиле subr)?
А как насчёт 10(%eax,%ebx,4) — это реально кому-то больше нравится, чем [eax+ebx*4+10] ???
10(%eax,%ebx,4) - такая конструкция требует дополнительныз знаний, "что есть что" и в какой последовательности выполняются действия.
[eax+ebx*4+10] - здесь тоже нужны знания, но эти знания по крайней мере закладываются с дества и уже находятся на интуитивном уровне (это плюс, это умножение итд)
Aiwan \ (•◡•) / _bot
я за интел синтаксис
Андрей
Кто-нибудь имеет ссылку или файлик с фундаментальным гайдом по ассемблеру?
threadedstream
https://godbolt.org/
threadedstream
Бесценный ресурс
threadedstream
Но это не гайд
threadedstream
Что-то типа "практического интродакшна в ассемблер"
Aiwan \ (•◡•) / _bot
есть еще от amd, но им не пользуюсь, хотя говорят что некоторые вещи там более интересней расписаны
threadedstream
Aiwan \ (•◡•) / _bot
Ну это уже для advanced левела
просили фундамент, вот он. все книги, учебные материалы основаны на том что находится на этом ресурсе
Aiwan \ (•◡•) / _bot
threadedstream
Впрочем, я бы отметил главу про организацию памяти
Андрей
vpgatherqq кидает segfault на GCC, а на msvc нет. Выравнивание вроде везде сделал по 32. В чем может быть дело?
Eugene
Aiwan \ (•◡•) / _bot
Ошибка в 17-й строке.
по мне так чуть раньше. повнимательней посмотри, на этом обычно все спотыкаются
Максим
Всем привет!
тут делают задачи за вознаграждение ?
Нет.
Андрей
Не пойму табличку перформанс, на какой архитектуре быстрее?
Eugene
Latency - зажержка, Throughput - пропускная способность.
Eugene
Но вообще странно, если Icelake и Skylake медленнее, чем Ivy Bridge...
Андрей
Anonymous
Anonymous
Anonymous
Неправильная таблица
Андрей
Константин
Может кто нибудь знает как в дизассемблере (конкретно x32dbg) найти участки кода где при запуске зараженной программой управление передается вирусу и он выполняет свои деструктивные функции?
Константин
понял,спасибо
Anonymous
на последней страница как правило, да
Anonymous
но если вирусописатель довольно изощрен то может быть в любом месте )
threadedstream
Актуальна ли статья Ульриха Дреппера о памяти на сегодняшний день?