Сейчас на форуме: Rio, -Sanchez-, artyavmu, CDK123 (+9 невидимых)

 eXeL@B —› Софт, инструменты —› Утилита MemoryTools
Посл.ответ Сообщение

Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 30 декабря 2010 12:21 · Поправил: hexoider
· Личное сообщение · #1

Приветствую.

Представляю Вашему вниманию свою утилиту для работы с памятью. Выложил ее в полный опенсорс, кому интересно, качайте, пробуйте, тестите, спрашивайте. Краткое описание можете посмотреть тут stillfinder.blogspot.com/2010/12/memorytools.html , и ссылку на ее скачивание посмотреть там-же . Если кто-то захочет кинуть на палку пару баксов, то буду благодарен )) -
Это первая версия и будет еще много доработок, просто хотелось бы услышать мнение людей перед продолжением работы над проектиком.

| Сообщение посчитали полезным: Mindzor

Ранг: 20.3 (новичок), 2thx
Активность: 0.010
Статус: Участник

Создано: 30 декабря 2010 12:31
· Личное сообщение · #2

hexoider
Думаю, вам стоит получше описать возможности вашей программы.



Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 30 декабря 2010 12:58
· Личное сообщение · #3

Да, нужно вдохновиться и расписать что она делает и как это делается. Просто мне, как ее разработчику вроде все понятно. Берете, аттачитесь к процессу и смотрите значения ячеек в разном представлении. Просто удобнее сразу видеть все варианты. А поиск оффсетов - это поиск определенных паттернов функций, тоже вроде ничего сложного. Но где-то "вдохновлюсь", меня пробьет, и обьязательно сделаю человеческое описание. Спасибо за комментарий.



Ранг: 1.7 (гость)
Активность: 0=0
Статус: Участник

Создано: 30 декабря 2010 12:59
· Личное сообщение · #4

лучше пример какой нибудь, не ясно что мы там с WOW делаем и зачем это нужно



Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 30 декабря 2010 13:04
· Личное сообщение · #5

Ну вов - это то, что было под рукой. Можно, например сделать чтобы в калькуляторе читать значение табла. А нужно это для того, чтобы получить какое-то значение из памяти приложения. А поиск оффсетов - это для того, чтобы каждый раз не искать их руками в IDA или Ольке при выходе новой версии приложения, которое мы мучим.



Ранг: 5.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 30 декабря 2010 13:52
· Личное сообщение · #6

С этой темой уже заморачивались: www.memoryhacking.com



Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 30 декабря 2010 16:16
· Личное сообщение · #7

А без.NET нельзя написать, а то надо кое что посмотреть на чужом комле, а там фреймвок не стоит



Ранг: 237.0 (наставник), 20thx
Активность: 0.130
Статус: Участник
sysenter

Создано: 30 декабря 2010 19:41 · Поправил: HiEndsoft
· Личное сообщение · #8

Любое начинание - дело хорошее. Но на .NET такое писать - полный изврат! + глюкнуло при первой же пробе.
hexoider пишет:
А поиск оффсетов - это для того, чтобы каждый раз не искать их руками в IDA или Ольке при выходе новой версии приложения, которое мы мучим.

--и что вы думаете офсеты останутся? проще на худой конец сигнатурный поиск заюзать в таком случае или дизасм-движок.

-----
продавец резиновых утёнков




Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 30 декабря 2010 19:53
· Личное сообщение · #9

HiEndsoft пишет:
Любое начинание - дело хорошее. Но на .NET такое писать - полный изврат! + глюкнуло при первой же пробе.
hexoider пишет:
А поиск оффсетов - это для того, чтобы каждый раз не искать их руками в IDA или Ольке при выходе новой версии приложения, которое мы мучим.
--и что вы думаете офсеты останутся? проще на худой конец сигнатурный поиск заюзать в таком случае или дизасм-движок.


ну в том же вове уже 8 обновлений было пережито ботоводами благодаря именно этой методике.



Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 30 декабря 2010 19:58
· Личное сообщение · #10

это вообще, даже не первая версия. по поводу .нета, я вообще хотел сделать на питоне, чтобы был еще больший изврат, который бы позволил умным людям дописывать свои алгоритмы анализа. Та и на сишке или с плюсами было-бы написать вроде как и проще. почему изврат? где аргументы? в чем он состоит, этот изврат? в скорости работы ? (про надежность еще рано говорить).



Ранг: 237.0 (наставник), 20thx
Активность: 0.130
Статус: Участник
sysenter

Создано: 30 декабря 2010 22:49
· Личное сообщение · #11

hexoider пишет:
почему изврат? где аргументы?

Гдето -там...
Если серьёзно: Работа с памятью на .NET - изврат полный, если вы писали бы на асме или на край на Си, вы бы представляли себе всю картину до бита. А какую картину даёт нам .NET?

-----
продавец резиновых утёнков




Ранг: 53.9 (постоянный), 19thx
Активность: 0.040
Статус: Участник

Создано: 31 декабря 2010 04:12
· Личное сообщение · #12

HiEndsoft пишет:
проще на худой конец сигнатурный поиск заюзать

Там так и есть...

Под вайном с наскоку не запустилось, какой там фреймворк нужен ?

Да, я еще больший извращенец чем автор программы



Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 03 января 2011 22:08
· Личное сообщение · #13

Zorn пишет:
Под вайном с наскоку не запустилось, какой там фреймворк нужен ?

Да, я еще больший извращенец чем автор программы


Специально для вас могу перекомпилить под второй




Ранг: 52.9 (постоянный), 6thx
Активность: 0.040
Статус: Участник

Создано: 08 января 2011 12:40
· Личное сообщение · #14

непонятно одно, чем эта утилита лучше CPU-Z, Memtest86+, S&M, RightMark Memory Analyzer и т.д.

Более подробно www.xard.ru/post/10634/default.asp



Ранг: 20.3 (новичок), 2thx
Активность: 0.010
Статус: Участник

Создано: 08 января 2011 13:09
· Личное сообщение · #15

pollllll_n
facepalm.jpg
вы бы хоть по ссылкам прошлись...




Ранг: 52.9 (постоянный), 6thx
Активность: 0.040
Статус: Участник

Создано: 08 января 2011 14:14
· Личное сообщение · #16

[c4] весь вопрос в ее функциональности и разных хитрых штучках, полностью согласен с HiEndsoft пишет:
--и что вы думаете офсеты останутся? проще на худой конец сигнатурный поиск заюзать в таком случае или дизасм-движок.




Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 08 января 2011 19:32
· Личное сообщение · #17

pollllll_n пишет:
непонятно одно, чем эта утилита лучше CPU-Z, Memtest86+, S&M, RightMark Memory Analyzer и т.д.

Более подробно www.xard.ru/post/10634/default.asp


Она не лучше. Она - другая. А вы просто пиарите свою статейку




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 09 января 2011 04:34
· Личное сообщение · #18

hexoider пишет:
Да, нужно вдохновиться и расписать что она делает и как это делается. Просто мне, как ее разработчику вроде все понятно.

Вдохновение то прибудет?

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh




Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 09 января 2011 15:41
· Личное сообщение · #19

Конечно прибудет. Вот только праздники закончатся.




Ранг: 52.9 (постоянный), 6thx
Активность: 0.040
Статус: Участник

Создано: 09 января 2011 18:15 · Поправил: pollllll_n
· Личное сообщение · #20

hexoider пишет:
Конечно прибудет. Вот только праздники закончатся.
идея у вас хорошая, осталось дело за малым, ее реализовать. Желая только удачи.



Ранг: 18.9 (новичок), 15thx
Активность: 0.010
Статус: Участник

Создано: 10 января 2011 00:15
· Личное сообщение · #21

Скопипастил описание программы со ссылки первого поста:
Code:
  1. Вам нужно выбрать из выпадающего списка 
  2. процесс к которому мы собираемся 
  3. подключаться и нажмем кнопку Attach.(в 
  4. данном случае это будет wow).
  5. Теперь выберем оффсет и вставим туда такое 
  6. значение 0x008b3e36(значение CurrentRealm, 
  7. которое может менятся при выходе новых 
  8. патчей игры),  нажмем кнопку show  и мы 
  9. увидим название текущего реалма.
  10. Снизу этого окна мы видим базовый адрес 
  11. приложения. Если поставим галочку 
  12. AutoRefresh,  то нужное нам значение будет 
  13. обновляться с заданным в миллисекундах 
  14. интервалом.  <b>Значение в поле оффсет 
  15. получается вычитанием адреса в приложении 
  16. от его базового адреса</b>.
  17. Далее нажимаем на зеленую стрелочку, и 
  18. вуаля, программа нам выдает смещения 
  19. функций или переменных в выбранном 
  20. приложении. Мы увидим нечто вроде
  21.  
  22. LuaDoString: 0x0039d8c0
  23. LastGlueState: 0x0097bd4c
  24. IsLoadingOrConnecting: 0x0097bd6c
  25. LuaGetTop: 0x00035300
  26. ClickToMove: 0x008cbb70
  27.  
  28. Это как раз и есть те оффсеты, которые мы 
  29. вставляем в первую вкладку.
  30. Так-же, на главной вкладке мы можем нажать 
  31. на кнопочку DisAsm и получить кусок 
  32. дизасемблированного листинга, начиная с 
  33. указанного адреса или оффсета.






Ранг: 13.0 (новичок)
Активность: 0.010
Статус: Участник

Создано: 16 января 2011 22:19
· Личное сообщение · #22

hexoider
утилитка будет полезна если добавишь след функции
1. листинг всех имеющихся переменных в памяти - чисто названия
их сортировка и фильтровка по текстовым фильтрам, длине, значений и тп

2. Условие продолжать снифинг до тех пор пока не будет обнаружено значение переменной соответствующее RegExp
или снифать все подходящие под regexp значения в txt файлик



Ранг: 145.8 (ветеран), 190thx
Активность: 0.140.36
Статус: Участник

Создано: 17 января 2011 08:18
· Личное сообщение · #23

hexoider
Поменяй шрифт в окне, где дамп выводится. Courier будет в 100500 раз лучше и ровнее смотреться.



Ранг: 0.9 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 17 января 2011 11:59
· Личное сообщение · #24

Ок. Сделаю.


 eXeL@B —› Софт, инструменты —› Утилита MemoryTools
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати