eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 8 октября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: cppasm, Tupis, Lambda (+2 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Софт, инструменты —› нужен генератор лоадеров под 64-x битные программы
<< . 1 . 2 .
Посл.ответ Сообщение

Ранг: 1.4 (гость)
Статус: Участник

Создано: 5 декабря 2015 21:05 New!
Цитата · Личное сообщение · #1

В поиске генераторы лоадеров под 64-x битные программы.


Ранг: 333.9 (мудрец)
Статус: Участник
born to be evil

Создано: 9 декабря 2015 02:39 New!
Цитата · Личное сообщение · #2

dosprog
в сяшках так-то еще и не такие костыли. вообще, тема - /ам уже скатилась

Ранг: 408.5 (мудрец)
Статус: Участник

Создано: 9 декабря 2015 02:45 · Поправил: 9 декабря 2015 04:05 dosprog New!
Цитата · Личное сообщение · #3

ajax пишет:
вообще, тема - /ам уже скатилась

Тема нужная. Тоже интересует этот вопрос, просто нет сейчас машины с х64.
А так оно понадобится по-любому, рано или поздно.

К Archer'у вопрос - окончательно, это пагубная идея - x32-loader для х64-программы?



Ранг: 304.0 (мудрец)
Статус: Участник

Создано: 9 декабря 2015 08:26 New!
Цитата · Личное сообщение · #4

Пока Archer спит, можно я отвечу? )

Лучше всё-таки получить опыт по отладке x64-программ, прежде чем писать серьёзные лоадеры для них, поскольку в x64 много нюансов. А нет ничего лучше, чем начинать с отладки своих собственных программ. Значит и лоадер лучше писать x64. Только в крайних случаях, за неимением возможности написать и протестировать x64-лоадер, можно писать x86... а значит, на такие случаи было бы нелишним приобрести опыт и по x86-лоадерам под x64-программы. )

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


Ранг: 30.1 (посетитель)
Статус: Участник

Создано: 9 декабря 2015 09:45 · Поправил: 9 декабря 2015 09:52 Kuzya69 New!
Цитата · Личное сообщение · #5

Блин, где эти описания на недокументированные функции искать ?
Гогль-могль молчит. Или я искать вообще не умею.
ZwWow64ReadVirtualMemory64 и ZwWow64WriteVirtualMemory64,
только наверное
NtWow64ReadVirtualMemory64 и NtWow64WriteVirtualMemory64.


Ранг: 304.0 (мудрец)
Статус: Участник

Создано: 9 декабря 2015 10:04 · Поправил: 9 декабря 2015 10:08 DenCoder New!
Цитата · Личное сообщение · #6

Kuzya69 пишет:
Или я искать вообще не умею.

Немного были неосведомлены просто. Все Zw-функции от Nt и в ринг0 почти ничем не отличаются, а в юзермоде - и подавно Zw = Nt !

Kuzya69 пишет:
ZwWow64ReadVirtualMemory64 и ZwWow64WriteVirtualMemory64,

Кстати, на первой странице топика указаны Nt в примерах )

Ранг: 53.9 (постоянный)
Статус: Участник

Создано: 9 декабря 2015 10:25 · Поправил: 9 декабря 2015 10:25 deniskore New!
Цитата · Личное сообщение · #7

Надеюсь разберетесь, ссылка на рабочую библиотеку с необходимым вам функционалом.
--> BlackBone <--

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



Ранг: 1991.4 (!!!!)
Статус: Модератор
retired

Создано: 9 декабря 2015 12:03 New!
Цитата · Личное сообщение · #8

dosprog пишет:
это пагубная идея - x32-loader для х64-программы?

Некоторые вещи не документированы. Стало быть, идея пагубная. Если делать кошерно-это полагаться на документированные вещи, это х64 для х64.

| Сообщение посчитали полезным: dosprog, OnLyOnE, -=AkaBOSS=-



Ранг: 990.3 (! ! !)
Статус: Модератор
Author of DiE

Создано: 9 декабря 2015 13:41 New!
Цитата · Личное сообщение · #9

ajax пишет:
мне всегда было интересно, откуда Archer и Hellspawn обладают специфичными знаниями


мы просто очень старые.

Archer
ты зануда )

вот еще есть прикольная библиотека в тему

wow64ext v1.0.0.7
http://blog.rewolf.pl/blog/?p=1394

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


Ранг: 408.5 (мудрец)
Статус: Участник

Создано: 9 декабря 2015 14:13 · Поправил: 9 декабря 2015 14:45 dosprog New!
Цитата · Личное сообщение · #10

Hellspawn пишет:
wow64ext v1.0.0.7


Видал её раньше, спасибо. Лежит пока в закромах. (проскакивали ссылки на неё тут же).
Из встреченных библиотек по этой теме производит самое нормальное впечатление.

Вообще, говорят, для всяких таких вещей есть микрософтовская библиотека MS-Detours.
Но она какая-то шибко коммерческая, чуть ли не 10 тыщ за x64 её версию хотят.
x32 версия вроде бесплатная, для подглядеть..

Hellspawn пишет:
мы просто очень старые.


если б молодость умела ..


Ранг: 49.6 (посетитель)
Статус: Участник

Создано: 9 декабря 2015 17:36 New!
Цитата · Личное сообщение · #11

dosprog пишет:
Вообще, говорят, для всяких таких вещей есть микрософтовская библиотека MS-Detours.
Но она какая-то шибко коммерческая, чуть ли не 10 тыщ за x64 её версию хотят.
x32 версия вроде бесплатная, для подглядеть..

MS-Detours в основном для хука...
вот тут есть полноценная версия (включая x64)
http://forum.exetools.com/showthread.php?t=14014&highlight=Detours

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


Ранг: 77.9 (постоянный)
Статус: Участник

Создано: 9 декабря 2015 17:50 · Поправил: 9 декабря 2015 18:01 v00doo New!
Цитата · Личное сообщение · #12

Archer пишет:
Если делать кошерно-это полагаться на документированные вещи, это х64 для х64.

Согласен, вообще не понимаю, на кой черт 32 лоадер к 64 разрядному приложению, его не запустить на 32 как ни крути, единственное, на что можно списать: это погоня за идеалом в стиле "один файл - ломает все", но это тоже через чур как-то...
UniSoft пишет:
MS-Detours в основном для хука..

Detours же меняет пролог функи и прыгает потом на инжект код, если я не ошибаюсь, потом обратно.
вот тут есть полноценная версия
О, я уже забыл о нем, как-то искал, чтобы хукнуть импорт, но нужно было учесть 32\64, но в итоге забил все сам написал. До этого встречал только 2.1 полную, 3.0 не видел.

Ранг: 30.1 (посетитель)
Статус: Участник

Создано: 10 декабря 2015 00:33 · Поправил: 10 декабря 2015 00:38 Kuzya69 New!
Цитата · Личное сообщение · #13

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

Попутно научился динамически АПИ и ДЛЛ открывать. Уже польза какая-то. Тока все равно, мне наверное придется тактику менять. У меня проги-то запакованы закриптованы. Поэтому запуск в суспенде не помогает. Надо видимо ловить момент открытия главного окна, а уж потом подменять.
UniSoft, а можно вашу ссылочку на другой какой ресурс переложить, чтоб поглядеть? А то у меня инвайта тама нету.

Ранг: 49.6 (посетитель)
Статус: Участник

Создано: 10 декабря 2015 01:33 New!
Цитата · Личное сообщение · #14

Kuzya69 пишет:
а можно вашу ссылочку на другой какой ресурс переложить, чтоб поглядеть?

http://rghost.net/private/8PLx54MXJ/26944f3bfbbe1fe2418d5e9642692811


Ранг: 304.0 (мудрец)
Статус: Участник

Создано: 10 декабря 2015 09:54 New!
Цитата · Личное сообщение · #15

Archer пишет:
Некоторые вещи не документированы. Стало быть, идея пагубная. Если делать кошерно-это полагаться на документированные вещи, это х64 для х64.

С точки зрения реверсера всё документировано, если есть второй мозг, поскольку тогда потенциально всё уже разреверсено!

Если без шуток, то относительно x32-лоадера x64-приложений я не могу написать, что возьмусь осуществить нижеследующее, так как скорей всего это для меня рисковое убийство времени. Но в теории можно написать минимум анализатора, который сможет определять, что возможно в конкретной оси в плане инжектов/контроля из x32 в x64, и генерировать нужный механизм. А если что-то возможно в теории, то найдётся, кто реализует на практике. Я не прав? )

Ранг: 30.1 (посетитель)
Статус: Участник

Создано: 15 декабря 2015 16:38 New!
Цитата · Личное сообщение · #16

Парни, а можно каким-то образом вызвать из 32-х битного процесса функцию GetProcAddress только из 64-битной библиотеки. Допустим, что с размерностью аргументов разберемся. А вот как заставить 32-битный лоадер использовать именно 64-х битную функцию? Ведь загрузить напрямую 64-х библиотеку в 32-х битный процесс нельзя.


Ранг: 990.3 (! ! !)
Статус: Модератор
Author of DiE

Создано: 15 декабря 2015 16:54 New!
Цитата · Личное сообщение · #17

Kuzya69 написать свой аналог т.е. разбирать экспорт вручную.

Ранг: 408.5 (мудрец)
Статус: Участник

Создано: 15 декабря 2015 16:55 · Поправил: 15 декабря 2015 16:56 dosprog New!
Цитата · Личное сообщение · #18

Выше дали ссылку на ReWolf.

rewolf-wow64ext
WOW64Ext is a helper library for x86 programs that runs under WOW64 layer on x64 versions of Microsoft Windows operating systems. It enables x86 applications to read, write and enumerate memory of a native x64 applications. There is also possibility to call any x64 function from 64-bits version of NTDLL through a special function called X64Call(). As a bonus, wow64ext.h contains definitions of some structures that might be useful for programs that want to access PEB, TEB, TIB etc.


Ранг: 307.7 (мудрец)
Статус: Участник

Создано: 15 декабря 2015 17:24 New!
Цитата · Личное сообщение · #19

[а_вдруг_offtop]
This unit presents an API which enables calling C-style DLL routines from a 64 bit DLL in a 32 bit application. Works only on 64-bit Windows.

если кому интересно гуглить "delphi32_to_64_bit_bridge.zip" - сорцы и все такое прилагается.

З.Ы. Вдруг кому-то пригодится
[/а_вдруг_offtop]

Ранг: 30.1 (посетитель)
Статус: Участник

Создано: 15 декабря 2015 19:19 · Поправил: 15 декабря 2015 19:28 Kuzya69 New!
Цитата · Личное сообщение · #20

Hellspawn
Нет, ну чисто механически адрес-то получить можно. Но вызывать-то как? Надо же как-то библиотеку загрузить, а Винда будет против.
Исправлюсь. Чего-то я затупил. Раз адрес найти можно, то и запустить можно через NtWow64CallFunction64, будем думать способ получения адреса нужных АПИ.
dosprog
Просто наткнулся в экспорте из "ntdll.dll" библиотеки на недокументированные ф-ции
NtWow64CallFunction64, ZwWow64CallFunction64 и RtlWow64CallFunction64. Вот и предположил, что они работают наподобие как "X64Call" у "rewolf.wow64ext". Тогда значит для использования "???Wow64CallFunction64" пришлось-бы получить адрес нужной ф-ции через вызов GetProcAddress из 64-х битной DLL.
Но наверное надо действовать проще.
Подключаем длл-ку, и преспокойно пользуемся ф-циями: X64Call, GetModuleHandle64, GetProcAddress64 и т.д.
Я верно понял?
mysterio Прикольно, что на Дельфи, но что-то уж сильно наворочено. Какой-то эмулятор виртуальной среды. К тому-же запускается еще один дочерний процесс. Попробовать конечно можно, но позже. Когда разберусь как с ним работать.

Ранг: 408.5 (мудрец)
Статус: Участник

Создано: 15 декабря 2015 22:30 · Поправил: 15 декабря 2015 22:31 dosprog New!
Цитата · Личное сообщение · #21

Kuzya69 пишет:
Подключаем длл-ку, и преспокойно пользуемся ф-циями: X64Call, GetModuleHandle64, GetProcAddress64 и т.д.
Я верно понял?


Мне пробовать не на чем, так что советчик из меня тут никакой. Было бы интересно услышать о результатах


Ранг: 30.1 (посетитель)
Статус: Участник

Создано: 16 декабря 2015 18:10 New!
Цитата · Личное сообщение · #22

dosprog пишет:
Было бы интересно услышать о результатах

Да пока застрял на размерности переменных (ну и на типах, с этим у меня всегда трудно было). Но ф-ции вызываются. Вобщем надо будет эту Делфу на 64-х разрядную машину вкорячить и проверять в Дельфовом отладчике. А то запарился код писать с сообщениями, потом тащить на 64-х битную машину и проверять по сообщениям.


Ранг: 523.8 (!)
Статус: Участник
_Вечный_Студент_

Создано: 26 июля 2018 02:04 New!
Цитата · Личное сообщение · #23

может это общеизвестный факт, но Blackbone постоянно обновляется.
https://github.com/DarthTon/Blackbone

По-моему скромному мнению, очень интересный проэкт.

Ранг: 34.7 (посетитель)
Статус: Участник

Создано: 27 июля 2018 16:36 New!
Цитата · Личное сообщение · #24

Еще более общеизвестный факт - AT4RE Patcher поддерживает лодыри x64 и не только. Ну да, со времени последнего сообщения в топике прошло два с половиной года, но тем не менее...
<< . 1 . 2 .
 eXeL@B —› Софт, инструменты —› нужен генератор лоадеров под 64-x битные программы

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS