• XSS.stack #1 – первый литературный журнал от юзеров форума

Как работает radare2? Несколько вопросов...

oid

HDD-drive
Пользователь
Регистрация
26.02.2023
Сообщения
34
Реакции
3
Немного недопонимаю принцип работы. Откуда берутся адреса, если код не запущен?
Видел, что открывают испольняемый файл и смотрят что там, там есть адреса памяти, но откуда они берутся, если сам код еще не запущен?
Это какие-то виртуальные адреса или как они формируются?
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Так а какая проблема просчитать виртуальный адрес, берется база и таблица секций из PE-файла и считается.
 
Так а какая проблема просчитать виртуальный адрес, берется база и таблица секций из PE-файла и считается.
Человек наверное не знаком с устройством PE файла.
 
Так а какая проблема просчитать виртуальный адрес, берется база и таблица секций из PE-файла и считается.
То есть, строятся виртуальные адреса? А как же тогда меняют код с ассемблера или машинного и сам файл работает по другому?
Как происходит построение виртуальных адресов и чем они отличаются от реальных, которые будут задействованы при реальном запуске кода?
 
Человек наверное не знаком с устройством PE файла.
Можете подсказать - что гуглить, чтобы найти информацию с которой я не знаком?
 
что гуглить, чтобы найти информацию с которой я не знаком?
 
Можете подсказать - что гуглить, чтобы найти информацию с которой я не знаком?

Так же следует обратить внимание на стати Криса Касперски
 
Спасибо большое!


Так же следует обратить внимание на стати Криса Касперски
Не подскажете еще - что под линукс вместо этого используется?
 
Не подскажете еще - что под линукс вместо этого используется?

ELF_Executable_and_Linkable_Format_diagram_by_Ange_Albertini.png
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Файл-это структурированный особым образом набор данных. И эти данные в незапущенном в активную оперативную память виде расположены в основном статично на стационарном носителе информации, например диске, которые точно также разбит на адреса и адресован в операционную систему соответствующим образом. Кроме того, сам radare2 может подгружать исполняемый или любой другой файл или его фрагмент в память, каким-либо образом, и там тоже все адресуется почти также, как и везде в таких случаях.
 
Ясно, подскажите, плз!
Вообще мне хочется понять как мне взять произвольную программу виндовс и мой скомпилированный исполняемый файл, написанный на golang, и пропатчить софтину под винду, чтобы вместе с ней запускался и мой скрипт. Например с мини сервером удаленного администрирования.

Пока, грубо, я понимаю так - сначала я через radare2 ищу какую-то функцию которая выполняется при запуске, беру типа ее адрес или что-то такое, опять же через r2 я смотрю свой пайлоад - беру типа адрес функции main и припысываю его к той функции в оригинальной софтине?

Или может быть это все можно сделать проще?
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Или может быть это все можно сделать проще?
Не хочу тебя расстраивать, но купи или найди на гитхабе готовый джойнер, тебе с такими вопросами несколько лет нужно матчасти и ассемблер учить, чтобы сделать это самому.
 
Не хочу тебя расстраивать, но купи или найди на гитхабе готовый джойнер, тебе с такими вопросами несколько лет нужно матчасти и ассемблер учить, чтобы сделать это самому.
Да ничего, да с ассемблером не работал (в универе разве что лабораторные работы) и таких задач не стояло. Но работал с другими языками и учился по специальности. Надо матчасть подтянуть - подтяну. Но мне нужны ориентировки, чтобы хотябы понять - как это образно все происходит, затем буду изучать детали.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Но мне нужны ориентировки
Ну поищи на гитхабе joiner'ы и посмотри, как они работают.
 
Ну поищи на гитхабе joiner'ы и посмотри, как они работают.
Благодарю! exe-binder/joiner - там как будто один: https://github.com/0x44F/exejoiner/blob/main/main.cpp и то странный, запросы к левому урлу делает.
А антивирусы их не палят? Публичные джойнеры никак себя не выдают?
Их на гх или нет или по другому запросу надо искать джойнеры эти...
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
Я снова извиняюсь а альтернатива PE для винды, но под Android есть?
Таки полоумок)))
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Так а какая проблема просчитать виртуальный адрес, берется база и таблица секций из PE-файла и считается.
Ну да, а остальные адреса в любом случае добавляются динамически при подгрузке файла в качестве программы/шаренной библиотеки и маппинга в память.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх