Сохранен 88
https://2ch.su/b/res/70351987.html
К сожалению, значительная часть сохранённых до 2024 г. изображений и видео была потеряна (подробности случившегося). Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Аноним Птн 20 Июн 2014 18:18:31  #1 №70351987 
1403273911369.jpg

В программаче одни дауны, поэтому не пойду.

Объясните, как работают генераторы исполняемых файлов? Например, есть билдер супермегавовантрояна, который сам является ехешником, который генерирует другой ехешник. Как он создал этот другой ехешник, если с собой компилятор он не носит?

Аноним Птн 20 Июн 2014 18:19:19  #2 №70352017 
1403273959459.jpg

00h

Аноним Птн 20 Июн 2014 18:20:50  #3 №70352096 
1403274050667.jpg

01h

Аноним Птн 20 Июн 2014 18:22:34  #4 №70352189 
1403274154242.jpg

Мышъх, я знаю, ты тут сидишь, ну расскажи же. Или хоть директиву в гугл дайте, я даже не знаю что искать.

Аноним Птн 20 Июн 2014 18:23:25  #5 №70352227 
1403274205847.jpg

02h

Аноним Птн 20 Июн 2014 18:23:59  #6 №70352256 

>>70351987
> компилятор он не носит
Откуда ты знаешь? Погугли про компиляторы как они собирают код. Может просто дописывают к ехе нужные куски.

Аноним Птн 20 Июн 2014 18:24:52  #7 №70352304 
1403274292039.jpg

03h

Аноним Птн 20 Июн 2014 18:31:18  #8 №70352615 

Возможно, файл хранит в себе настройки. А билдер лишь дописывает ключи запуска, чтобы сохранить эти настройки.
Например stub.exe -build -gate http://sss.com -pass xxx -login 123
Может, как-то иначе реализуют.

Аноним Птн 20 Июн 2014 18:31:53  #9 №70352636 
1403274713236.jpg

>>70352256

>Откуда ты знаешь?

Рядом с vovansupertrojan_builder.exe не видно compiler.exe, а реализовывать свой компилятор - я думаю, вован ещё не пизданулся.

>Может просто дописывают к ехе нужные куски

Точно нет, ибо там стройная структура со всякими idt и хеш-суммами. Просто дописать не получится.

Аноним Птн 20 Июн 2014 18:32:12  #10 №70352656 

>>70351987
Вангую, что билдер трояна - это зачастую просто конфигуратор (настройки обычно дописываются куда-нибудь в заранее условленное место или же в хвост + м.б. полиморфный криптор.

Аноним Птн 20 Июн 2014 18:33:26  #11 №70352720 

>>70352636
Если бы в составе билдера был комплиятор, и он действительно собирал бинарник "с нуля", то тогда нужны и полные исходники, которые не всякий разработчик палить захочет. Так что не придумывай лишнего.

Аноним Птн 20 Июн 2014 18:37:37  #12 №70352935 

>>70352615
Бинго! Этот метод не только вирусня использует этот еще всякие автообновления используют. Внутри экзешника лежит второй экзешник, который запрограммирован вытащить блок данных из своего тела по требуемому адресу или из ресурсов, блок данных может быть либо блоком настроек, либо скриптом, либо еще чем-то, экзешник должен знать что с этим блоком данных делать дальше. Основной экзешник настройщик вытаскивает из себя экзешник-исполнитель и предоставляет вам интерфейс для создания блока данных, который затем записывается в тело экзешника-исполнителя. В конце концов, вам предлагают сохранить готовый экзешник-исполнитель. Ну или не предлагают, если вас наебали.

Аноним Птн 20 Июн 2014 18:40:01  #13 №70353045 

>>70352615>>70352656
Нихуя не так. Я в сосничестве увлекался кулцхакинком лол. Так вот, был у меня троян Pinch называется. В его конфигураторе можно было наставить галочек какие пароли надо спиздить, и потом жмешь на кнопку и генерируется троян только с теми модулями которые ты выбрал (размер тоже отличается). Так что прав наверное
>>70352256
>Может просто дописывают к ехе нужные куски.
понятно что там нужно где надо вычислить и записать адреса функций. Получается не компилятор, а что-то вроде линкера.
не оп

Аноним Птн 20 Июн 2014 18:41:04  #14 №70353098 
1403275264946.jpg

>>70352656
>конфигуратор

То есть, он в исходнике скомпилированного трояна ищёт строки с параметрами и меняет их?
Ок, спасибо.

А что-нибудь известно, что значит "просто тупо склеивает два .exe'шника в один исполняемый))) (с) ксакеп ltd."? Если "тупо склеить", то второй склеенный не запустится. Возможно ли, что джоинеры создают некоторую 3ю программу, которая запускает 2 "склеенных" бинарника?

Аноним Птн 20 Июн 2014 18:41:06  #15 №70353100 

А чё, типа, уже скомпилированный бинарник прога воспроизвести и стартануть не может?

Аноним Птн 20 Июн 2014 18:41:32  #16 №70353121 

>>70351987
Есть готовый экзешник, который берет настройки из собственных ресурсов, оверлея. Билдер туда пишет то что нужно. Может патчит что-то.

Аноним Птн 20 Июн 2014 18:43:51  #17 №70353253 

>>70353100
В этом ИТТ треде мы и пытаемся выяснить.

Аноним Птн 20 Июн 2014 18:46:37  #18 №70353429 

>>70353253
Ну записал данные экзешника в себя (или зашифровал) - потом на машине юзера распаковываешь (расшифровываешь) эти данные в новый файл, запуск - и всё заебись. Разве так не сработает?

Аноним Птн 20 Июн 2014 18:46:50  #19 №70353447 

>>70351987
из блоков

Аноним Птн 20 Июн 2014 18:47:07  #20 №70353464 

Исполняемый файл суть есть файл, если знать его структуру, то можно читать и записывать (гугли PE). Генератор вованоговнотрояна может собирать ехешник из заранее подготовленных кусков кода, нужным образом соединяя эти куски, настраивая адреса внутри их и т.д. Компиляторы, к слову, тоже не транслируют исходник напрямую в исполняемый файл: сначала они компилируют каждый модуль по отдельности, а потом склеивают всё это в один кусок. Собственно, не рановато ли тебе, если тебе всё это объяснять надо?

Аноним Птн 20 Июн 2014 18:48:37  #21 №70353548 
1403275717349.jpg

>>70353447

А Import Directory Table как считать? Ведь в зависимости от модулей всё там меняется?

Аноним Птн 20 Июн 2014 18:50:00  #22 №70353629 

>>70353429

Получается матрёшка-извращенка, лол. Нам нужно не просто распаковывать, но ещё и менять функции самого запакованного трояна.

Аноним Птн 20 Июн 2014 18:51:28  #23 №70353710 

>>70353629
>менять функции самого запакованного трояна
Что ты имеешь ввиду?

Аноним Птн 20 Июн 2014 18:52:54  #24 №70353789 
1403275974098.png

Посоны, есть вот такой пак. Щито это такое?

Аноним Птн 20 Июн 2014 18:54:09  #25 №70353854 

>>70353629
Ну антивирус типа посмотрит и такой скажет "Бля, че за хуйня, в рот я ебал разбираться, что это. Пусть исполняется". А Вовану только этого и нужно!

Аноним Птн 20 Июн 2014 18:54:14  #26 №70353860 

>>70353464
Ну, я не про компиляторы спрашивал, да и соединяют они асм-листинг, а не бинарники.
Не рановато, можешь объяснять чесна)).
>нужным образом соединяя эти куски
Каждое такое соединение требует своих данных в PE, в IDT какие ещё там есть структуры?. Вован для каждой комбинации модулей свои куски кода в свой билдер впихивал, штоле?

Аноним Птн 20 Июн 2014 18:55:41  #27 №70353930 

>>70353710

Ну, например, стучать не в mamku.tvoy.com, а в lolka.ipanaya.ru, и не просто воровать пароль, а ещё и бекдор делать, например.

Аноним Птн 20 Июн 2014 18:59:17  #28 №70354123 
1403276357792.jpg

>>70353098

Бамп вопросу про "тупо склеить)))".

Аноним Птн 20 Июн 2014 18:59:39  #29 №70354135 

>>70353789
Набор криптеров, только, вероятнее всего, они все старные как говно мамонта и их палит даже мелкософтовский антивирь. Пользоваться надо или приватом или свежими (или самому криптить)

Аноним Птн 20 Июн 2014 19:00:18  #30 №70354170 

>>70353789
Пакеры экзешников

Аноним Птн 20 Июн 2014 19:00:37  #31 №70354189 

>>70353548
как линкер это делает

Аноним Птн 20 Июн 2014 19:01:24  #32 №70354226 

>>70353930
Ну это ты тоже в самом трояне может прописать. Предусмотреть изменение функционала

Аноним Птн 20 Июн 2014 19:01:25  #33 №70354228 

>>70354189

А как он это делает? Неужели все билдеры реализуют свои линкеры?

Аноним Птн 20 Июн 2014 19:02:20  #34 №70354271 

>>70354226

Не могу, ведь если он откомпилировался вованом, то мне его уже нельзя менять так просто.

Аноним Птн 20 Июн 2014 19:03:06  #35 №70354309 

>>70354189
еще можно сделать виртуальную машину/интерпретатор и формировать поведение с помощью скрипта или байт-кода. Но в этом случае размер не будет зависеть от используемых возможностей.

Аноним Птн 20 Июн 2014 19:04:29  #36 №70354383 

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

Аноним Птн 20 Июн 2014 19:04:30  #37 №70354384 

>>70354135
>>70354189
Это с диска УТИЛИТЫ ДЛЯ ПОГРОМИЗДОВ 2012 можно удалять?

Аноним Птн 20 Июн 2014 19:05:19  #38 №70354419 
1403276719382.jpg

>>70354309
>еще можно сделать виртуальную машину/интерпретатор и формировать поведение с помощью скрипта или байт-кода
Да, pinch_builder.exe так и делает.

Аноним Птн 20 Июн 2014 19:05:42  #39 №70354440 

>>70354384
>2012
Да

Аноним Птн 20 Июн 2014 19:06:49  #40 №70354476 

>>70354383
Открою секрет, все погромизды - кодманки, особенно на западе.
Не нужно путать погромиздов с архитекторами программных продуктов.

Аноним Птн 20 Июн 2014 19:07:29  #41 №70354505 

>>70354383
Ой нинада. У интела в Империи целое подразделение по разработке софта, например.
Мимо был на конференции по math kernel library.

Аноним Птн 20 Июн 2014 19:07:53  #42 №70354526 

БИЛДЕР ЗАПУСКАЕТ ВИРТУАЛКУ, ГДЕ КОМПИЛИТСЯ ГЕНТА, ГЕНТА В СВОЮ ОЧЕРЕДЬ КОМПИЛИТ ИЗ ИСХОДНИКОВ ВИРУСНЯК С НАСТРОЙКАМИ, БИЛДЕР РАСШАРИВАЕТ ОДНУ ИЗ ПАПОК, ГЕНТА ТУДА СОХРАНЯЕТ ВИРУСНЯК, ГЕНТА УДАЛЯЕТСЯ, ВЫКЛЮЧАЕТСЯ ВИРТУАЛКА

Аноним Птн 20 Июн 2014 19:07:59  #43 №70354532 

>>70354135
>самому криптить
how to не подкинешь?

Аноним Птн 20 Июн 2014 19:08:41  #44 №70354551 

>>70354271
Он у тебя, тащем-то, откомпилировался. А вовану просто его распаковали.

Аноним Птн 20 Июн 2014 19:10:19  #45 №70354619 

>>70354526
Портежи забыл обновить

Аноним Птн 20 Июн 2014 19:10:33  #46 №70354635 

>>70354532

Я подкину! Берёшь ollydbg.exe, дизассемблируешь visur.exe, вставляешь где-нибудь в асме всякие
>xor eax, eax
>cmp edx, edx
>xor eax, eax

сохраняешь модифицированный висур.ехе и запускаешь.

Аноним Птн 20 Июн 2014 19:10:56  #47 №70354653 

>>70354532
Я в этом особо не шарю, знаю, что опытные хакеры сами всё делают.
Вероятнее всего, пишут свой криптер со своим алгоритмом шифрования. Как понимаю, вся сложность состоит в алгоритме.

Аноним Птн 20 Июн 2014 19:11:01  #48 №70354655 

>>70351987
>если с собой компилятор он не носит?

Просто куски бинарных файлов склеил и все

Аноним Птн 20 Июн 2014 19:11:18  #49 №70354666 

>>70354551

>у тебя, тащем-то, откомпилировался

Если это мой вирус. А если это вирус от вована, который мне исходники не даёт?

Аноним Птн 20 Июн 2014 19:11:37  #50 №70354677 

>>70353860
>соединяют они асм-листинг, а не бинарники
Слушай, тебе точно рановато. Ты такую хуйню порешь, что сложно считать тебя адекватом. Ты в какой книжке это прочитал, годов 80-х выпуска? Компиляторы ЯП высокого уровня уже лет тысячу как не транслируют код в ассемблер. То, что ты говоришь, не было актуальным уже тогда, когда я всю эту хуйню изучал, а было это лет семь назад. Тебе свежую матчасть надо гуглить, срочно.
>Каждое такое соединение требует своих данных в PE
Ну и что с того, что требует? Трудно сгенерировать нужный заголовок, когда все условия известны? Совсем не трудно.

Аноним Птн 20 Июн 2014 19:12:19  #51 №70354705 

>>70354655

>Просто куски бинарных файлов склеил и был послан виндой нахуй c такими исполняемыми файлами, один охуеннее другого, блядь

Пофиксил.

Аноним Птн 20 Июн 2014 19:13:27  #52 №70354746 

>>70354635
Хмм, а как на Haskell'e?

Аноним Птн 20 Июн 2014 19:13:46  #53 №70354760 

>>70354228
хз. Ну в качестве ультраламерского ленивого варианта можно всю логику и gui-генератора и еба-вируса свалить в один экзешник. При этом добавить скажем ресурс в котором закодировать поведение программы. При инициализации пусть читает ресурс и либо запускает гуй либо вирусную часть. Тогда при генерации просто копирует себя и правит ресурс у целевого экзешника. Следующий вопрос ленивого - это что же - делать парсер PE формата?

Аноним Птн 20 Июн 2014 19:13:57  #54 №70354770 

>>70354666
Ну тогда извини, братец. Как ты у чужой программы функционал менять собрался?

Аноним Птн 20 Июн 2014 19:15:25  #55 №70354821 

>>70351987
прост))

Аноним Птн 20 Июн 2014 19:16:10  #56 №70354857 

>>70354746А
А еще, а еще скажите как firewall обойти. А то меня даже брендмауэр от XP палит.

Аноним Птн 20 Июн 2014 19:16:56  #57 №70354886 

>>70354770
Ну так дописываешь нужный функционал в свободное место, прыгаешь на него, он исполняется, прыгаешь обратно на исполнение основной проги.

sageАноним Птн 20 Июн 2014 19:17:29  #58 №70354906 

Ребята, это всё говно устарело еще лет 10 назад. Лучше научитесь чему-нибудь полезному.

Аноним Птн 20 Июн 2014 19:17:58  #59 №70354932 
1403277478279.png

>>70354677

>компиляторы не транслируют код в ассемблер или в промежуточные коды

Мы вам перезвоним.

Аноним Птн 20 Июн 2014 19:18:53  #60 №70354971 

>>70354770

Билдеры же как-то это делают.

Аноним Птн 20 Июн 2014 19:19:49  #61 №70355007 

>>70354906
0x000002 chaya

Аноним Птн 20 Июн 2014 19:20:18  #62 №70355033 

>>70354857
Инжектом в svchost, например. Алсо, говнопроги уже давно умеют править правила виндового фаерволла еще на стадии инсталляции.

Аноним Птн 20 Июн 2014 19:20:22  #63 №70355035 

>>70352189
Гугли как работает линкер или редактор связей.

разработчик компиляторов в треде

Аноним Птн 20 Июн 2014 19:20:43  #64 №70355059 

>>70351987
В программаче дауны, а тут нет. ЛООООООООЛ

Аноним Птн 20 Июн 2014 19:23:17  #65 №70355144 

>>70354932
>или в промежуточные коды
Скажи честно, ты долбаёб?

Аноним Птн 20 Июн 2014 19:24:01  #66 №70355174 

>>70355059

Увы, это эмпирически подтверждённый факт.

>>70355035

>разработчик компиляторов в треде

Поясни тогда, что делает компилятор, после лексического и синтаксического анализа? Из чего он лепит бинарщину? А то >>70354677 поясняет, что компилятор ничего, никуда не переводит и сразу же ебашит двоичный код лол.

Аноним Птн 20 Июн 2014 19:24:55  #67 №70355207 

>>70355144

Пока что ты не смог подтвердить свою точку зрения. Если тебе 14 лет, то это нормально.

Аноним Птн 20 Июн 2014 19:29:38  #68 №70355379 

>>70355174
Семантический анализ.
Т.е. построение промежуточного представления или Control Flow Graph'а в какой-либо форме. Чаще всего используется SSA .

Над промежуточным представлением выполняются преобразования, в том числе и оптимизации.
Затем по конечному представление кодогенератор генерирует машинный код. Над тоже могут быть выполнены преобразования, например шедулинг. После этого обычно записывают битики конечных инструкций
капча 030000

Аноним Птн 20 Июн 2014 19:29:43  #69 №70355381 
1403278183703.jpg

Бамп компиляторам без стадии создании промежуточного кода!

Аноним Птн 20 Июн 2014 19:30:53  #70 №70355436 

>>70355207
>Объектный модуль (также — объектный файл, англ. object file) — файл с промежуточным представлением отдельного модуля программы, полученный в результате обработки исходного кода компилятором. Объектный файл содержит в себе особым образом подготовленный код (часто называемый двоичным или бинарным), который может быть объединён с другими объектными файлами при помощи редактора связей (компоновщика) для получения готового исполнимого модуля, либо библиотеки.
http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D1%8B%D0%B9_%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C

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

Аноним Птн 20 Июн 2014 19:31:46  #71 №70355465 

>>70355379
>Чаще всего используется SSA .

Спасибо. Так и думал, что >>70354677-дурачок просто ступень.

А можешь пояснить про "склейку" двух ехешников? Ведь нужна будет третья программа, которая эти два запустит или что-то иначе делается?

Аноним Птн 20 Июн 2014 19:33:19  #72 №70355518 

>>70355436
>между ассемблером и двоичным кодом

А теперь приведи цитату из моего поста, где я "не видел разницы между ассемблером и двоичным кодом". Заканчивай фантазировать иди лучше матчасть подучи.

Аноним Птн 20 Июн 2014 19:33:23  #73 №70355523 

>>70351987
Мегахакер2000 в тренде. Когда делал свой йобаультравиайпи приватный генератор, тупо им склеивал уже скомпилированные екзешники, плюс один базовый, который запускал их и передавал параметры при надобности. Было сиё дело лет 12 назад, но подпортить врагам и школе нервы получилось неплохо.

Аноним Птн 20 Июн 2014 19:36:30  #74 №70355649 

>>70355465
Ну по сути exeшник или любой другой бинарник - это просто последовательность объектников с правильными адресами + некоторые статические данные + служебная информация для загрузчика ОС.

Если тебе надо склеить 2 экзешника, то выдираешь код и секции кода, данные из секции данных. Затем мерджишь все это. Снова правишь адреса. Пересчитываешь заголовки и все.
Вопрос только в сложности такой задачи

Аноним Птн 20 Июн 2014 19:39:30  #75 №70355758 

>>70355518

>>70353860
>соединяют они асм-листинг, а не бинарники.

Ты вспыльчивый школьник-аутист, тебе сначала лечится надо, а потом уже учится, если получится.

sageАноним Птн 20 Июн 2014 19:40:08  #76 №70355782 

>>70354476
Прочитал как кодманьки но ведь так и есть.

Аноним Птн 20 Июн 2014 19:40:24  #77 №70355792 

>>70355758

>асм-листинг
Асм - это не двоичный код, дебил.

sageАноним Птн 20 Июн 2014 19:45:41  #78 №70355997 

>>70355792
>>70355758
>>70353860
>>70355518
>>70355436
Гуманитарии.

Аноним Птн 20 Июн 2014 19:47:05  #79 №70356050 

>>70354677
>Компиляторы ЯП высокого уровня уже лет тысячу как не транслируют код в ассемблер
Проиграл с ПТУшника. Маня, почти все компиляторы имеют асм на выхлопе, только JIT стоит особняком.

Пиздец, еще июнь не закончился, а каждый IT-тред засирают PHP-унтерменши и аспайринг школьники.

Аноним Птн 20 Июн 2014 19:47:18  #80 №70356060 

>>70355997
Школьник-даже-не-гуманитарий.

Аноним Птн 20 Июн 2014 19:48:26  #81 №70356092 

>>70355792
Ты либо тролль, либо тупой. Я тебе тоже самое пытаюсь объяснить, и вот наконец до тебя дошло.

Аноним Птн 20 Июн 2014 19:49:02  #82 №70356113 
1403279342124.png

>>70355649

То есть, без анального байтоёбства не обойтись при написании superjoiner3000.exe?

Аноним Птн 20 Июн 2014 19:50:49  #83 №70356198 

>>70356092

>Я тебе тоже самое пытаюсь объяснить

Ты мне пытался доказать, что
>сначала они компилируют каждый модуль по отдельности, а потом склеивают всё это в один кусок

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

Аноним Птн 20 Июн 2014 20:04:03  #84 №70356851 

>>70356113
По хорошему да. Если все правильно сделать а не костлями, как в вованговногенератор.ехе

Аноним Птн 20 Июн 2014 20:05:44  #85 №70356942 

>>70356050
Допущу, что использует на каком-то этапе, хотя это не факт, что дальше? Объектные файлы - это код на ассемблере? Wake up Neo ty obosralsa...

>>70356198
Я подразумевал объектные файлы, дебилушка. Во что твой аутичный манямирок превращает мои мысли - это уже другой разговор.

Аноним Птн 20 Июн 2014 20:06:35  #86 №70356994 

>>70356050
Нет, вы не правы.

Все компиляторы, в том числе и JIT имеют возможность сгенерировать асм листинг по внутреннему представлению. Но иметь именно асм листинг на выходе - удел уебков. Изучи gcc или clang

Аноним Птн 20 Июн 2014 20:18:49  #87 №70357598 

>>70356942
>Компиляторы ЯП высокого уровня уже лет тысячу как не транслируют код в ассемблер
>Допущу, что использует на каком-то этапе

/0

>хотя это не факт

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

Аноним Птн 20 Июн 2014 20:31:46  #88 №70358307 
1403281906642.jpg

>>70356994

>Изучи gcc или clang

Оба имеют асм на выхлопе, который затем ассемблируется gas'ом или IA соответсвтенно. У обоих ассемблеры-бекенды можно заменить какими-угодно. То, что команда gcc последовательно запускает парсер-компилятор-ассемблер, не значит, что компилятор напрямую хуярит объектный код из сорцов. Как же вы заебали уже.

comments powered by Disqus