Посл.ответ |
Сообщение |
Ранг: 0.1 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 03 ноября 2013 23:40 · Личное сообщение · #1
В IDA Pro дизасемблирую программу и нашел там одну строку: ldstr "строка". Как мне изменить эту строку через HEX редактор например на другую, например ldstr "строка2"? PS: В Reflector я знаю как заменить, но мне нужно знать что и где меняется в самом файле, чтобы потом можно было лоадер написать, который меняет строку эту.
| Сообщение посчитали полезным: |
|
Ранг: 78.7 (постоянный), 43thx Активность: 0.07↘0 Статус: Участник
|
Создано: 04 ноября 2013 00:07 · Личное сообщение · #2
softcr пишет: но мне нужно знать что и где меняется в самом файле Смотри реф на строку и все, только строка не должна быть длиннее оригинальной.
| Сообщение посчитали полезным: |
Ранг: 0.1 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 04 ноября 2013 00:16 · Личное сообщение · #3
Tyra пишет: Смотри реф на строку и все что такое реф, а то я новичок немного) строка такая ldstr "", надо бы туда ник впихнуть. А если строку например в конец файла впихнуть, а там можно как то сослаться на нее?
| Сообщение посчитали полезным: |
Ранг: 0.1 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 04 ноября 2013 00:20 · Личное сообщение · #4
Еще в IDA по строке ПКМ=>Manual, редактирую строку. На листинге она показывается измененной, вывожу в dif файл, а там никаких изменений нет.
| Сообщение посчитали полезным: |
Ранг: 78.7 (постоянный), 43thx Активность: 0.07↘0 Статус: Участник
|
Создано: 04 ноября 2013 00:41 · Личное сообщение · #5
Тогда просто найди строку в файле.
| Сообщение посчитали полезным: |
Ранг: 0.1 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 04 ноября 2013 00:55 · Личное сообщение · #6
Такую строку сложно найти, так как она пустая ""
| Сообщение посчитали полезным: |
Ранг: 30.2 (посетитель), 18thx Активность: 0.03↘0 Статус: Участник
|
Создано: 04 ноября 2013 02:15 · Личное сообщение · #7
softcr пишет: В IDA Pro дизасемблирую программу и нашел там одну строку: ldstr "строка". Как мне изменить эту строку через HEX редактор например на другую, например ldstr "строка2"? SAE (SimpleAssemblyExplorer) в помощь. Tyra пишет: Смотри реф на строку и все, только строка не должна быть длиннее оригинальной. Пофиг на длинну.
| Сообщение посчитали полезным: |
Ранг: 0.1 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 04 ноября 2013 03:04 · Личное сообщение · #8
Quadcon пишет: SAE (SimpleAssemblyExplorer) в помощь. Работает, но так же как и через reflector сильно меняет файл и лоадер сделать получается затруднительно.
| Сообщение посчитали полезным: |
Ранг: 78.7 (постоянный), 43thx Активность: 0.07↘0 Статус: Участник
|
Создано: 04 ноября 2013 13:30 · Личное сообщение · #9
Quadcon пишет: Пофиг на длинну. Через SAE или Reflexi да, а если править файл через HEX, то длинна имеет значение. softcr пишет: так как она пустая "" Тогда только SAE или Reflexi
| Сообщение посчитали полезным: |
Ранг: 0.1 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 04 ноября 2013 17:14 · Личное сообщение · #10
Tyra пишет: Тогда только SAE или Reflexi а если строку прописать в конце файла, а в том месте сделать ссылку на эту строку? В не NET приложениях так делал. А здесь я не сильно понимаю как ldstr работает. Он считывает из определенного адреса строку? или после ldstr сразу идет строка? А то глянул в HEX редакторе другой ldstr с длинной строкой, так там инструкция занимает около 5 байт всего и текста не видать. Кто разбирается в этом?)
| Сообщение посчитали полезным: |
Ранг: 330.4 (мудрец), 334thx Активность: 0.16↗0.17 Статус: Участник ILSpector Team
|
Создано: 04 ноября 2013 19:17 · Личное сообщение · #11
http://exelab.ru/f/action=vthread&forum=1&topic=16650&page=27#24 ищи там ссылку Возьми прожку NetPe и еще раз посмотри тела методов с не пустой ldstr
| Сообщение посчитали полезным: |
Ранг: 0.1 (гость), 1thx Активность: 0.01↘0 Статус: Участник
|
Создано: 04 ноября 2013 19:58 · Личное сообщение · #12
Medsft пишет: Возьми прожку NetPe и еще раз посмотри тела методов с не пустой ldstr Не совсем понял, подробнее, пожалуйста
| Сообщение посчитали полезным: |
Ранг: 330.4 (мудрец), 334thx Активность: 0.16↗0.17 Статус: Участник ILSpector Team
|
Создано: 04 ноября 2013 21:10 · Поправил: Medsft · Личное сообщение · #13
NetPe - прога такая open source для разбора net-приложений [в гугле netpe первая ссылка] Короче не парься твоя задача вписать строку длины <> исходной строки методом байт-патч unreal если конечно ты не мега-мозг и сможешь пересобрать метаданные.Без обид но пока по моим наблюдениям звезда Вефриема еще не взошла. Как вариант могу предложить инлайн-патч (см.codeproject тема патч net) или изменить алгоритм решения твоей задачи
| Сообщение посчитали полезным: |
Ранг: 330.4 (мудрец), 334thx Активность: 0.16↗0.17 Статус: Участник ILSpector Team
|
Создано: 04 ноября 2013 21:25 · Личное сообщение · #14
И вообще почитай тему "Опять." мы там давно уже тему байт патчинга мусолим чето не выходит пока... аленький цветочек
| Сообщение посчитали полезным: softcr |
Ранг: 488.1 (мудрец), 272thx Активность: 0.35↘0 Статус: Участник
|
Создано: 05 ноября 2013 12:02 · Личное сообщение · #15
Medsft добавили бы эту тулзину в Опять .net .. Попробывал.. интересная поделка.. правда на 2их из трех .НЕТ апликухах обсыпалась при попытке подгрузить CLR.. но на поиграться то что надо
----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... | Сообщение посчитали полезным: |
Ранг: 330.4 (мудрец), 334thx Активность: 0.16↗0.17 Статус: Участник ILSpector Team
|
Создано: 05 ноября 2013 18:29 · Личное сообщение · #16
VodoleY пишет: Medsft добавили бы эту тулзину в Опять .net - тема создана к сожалению не мной и доступа к редактированию шапки я не имею. Тулза рабочая))) Пришли плиз в личку файло на чем упало.
| Сообщение посчитали полезным: |