![]() |
eXeL@B —› Софт, инструменты —› new Syser Debugger by reversecode |
<< . 1 . 2 . 3 . 4 . |
Посл.ответ | Сообщение |
|
Создано: 21 мая 2017 04:33 · Поправил: Модератор · Личное сообщение · #1 ![]() история реверса в оффтопе кто не видел благодарностей не надо, багов наверняка там еще много, как собственных так и в процесса реверса, TODO тоже еще есть но в целом уже можно запустить, трейсить, ставить бп, добавлять вотчи, даже плагины, итд интересны моменты(багрепорты) когда дебаггер будет падать x32/x64 https://www.sendspace.com/file/t4lpr5 - недоступна, в розыске последняя версия кто успел сохранить 4 июня 2017, 20:59:10 http://rgho.st/67jjLSRTg 1607 210517 add handle int 3 fix mouse scroll fix memory leak PEFile read import 0413 230517 fix crash on delete watch item improve terminate debug add FlushInstructionCache on WriteMemory start debug from cmdline 2046 230517 improve reset(reload the input file) (WO hotkey) 1528 240517 hide BP(CCh) bytes from HexView, show original value colored BP(code,data) in HexView done re PopupMenu on HexView (hotkey not tested), operation toolbar in TODO done re command(edit,move,compare) memory 0203 250517 done re ModuleList window done re ascii/unicode string context ref fix env path by add manifest 2224 250517 fix crash without dbg plugin first build x64 1813 280517 fix mouse wheel scroll on x64 fix scroll by UPbtn bar add ALT+ hotkey fix fit hexview on x64 fix hexview change addr on edit addr area fix align stackview on x64 fix str sym ref on \t add resolve ctx ref on r8-r15 CPU reg x64 improve PE loader for x64, for resolve import/export sym fix select bytes on hexview for x64 add show EB line jmp ref chg addr/offs represent on codeview 0731 290517 fix PE Loader for x64, to read import/export for hibase > 32bit, as example kernelbase.dll done re sym command, allow show/add symbol/use it for set breakpoint fix readpe onload file, for correct read sizeof file for x64 fix search module range and module info status for x64 1258 040617 fix disable load x86 on syser x64 fix fmt fit addr exception violation on syser x64 fix PID/TID status and expr var fix fit addr tab in code/data view for x64 fix 'p ret' cmd, run to return implement SDK menu api done re process list window (attach work, detach from target at todo) starting re peexplorer window 1559 040617 fix load SyserColor.cfg from old SyserOption.exe util https://www.sendspace.com/file/l7r3pw 2058 040617 improve highlight keyword api и пример плагина в архиве дистрибутива x32 ![]() x64 ![]() ![]() |
|
Создано: 01 июня 2017 05:18 · Поправил: VOLKOFF · Личное сообщение · #2 reversecode пишет: но что ложится в fs там не показано Под х64 FS:[0] уже не актуален, про что и написано в статье. Там все через ExceptionTable делается. Эта таблица при компиляции записывается прямо в исполняемый файл и содержит смещения и длину всех функций + п-коды для "размотки" стека. Когда происходит exception, система смотрит где он произошел и ищет структурку из таблички отвечающую за эту функцию. Используя п-код отматывает стек и вызывает exception handler, который представляет само приложение (адрес записан в той же структурке), что бы тот дергнул деструкторы локальных объектов По цепочке отматывает до нужного фрейма PS Был кстати ![]() |
|
Создано: 01 июня 2017 05:56 · Личное сообщение · #3 reversecode пишет: а диасмит он так та капстон тоже дизасмит шоколодно, только после асм двигов бокарезы. так сорян, уведу немного топ в сторону.. ![]() VOLKOFF пишет: Эта таблица при компиляции записывается прямо в исполняемый файл и содержит смещения и длину всех функций + п-коды для "размотки" стека. с такой глубиной структуры, табличка просто лютая. пока не понял,в моём частном случае, защита её перелопатила или дописала, но порядка 60000 рва указателей для beginaddress&endaddress скриптом восстановил, а вот c unwindinfo пока не вкурил, как добраться до chained. насколько понял эти данные в структуре указывают на пролог. ----- Чтобы юзер в нэте не делал,его всё равно жалко.. ![]() |
|
Создано: 02 июня 2017 13:36 · Личное сообщение · #4 |
|
Создано: 02 июня 2017 13:55 · Личное сообщение · #5 |
|
Создано: 02 июня 2017 14:06 · Личное сообщение · #6 |
|
Создано: 02 июня 2017 14:23 · Личное сообщение · #7 reversecode пишет: откуда я знаю что кому надо в апи Вот если сравнивать olly, ida, x64dbg то идет по возрастанию, от самого плохого к лучшему, windbg вообще в список не попадает, ибо ад и черный властелин. Управление таргетом, чтение, правка в памяти, правка на диске, управление секциями и правами, возможность контролировать отладочный движок даже в мелочах, полный доступ к дизасму\асму с возможностью замены, управление гуи виджетами в том числе создание новых, остальное общественность сама напишет, главное, чтобы api были вменяемо названы и интуитивно понятны, излишних интерфейсов можно не бояться, кто пишет плагины все равно делает обертки функций с кодом который можно использовать повторно, хуже когда нужна мелочь, а ее нет или название такое, что никогда не догадаешься. Если все это затруднительно, можно вынести енжин в качестве плагина для ida. С куцым api не взлетит, учитывая, что для windbg есть обертки и есть упоротый скриптинг который немного скрашивает всю боль. ![]() |
|
Создано: 02 июня 2017 17:01 · Личное сообщение · #8 открыл в иде sdremote.dll, а там дырка от бублика ![]() банальная перенаправлялка с-в ком порт полагаю ее смысл был в чем то другом, сисер ring0 цеплялся в виртуальной машине на ком порт, а через эту sdremote.dll можно было обращаться командами сисера к виртуальной машине с сисером но даже в последней версии сисера, я не увидел что бы они задействовали этот функционал ![]() |
|
Создано: 02 июня 2017 17:21 · Личное сообщение · #9 |
|
Создано: 02 июня 2017 18:33 · Личное сообщение · #10 интерфейс дебаггера у него универсальный, прикрутить можно что угодно, даже удаленную отладку - если реализовать но именно этот sdremote.dll я раскопал, все как я и сказал сисер ring0, на отлаживаемой системе превращался с сервер, а эта длл это для юремодной консоли, давала возможность управлять сисером на отлаживаемой системе через компорт все это есть в коде до 1.5(2007 год) версии сисера там даже команда есть, SDServ для запуска этого сервера в сисере а вот дальше, код почикали, а длл оставили ![]() |
|
Создано: 03 июня 2017 14:47 · Личное сообщение · #11 |
|
Создано: 03 июня 2017 15:13 · Поправил: reversecode · Личное сообщение · #12 весь код дебаг цикла для win32 я уже публиковал https://pastebin.com/LC9b0mmT фиксы там есть, но все приблизительно так же и выглядит pid tid думаю можно вынести, вопрос куда ? в plunge ? аргументами ? выносить debug_event сомнительно, если я его вынесу в plunge, то это будет ring3 в ring0 такой структуры нет вообще, уже апи будет не апи а код плагина должен быть универсален что бы можно было ничего в нем не меняя билдить и под ring3 и в будущем для ring0 гуи это хорошо, я бы рад, придумать бы еще как логика гуи почти такая же как в winapi, будем посмотреть ... Добавлено спустя 4 минуты кстати баг обнаружился в последней версии, выполнить до ретурна, не пашет сломал починкой ловли не своих int3 точек Добавлено спустя 23 минуты доступ к самому циклу дебаг евенета дать не получится посему была мысль добавить список для ексепшинов, который можно наполнить для игнора но сейчас апи вся туманна, пока нет ring0, переделывать ее по сто раз не очень хочется, а она должна быть универсальная ![]() |
|
Создано: 04 июня 2017 13:24 · Поправил: reversecode · Личное сообщение · #13 обновил чуть чуть 1258 040617 fix disable load x86 on syser x64 fix fmt fit addr exception violation fix PID/TID status and expr var fix fit addr tab in code/data view for x64 fix 'p ret' cmd, run to return implement SDK menu api done re process list window (attach work, detach from target at todo) starting re peexplorer window ![]() |
|
Создано: 04 июня 2017 14:05 · Личное сообщение · #14 подсветка не очень, опции не работают, а в командах что то не нашел ничего подходящего для настройки палитры, не реализовано или это я не осилил поиск? 1. ядовито-кислотные цвета которые все перекрывают. 2. длину команды все же желательно определять, а не подсвечивать вхождения слова, ведь это все таки листинг, а не просто текст. ![]() и да, с gui действительно все очень плохо, дольше пяти минут не могу сидеть за таким интерфейсом, начинают слезиться глаза, ладно мелкое, но жуткое мыло которые начинает двоиться через небольшой промежуток времени, при этом у меня нормальное зрение, пробовал совать манифесты для поддержки hidpi, но никаких изменений, в принципе ожидаемо, ведь контролы самостоятельно все отрисовывают. ![]() |
|
Создано: 04 июня 2017 14:17 · Личное сообщение · #15 подсветка оигинальная, если поклацать по хекс байтам опкодов, то она и на сам дизасм иногда попадает так что там еще исправлять есть что пункта палитры нет, еще не реализована, в оригинальном это вообще в ring3 не настаивается но без изменения шрифтов вряд ли можно будет добиться приятных тонов на разные вкусы ![]() |
|
Создано: 04 июня 2017 14:34 · Личное сообщение · #16 reversecode пишет: но без изменения шрифтов вряд ли можно будет добиться приятных тонов на разные вкусы дело не только в тоне или шрифтах, а в самой отрисовке, в других инструментах я шрифты не сильно крупнее использую, но нет мыла, сделайте скрин и немного его расфокусируйте или пройдитесь немного блюром, вот примерно так вижу интерфейс. для сравнения скрин x64dbg ![]() в старых qt приложениях у меня такая же фигня, поддержку hidpi не так давно туда добавили и после еще чинили. учитывая все в совокупности, размер шрифтов и мыло в итоге получается все очень плохо. не требую прям вот все бросать и делать, только напоминаю, что есть такая проблема и даже самые крутые отладочные функции ее не решат. ![]() ![]() |
|
Создано: 04 июня 2017 14:51 · Личное сообщение · #17 на картинках фонт жирнее, вот и вся разница так я знаю о этих проблемах, но здесь цена выбора, что перспективнее, впрыгнуть в ring0 или дотянуть до юзабилити что бы понравится всем)) вытянуть палитру планы есть, если есть интерес проверить ее прямо сейчас, можно взять оригинальную утилиту сисера по палитре, а потом закинуть файлик цветов в новый сисер https://www.sendspace.com/file/l7r3pw ![]() |
|
Создано: 04 июня 2017 15:08 · Личное сообщение · #18 |
|
Создано: 04 июня 2017 15:27 · Личное сообщение · #19 |
|
Создано: 04 июня 2017 16:25 · Поправил: shellstorm · Личное сообщение · #20 reversecode пишет: вопрос не в крупности, а в жирности, болд Нет, если выставить болд сравнение будет еще хуже и даже если поменять шрифт на какое нибудь консольное убожество времен доса, дело именно в отрисовке, увеличьте пикчи и посмотрите, как неравномерно отрисовываются шрифты и как начинают сыпаться. вот bold + upper: ![]() вот наследие дос: ![]() сам шрифт говно, но он нормально прорисовывается и не плывет, просто сам по себе ущербный и плохо читается. update: Нет, второй шрифт растровый, но могу отрендерить хоть с какой нибудь 8-ми битки, результат будет точно такой. Я бы и не стал из за ерунды раздергивать клянча "тетрис". для поддержки hidpi нужно немного покодить, само не заведется и правкой нескольких байт не исправить. https://msdn.microsoft.com/en-us/library/windows/desktop/dd464659(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/desktop/dn469266(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/desktop/ff684173(v=vs.85).aspx хз, может будет свободное время и настроение. reversecode пишет: все это подразумевает масштабирование, как я понимаю Да, именно из за масштабирования получается мыло на мониторах с высоким разрешением и пиксельные дыры в шрифтах тоже по этой же причине, при нормально функционирующем hidpi сисер будет выглядит не хуже чем второй скрин с растровым шрифтом, с той лишь разницей, что в сисере шрифт не такой стремный. У меня не только шрифт плывет, но и элементы гуя. ![]() |
|
Создано: 04 июня 2017 21:09 · Личное сообщение · #21 2058 040617 improve highlight keyword Добавлено спустя 6 минут все это подразумевает масштабирование, как я понимаю а сисеровский гуи его не умеет вообще, нужно время, сидеть и разбираться, хотя по логике, умножать все пиксели на коэффициент, несложно Добавлено спустя 5 часов 47 минут shellstorm сделал тестовый билд с грубым 2х увеличением https://www.sendspace.com/file/pw3hiv поиграйтесь и скажите, есть смысл двигаться в таком направлении ? ![]() |
|
Создано: 07 июня 2017 14:19 · Поправил: shellstorm · Личное сообщение · #22 reversecode пишет: поиграйтесь и скажите, есть смысл двигаться в таком направлении ? Стало еще хуже, такое же мыло, только теперь еще и не вмещается. ![]() ![]() но так лучше видна проблема, немного увеличьте меню, видно, что все двоится, хотя и так видно, а долго сидеть за таким интерфейсом анрил. update: да, поскольку проблему не решает, а лишь усугубляет, тоже самое мыло, только стало еще заметней. в целом это частая проблема с отрисовкой, github забит issues по поводу hidpi и мыла. update: >то растянуть было проще, чем ковырять всю гуи на предмет увеличения так увеличить я и сам могу, можно тупо пропатчить, а вот исправить неправильную отрисовку уже сложно. суть заключается в том, что приложение не может правильно определить количество точек и изображение сдвигается, оставляя артефакты, в итоге получается эффект мыла. ![]() |
|
Создано: 07 июня 2017 14:25 · Личное сообщение · #23 это был StretchBlt вместо старого BitBlt его можно правильно по дюймам с масштабировать, но если все равно не то что хочется, тогда смысла двигаться в том направлении нет.. Добавлено спустя 43 минуты это была попытка пофиксить dpi совсем просто, покольку все рисуется на отдельном битмапе то растянуть было проще, чем ковырять всю гуи на предмет увеличения ясное дело что стретч растягивает в мыло ![]() |
|
Создано: 06 июля 2017 19:06 · Поправил: reversecode · Личное сообщение · #24 исходники утеряны на всегда вместе с криптодиском даже не спрашивайте, самому печально только если начинать с нуля, но делать это just for fun, нет ресурсов ![]() |
|
Создано: 06 июля 2017 20:49 · Личное сообщение · #25 |
|
Создано: 09 июля 2017 17:42 · Поправил: reversecode · Личное сообщение · #26 difexacaw не надо писать во все темы подряд, для этого есть ЛС потерялись не только эти сурки, но и еще один проект который я доделывал, и сейчас пытаюсь его начать с нуля похерился крипто диск, вместе с его двумя бекапами которые я ежедневно обновлял виню в этом винду вместе с хромом, последний постоянно лезет в память и крошит себя и другие приложения, но на этот раз память похерили где то на уровне дров,ни с того ни с сего вросла активность sync ио для контейнера, я этому не придал значения, и забекапировал в бекапы,после подьема крипто диск монтировался но отказался открываться, винхекс показал что там все данные однообразная сеточка с одинаковой маской все 10гиг крипто диска но в первую очередь виноват конечно и я, не делал бекапов хотя бы с недельным интервалом, или хотя бы с месячным есть бекап за .....февраль или март, но там мало сохранилось от сисера, только начало так что как я описал в теме только если начинать с нуля, но делать это just for fun, нет ресурсов если кто готов пропонсировать реверс с нуля, в сумме больше $ 10к буду делать снова боль утраты не передать словами, кроме сисера там еще было много чего Добавлено спустя 35 минут была надежда что контейнер накрылся не весь а частично поэтому в качестве тестов был скопирован старый контейнер, поверх нового, на 30%, с надеждой что там только ключи или какие то сектора ntfs только похерелись повторное монтирование опять показало что диск в итоге не видится системой как рабочий файловый а winhex показал что вместо матрицы там присутствуют нормальные данные, но только на 30% т.е. все оставшиеся 70%, та же матрица однообразных данных так что восстанавливать нечего mak откройте и посмотрите донаты x64dbg, видите цифры ? опенсорс тоже можно, но за другие деньги ![]() |
|
Создано: 09 июля 2017 19:52 · Личное сообщение · #27 Сделал бы проект опенсорс, остались бы исходники .. появились бы и спонсоры и разработчики ... reversecode пишет: так что восстанавливать нечего обсуждать уже тоже ![]() ----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube ![]() |
<< . 1 . 2 . 3 . 4 . |
![]() |
eXeL@B —› Софт, инструменты —› new Syser Debugger by reversecode |
Эта тема закрыта. Ответы больше не принимаются. |