Загрузчик приложений

Может кто-то знает ссылку на статью, в которой подробно описывается работа загрузчика, или сам может
  1. Онлайн

    Автор темы

    NNK_RTR

    Звание: Бывалый

    Мастер

    Сообщений: 273

    Создано тем: 51

    Рейтинг: 5

    Репа: (61|61|0)

    Баллы: 1746

    Был: 2024-03-28 15:33

    Лайков: 82

    Может кто-то знает ссылку на статью, в которой подробно описывается работа загрузчика, или сам может пошагово описать работу загрузчика.
    В настоящий момент мне интересно, каким образом в куче по умолчанию появляются данные из РЕ-заголовка, почему изменяются данные в образе секции данных файла (не смещение), выполняется ли какая то часть приложения в процессе работы загрузчика, откуда в блоке данных потока берутся данные (не случайные). Какую информацию вообще передает загрузчик приложению.
    Вопрос возник в связи с попыткой снять защиту целостности файла. Может кто-то подскажет общий принцип защиты и способ ее снятия. Может существует общий алгоритм подсчета контрольной суммы в исполняемом файле, по которому можно обнаружить его. Используется ли при сравнении контрольная сумма, прописанная в РЕ-заголовке. И вообще, как можно больше толковой (не заумной) информации по этой теме.

    Спасибо.
    20 марта 2019 - 11:09 / #1
  2. Оффлайн

    Krig

    Звание: Бывалый

    Знаток

    Сообщений: 188

    Создано тем: 7

    Рейтинг: 4

    Репа: (86|86|0)

    Баллы: 56

    Был: 2023-03-14 15:26

    Лайков: 82

    Описание РЕ-формата (для начинающих): PE (Portable Executable На странных берегах
    Описание загрузчика : Загрузчик PE-файлов

    Сообщение отредактировал 23 января 2023 - 19:40
    21 марта 2019 - 23:09 / #2
  3. Оффлайн

    Krig

    Звание: Бывалый

    Знаток

    Сообщений: 188

    Создано тем: 7

    Рейтинг: 4

    Репа: (86|86|0)

    Баллы: 56

    Был: 2023-03-14 15:26

    Лайков: 82

    Цитата: NNK_RTR
    Может существует общий алгоритм подсчета контрольной суммы в исполняемом файле, по которому можно обнаружить его.


    Ищем в отладчике обращение к одной из этих функций. И далее:

    Цитата: NNK_RTR
    Может кто-то подскажет общий принцип защиты


    1. Объект (файл, секция, ресурс) защиты проецируется в память.
    2. Вычисляется его контрольная сумма, которая...
    3. Сравнивается с эталонным значением.

    22 марта 2019 - 00:40 / #3
  4. Онлайн

    Автор темы

    NNK_RTR

    Звание: Бывалый

    Мастер

    Сообщений: 273

    Создано тем: 51

    Рейтинг: 5

    Репа: (61|61|0)

    Баллы: 1746

    Был: 2024-03-28 15:33

    Лайков: 82

    Спасибо.
    Первая статья мне попадалась, вторую прочитал (пока бегло) и сделал вывод, что загрузчик работает стандартно для всех приложений и в проверке целостности файла не участвует.
    Наличие указанных вами функций я проверял раньше и сейчас еще раз проверил (в отладчике и APImonitor) - отсутствуют.
    Изменение контрольной суммы в заголовке РЕ файла в шест. редакторе на работоспособность программы не влияют. Вывод - эти данные в проверке целостности не участвуют и сам заголовок не проверяется на предмет изменений.
    Если внести изменения в код или данные программы в отладчике, непосредственно после загрузки, то программа работает нормально. Вывод, проверяется файл на диске, а не в памяти.
    Я несколько дней потратил на поиск считывания из файла (ReadFile) данных и последующей обработке этих данных, надеясь найти место подсчета контрольной суммы - не нашел.
    Вы натолкнули меня на мысль, что, возможно, файл повторно отображается в память (для проверки целостности используется второй образ файла).
    Попробую обнаружить такие действия.
    Еще раз спасибо за отклик. Если Вы в моих выводах видите ошибку, или у Вас есть другие идеи, сообщите пожалуйста.
    22 марта 2019 - 11:20 / #4
  5. Оффлайн

    Krig

    Звание: Бывалый

    Знаток

    Сообщений: 188

    Создано тем: 7

    Рейтинг: 4

    Репа: (86|86|0)

    Баллы: 56

    Был: 2023-03-14 15:26

    Лайков: 82

    Проверка цифровой подписи выполняется функцией WinVerifyTrust.

    Посмотрите видео уроки по снятию CRC проверок (Урок #2). Возможно это ваш случай.
    22 марта 2019 - 22:55 / #5
  6. Онлайн

    Автор темы

    NNK_RTR

    Звание: Бывалый

    Мастер

    Сообщений: 273

    Создано тем: 51

    Рейтинг: 5

    Репа: (61|61|0)

    Баллы: 1746

    Был: 2024-03-28 15:33

    Лайков: 82

    Урок 3 дает пищу для размышлений.
    Однако возникла "загвоздка". Программа перестает работать после установки контрольной точки, хотя скрытие отладчика включено. Я раньше встречал в этой программе типовую защиту от трассировки, но она должна срабатывать только в случае, если контрольная точка установлена вблизи кода защиты.
    Я продолжу исследование, но на случай, если кому-то интересно, выкладываю программу
    Может "ларчик открывается просто" и я не на тот "шпенек" нажимаю.
    Я перевел в шест. редакторе всего одну подсказку. Программа запускается, подсказка отображается правильно, больше того, при перемещении "Цели" в окно другой программы, эта программа сворачивается и разворачивается штатным образом, но после щелчка по кнопке "Старт" ничего не происходит.
    Сообщение отредактировал NNK_RTR 23 марта 2019 - 14:11
    23 марта 2019 - 14:09 / #6
  7. Оффлайн

    Krig

    Звание: Бывалый

    Знаток

    Сообщений: 188

    Создано тем: 7

    Рейтинг: 4

    Репа: (86|86|0)

    Баллы: 56

    Был: 2023-03-14 15:26

    Лайков: 82

    Цитата: NNK_RTR
    Я продолжу исследование, но на случай, если кому-то интересно, выкладываю программу


    Вот с этого и нужно было начинать, а то полезли в какие-то дебри, которые тут вообще и никаким боком. По факту имеем неделю потерянного времени. Для вас, возможно, оно было плодотворным, но для участников форума - потрачено в пустую. Больше так не делайте.

    WinAPIOverride
    Мощнейший API-монитор, который позволяет анализировать, отслеживать, внедрять и заменять любые вызовы функций API для приложений Windows.



    Инструмент очень специфичный и в локализации, по моему скромному мнению, абсолютно нее нуждается. Кто в теме, и так все понимает.
    Зачем переводить то, что не будет востребовано пользователями?
    У вас есть опыт по исследованию и дективации защит?
    Нужно просить помощи специалистов на краклабе или руборде. При указании заявки обязательно укажите, что это для последующей локализации приложения.
    У меня вообще нет никаких мыслей в какую сторону копать. Если глянуть крипто функции, используемые в программе, то такого разнообразия я еще никогда не встречал.

    24 марта 2019 - 14:39 / #7
  8. Онлайн

    Автор темы

    NNK_RTR

    Звание: Бывалый

    Мастер

    Сообщений: 273

    Создано тем: 51

    Рейтинг: 5

    Репа: (61|61|0)

    Баллы: 1746

    Был: 2024-03-28 15:33

    Лайков: 82

    Если Вы посмотрите другие переведенные мною программы, то заметите, что большая часть из них специфичны.
    Кто в теме, и так все понимает

    Согласен. Я сам себе задавал этот вопрос.
    У меня на яндекс-диске включен счетчик скачивания файлов. ollydbg, например, приближается к 2000.
    для участников форума время потрачено в пустую

    Извините. Я воспринимаю все это, как хобби, не как работу, думал и все так...
    Вы предлагаете вообще не задавать вопросов? По какому-то признаку сортировать вопросы? По какому? По моему, отвечать на вопросы дело абсолютно добровольное. Жалко Вам времени - не отвечайте.
    Мне тоже поступает много вопросов, правда пишут в основном на почту.
    Я не считаю, что напрасно трачу время, даже, если по вопросу вижу, что спрашивает дилетант. Наоборот, стараюсь, как можно популярней и подробней изложить ответ. Не на все вопросы я могу ответить, но все равно стараюсь помочь. Вот Вы, например, здорово помогли мне. Дали ссылки на уроки. Спасибо. Кстати, что это за приведенная Вами на скриншоте программа, мой PEiD_v0.95 находит несколько меньше. Дадите ссылочку?
    Почему я не обращаюсь на специализированные форумы? Как правило там отвечают "через губу".
    Этот сайт тем и хорош, что советуют по доброму.
    Вопрос ко всем.
    Вы считаете, что не нужно переводить "специфические" программы?
    Вы считаете, что вопросы на этом сайте нужно ограничивать по некоторому принципу?
    24 марта 2019 - 15:48 / #8
  9. Оффлайн

    Krig

    Звание: Бывалый

    Знаток

    Сообщений: 188

    Создано тем: 7

    Рейтинг: 4

    Репа: (86|86|0)

    Баллы: 56

    Был: 2023-03-14 15:26

    Лайков: 82

    NNK_RTR, вы неправильно меня поняли (или я неправильно выразился). Я имел в виду, что сразу бы в первом сообщении написали: такая-то программа, такой-то сайт, такая-то ссылка скачать, такая-то проблема. Мы бы сразу вели предметный разговор и к этому моменту уже бы имели какой-то результат.

    А переводить или не переводить - это сугубо личное дело каждого. Есть желание, то почему-бы и нет. Я озвучил собственную позицию.

    Цитата: NNK_RTR
    Кстати, что это за приведенная Вами на скриншоте программа, мой PEiD_v0.95 находит несколько меньше. Дадите ссылочку?


    Это анализатор PE-файлов "Detect It Easy", ссылка - http://ntinfo.biz. PEiD_v0.95 - безбожно устарел и очень-очень давно не развивается. Нет смысла им пользоваться. Опять же - по желанию. Нравится PEiD_v0.95 - пользуйтесь.

    С наилучшими пожеланиями.
    24 марта 2019 - 16:12 / #9
  10. Оффлайн

    Krig

    Звание: Бывалый

    Знаток

    Сообщений: 188

    Создано тем: 7

    Рейтинг: 4

    Репа: (86|86|0)

    Баллы: 56

    Был: 2023-03-14 15:26

    Лайков: 82

    Во зараза, а на виртуалке она не работает, требует лицензию и при нажатии на кнопку старта ничего не происходит! Шайтан однако.
    Сообщение отредактировал Krig 24 марта 2019 - 16:43
    24 марта 2019 - 16:39 / #10

Статистика форума, пользователей онлайн: 2 (за последние 20 минут)

Создано тем
1171
Всего сообщений
15260
Пользователей
17831
Новый участник
wewr