М.Двач / Программирование

Этого треда уже нет.
Это копия, сохраненная 29 июня 2019 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

В этом треде мы изучаем самый компактный и низкоуровневый /asm/ # OP 24 мар, 06:07 1369180 В конец треда | Веб

1 Кб, 250x20025 Кб, 799x82010 Кб, 718x2743 Кб, 643x337

В этом треде мы изучаем самый компактный и низкоуровневый язык Ассемблер и смежную с ним область: Реверс-инженеринга (RE).

Вы пишите на ассемблере или собираетесь начать на нём писать? Программируете микроконтролёры, пишете драйвера для ОС, а то и саму ОС? Вам сюда.
Вы изучаете алгоритмы работы закрытого софта, пишите патчи бинарников? Вам тоже сюда.

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

Книги по RE:
beginners.re - "Reverse Engineering для начинающих"- бесплатная современная книга на русском языке. К прочтению вкатывающимся и прочим ньюфагам обязательна!
Чтобы не палить свой адрес почты, вот прямая ссылка https://beginners.re/f572d396fae9206628714fb2ce00f72e94f2258f/
https://mega.nz/#!Bc9VVAYC!Vk6CFlW6VIoskLNgDKXbsL6FacDQeOKe6LX92wNicKY Нарваха практический курс по дебагингу
https://www.goodreads.com/shelf/show/reverse-engineering - список книг

Сайты по RE:
http://wiki.yobi.be/wiki/Reverse-Engineering
https://www.reddit.com/r/ReverseEngineering/comments/hg0fx/a_modest_proposal_absolutely_no_babies_involved/
http://www.program-transformation.org/Transform/ReengineeringWiki
http://blog.livedoor.jp/blackwingcat/
https://yurichev.com/blog/
http://wiki.xentax.com/index.php/DGTEFF
https://exelab.ru/

Инструменты для RE:
Дизассемблеры:
0) IDA Pro 7.2 когда подберут пароль к архиву
1) IDA Pro 7.0.torrent (x64 only, для XP нужно патчить PE + вылеты)
2) IDA Pro 6.8.torrent
3) IDA Pro 5.0 - бесплатная версия для некоммерческого использования
4) Radare 2 - наконец прикрутили гуй, но по прежнему нужна только клиническим, не умеющим в скачивания торрентов, или пользователям альтернативных ОС
5) Остальное

Все книги и статьи Криса Касперски (R.I.P.)
https://yadi.sk/d/CxzdM1wyea4WP или https://rutracker.org/forum/viewtopic.php?t=5375505
+ https://rutracker.org/forum/viewtopic.php?t=272818

Книги по ассемблеру:
"Архитектура компьютера" Э. Таненбаум
С.В. Зубков: Assembler. Язык неограниченных возможностей.

Сайты по ассемблеру:
Замена почившему wasm.ru- https://wasm.in/
https://www.unknowncheats.me/wiki/Assembly
http://asmworld.ru/
https://software.intel.com/en-us/articles/intel-sdm
http://www.nasm.us/doc/
https://sourceware.org/binutils/docs/as/index.html#Top
https://msdn.microsoft.com/en-us/library/afzk3475.aspx

disassembler.io Дизассемблер онлайн

Для ковыряющих винду и софт под неё, сайты с описанием структур со смещениями и разными версиями оных:
http://msdn.mirt.net/
http://terminus.rewolf.pl/terminus/
http://geoffchappell.com/

Предыдущие
№5 https://arhivach.ng/thread/395971/
№6 тонущий >>1301036 (OP) если кому нужен тред, сами архивируйте, я в следующий добавлю.

Ответы369231369602375845383627385217

2 24 мар, 11:08 2 1369231

>>1369180 (OP)
Пора бы уже гидру в шапку добавить.

Ответы369389369517

3 24 мар, 16:57 3 1369389

>>1369231
>добавлять в шапку црушный зонд

Ответы369393

4 24 мар, 17:13 4 1369393

>>1369389
ЦРУшные зонды у тебя в процессоре. А шапку надо обновить.

Ответы369492

5 24 мар, 19:45 5 1369486

Как экспортировать символ на fasm?

Ответы369602

6 24 мар, 19:54 6 1369492

>>1369393
Тащемта по дефолту там прослушивается порт и включена возможность удаленного подключения. Есть в гидре конечно и свои плюсы, как-то легче что-ли первичный анализ бинарника сделать, но для реальной работы она не катит все таки.

Ответы369613

7 24 мар, 19:55 7 1369494

По-моему Сишный компилятор больше инструкций добавляет, а с опцией -O3 вообще мрак получится.
Кто-то поможет объяснить, почему так?
https://godbolt.org/z/zTCRf7

Ответы369602

# OP 8 24 мар, 20:25 8 1369517

>>1369231
Ссылку прикрепи ответом на первый пост, добавлю.

sage 9 24 мар, 22:39 9 1369602

>>1369180 (OP)
> если кому нужен тред, сами архивируйте
https://arhivach.ng/thread/415252/ (#6)
https://arhivach.ng/thread/437556/ (и этот сразу заодно)

>>1369486
> Как экспортировать символ на fasm?
public internal_name as '_external_name' или просто public name, если переименовывать не нужно.

>>1369494
У тебя в крестах локальная переменная, в Си - глобальная. Во втором случае оно смогло в автоматическую векторизацию (обрабатывает несколько шагов цикла за раз), попробуй собрать с -fno-tree-vectorize, если важен размер кода.

Ответы369625369677

10 24 мар, 23:11 10 1369613

>>1369492
Откровения школьника в этом ИТТ треде.

Ответы372225

11 24 мар, 23:38 11 1369625

>>1369602
>глобальная
Точно, спасибо.

12 25 мар, 01:57 12 1369660

a

13 25 мар, 03:07 13 1369677

>>1369602
А как тебе такое?
https://godbolt.org/z/OpS8Du

Забавно получается

Ответы369683

14 25 мар, 04:41 14 1369683

>>1369677
Да, крестовые алгоритмы из стандартной библиотеки лучше оптимизируются, потому что компилятору доступно больше информации. В Си можно так: https://godbolt.org/z/ShqpCI (к сожалению, без const не свернет).

Ответы369687

15 25 мар, 05:14 15 1369687

>>1369683
Ну, кстати с флагом -fno-tree-vectorize оптимизируется также.
Значит таки лучше на крестах учиться писать для скорости то? Думаю да

Ответы369688

16 25 мар, 05:48 16 1369688

>>1369687
Да. Но именно на современных крестах, а не на C++98.

17 27 мар, 21:20 17 1371019

Ебать я даун.
Написал программу, неправильно проверил и сижу ищу ошибку которой не существует.
Как в анекдоте про иностранца, собирающего холодильник, и русских, которые подкидывают ему детальки.

Ладно одной проблемой меньше.

Как в этом прекрасном языке строки вводятся, выводятся? Чот из методички нихрена не понял.
Пните меня хоть в правильное место.
Прерывания какие-то досовские, значения регистров для вызова правильной подпрограммы, вообще охуеть.

18 27 мар, 22:24 18 1371108

Знающие семпаи-аноны, подскажите, а чисто по-приколу можно на ассемблере игру написать?

Ответы371183371204

19 27 мар, 23:05 19 1371183

>>1371108
Можно

1,3 Мб, 1280x720
20 28 мар, 00:17 20 1371204

>>1371108
Ну Spacewar! нахерячили же в 62 году. Скорее всего на ассемблере, либо вообще на двоичном запилили (Маловероятно, но возможно).
(Хотя чёрт его знает что было на PDP-1 Вдруг и компилятор чего нибудь высокого. Хотя вряд ли)

Ответы371205371214371215

21 28 мар, 00:18 21 1371205

>>1371204
Бляяяяяяяяяяяя.

22 28 мар, 01:12 22 1371214

>>1371204
300кк\сек на связи судя по антуражу.

23 28 мар, 01:30 23 1371215

>>1371204
если подкрасишься ничего так будешь, учи мейкап

24 28 мар, 01:44 24 1371219

Конечно на двоичном! Да чё вы, ещё Никола Тесла игры писал когда электрон гонял по прутику, хули там

167 Кб, 1458x514
25 29 мар, 15:25 25 1371944

Чому краказяблики вылезают?

Ответы371947372094

26 29 мар, 15:38 26 1371947

>>1371944
тому что ты не достаточно няшный

27 29 мар, 21:43 27 1372094

>>1371944
Том что выполнение начинается с первой строчки, а у тебя там вместо кода переменная. Утащи ее вниз. И еще тому, что для int 21h/func=9h DX должен указывать на строку, завершенную долларом, а у тебя не указывает и не на строку.

28 30 мар, 08:48 28 1372225

>>1369613
Подловил однако!

29 30 мар, 20:33 29 1372441

Ребят подскажите сколько цыклов процессора идет на выполнение комманд ассемблера таких как mov inc sub div и остальных. Или подскажите где это искать ибо у самого лапки и не нашел.

Ответы372448373091

30 30 мар, 20:41 30 1372448

>>1372441
>цыклов
Тактов.
>подскажите где это искать
intel manual

Ответы372468

31 30 мар, 21:24 31 1372468

>>1372448
>>1372448
Не ну для 8088 все есть а для рабочих процов + архитектуры нет.
Ну спс хоть за что-то.
тактов/цыклов дискасс
Машинный цикл — промежуток времени между двумя последовательными обращениями центрального процессора к внешней оперативной памяти команд/данных, или обмена 1 словом данных с периферийными устройствами, в том числе в циклах обработки аппаратных прерываний и является составляющей частью исполнения машинной команды.

Такт процессора или такт ядра процессора — промежуток между двумя импульсами тактового генератора, который синхронизирует выполнение всех операций процессора.

Ответы372469372479

32 30 мар, 21:26 32 1372469

>>1372468
Бля цЫкл
цЫкл карл
Соре за цыклцикл

sage 33 30 мар, 21:51 33 1372479

>>1372468
> для рабочих процов + архитектуры нет
Суперскалярная архитектура, мам. Какие именно такты ты считать собрался? Почитай Intel Architectures Optimization Reference Manual, почитай Агнера Фога для начала.

Ответы372480372513

512x512
34 30 мар, 21:53 34 1372480

>>1372479
А если у меня амд?

Ответы372481

sage 35 30 мар, 21:54 35 1372481

>>1372480
Software Optimization Guide тута:
https://developer.amd.com/resources/developer-guides-manuals/

36 30 мар, 22:53 36 1372513

>>1372479
Спасибо.
+ в карму

37 1 апр, 10:04 37 1373091

>>1372441
https://www.agner.org/optimize/instruction_tables.pdf
Правда, как раз-таки с mov всё посложнее.

38 1 апр, 16:53 38 1373262

Как сгенерировать фейковую IAT? Посоветуйте, что гуглить.

Ответы373311

39 1 апр, 19:14 39 1373311

>>1373262
fasm\EXAMPLES\PEDEMO\PEDEMO.ASM

Ответы373392373459

40 1 апр, 21:11 40 1373392

>>1373311
А на С/С++ можно так? Есть примеры?

мимо

Ответы373399373419

41 1 апр, 21:20 41 1373399

>>1373392
Нету.
Можно наподобие https://stackoverflow.com/questions/3898716/how-to-build-an-executable-without-import-table-in-c-c
Только какой-нибудь GetStartupInfo, а дальше искать в кернеле GetProcAddress и через него нужные апишки дергать.

Ответы373451

42 1 апр, 22:00 42 1373419

>>1373392
Нет никакой разницы, на каком языке генерировать структурки. Хоть на жс пиши.

Ответы373439

43 1 апр, 22:25 43 1373439

>>1373419
Хуюрки.
Как он тебе на джоэсс откомпиляет хоть что-нибудь да со своей IAT?

Ответы373465

44 1 апр, 22:36 44 1373451

>>1373399
>искать в кернеле GetProcAddress
Ты шутишь так?

45 1 апр, 22:40 45 1373457

Изучаю язык ассемблера, использую nasm ассемблер и линкер от Microsoft, пытаюсь вызвать С-функцию call puts, но при ее вызове выбрасывается ошибка "Access violation reading location" что я не так делаю?

Ответы373469

46 1 апр, 22:44 46 1373459

>>1373311
Завтра посмотрю. Под фейковым импортом я понимаю технологию, когда программа дёргает апи динамически при помощи парсинга таблицы импорта dll, а собственный импорт у неё фейковый или вообще спизжен у калькулятора.

Ответы373466

47 1 апр, 22:58 47 1373465

>>1373439
> Как он тебе на джоэсс откомпиляет хоть что-нибудь да со своей IAT?
А как на Си компиляют? Какая разница-то, какой у тебя язык? Ну делаешь UInt8Array, создаешь от него DataView, пишешь туда по очереди поля IMAGE_DOS_HEADER, пишешь туда стаб, пишешь туда IMAGE_NT_HEADERS, пишешь IMAGE_SECTION_HEADER, пишешь данные секций, в том числе и секцию с твоей фэйковой директорией импорта, делаешь Blob, он сохраняется браузером, как обычно файлы скачиваются. Если хочется код генерить, есть готовые либы. Если не хочется, можно через FileReader загрузить бинарник и пропатчить его точно таким же способом.

48 1 апр, 22:59 48 1373466

>>1373459
Один импорт парсит, другой GetProcAddress в ядре вызывает. Тебе экспорт парсить надо, обсуждалось в прошлом треде.

49 1 апр, 23:03 49 1373469

>>1373457
> учусь водить машину, но когда я нажимаю педаль газа, у нее отваливается бампер, что я делаю не так?
КОД ТАЩИ

Ответы373471

50 1 апр, 23:04 50 1373471

>>1373469

global main
extern puts

section .text
main:
mov rdi, message
call puts
ret
message:
db "Test", 0

Ответы373490

51 1 апр, 23:37 51 1373490

>>1373471
Ты уверен, что ты линкуешься 64-битным линкером? Ты уверен, что первый аргумент для Microsoft-овой конвенции вызова должен быть в RDI? Ты уверен, что ты shadow space в стеке под аргументы зарезервировал?

Ответы373903

52 2 апр, 13:43 52 1373721

Я начал заниматься кряканьем софта некоторое время назад. Подскажите, на каких форумах я могу найти заказы на взлом?

Ответы373740

53 2 апр, 14:06 53 1373740

>>1373721
мвд.рф

54 2 апр, 14:11 54 1373742

Треда для системников нет, а в С/С++ сидят одни ньюфаги хеллоуворлдщики поэтому спрошу здесь. Пишу классический non pnp драйвер, все вроде работает, но при выгрузке внезапно синий экран. PAGE FAULT IN NONPAGED AREA.
В DriverEntry:
DriverObject->DriverUnload = &Unload;

Unload rouitne:
VOID Unload(
IN PDRIVER_OBJECT DriverObject
)
{
IoDeleteSymbolicLink(&SymbolLink);
IoDeleteDevice(DriverObject->DeviceObject);
}

Где проебался-то?

Ответы374046

55 2 апр, 20:12 55 1373903

>>1373490
Спс, разобрался, надо было в регистр rcx писать адрес строки.

56 3 апр, 00:27 56 1374046

>>1373742
> SymbolLink
Что там? Фолт при выгрузке или слегка после?

Ответы374263

57 3 апр, 09:25 57 1374096

Как перейти в защищенный режим?

Ответы374100

58 3 апр, 09:52 58 1374100

>>1374096
Собираешь валидную таблицу дескрипторов, кладешь ее в GDTR, ставишь бит PE в CR0, выполняешь дальний jmp на начало 32-битного кода. Ну и там загрузка всяких SS и отключение прерываний по вкусу.

Ответы374220374268

59 3 апр, 13:20 59 1374220

>>1374100
Спасибо,а теперь наебень кода на асме, заранее спасибо.
Ну или скажи где про это можно нормально почитать, а то я конченый.

Ответы374230

60 3 апр, 13:31 60 1374230

>>1374220
В гугле.

Ответы374243374291

61 3 апр, 13:56 61 1374243

>>1374230
Подожди, ты самый умный или как? Расскажи как быть таким же умным. Я вот не могу уйти в защищённый режим. Ты вот красиво по пунктам расписал, оно понятно все, но вот код не понятно, акты в порты какието, таблиц куча, джампы, и вот везде кал написан а мне непонятно, объясни заранее спасибо

Ответы374273

62 3 апр, 14:17 62 1374263

>>1374046
Юникод строка, валидная. Фолт во время вызова Unload.

Ответы374296

63 3 апр, 14:20 63 1374268

>>1374100
На сколько я помню, это уже с 2017 года не прокатывает, с приходом hyperguard'а.

Ответы374296

64 3 апр, 14:21 64 1374273

>>1374243
Читай http://sasm.narod.ru/docs/pm/pm_in/chap_9.htm

65 3 апр, 14:34 65 1374291

>>1374230
Более фундаментальное есть почитать? Я так понял, Windows Internals поможет, да?

Ответы374296374491

66 3 апр, 14:39 66 1374296

>>1374268
Чо? А гипервизоры-то тут каким местом вообще?

>>1374263
Понятно, что строка. Где у тебя симлинк конкретно? Проверь ради разнообразия, что тебе IoDeleteSymbolicLink возвращает. Алсо, ты уверен, что у тебя после анлоада колбеки какие-нибудь не остаются торчать?

>>1374291
Ты хочешь перейти в защищенный режим из винды, лол?

Ответы374331374381374399374491

67 3 апр, 15:47 67 1374331

>>1374296
Из третьего защищенного режима в нулевой.

Ответы374344374399

68 3 апр, 15:59 68 1374344

>>1374331
> Из третьего защищенного режима в нулевой.
Из третьего кольца, ты хотел сказать. Режим на то и защищенный, чтобы ты так не смог.

69 3 апр, 17:04 69 1374381

>>1374296
Из сейфмода 9х собрался, умник

Ответы374403

70 3 апр, 17:45 70 1374399

>>1374296
>Чо? А гипервизоры-то тут каким местом вообще?
Вот таким: http://www.alex-ionescu.com/?m=201708.

>>1374331
Тоже самое выше читай. Никак ты не попадешь уже туда напрямую.

Ответы374403

71 3 апр, 17:50 71 1374403

>>1374381
В 9x как раз без проблем можно было запатчить IDT, перейдя из r3 в r0 буквально десятком инструкций, без дров. И наличие или отсутствие сейфмода при этом никак не мешало.

>>1374399
Ну теперь-то ясно. Я просто думал, что в изначальном вопросе спрашивали про банальный переход из реалмода, а вы тут хацкеры, оказывается.

72 3 апр, 19:15 72 1374491

>>1374291
Да, читай 7 издание 1 часть, потом сразу 6 издание 1 и 2 часть наверни, чтобы почувствовать разницу и прощупать логику m$.

>>1374296
Спасибо, разобрался. Надо каждый раз что-ли строку инициализировать?

73 4 апр, 08:48 73 1374785

Как вернуться в реальный режим(в дос обратно, чтобы все работало)

Ответы374815

74 4 апр, 10:25 74 1374815

>>1374785
Ну... кладешь в в IDT реалмодную таблицу, в GDT дескрипторы, чтобы на реалмод похоже было (16-битные сегменты, лимит мегабайт вот это все), прыгаешь в такой 16-битный сегмент, сбрасываешь CR0.PE, опять прыгаешь, чтобы CS перезагрузить уже реалмодным значением, перезагружаешь все остальные сегментные регистры сохраненными значениями (если у тебя DOS) или любыми разумными (если не DOS).

75 6 апр, 10:25 75 1375845

>>1369180 (OP)
Программята, я тут по залёту. Препод сказал что повысит мне оценку если я принесу ему ёлочку на ассемблере, но у нас, блядь, было всего две пары по нему два года назад. Нагуглил только какую-то сложную ёлку с анимацией, а это слишком подозрительно. Поможете или я могу нахуй пройти?

Ответы377129377816

76 6 апр, 23:20 76 1376301

Реверсач, сегодня наткнулся на файл с тремя kernel32.dll в импорте. Что за магия?

Ответы376326376426

77 6 апр, 23:49 77 1376326

>>1376301
Кривой линковщик?

Ответы376951

78 7 апр, 02:52 78 1376426

>>1376301
Шутка про программиста и два стакана вышла на новый уровень.

Ответы376951

69 Кб, 600x495
79 7 апр, 14:41 79 1376703

Анон, где можно посмотреть/спиздить исходные коды различных девайсов, всякие мигалки на 100500 диодов заебали

Ответы377130377816

80 7 апр, 22:49 80 1376951

>>1376326
Судя по-всему это было сделано намеренно.

>>1376426
Что за шутка?

Ответы389605

81 7 апр, 22:53 81 1376954

Пол года уже прошло. Иду 7.2 бесплатно завезли? Если да, то где скачать?

82 8 апр, 06:41 82 1377050

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

Ответы377051377071377816380129

83 8 апр, 07:15 83 1377051

>>1377050
Ну погугли спеку юсб, как там инфа кодируется не подойдёт тебе юсб, попробуй выход на колонки

Ответы377053377055

84 8 апр, 07:22 84 1377053

>>1377051
> не подойдёт тебе юсб, попробуй выход на колонки
Это как вообще? Просто как провода от jack 3.5 обрезать, и в качестве пинов использовать?

Ответы377055

85 8 апр, 07:31 85 1377055

>>1377051
Ну, не подойдёт если ты не хочешь ответное устройство городить
>>1377053
Ну зачем сразу отрезать, впаяй в свой замок разъем и возьми повод джек-джек

86 8 апр, 09:30 86 1377071

>>1377050
> Если на той же ардуино много разных портов ввода-вывода, и на каждый можно подавать напряжение по отдельности, либо считывать с него, то как это делать посредством usb провода?
Ну придумываешь кастомный протокол, кидаешь пакетики в устройство, чтобы управлять output-портами, периодически опрашиваешь устройство на предмет событий с input-портами. На компе через libusb, на устройстве - зависит от микроконтроллера, хоть вручную, хоть через многочисленные USB-либы. И вообще, ты сюда мимо, тебе в /ra/.

87 8 апр, 12:31 87 1377129

>>1375845
Бери прсотую сишную елку и перепиши на асм. Или дизассемблируй. Вот уж проблема то.

Ответы377137

88 8 апр, 12:31 88 1377130

>>1376703
Если линукч, то наверно в ядре его

89 8 апр, 12:45 89 1377137

>>1377129
А можно просто конпелятору опцию указать и он будет генерить асм-код завместо бинарника.

90 9 апр, 16:41 90 1377816

>>1377050
LPT/COM/USB/Ethernet/Wi-Fi/Audio 3.5
Выбирай любое. Для всего существуют готовые решения.
>>1375845
Можно на таком захуярить прямо онлайн http://rk86.ru/ . Должно быть попроще х86.
>>1376703
http://cxem.net/mc/mc.php
https://www.radiokot.ru/circuit/
http://easyelectronics.ru/
И т. д.

77 Кб, 400x400
91 9 апр, 17:01 91 1377817

> http://cxem.net/mc/mc.php
> https://www.radiokot.ru/circuit/
> http://easyelectronics.ru/
> И т. д.
Спасибо братишка, но там в основном уже все в омновном откомпилиравано, дизасемблировать занятие так себе

Ответы377881

92 9 апр, 18:57 92 1377881

>>1377817
>дизасемблировать занятие так себе
И ты об этом пишешь в треде реверсеров?!

Ответы377890

54 Кб, 604x457
93 9 апр, 19:10 93 1377890

>>1377881
> Вы пишите на ассемблере или собираетесь начать на нём писать? Программируете микроконтролёры
Не, отреверсить то можно, но мне бы сначала с просто кодингом разобраться, все ж мы люди

94 9 апр, 21:46 94 1377962

Какой диалект на linux использовать - nasm или gas?
Насколько я понял, то gas более типичен для данной ОС, а основное отличие в том, что используется не intel синтаксис, а AT&T (хоть gas и поддерживает intel syntax). AT&T вроде более нагляден и понятен.

Ответы377963378009

95 9 апр, 21:48 95 1377963

>>1377962
>nasm или gas?
fasm

Ответы377969378013

96 9 апр, 21:55 96 1377969

>>1377963
Почему?

97 9 апр, 23:35 97 1378009

>>1377962
>AT&T
Нинужон

98 9 апр, 23:40 98 1378013

>>1377963
Вот как только томаш stabs осилит (нативно, а не через внешний костыль, который парсит fas), вот прямо сразу. А до тех пор fasm советовать широкому кругу особенно под linux бессмысленно, и даже сраный nasm будет лучше.

Ответы378201

99 10 апр, 10:43 99 1378201

>>1378013
Кстати, кто-нибудь знает, как из фасма / фасм-г экспортировать отладочные символы и импортировать их x64dbg? В каком формате это надо делать?

100 10 апр, 11:03 100 1378206

fsdg

Ответы378242

101 10 апр, 13:18 101 1378242

>>1378206
А что это?

102 10 апр, 17:11 102 1378386

Новая статья про Мыщъха.

https://habr.com/ru/post/447394/

Ответы378404398224

103 10 апр, 17:33 103 1378404

>>1378386
Мне старых хватает
http://nf-team.github.io/zf5/zf5_005.html
http://nf-team.github.io/zf4/zf4_015.html

Ответы378421378455

sage 104 10 апр, 17:53 104 1378421

>>1378404
Кэп? Куча бреда в его статьях и книгах никак не отменяет того факта, что по ним училось большинство реверсеров в 2000х.

sage 105 10 апр, 18:14 105 1378455

>>1378404
Почитал. Критикующий ничем не лучше: тоже достаточно неточностей, фактических ошибок и просто вкусовщины.

106 11 апр, 01:01 106 1378894

Реверсач, я заебался. Как все это байтоебство монетизировать? Уже 2 года тут варюсь, да нравится, да интересно, но без денег на энтузиазме сами понимаете... Вакансии искать сложно, их просто нет. Что делать?

Ответы378896378916378959

107 11 апр, 01:05 107 1378896

>>1378894
приватные читы
малварь

Ответы378927379210

108 11 апр, 02:31 108 1378916

>>1378894
Вирусная аналитика

Ответы378927

109 11 апр, 03:00 109 1378927

>>1378896
Эту ерунду школьникам оставь. Пусть их бутылят.

>>1378916
Я что-то ни разу вакансий не видел, еще бы они были, брать рандома с улицы так себе затея.

Ответы378952379217

110 11 апр, 04:56 110 1378952

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

Ответы379265

111 11 апр, 06:08 111 1378959

>>1378894
мехатроника нэ?

112 11 апр, 16:54 112 1379210

>>1378896
Двачую малварь.

113 11 апр, 17:04 113 1379217

>>1378927
Ты где смотришь вакансии? Зайди на сайт Касперского и дрвеба, есть там вакансии

Ответы379265

114 11 апр, 18:23 114 1379265

>>1378952
Бутылят, на за сами читы, а за вытекающие проблемы этого бизнеса. Чтобы развернуть проект, нужна команда 3-5 человек минимум, нужно как то согласовывать разработку, распределять средства между незнакомыми друг с другом людьми в интернете и еще овер9999 подводных камней.

>>1379217
ДС/ДС2, опыт от 3 лет.. Понятное дело, что у гигантов типа касперского и прочих будут вакансии. С нуля без опыта-то куда вкатываться-то? А если я еще и из мухосрани?

Ответы379367380219

115 11 апр, 20:52 115 1379367

>>1379265
Если продолжить сидеть на шее мамки, точно никуда не устроишься.

Ответы379675

116 12 апр, 13:58 116 1379675

>>1379367
Капитан, ты?

117 12 апр, 17:45 117 1379837

Посоветуйте статьи про создание собственного ассемблера и написание простого парсера, лексера и генератора машинного кода. Хочу написать компилятор для своей ВМ.

118 13 апр, 04:18 118 1380127

НАДО АКТИВИРОВАТЬ ФУНКЦИЮ ПЕЧАТИ ДОКУМЕНТА
@
ДЛЯ РЕФЕРЕНСА РЯДОМ ЕСТЬ АКТИВНАЯ ФУНКЦИЯ ПЕЧАТИ ОДНОЙ СТРАНИЦЫ
@
ВЫПОЛНЯЕТСЯ ЗА 150 ИНСТРУКЦИЙ, ВСЁ ПРЕДЕЛЬНО ПРОСТО
@
НАШЁЛ, КАК ВЫЗВАТЬ ПЕЧАТЬ ДОКУМЕНТА
@
В ПРОЦЕССЕ ВЫПОЛНЕНИЯ ДЁРГАЕТ НЕБО И АЛЛАХА, ПРОВОДИТ КАКИЕ-ТО СКРЫТЫЕ ПРОВЕРКИ, КОТОРЫЕ ТОЖЕ НАДО ОБОЙТИ
@
СПУСТЯ 1000 ИНСТРУКЦИЙ И 3 ЧАШКИ КОФЕ МЕЧТАЕШЬ О ТОМ, ЧТО ЛУЧШЕ БЫ ШЛЁПАЛ ФОРМЫ НА ДЖАВАСКРИПТЕ

вкатился

60 Кб, 225x225
119 13 апр, 05:22 119 1380129

>>1377050
Я делал что-то подобное через ft232 - на стороне PC usb + driver, другим концом в микроконтроллер serial RX/TX. Все предельно просто. API на сях, довольно удобный и высокоуровневый.
Код типа такого
FT_SetBaudRate (ftHandle, 9600);
FT_SetDataCharacteristics(ftHandle, FT_BITS_8, FT_STOP_BITS_1, FT_PARITY_NONE);
...
ftStatus = FT_Write(ftHandle, &buf, sizeof buf, &bytesWritten);

и тд. Никаких проблем. Я с армом спаривал, можешь хоть с ардуинкой, с чем угодно. В /ra/ сходи еще.

120 13 апр, 11:54 120 1380219

>>1379265
Никуда, продолжай ныть и отговорки придумывать.

121 16 апр, 18:54 121 1382376

Пишу лабу. Нашел похожую прогу и вычищаю всякое ненужное говно и разбираюсь что здесь что.
Можете пояснить, зачем он закидывает в стек дс и выкидывает ес? В чём суть? (Без этого лаба не работает, поэтому надо рабобраться)
Для чего обычно это используется?
push ds
pop es

Ответы382394

122 16 апр, 19:29 122 1382394

>>1382376
>Для чего обычно это используется?
>push ds
>pop es
es=ds
Т.к. прямых команд типа mov es, ds нетути.

Ответы382398

123 16 апр, 19:37 123 1382398

>>1382394
А что это означает? Нахуя тобишь? Код не сильно большой, надеюсь меня не побьют.
Без него ничего не работает, но я не пойму смысол.

lea SI, StringINP+2 ;взятие адреса входящей строки
lea DI, StringOUT+2 ;взятие адреса исходящей строки
mov CL, StringINP+1

push ds
pop es

Proverka:
lodsb
cmp AL, 20h
je stop
cmp AL, 9
je stop
stosb
stop:
loop Proverka
lea dX,StringOUT
mov AH, 09h
int 21h
quit:
exitcode 0
end

Ответы382404

124 16 апр, 19:46 124 1382404

>>1382398
>Нахуя тобишь?
Пушто lodsb работает с парой DS:SI, а stosb с парой ES:DI.
Если SI и DI в одном сегменте, то надо как-то сделать, чтобы ES=DS.
Т.к. прямого присвоения типа mov ES, DS нету, то костылишь это через pusd DS/pop ES.

Ответы382408382415

183 Кб, 450x565
125 16 апр, 19:49 125 1382408

>>1382404
ПАСИБА.
Миллион нефти тебе :3

126 16 апр, 20:00 126 1382415

>>1382404
>Если SI и DI не в одном сегменте
слоуфикс

127 18 апр, 01:09 127 1383141

чего в шапке нет ссылки на дизассемблер от большего брата? https://ghidra-sre.org (заходить с впн)

Ответы383627

128 18 апр, 16:02 128 1383459

Мимодебилу подскажите.
Проходил туториал от cheat engine и немного разбираюсь в ассемблерах этих. Совсем чуть чуть.
Есть одна игра, и в ней есть кнопка, которая требует 80 левл, чтоб на неё нажать.
Я подумал найти где в ассемблере считается левл и изменить там.
Текущий левл видно в меню персонажа, но я его чит энжином никак не могу найти. Искал уже по типу all, по типу string, ничего нет. Точнее за 2-3 прохода вся таблица исчезает. Будто адрес левла меняется постоянно.
В меню персонажа левл выводится как Level: 4 например.
Нашел эту строку в памяти Level: %d
Сделал Find out what accesses this address
При открытом меню персонажа там есть 2 адреса, которые читают эту строку.
Взял первый, Show disassembler
Если я меняю на nop, то текст пропадает из всего меню персонажа. Все строки. Значит я на верном пути.
Сделал Break and trace instructions и теперь у меня тыща инструкций. Но это не просто printf (string, ADDRESS_OF_LEVEL); а куча хлама, среди котрого хрен найдёшь нужное.

Как мне выследить где хранится ебучий левл?

Ответы383468383471383479

129 18 апр, 16:17 129 1383468

>>1383459
Кстати статы я так же не могу никак отловить, силу, ловкость, вот это всё. После 2-3 изменений в cheat engine пустая таблица.

Ответы383479

130 18 апр, 16:26 130 1383471

>>1383459
>теперь у меня тыща инструкций. Но это не просто printf (string, ADDRESS_OF_LEVEL); а куча хлама, среди котрого хрен найдёшь нужное
Добро пожаловать в ассемблер.

Ответы383479

27 Кб, 780x399
131 18 апр, 16:42 131 1383479

>>1383471
>>1383468
>>1383459
Пиздец.
Я справился. Я победил.
Написал пелену текста как я это сделал, а макаба взяла и удалила мне весь пост.
Лень писать, но я выйиграл. Пикрелейтед - проверка на 80 левл.

132 18 апр, 16:45 132 1383480

Как мне последовать за call инструкцией? То есть есть функция yoba, которая внутри вызывает функцию makaba, ида пишет мол вот смотри: yoba + 0x2b ; call makaba. Как мне блять адрес то макабы получить чтобы вызвать ее? (fnProt)yoba = get_addr(yoba) + 0x2b же? Но так не работает.

Ответы383485383592

133 18 апр, 16:56 133 1383485

>>1383480
>Как мне последовать за call инструкцией?
F7

Ответы383861

sage 134 18 апр, 19:31 134 1383592

>>1383480
Подозреваю, что ты хочешь что-то типа call_target = base + offset + 5 + dword_at(base + offset + 1), где base - это yoba, offset - это смещение инструкции call относительно base, т.е., 0x2b, call_target - вычисляемый адрес makaba, 1 - офсет rel32 внутри инструкции call (всегда 1 в этой форме), 5 - размер инструкции call rel32 (всегда 5 в этой форме), rel32 - это смещение вызываемой фукнции относительно следующей за call инструкции.

Ответы383861

# OP 135 18 апр, 20:16 135 1383627

>>1383141
Потому что никто уже третий тред не может его нормально прикрепить. Вот так:
>>1369180 (OP)
ОП, добавь в шапку гидру

136 19 апр, 04:46 136 1383826

Ассемблер ломает мне мозг. Я думал это машинный язык, а он компилируемый получается.
Вот из примера
>e db 'string',0 ; Определяем строку из 7 байт, заканчивающую нулём
Как это будет выглядеть в хексе экзешника? "e" это имя переменной.
Там ведь не будет слова "e" для переменной?

Ответы383827383828

137 19 апр, 04:51 137 1383827

>>1383826
>\t\t
Это макаба добавила. Там в оригинале табуляция.

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

Ответы383828

38 Кб, 665x276
138 19 апр, 05:08 138 1383828

>>1383827
>>1383826
А, я понял.
>e db 'string',0
превратится в
>73 74 72 69 6E 67 00
а
>mov eax, [e]
превратится в
>mov eax, [0xАДРЕС]

9 Кб, 485x164
139 19 апр, 09:16 139 1383861

>>1383485
Спасибо конечно, но мне нужно это сделать не в иде, а в рантайме на С.

>>1383592
Теперь я еще сильнее запутался... Вот другой пример прикрилейтед. FUNC - экспортируемая функция в дллке, func_internal - нет, но мне нужно получить к ней доступ, чтобы единичку в последнем параметре заменить на нуль при вызове. Как мне вызвать то func_internal? Делаю GetProcAddress(func), получаю адрес func, смещение по которому находится вызов func_internal = func + C. Но все равно вызвать функцию не получается.

Ответы384303

sage 140 19 апр, 19:29 140 1384303

>>1383861
> Как мне вызвать то func_internal?
Псевдокод:
typedef int func_internal_type(int a, int b, int c, int d, int e);
uintptr_t funcptr = (uintptr_t) GetProcAddress(lib, "func");
uintptr_t call_insn = funcptr + 0x0c;
assert(∗(uint8_t ∗) call_insn == 0xe8); // Опкод CALL.
uintptr_t rel32 = ∗(uintptr_t ∗) (call_insn + 1);
uintptr_t call_target_addr = (call_insn + 5 + rel32) & 0xffffffff;
func_internal_type ∗func_internal = (func_internal_type ∗) call_target_addr;
func_internal(1, 2, 3, 4, 5);

Пример на пальцах. Допустим, у тебя есть:
0x10000000: e8 20 01 00 00: CALL 0x10000125
0x10000005: c3: RET
Ты читаешь из инструкции rel32 (little endian, выделено жирным): rel32 = 0x00'00'01'20, берешь адрес следующей инструкции после call: 0x10000005, прибавляешь к нему rel32 (считаешь в 32-битной арифметике с переполнением, rel32 со знаком, но на это похуй) и получаешь адрес вызываемой функции: 0x10000005 + 0x00000120 = 0x10000125. То же самое делается для относительного JMP.

Ответы384523

141 20 апр, 02:20 141 1384523

>>1384303
Благодарю, вроде все понял, буду пробовать. Есть вообще доп. материал по данной тематике? Как гуглить решение аналогичных задач? Или нужно асм активно вкуривать и само все придет?

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

Ответы384525384527

142 20 апр, 02:59 142 1384525

>>1384523
Если знаешь название экспортируемой функции, глупо было б искать ее по сигнатуре

Ответы384527385210

sage 143 20 апр, 03:47 143 1384527

>>1384525
Возможно, имеет смысл искать сам опкод по сигнатуре, а то мало ли как компилятор в следующий раз наоптимизирует, офсет изменится, и приехали.

>>1384523
> выглядит проще
Да там на самом деле одно-два выражения всего, если лишних переменных не создавать. И да, я только сейчас случайно заметил, что у тебя 64-битный код, а у меня там unsigned читается. Сорян. Надо вот так хотя бы, тогда и в 32- и в 64-битном коде норм будет:
uintptr_t rel32 = (uintptr_t) ∗(int32_t ∗) (call_insn + 1);
uintptr_t call_target_addr = call_insn + 5 + rel32;

Ответы384562385210

144 20 апр, 08:35 144 1384562

>>1384527
1. если он в следующий раз наоптимизирует, твой сигнатура идет нахер
2. тебе не надо знать офсет, чтобы хукнуть импортируемую функцию из ддл

Ответы384872

145 20 апр, 08:40 145 1384566

Кто шарит в windows debug?
Напишите уравнение: x = (a*3+5)/c+b

Ответы384568

146 20 апр, 08:42 146 1384568

>>1384566
щта?

sage 147 20 апр, 16:06 147 1384872

>>1384562
Если он в следующий раз наоптимизирует, первая вызываемая функция останется первой (ну разве что стекчек появится какой). Чтобы хукнуть экспортируемую, офсет не нужен, но анону нужно самостоятельно вызвать неэкспортируемую фукнцию, которую вызывает экспортируемая.

148 20 апр, 20:22 148 1385026

Стоит ли читать Зубкова, учитывая что там большая часть книги описывает работу с dos, win95 и т.д.? Мб есть что-то поактуальнее?

Ответы385127385209

149 20 апр, 23:00 149 1385127

>>1385026
Юричев

150 21 апр, 09:42 150 1385209

>>1385026
главное не выбирать долго долго а сесть и начать. кому как, у меня начало было так:
курс с asmworld.ru по FASM + Калашников https://rutracker.org/forum/viewtopic.php?t=4480735
Знаю что Калашников старье не актуальное и все что пишется либо на ХР запускать либо в досбоксе. Чисто чтоб привыкнуть к асемблеру.
А дальше все как в книжке Юричева. компилятор + олька + ида, и в путь. Можно по курсу ольки от Нарвахи пробежаться.

151 21 апр, 09:42 151 1385210

>>1384525
Так она не экспортируемая.

>>1384527
Спасибо еще раз. Почитать-то есть что-нибудь на данную тему? Далее планирую похукать функцию. Это же inline hook называется, когда в начало функции пишешь свой jmp, address?

Ответы385841

152 21 апр, 09:46 152 1385211

Может кто поделиться статьей https://xakep.ru/2019/03/20/nsa-ghidra/
брать подписку ради нее одной как то не хочется.

Ответы385215

153 21 апр, 09:57 153 1385215

>>1385211
Итак, мы рассмотрели фреймворк для реверс-инжиниринга Ghidra. Сможет ли он заменить IDA Pro? Я думаю, что на данном этапе своего существования — нет. Дело в том, что Java в качестве языка для написания подобных программ, на мой взгляд, не лучший выбор. И дело, конечно, в скорости.

Дизассемблер работает небыстро, особенно на тяжелых файлах. Скажу больше: файлы размером свыше 150 Мбайт реверсить на Ghidra — то еще испытание. С другой стороны, Ghidra кросс-платформенна, и для кого-то это может быть важно.

Следующий момент — это количество поддерживаемых архитектур и загрузчиков файлов: у IDA Pro их значительно больше. Еще очень не хватает такой же плотной интеграции с отладчиками, как в IDA Pro. Опять же, открытость кодов (если NSA выполнит обещание) — это хорошо, да и возможность добавлять поддержку других архитектур — по-настоящему крутая фишка. Но пока будет выполнена эта работа (и исправлены баги), пройдут годы.

Вообще, у меня сложилось стойкое впечатление, что Ghidra — это не конечный продукт. В том виде, в котором этот фреймворк доступен сейчас, он тянет на бета-версию с публичным доступом, но никак не на версию под номером девять. Кстати, в названии архива есть слово PUBLIC. Наверняка где-то есть еще и версия PRIVATE.

Безусловно, у Ghidra есть свои сильные стороны, и в чем-то она уже превосходит IDA Pro, но слабых мест пока что намного больше. А вот разработчикам IDA есть что позаимствовать в новом инструменте. Например, мне понравилась повышенная информативность кода, представленного в виде графа. Да и само построение графа кода выглядит более строго и упорядоченно. Есть патчинг инструкций без дополнительных плагинов и без разделения на x64 и x86. Зачем держать два ярлыка на рабочем столе, если достаточно одного?

Ответы385219385255386880

154 21 апр, 09:58 154 1385217

>>1369180 (OP)
я бы добаивл еще ссылку на копию зеркала старого васм.ру https://rutracker.org/forum/viewtopic.php?t=407571

155 21 апр, 10:02 155 1385219

>>1385215
там после "Здесь видим список всех функций с их сигнатурами" закрыто сайтом. Можешь Ctrl+P и пдфкой сюда?)

156 21 апр, 11:35 156 1385255

>>1385215
иногда гидра лучше листинг выдает, чем ida pro 7.0

Ответы385864

157 21 апр, 15:35 157 1385841

>>1385210
> Я думаю, что на данном этапе своего существования — нет
Учитывая, как легко и красиво пишутся плагины, то иде пизда. И радару пизда.

Ответы385864

512x512
158 21 апр, 15:42 158 1385864

>>1385841
>>1385255
Уже установили JRE?

Налажали спец. службы конечно, уж писали бы на сисярпе хотя бы.

Ответы385881385917386862388163

159 21 апр, 15:59 159 1385881

>>1385864
ничего не наложали. у них при работе скорее всего крутится на сервере с нужными мощностями, а ты подключаешься по сети дебажешь. Да и понятие скорости там не так важно. ну анализирует оно дольше, да и фиг с ним. Главное простота поддержки кода, уровень вхождения.
Цифра 9 - когда начинали .net core наверно был только в зарождении, а тут все сразу из коробки. так что для них выбор очень даже хороший.

sage 160 21 апр, 16:41 160 1385917

>>1385864
> Уже установили JRE?
Ты мимо пробегал? Пробегай, не задерживайся. Мы тут реверсеры, нам приходится реверсить и жабкуандроид, поэтому жре у всех и так установлен.

Ответы388163

161 21 апр, 18:31 161 1385993

Парни помогите ,жопа горит уже не могу.
При установке драйвера TitanHide столкнулся с ошибкой
StartService fails with error 6 "Invalid Handle" , а также до этого была проблема с загрузкой win без подписи драйвера, при выборе даже в загрузочном меню F8 команда игнорировалась и запускала обычную версию.
Решил ту проблему через msconfig
как же я блять не навижу ебаный шиндовс

Ответы386418391429

162 22 апр, 02:09 162 1386277

Сап, реверсач.
Вопрос мб тупой, но всё же задам: в 2к19 пишутся ли годные малвари на чистом асме? Или это, как правило, сишный код с инлайн асм вставками?

Ответы386418

163 22 апр, 11:07 163 1386418

>>1385993
Ты как грузишь драйвер-то? Проблема очевидно c SCM-manager'ом. На сколько я помню проект опенсурс, так что смотри исходники и дебаж.

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

Ответы386567

164 22 апр, 13:47 164 1386567

>>1386418
Все в ознакомительных целях на самом деле, я хочу в недалеком будущем начать анализировать малвари, сейчас усиленно учу асм и хочу знать полностью его мощь/возможности.

Ответы386579386701

165 22 апр, 14:01 165 1386579

>>1386567

Тогда ты на выбор попадешь или к мусорам из раши, или к мусорам из СШП. Причем, ко вторым тебе шансов попасть больше. Еще есть такой вариант , что после бутылки от отечественных мусаров тебе предложат поработать штирлицом плаща и кинжала на гыгыру или какого вагнера (в противном случае на тебя повесят все глухари и отправят к маньяками и серийным мокрушникам в черный дельфин) тип штатным хакером, где ты в тюрячке/шараге под одобрительные солдатские пиздюли будешь ломать пентагон с IP адреса минобороны, после чего гыгыру и пуйло поджав хвост и поскуливая, сольют тебя мусорам из СШП. Где ты получишь тот же пожизняк-двадцаточку, но уже с многомиллиардными штрафами.

Да, касперский, по последним сводкам тоже на гыгыру и вагнера работает, параллельно многостаночит на прочие кардерские тусовки. Так что ну его нахуй это хекерство - если ты не какой мексиканский главарь Los Zetas и у тебя нет своей личной армии.

Хакеров везде не любят, тащемта. Тут тот случай что даже заведенный трактор/его отсутсвие похеру.

Потому что речь идет о серьезных деньгах серьезных людей по всему миру.

Ответы386721

166 22 апр, 16:31 166 1386701

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

а так, загляни https://habr.com/ru/post/438376/

Ответы386804386818

167 22 апр, 17:23 167 1386721

>>1386579
Анон, что ты несешь? Речь идет о кристально белой шляпе, которая проводит binary exploitation исключительно в рамках инфосек компании за зарплату. Ни про какие мутные взломы и прочую хрень речи не идет вовсе. Я лишь спросил про мощь асма у более знающих людей (уверен, здесь таких немало), а в ответ полетел бред про бутылку и криминал.

Ответы386724386737

168 22 апр, 17:28 168 1386724

>>1386721
>о кристально белой шляпе
Следователю расскажешь и фсбшникам объяснишь, идиотик.

Ответы386728

169 22 апр, 17:33 169 1386728

>>1386724
Ты совсем даунич?с: Инфосек специалисты для чего в соответствующих компаниях работают? Чтобы проводить аудит безопасности для тех или иных продуктов, причем здесь вообще криминал, даунёнок? Им платят деньги за то, чтобы выходил качественный, трудновзламываемый софт.

Ответы386732

170 22 апр, 17:36 170 1386732

>>1386728
>Инфосек специалисты для чего в соответствующих компаниях работают?
Чтобы за 15к фублей и статус невыездного подымать россиюшку.
Ну и если что не так - то тут же сесть, разумеется.

Ответы386735

171 22 апр, 17:42 171 1386735

>>1386732
А, забыл упомянуть, что речь идет не про рашку и даже не про страны СНГ, но это совсем другая история с:
Пожалуй, подожду адекватного ответа по поводу асма, а то продолжать юзлесс демагогию не имеет никакого смысла.

Ответы386753

172 22 апр, 17:49 172 1386737

>>1386721

Открою америку: белых шляп не существует - все инфосек конторы занимаются чернотой на заказ, при этом все сотрудники реально ходят под такими NDA, что вплоть до пули от киллера или пера в переулке.

Ответы386741

173 22 апр, 17:55 173 1386741

>>1386737
>белых шляп не существует
Пруф или волейбол

174 22 апр, 18:05 174 1386747

Где моча? Тут /по/рашник протёк!

Ответы386755

175 22 апр, 18:12 175 1386753

>>1386735
>А, забыл упомянуть
+15

176 22 апр, 18:13 176 1386755

>>1386747
Протек мочой тебе за щеку, сглатывай.

177 22 апр, 19:18 177 1386804

>>1386701
>к тому же нет роста как профессионала
Тут ты обосрался. Карьерный рост есть:
1. Кататься по дефконам светить лицом, продвигать себя и свою кантору
2. Вкатиться в разработку ав-движка
3. Вкатиться в редтим
4. Пилить девтулы для своей канторы

Самое основное вспомнил.

Ответы386914

178 22 апр, 19:38 178 1386818

>>1386701
сейчас бы malware analyst был без профессионального роста, лол :-) Хотя, возможно, с ИБ в рашке действительно настолько все плохо, что на всю страну есть только лаборатория Касперского. Основная же масса айтишников - сброд унылых вебмаQAк :-)

Ответы386872386916

179 22 апр, 20:24 179 1386862

>>1385864
Он же платный!

180 22 апр, 20:32 180 1386872

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

181 22 апр, 20:45 181 1386880

>>1385215
>Дизассемблер работает небыстро, особенно на тяжелых файлах.
Этот даун думает, что дисассемблер медленный из-за джавы?

>Кстати, в названии архива есть слово PUBLIC. Наверняка где-то есть еще и версия PRIVATE.
Натурально даун.

Ответы387462

182 22 апр, 21:05 182 1386889

Есть, кто шарит за демосцену?
Хочу вкатиться чисто для души поделать, плюс углубить анус свои знания.
Тащемта, с чего начать, куда смотреть? Сам недокодер SoC на си

Ответы386897

183 22 апр, 21:16 183 1386897

>>1386889
>Тащемта, с чего начать, куда смотреть?
Шейдеры.
всё

Ответы386904

184 22 апр, 21:23 184 1386904

>>1386897
я смотрел сурсы демок, там в си вставлен ассемблер..
это все шейдеры?

Ответы386965

185 22 апр, 21:48 185 1386914

>>1386804
ну будем честными, это единицам светит, остальные и будут сидеть "вычленять сигнатуры", в то времяч как жава/шарп джуны получают столько же и в джунах не задерживаются.

Ответы387462

186 22 апр, 21:49 186 1386916

>>1386818
рынок для реверсеров очень сильно ограничен. И не только в России.

Ответы386948

187 22 апр, 22:16 187 1386948

>>1386916
Погугли сколько есть вакансий в разных странах на должности: malware analyst, security researcher. Все они реверсеры, камон, их не так мало. Да, порог вхождения высокий, но их все равно достаточно.

Ответы387051

188 22 апр, 22:32 188 1386965

>>1386904
В старых по-разному может быть.
Современная выглядит так:
var sheider='дохуя длинная строка шейдера в текстовом виде'
call Init_grafika
call zapustit_sheider
loop poka_ne_zakonchitsya

А потом это все кранчем жмешь и получаешь заветные 1-4к.

Ответы386969

189 22 апр, 22:34 189 1386969

>>1386965
а как оэлдефажные делать...

190 22 апр, 23:51 190 1387051

>>1386948
ну твой опыт похоже ограничивается только гуглом))

191 23 апр, 20:37 191 1387462

>>1386880
Очевидно он медленный из-за джавы. Очевидно у спец. служб есть и приватная софтина. Не понял твоих претензий.

>>1386914
В ДСе зп младшего вирусного аналитика может за 100к переваливать, даже джависты могут позавидовать. Рост возможен и потолок гораздо выше чем у того-же джависта/шарписта.

Ответы388062388416

192 24 апр, 22:04 192 1388062

>>1387462
ты это на хх смотришь? или работал там? порог вхождения джав/шарп-иста на такую зп куда ниже чем на того же аналитика. Рост у обычного аналитика не так прекрасен как рассказывают, по большей части ты выполняешь тупую нудную работу. В зависимости от фирмы еще и разной специфичности условия.
Ну и да, совсем забыли тут сказать, работа вирусным аналитиком не так уж и сильно корелируется непосредственно с реверсом.
ну а 100к джавистом/шарпистом можно и в регионах, если добавить немного фриланса

Ответы388067

193 24 апр, 22:09 193 1388067

>>1388062
А педалить какое-то говно на джаве - это не нудно?)
Вирусный аналитик != реверсер? Анон, ты ебобо? 99.9% малварей требуют глубокого статического анализа, где от вирусного аналитика требуется мэдскиллз по обходу обфускации, пакеров, рантайм шифрования и прочего дерьма. Вирусный аналитик - это реверсер на стероидах, ибо обычный софт, в среднем, гораздо меньше и слабее онально огораживают от отладчиков и дизассемблеров, нежели малвари, и тому есть вполне логичные причины.

Ответы388115388459

194 24 апр, 23:23 194 1388115

>>1388067
>99.9% малварей требуют глубокого статического анализа, где от вирусного аналитика требуется мэдскиллз по обходу обфускации, пакеров, рантайм шифрования и прочего дерьма.
Ржали всей лабораторией.

Ответы388164388816

3 Кб, 269x77
195 25 апр, 00:33 195 1388163

>>1385864
>>1385917

196 25 апр, 00:34 196 1388164

>>1388115
ой, да что ты пиздишь, наверняка какой-нибудь вебмаQAкич :)

197 25 апр, 13:37 197 1388416

>>1387462
Кому очевидно, тебе?

sage 198 25 апр, 15:06 198 1388459

>>1388067
> 99.9% малварей требуют глубокого статического анализа
> Ржали всей лабораторией.
Присоединяюсь. 90% малвари состоит из необфусцированного копипастного кода, написанного школьниками на переменах. Глубокий анализ такого заключается в strings virus.exe|grep http. Еще несколько процентов - это вариации на тему ксора с коротким ключом, иногда со скопипащенным из какого-нибудь метасплоита кодом поиска апи по хэшам, но внутри все тот же говнокод. Сколько-нибудь интересные сэмплы очень редки. Ковыряться в этом однообразном говне годами может только совершенно больной человек, даже у JS-макаки жизнь интереснее, чем у вирусного аналитика.

Ответы388523388811388816

199 25 апр, 17:00 199 1388523

>>1388459
Видать в пидорашке любая отрасль идет с 20-ти летним дилэйем как минимум. Держу в курсе, в 2к19 в цивилизованных странах с таким школьным говном имеют дело программы по анализу вредоносного кода, которые детектят недомалвари в строках, копипасты инфекторов исполняемых файлов и прочее дерьмо.
Анон, интересно, откуда у тебя такие мысли. Только если ты не вирусный аналитик в лаборатории Касперского, но если там такая дичь творится, то земля вам пухом там, хуле

Ответы388660388697

sage 200 25 апр, 19:18 200 1388660

>>1388523
> Только если ты не вирусный аналитик в лаборатории Касперского
Нет, я с дивана, а ты в целом прав.

201 25 апр, 19:57 201 1388697

>>1388523
сам то чьих будешь где работаешь что такими заявлениями кидаешься? Живешь в каком то маня мирке.
я вот много где посмотрел, вирусная налитика именно такая копипаста как выше тебе уже пояснили. Анализ чего то сложного и интересного. это настолько редко что охереть как.

Ответы388811

202 25 апр, 22:43 202 1388811

>>1388459
>>1388697
Да никто не сидит там по 2 года, делая однообразную хуйню. Такой же карьерный рост как и везде. После полугода-год тебя начнут закидывать прикольными тасками, будешь выезжать на конфочки/хакатоны итд.

Ответы388876

203 25 апр, 22:53 203 1388816

>>1388459
>>1388115
Вам если сэмп с сискаллами + кастом пакером + вм дадут, побежите сразу к старшему с криками:
>ряяя нипохукать! ряяя нидампица! ряяя где оеп вапще?

204 26 апр, 00:54 204 1388876

>>1388811
>После полугода-год тебя начнут закидывать прикольными тасками, будешь выезжать на конфочки/хакатоны итд.
А через два года начнёшь получать 300кк в наносекунду.

205 26 апр, 01:28 205 1388896

суп реверсач
понадобилось крякнуть программу купить не вариант - уже не продается
вообщем нужно написать декриптор для этой штуки
https://paste.dlab.im/?0b0853f6e4817a61#NTz16ZkNLTjEdqZhreTOPZUCFJS3lxbvwxU5o7I01ac=
да,я тупой инвалид,но не осилил

Ответы388903389461391589

sage 206 26 апр, 02:03 206 1388903

>>1388896
> DDosBot
Нахуй пошел.

Ответы389079389363

sage 207 26 апр, 13:29 207 1389079

>>1388903
Не факт, может стилер, лол
185.170.43.187/jjj888/skghn.php

Ответы389080389247389363389366

sage 208 26 апр, 13:35 208 1389080

>>1389079
А не, это внезапно майнер.

[MINING]
pool = 185.170.43.187:8080 ; pool address
wallet = 83VL4uUXJynELY1oc7vqwmdG5L4ykZYtb4XjbYDkDvDvF9Chh7xMZJy4FTPuSEUfYGTBJCFoH6qBcVV1AFakRHjeRPu7hKL
pass = x
proxy = false

[CPU]
cpubase_usage = 20 ; Basic power
cpuidle_usage = 90 ; IDLE power

[GPU]
gpubase_usage = low ; 40% aka basic power
gpuidle_usage = high ; 100% aka IDLE power

Ответы389363

209 26 апр, 13:37 209 1389082

Сап котаны
Объясните ньюфагу, каким образом дрова исполняются в кольце 2 и 1, и каким образом он исполняются без ведома владельца пк? В общих чертах хотя бы, а то путаница насчет этого
Чуется мне, что все буткиты/руткиты - это малварь, завернутый в нечто похожее на драйвер, чи да?

Ответы389281389341

210 26 апр, 18:16 210 1389247

>>1389079
Там чего только веселого не гуглится по этому айпи.

Ответы389363

sage 211 26 апр, 18:37 211 1389281

>>1389082
> дрова исполняются в кольце 2 и 1
Никаким. Это влажные мечты Intel, которые никому не пригодились. Пользовательский софт в r3, все остальное в r0.

> В общих чертах хотя бы
> каким образом он исполняются без ведома владельца пк
Процессор при запуске ОС (опустим переключение в защищенный режим) начинает исполнять код в r0. Таким образом ядро ОС исполняется в r0, и оно может, грубо говоря, менять уровень привилегий при переключении потоков (задач), может вместе с процессором изолировать память различных задач, а процессор не дает задачам из r3 исполнять привилегированные инструкции. А вот владелец пека вообще ничего не может, он устройство ввода, его можно даже не опрашивать.

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

Ответы389312389341

212 26 апр, 18:59 212 1389312

>>1389281
>а руткит может не быть файлом или не использовать стандартные апи для драйверов.

Это ломает мой девственный мозг новичка, как код может быть исполнен, если он не файл? Из-под чего он исполняется, где хранится код зловреда?
Или руткит инжектят каким-то раком в бут сектор и он хранится, не имея при этом файла, который содержит исполняемый код, тупо запускаясь вместе с ОС при включении компа? А что творится на уровне гипервизора или SMM я пока тоже не представляю.

Ответы390390

60 Кб, 536x398
213 26 апр, 19:43 213 1389341

>>1389082
Смотри пикрил. Обычный юзер ты, твои приложухи, игрухи, итд находится в VTL 0 пользовательском режиме ring3. Драйверымышки, клавиатуры, системные и прочее находятся в VTL 0 режиме ядра ring0, тут же сидят и руткиты/буткиты.
Руткиты - это и есть драйверы, то есть pe-файл с расширением .sys. После отображения в ядро могут скрыть себя множеством способов. С расширением архитектуры винды и добавлением внутренних механизмов защиты, их действия сильно ограничены.
Windows Internals 6 или 7 издание почитай, много чего узнаешь.

>>1389281
>а руткит может не быть файлом или не использовать стандартные апи для драйверов
Апи ядра они используют, без этого никак и функции легитимных/системных драйверов.

Ответы389430

214 26 апр, 20:11 214 1389363

>>1389079
>>1388903
>>1389080
>>1389247
и никто не помог
:(

215 26 апр, 20:16 215 1389366

>>1389079
обьясните алгоритм,хотя бы
у меня при циклах каждый раз где-то все наебывается и выходит полная залупа,а не нужный результат
и биткойн кошель кидайте сразу)

Ответы389388

216 26 апр, 21:10 216 1389388

>>1389366
>обьясните алгоритм,хотя бы
XOR

217 26 апр, 21:59 217 1389430

>>1389341
Зачем шестое читать, оноже старое

Ответы389458

218 26 апр, 22:01 218 1389434

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

Ответы389458

219 26 апр, 22:23 219 1389458

>>1389430
В идеале и 6 и 7 прочитать, чтобы прощупать логику маломягких.

>>1389434
Windows Internals. Очень подробно разбираются процессы и потоки, страниц на 300 все очень детально разжевано.

Ответы389460

220 26 апр, 22:26 220 1389460

>>1389458
И я так полагаю, в книге по ядру линукса тоже есть такое?

Ответы389462

221 26 апр, 22:26 221 1389461

>>1388896
Может ты ссылку на файл кинешь?

Ответы389471

222 26 апр, 22:27 222 1389462

>>1389460
Тебе про линукс надо? Тогда не знаю, гугли сам. Нахуй линукс, все деньги у майков.

Ответы389465

223 26 апр, 22:29 223 1389465

>>1389462
Виндовс само собой, а линукс для души.

224 26 апр, 22:37 224 1389471

>>1389461
а зачем тебе?

Ответы389499

225 26 апр, 23:37 225 1389499

>>1389471
>понадобилось крякнуть программу
Ты дурачек?

Ответы389523389524

226 27 апр, 00:18 226 1389523

>>1389499
>вообщем нужно написать декриптор для этой штуки

227 27 апр, 00:21 227 1389524

>>1389499
со всем остальным,кроме этого метода,у меня все окей
нужно просто написать декриптор для этих строчек,чтобы можно было бы переводить их в url и обратно
извиняюсь,могу тупить,время позднее

Ответы389565

228 27 апр, 00:59 228 1389533

Котаны, посоветуйте плиз нормальный сорс, откуда можно почитать/посмотреть про хукинг, желательно на английском, а то все как-то не очень объясняют или это я прост тупой, ГЫ

229 27 апр, 04:10 229 1389565

>>1389524
Но ведь это C#, Карл. Почему ты просто пропатчить бинарник не можешь?

230 27 апр, 09:36 230 1389605

>>1376951
Программист перед сном ставит на тумбочку два стакана. Один с водой, если захочет пить, а второй пустой, если не захочет.

Ответы389957

231 27 апр, 17:39 231 1389957

>>1389605
Отличная шутка.
Так как собственный импорт сбилдить на С/C++ в visual studio?

Ответы390024

232 27 апр, 18:26 232 1390024

>>1389957
Что? Поясни, что значит "импорт сбилдить"? Сгенерировать таблицу импортов? Слинковаться с длл? Сделать библиотеку импорта?

Ответы390099

233 27 апр, 19:33 233 1390099

>>1390024
Да я сам не знаю. Просто хочу чтобы при просмотре любым pe-viewer'ом в таблице импорта моего хеллоу ворлда отображалось три kernel32.dll

Ответы390255

234 27 апр, 23:24 234 1390255

>>1390099
Фасм:
format pe gui
entry start
include 'win32w.inc'

start: invoke ExitProcess,0
_ = VirtualAlloc ; "Use" function to prevent fasm from removing it from imports.
_ = CreateFile

data import
library kernel32_1,'KERNEL32.DLL',kernel32_2,'KERNEL32.DLL',kernel32_3,'KERNEL32.DLL'
import kernel32_1,ExitProcess,'ExitProcess'
import kernel32_2,VirtualAlloc,'VirtualAlloc'
import kernel32_3,CreateFile,'CreateFileW'
end data

Ответы394311

235 28 апр, 03:52 235 1390390

>>1389312
>как код может быть исполнен, если он не файл?
Банально уязвимость в сетевом стеке, типа большой пакет озалупливает ОС, и она передаёт управление куда-то внутрь этого пакета. Файла нет, а троян есть.
>>1389312
>А что творится на уровне гипервизора или SMM я пока тоже не представляю.
И не надо, есть IME, который имеет вышеперечисленных.

Ответы390450

236 28 апр, 11:02 236 1390450

>>1390390
>Банально уязвимость в сетевом стеке, типа большой пакет озалупливает ОС, и она передаёт управление куда-то внутрь этого пакета.
Эмм, содержимое такого пакета парсится как строка? Поэтому и сам зловред представляет собой строку? (условно, скрипт баша/мелкомягкой силаскорлупы) Просто если там обычный код, который нужно, офк, скомпилировать перед исполнением, то мне сложно представить как этот троян исполнится.
>И не надо, есть IME, который имеет вышеперечисленных.
Не буду кривить душой, не раздуплил причем здесь софт, который позвляет вводить символы, которых нет на клаве

Ответы390479

sage 237 28 апр, 11:59 237 1390474

Это просто троллинг тупостью

238 28 апр, 12:29 238 1390479

>>1390450
>Эмм, содержимое такого пакета парсится как строка?
Причём тут строки? Мы про бинари.
>>1390450
>Не буду кривить душой, не раздуплил причем здесь софт, который позвляет вводить символы, которых нет на клаве
https://ru.wikipedia.org/wiki/Intel_Management_Engine

Ответы390487390490391094

239 28 апр, 12:44 239 1390487

>>1390479
>Причём тут строки? Мы про бинари.
До сих пор не понимаю как можно пропихнуть бинарник в пэйлоуде пакета, да чтобы он еще и запустился. Только если это не dll/so, который должен экспортироваться в какой-то процесс и нагадить.
>https://ru.wikipedia.org/wiki/Intel_Management_Engine
Спасибо, раздуплил.

Ответы390491391094

240 28 апр, 12:46 240 1390490

>>1390479
А это просто тупой, попавшийся на троллинг тупостью.

241 28 апр, 12:46 241 1390491

>>1390487
Иди нахуй, дебил.

242 28 апр, 18:49 242 1391094

>>1390479
Тебя спрашивают про архитектуру винды, а ты ему железячную
фигню пихаешь, о которой ньюфагу еще последующие лет 5 не придется думать даже.

>>1390487
Тебе нужно перестать думать юзермодными абстракциями и загуглить что такое произвольное выполнения кода, переполнение буфера.
У тебя задача вообще какая стоит? Или ты просто исследуешь? Так исследуй блеать! Виртуалку поднял, виндбг подрубил, основные модули в иде открыл, а дальше уже само пойдет.

Ответы391171391205

243 28 апр, 20:18 243 1391171

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

244 28 апр, 21:09 244 1391205

>>1391094
Ламповый асембли уже давно в тред элитистов превратился. Щас в сипп треде обсуждение асм живее чем тут

Ответы391249391345

sage 245 28 апр, 22:37 245 1391249

>>1391205
Он никогда особенно живым и не был.

246 29 апр, 05:47 246 1391345

>>1391205
Врешь. Сижу в С и С++ тредах, там одни ньюфаги просят помощи с laba_001.sln, ничего серьезного даже близко не обсуждают.

247 29 апр, 10:50 247 1391429

>>1385993
Решил проблему , переустановкой шиндовс.
как же я блять не навижу ебаный шиндовс

248 29 апр, 16:16 248 1391589

>>1388896
бамп реквесту,сразу кидайте свой биткойн кошелек как напишите - кину что есть
нужна консольная прога,которой можно дешифровать это и наоборот- шифровать нужные строки в этот вид

Ответы391616

249 29 апр, 17:05 249 1391616

>>1391589
Тебе уже сказали, там банальный XOR по кругу.

Ответы391622

250 29 апр, 17:08 250 1391622

>>1391616
я обсираюсь с этими циклами все время и мне выводит какую-то хуйню
поэтому и прошу

Ответы391626

251 29 апр, 17:15 251 1391626

>>1391622
Билят.
s=Base64decode('DxEBFw4dF0RfQUZDXlZGWkBEVFBDRBgNCFJLUEoUCVQPC1sXXEI=')
key='geug428ugthrifhnsjehtkrgbjshegb3'

а потом каждый байт xor

res=s[l] ^ key[j]

l от нуля до длины получившихся данных
j = strlen(key); if j>strlen(key) {j = 0}

Ответы391636

252 29 апр, 17:23 252 1391632

test

253 29 апр, 17:30 253 1391636

>>1391626
>j от нуля до strlen(key); if j>strlen(key) {j = 0}
слоуфикс

Ответы391657391673

254 29 апр, 17:58 254 1391657

>>1391636
import base64

s=base64.b64decode('DxEBFw4dF0RfQUZDXlZGWkBEVFBDRBgNCFJLUEoUCVQPC1sXXEI=')
key='geug428ugthrifhnsjehtkrgbjshegb3'
y=0
res=[]

for x in range(0, len(s)):
res.append((chr(ord(s[x])^ord(key[y]))))
y+=1
if y==len(key): y=0;

print(''.join(res))

Ответы391673391682

255 29 апр, 18:32 255 1391673

>>1391636
спасибо
>>1391657
не робит,но все равно спасибо,алгоритм понял

Ответы391698

256 29 апр, 18:53 256 1391682

>>1391657
Сколько лишних слов!
s = base64.b64decode(...)
key='...'
print(bytes(a ^ b for a, b in zip(s, itertools.cycle(key.encode()))).decode())

Ответы391693

257 29 апр, 19:11 257 1391693

>>1391682
хотел помочь нуждающемуся,но назад выходит другой результат
делаю тоже самое,но в обратном порядке,в чем подвоха?
мимо

Ответы391695391698

258 29 апр, 19:13 258 1391695

>>1391693
человеку вроде же как нужен был и шифратор и дешифратор под это дело?
в любом случае,интересно в чем ошибка
в криптографии ноль

259 29 апр, 19:14 259 1391696

Реверсач, выручай
Немного путаница с import address table.
До биндинга import lookup table и import address table указывают на один и тот же адрес (каждый энтри). После биндинга, каждый энтри в import address table меняется на указатель на функцию в дллке (это я понял), но при этом также меняется указатель в каждом энтри import lookup table после биндинга, почему? И нахуя нужен Хинт?
Олсо, указатели на функции в энтри IAT после биндинга - это же VA, а не RVA, я правильно понимаю?

Ответы391817

260 29 апр, 19:21 260 1391698

>>1391673
>не робит,но все равно спасибо,алгоритм понял
Это питон 2.7 если что.
>>1391693
Я слабо знаю эти ваши пистоны, а за ''.join ваще бы убивал, но иногда вот приходится на нем писать под себя.

Ответы391707391817

261 29 апр, 19:31 261 1391707

>>1391698
Вот тут работает https://ideone.com/274G6w

262 29 апр, 22:19 262 1391817

>>1391696
> но при этом также меняется указатель в каждом энтри import lookup table
Не должно такого быть, оно же загрузку сломает. Возможно, линкер делает такую таблицу, где FirstChunk и OriginalFirstChunk указывают на одну и ту же цепочку? Фасм таким страдал раньше. Так-то не должно. Попробуй на другом файле.

> И нахуя нужен Хинт?
Чтобы не выполнять двоичный поиск по таблице в таблице имен в экспортах дллки, а сразу попробовать элемент с указанным индексом. Если таблица экспорта в целевой длл не менялась с момента линковки ссылающегося на нее модуля, получается лукап экспорта за O(1) вместо O(log n). Если менялась... а я вот не знаю, используется ли это значение в качестве первого индекса в двоичном поиске, или оно в таком случае с середины начинает? Cам посмотри реализацию, если интересно.

> это же VA, а не RVA, я правильно понимаю
Да, прибито гвоздями к расположению модулей в памяти и поэтому бесполезно во времена ASLR.

>>1391698
> Это питон 2.7 если что.
Это часы, если что: https://pythonclock.org/ Тик-так.

Ответы391820

263 29 апр, 22:26 263 1391820

>>1391817
>Это часы, если что: https://pythonclock.org/ Тик-так.
Пох. Пока sqlmap не переведут на 3, я не перейду.

Ответы391838

51 Кб, 146x220
264 29 апр, 23:31 264 1391838

>>1391820
>sqlmap

Ответы391882

13 Кб, 359x293
265 30 апр, 02:45 265 1391882

>>1391838

266 2 мая, 11:42 266 1392929

Не могу понять как память устроена в винде. Какие-то страницы PML4, PDE, PTE и еще дофига всего там. Для чего это нужно вообще все? Где почитать можно?

Ответы393091

267 2 мая, 15:16 267 1392980

Суп, реверсач
Тут есть анонс со знанием ARM?
В плане архитектуры, ассемблера и прочего будет полегче, чем х86? В плане порога вхождения

Ответы392993

268 2 мая, 15:52 268 1392993

>>1392980
Ну вот смотри: в ARM вместо одного - два с половиной набора инструкций, всякие DSP-расширения с кучей однообразных арифметических инструкций, выносящие мозг псевдоинструкции (или ебля со сборкой констант по кусочкам, что еще хуже), режимы адресации, которые сложнее, чем в x86, и это все только "обычный" 32-битный код в юзермоде. Плюс AArch64, который по сути отдельная архитектура. Плюс десятки разнообразных, сложных и несовместимых между собой механизмов, про которые нужно знать, если ты соберешься писать под bare metal.

x86 в целом легче, потому что куча софта и информации на любой вкус, потому что локально отлаживаться проще.

269 2 мая, 18:24 269 1393091

>>1392929
Внутреннее устройство Microsoft Windows любого издания.

270 3 мая, 14:16 270 1393411

Гайс, чем Линукс легче Винды в плане системного программирования и архитектуры операционной системы в принципе?

Ответы393418393423393434

271 3 мая, 14:24 271 1393418

>>1393411
Не надо линукс, под него непрофитно писать вирусы.

Ответы393470

272 3 мая, 14:36 272 1393423

>>1393411
> чем Линукс легче Винды
В линуксе компилятор в комплекте. В винде устанавливается за пять минут. Все остальное в винде проще.

273 3 мая, 14:56 273 1393434

>>1393411
Во всем он проще + опенсурс.

Ответы393462393470

sage 274 3 мая, 16:16 274 1393462

>>1393434
Исходники винды тоже частично доступны, и качество кода там не в пример лучше. Плюс есть исходники реактос.

Ответы393607

275 3 мая, 16:43 275 1393470

>>1393418
Щас бы в 2к19 писать вирусы, не будучи при этом госслужащим, которому за это ничего не будет))
>>1393434
Один говорит винда проще, ты говоришь, что Линукс. Аргументы есть?

Ответы393530

276 3 мая, 20:04 276 1393530

>>1393470
Окей, давай пойдем другим путем. Расскажи нам, что ты понимаешь под системным программированием. Ты хочешь писать юзермодные утилиты? Компиляторы? Драйвера? Ты хочешь дергать за ноги малинку из баш-скриптов?
анон, который предлагал винду

Ответы393538

277 3 мая, 20:18 277 1393538

>>1393530
Компиляторы и дрова, допустим.

Ответы393607

278 3 мая, 21:24 278 1393559

Где-нибудь имеются сэмплы вирусов под винду, написанных на современном C++, а не на C++ в стиле C?

Ответы393607

279 3 мая, 23:27 279 1393607

>>1393462
Все равно придется долго сидеть с идой/виндбг. Реактос спасает, да. Майки тоже молодцы, начали пилить сэмплы и доки нормальные.

>>1393538
Все бабки у майков. А чего ты собрался драйвера-то писать если чего полегче ищешь, лол?

>>1393559
Смысл писать малварь на современном С++? Только если это не полноценный модульный бот. Если тебе надо, то возьми и сам перепиши, какой-то глупый реквест. А лучше не пиши, набутылят, будешь потом плакать.

280 4 мая, 00:35 280 1393646

Хз че тут за винду топят аноны, как это дерьмо вообще можно учить?
Обрыганный и кривой реестр, миллиард API функций, половина из которых имеют по несколько лишних пермутаций. Обрыганское, совершенно конченное строение бинарников и обратная совместимость с никому не нужным говном мамонта. Учить Windows Internals == быть мазохистом

Ответы393649393683

281 4 мая, 00:52 281 1393649

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

sage 282 4 мая, 03:53 282 1393683

>>1393646
> миллиард API функций
Вот в линуксе другое дело - чтобы получить карту памяти процесса, нужно всего лишь написать парсер текстового файла. Это гораздо удобнее, чем запоминать всякие там VirtualQuery!

> Обрыганское, совершенно конченное строение бинарников
Вот в линуксе другое дело - в эльфах есть сегменты и секции, на секции лоадеру насрать, но тем не менее большинство файлов их с собой таскают. Эльфы грузит как бы ядро, но это пока эльфы не с динамической линковкой. В этом случае эльфы грузит (и заново парсит, блять) как бы ld, но как бы не всегда. А формат как бы ОТКРЫТЫЙ и документированный, но сплошь и рядом objdump -d показывает хуй, а readelf так и вообще сегфолт.

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

283 4 мая, 04:35 283 1393686

Я иногда в ахуе. Как люди, пишущие про "МИЛЛИАРД ФУНКЦИЙ" смогли хотя бы основные функции/методы стдлибы своего ЯП запомнить?

Ответы393694393698393908

284 4 мая, 06:00 284 1393694

>>1393686
Ну вот, например, я пишу на сишке больше 15 лет, но до сих пор не помню порядок количеств и размеров в calloc() и fread(). И ведь это всего лишь сишка, где в стандартной либе полторы функции.

Ответы393820

285 4 мая, 06:58 285 1393698

>>1393686
А зачем? IDE подскажет. Они без неё даже Hello World без ошибок не напишут.

286 4 мая, 12:13 286 1393752

Щас бы быдлоспоры по поводу ОС начинать :-)
Хочешь заниматься вирусной аналитикой - грызи винду и желательно х86 архитектуру.
Хочешь заниматься встроенными системами, мобайл, интернетом вещей - грызи Линукс и желательно ARM архитектуру вдовесок.
Для каждой ОС есть своя область применения. Винда вечно будет популярна среди обычных юзеров, ибо это GUI oriented ОС, и 90% вирусов будет писаться именно под винду. Линукс же всегда будет доминировать на серверах и в мобилах+имбэддэд.
Точно также и со срачем х86 и ARM. Будем откровенными, ARM никогда не догонит х86 по производительности, а х86 не станет никогда такой же энергоэффективной, как ARM.
Два абсолютно разных, несовместимых друг с другом рынка.

Ответы393950

287 4 мая, 14:59 287 1393820

>>1393694
По-моему базовая либа си последнего стандарта, независимо от компилятора в себе только хедеров штук 20 несёт. А в GCC так вообще сразу ставится glibc с тысячами функций не считая алиасов

Ответы393827

288 4 мая, 15:15 288 1393827

>>1393820
Ну я преувеличил, конечно, но в стандартной либе математика в основном, и еще wide-функции. А "обычных" часто используемых функций не так уж и много. И все это меркнет в сравнении с крестами или какой-нибудь джавой, которую, кажется, никто полностью не знает.

289 4 мая, 17:59 289 1393908

>>1393686
А ты сидел и ботал все это? Ну и лох, иде и гугл все подскажет если надо будет. Гораздо важнее запоминать технологии, как писать код можно, а как нельзя и другие фундаментальные вещи.

Ответы394020

290 4 мая, 18:57 290 1393950

>>1393752
Вирусный аналитик должен знать и то и другое. Сидя на одной ОС далеко не уедешь.

291 4 мая, 19:46 291 1393989

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

Ответы394307394509

292 4 мая, 20:02 292 1394002

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

https://www.oreans.com/codevirtualizer.php

Ответы394010

293 4 мая, 20:10 293 1394010

>>1394002
Где почитать не знаю, погугли llvm.

294 4 мая, 20:29 294 1394020

>>1393908
>гораздо важнее
Разве что если ты джун-макака в ООО "Вазгенян Мессенджер" и не хочешь получить пизды от амбициозного тимлидера Заура Камазовича.
Только, в таком случае непонятно что ты забыл а этом треде

Ответы394024

295 4 мая, 20:37 295 1394024

>>1394020
С++ уже наизусть весь выучил? Несешь хуйню. Я никогда в жизни не учил питон, яву и шарп, но если что-то нужно написать на этих яп, то беру и пишу без задней мысли с помощью доков. Зачем мне учить все это объясни пожалуйста. Еще раз повторяю, гораздо важнее ботать технологии, а не сам яп.

Ответы394036

296 4 мая, 20:49 296 1394036

>>1394024
А потом
>Сап двач чё за хуйня с этой виндой тупой блин нихуя не понимаю почему мой 2 мегабайтный софт крашит систему

Ответы394087

269 Кб, 1009x1200
297 4 мая, 21:29 297 1394066

Сап, низкоуровневые. Есть ли какая-то разница в int 20h и 4Ch функции int 21h? По описанию они одинаковые, вроде, есть причины использовать какой-то определенный выход из программы?

Ответы394307

298 4 мая, 21:57 298 1394087

>>1394036
Сам себе противоречишь.

299 4 мая, 23:44 299 1394211

Знающие, подскажите. Хочу что бы при запуске мой комп начал выполнять инструкции с флешки и нарисовал что то на экране. Все что я нахожу под древние архитектуры, а хочется по x64

Ответы394299394307

300 5 мая, 01:56 300 1394299

>>1394211
Гугли rubber duck usb.

Ответы394363

sage 301 5 мая, 02:11 301 1394307

>>1393989
Какой толк с дампа, если код виртуализован? Да хотя бы если он просто расшифровывается перед выполнением и шифруется после? Ты должен предполагать, что виртуальное адресное пространство и системные вызовы полностью под контролем реверсера, а всякую антиотладку прикручивать лишь для того, чтобы киддисам не скучно было.

>>1394066
Да, есть разница. Для int 20h CS должен указывать на PSP, а еще ты не можешь вернуть статус в ОС.

>>1394211
> хочется по x64
LMGTFY: https://wiki.osdev.org/Entering_Long_Mode_Directly
Удачи с рисованием на экране без прерываний, в защищенном режиме и без малейшего понимания основ.

Ответы394315394363

302 5 мая, 02:36 302 1394311

>>1390255
Спасибо. В визуал студио по аналогии можно такое линкером наколдовать наверное. Есть умельцы итт?

Еще интересует сборка TLS без использования CRT, такое возможно вообще?

Ответы394696

303 5 мая, 02:54 303 1394315

>>1394307
Думаю ты прав. Можешь посоветовать что в приоритете, на что в первую очередь стоит обратить внимание? Виртуализация? На данный момент имею:
Обычный pe-лодырь, как вот тут: https://kaimi.io/2012/09/pe-packer-step-by-step-1/
Антиотладочные трюки из книги The_Ultimate_Anti-Reversing_Reference 2011 года. Не знаю зачем тратил на это время, абсолютно все обходится плагином Scylla Hide. И парочку трюков с гитхабов/блогов.
Убрал все лишние зависимости, все возможные вызовы апи заменил сискалами. Что дальше делать не знаю.

Ответы394445394696

304 5 мая, 09:22 304 1394363

>>1394299
>>1394307
Спасибо

305 5 мая, 13:31 305 1394445

>>1394315
>Думаю ты прав. Можешь посоветовать что в приоритете, на что в первую очередь стоит обратить внимание? Виртуализация?
Накидайте мануалов по виртуализации кода. Я написал простую VM и ассемблер нескольких инструкций для нее, но дальше не знаю, что делать. Хочу запилить йоба-криптор.

Ответы394696

306 5 мая, 16:02 306 1394509

>>1393989
>Но как вообще можно предотвратить дамп?
Рискну предположить, что нужно пидорасить хэдеры и код распаковщика/декриптора перез передачей управления защищаемой программе. Естессно, это можно зареверсить и дампнуть в момент, когда образ загружен, но хэдеры еще не пидорнуты. Тут в бой вступает антиотладка, обфускация и тд

Ответы394696

307 5 мая, 16:59 307 1394539

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

308 5 мая, 18:32 308 1394577

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

__declspec(naked) void Shellcode()
{
__asm
{
pushad
call DeltaOffset
DeltaOffset:
pop ebp
sub ebp, offset DeltaOffset
lea eax, [ebp + dllPath]
push eax
mov eax, 0xEEEEEEEE
call eax
popad
push 0xEEEEEEEE
retn

dllPath:
__emit('C')
__emit(':')
__emit('\\')
__emit('\\')

}
}

308 5 мая, 18:32 308 1394577

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

__declspec(naked) void Shellcode()
{
__asm
{
pushad
call DeltaOffset
DeltaOffset:
pop ebp
sub ebp, offset DeltaOffset
lea eax, [ebp + dllPath]
push eax
mov eax, 0xEEEEEEEE
call eax
popad
push 0xEEEEEEEE
retn

dllPath:
__emit('C')
__emit(':')
__emit('\\')
__emit('\\')

}
}

Показать весь текст
Ответы394584394653394696

309 5 мая, 18:39 309 1394584

>>1394577
Попробую сделать макрос #define b(byte) __asm __emit
Не знаю, будет ли работать вложенная инструкция __asm внутри другого блока __asm

310 5 мая, 19:19 310 1394602

Как обрабатывать ошибки при заражении файла? В своем инфекторе для удобства я создал структуру:

struct FileInfo
{
....HANDLE hFile;
....HANDLE hMapping;
....LPBYTE hView;
....DWORD dwFileSize;
};

Функция открытия файла возвращает эту структуру. Если hFile == INVALID_HANDLE_VALUE, бросать исключение или возвращать пустую структуру?

Ответы394623394653394696

311 5 мая, 20:17 311 1394623

>>1394602
Поделитесь своими вкусами и мнениями об исключениях в лоу-лвл коденке. Нужны ли они или лучше писать goto cleanup как писали деды?

Ответы394653394696

312 5 мая, 22:25 312 1394653

>>1394602
>заражении файла
Ты в нулевых застрял?

>бросать исключение или возвращать пустую структуру
Возвращать NULL.

>>1394623
Как эти вещи вообще связаны? Исключения нужны, без них никак.

>>1394577
Ты что делаешь вообще? Уверен что хочешь писать путь как C:\\ ? Я бы не стал.

Ответы394696

23,4 Мб, mp4,
1280x720, 1:18
313 5 мая, 23:49 313 1394675

Я пока тут самый крутой
https://www.youtube.com/watch?v=tGFOvuOxwuU
Написал крутую прогу, которая сишнику даже не приснится.

Ответы394681

314 6 мая, 00:21 314 1394681

>>1394675
Подтерся твоей прогой и пошел спать, завтра продолжать строить реальные решения для бизнеса, чем заниматься ассемблированием своего очка.

Ответы394692394957

512x512
315 6 мая, 01:26 315 1394692

>>1394681
>реальные решения для бизнеса
>asm thread
Даа...

sage 316 6 мая, 01:51 316 1394696

>>1394311
> В визуал студио по аналогии можно такое линкером наколдовать наверное
Сложно. Вероятно, нужно слинковаться с old-style импорт-либой или с либой, включающей в себя old-style импорт. Других идей у меня нет.

> TLS без использования CRT, такое возможно вообще?
Да, гугли магический символ __tls_used.

>>1394315
>>1394445
Никогда не писал протекторы, но как бы бери llvm ir, или бери capstone и дизассемблируй, превращай инструкции в инструкции своей вм, все в твоих руках. Алсо, погугли мануалы и сдк коммерческих протекторов. Например, как там вызовами функций протектора "размечается" защищаемая функция.

>>1394509
> пидорасить хэдеры
Любые хедеры можно пересоздать с нуля. Например, распакованный регион адресного пространства сдампить одним куском и сделать одной секцией. Да и много ты не напортишь. Чтобы системный лоадер работал, экспорты должны быть на месте, чтобы ресурсные функции работали, ресурсы должны быть на месте, и так далее.

>>1394577
> во встроенном ассемблере
Нинужно, ниподдерживается, делай отдельный асм-файл.

>>1394602
> ....HANDLE hFile;
> ....HANDLE hMapping;
Нинужно. Можно закрывать оба сразу же, как только создал вью.

> заражении файла
Репорт за малварь.

>>1394623
Да, ничего плохого в goto в данном случае нет.

>>1394653
> Исключения нужны, без них никак
Как это никак? setjmp лол.

sage 316 6 мая, 01:51 316 1394696

>>1394311
> В визуал студио по аналогии можно такое линкером наколдовать наверное
Сложно. Вероятно, нужно слинковаться с old-style импорт-либой или с либой, включающей в себя old-style импорт. Других идей у меня нет.

> TLS без использования CRT, такое возможно вообще?
Да, гугли магический символ __tls_used.

>>1394315
>>1394445
Никогда не писал протекторы, но как бы бери llvm ir, или бери capstone и дизассемблируй, превращай инструкции в инструкции своей вм, все в твоих руках. Алсо, погугли мануалы и сдк коммерческих протекторов. Например, как там вызовами функций протектора "размечается" защищаемая функция.

>>1394509
> пидорасить хэдеры
Любые хедеры можно пересоздать с нуля. Например, распакованный регион адресного пространства сдампить одним куском и сделать одной секцией. Да и много ты не напортишь. Чтобы системный лоадер работал, экспорты должны быть на месте, чтобы ресурсные функции работали, ресурсы должны быть на месте, и так далее.

>>1394577
> во встроенном ассемблере
Нинужно, ниподдерживается, делай отдельный асм-файл.

>>1394602
> ....HANDLE hFile;
> ....HANDLE hMapping;
Нинужно. Можно закрывать оба сразу же, как только создал вью.

> заражении файла
Репорт за малварь.

>>1394623
Да, ничего плохого в goto в данном случае нет.

>>1394653
> Исключения нужны, без них никак
Как это никак? setjmp лол.

Показать весь текст
Ответы394828

317 6 мая, 17:54 317 1394828

>>1394696
>Любые хедеры можно пересоздать с нуля.
А если пидорасить ОЕР еще при упаковке и восстанавливать в TLS коллбэке и потом еще пидорасить CRT startup в отдельном треде после запуска?
>Чтобы системный лоадер работал, экспорты должны быть на месте, чтобы ресурсные функции работали, ресурсы должны быть на месте, и так далее.
Так речь же идет об упаковщике, как я понял. Распаковщик берет на себя задачи системного лоадера же. Он же может и пидорасить что нибудь после того, как отработает, не?

Ответы394830394847

318 6 мая, 17:55 318 1394830

>>1394828
TLS коллбэки палятся антивирусами.

Ответы394831394889

319 6 мая, 17:57 319 1394831

>>1394830
Ну речь же о протекторе, в продакшне то софтина может и подписываться будет.

sage 320 6 мая, 19:14 320 1394847

>>1394828
> Он же может и пидорасить что нибудь после того, как отработает, не?
Разве что импорты, но (в простом варианте) IAT все равно останется, и останется одним куском, любой дампер импорты восстановит. Экспорты окончательно ломать нельзя: другая длл сделает GetProcAddress(GetModuleHandle("твоя_dll_или_exe"), "func"), а экспорты распидорашены. Ресурсы ломать нельзя: ты сам делаешь DialogBoxParam, а ресурсы распидорашены. Это все решаемо, конечно.

> CRT startup
По-моему, Themida раньше так делала. Да и вообще, можно просто взять у нее чеклист: https://www.oreans.com/winlicense_features.php

Ответы394889

321 6 мая, 21:11 321 1394889

>>1394847
Можно хоть весь хэдер затереть, если он не будет использоваться, сохранять его в каком-нибудь месте и восстанавливать по-надобности.

>>1394830
Что за бред? Секция TLS ни о чем не говорит, это стандартная фича винды, ею пользуются почти все продвинутые десктоп приложения.

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

574 Кб, 477x630
322 7 мая, 00:37 322 1394956

Аноны, книга вышла пикрилейтед. Кто-нибудь знаком с творчеством сей авторов? Стоит брать, как считаете?

Ответы402464402465

323 7 мая, 00:37 323 1394957

>>1394681
Ой блять, реальное решение для бизнеса у него, у меня вот сейчас реально реальное решение для бизнеса. Высокоуровневые просто обосрутся от такой задачи, она простая но они обосрутся. А если не обосрутся, то всё будет дико тормозить.
Но мой пост был не о этом. А о том что ассемблер нужно !обуздать!. Ассемблер не хочет чтобы его изучали, он хочет работать.

Ответы394982

324 7 мая, 01:52 324 1394982

>>1394957
В результате моих действий, в конце-концов, пострадают плохие люди, плохие иженеры(и не иженеры вовсе). Которые сейчас потирают свои грязные ручёнки в ожидании большого(огромного) куша от моей конторы, но скоро им прийдёт сообщение: в ваших услугах не нуждаемся. Ниже я опишу что такое плохой инженер.
Плохой инженер не делает технику, не ремонтирует технику. Плохой инженер занижает цену на ремонт, потому что он, сука хитрая, просчитал что ему выгоднее из 10 аппаратов сделать 3 с очень лёгкой поломкой, а к остальным найти отмазку вроде Ремонту не подлежит.
СУКА, КАКЖЕ Я НЕНАВИЖУ ЭТИХ ПИДАРЮГ.
И сейчас эти пидары потюрают свои ручёнки, ага блять.. нашли спасательную ниточку в период кризиса, который они же и создали. Соснут хуйца, нехуй было меня злить.

Ответы394991

325 7 мая, 03:42 325 1394991

>>1394982
Ахаха, всегда знал что реверсачеры поехавшие.

>Плохой инженер занижает цену на ремонт
Но вот тут согласен.

76 Кб, 666x227
326 7 мая, 18:36 326 1395332

Как это читать/понимать? Какие знания нужны, подскажите люди добрые

Ответы395351

327 7 мая, 19:13 327 1395351

>>1395332
Знание PE формата. Читай "Записки исследователя компьютерных вирусов" Криса

Ответы395402395440

sage 328 7 мая, 21:00 328 1395402

>>1395351
> Знание PE формата. Читай "Записки
Ты, видимо, не читал. Это .com.

329 7 мая, 21:52 329 1395421

Сап, байтоебач
Насколько актуальны книги Криса Касперского в 2к19?

Ответы395445395530

330 7 мая, 22:59 330 1395440

>>1395351
Спасибо аноныч

sage 331 7 мая, 23:10 331 1395445

>>1395421
Найди что-нибудь посовременнее. Книги Криса - классика, но только потому что в те времена другого не было. Эти книги состоят из ошибок, петросянства и базовой информации, в которой автор сам поверхностно разобрался во время написания книги. Читать Криса стоит, надеяться что-то понять, читая только лишь Криса - глупо.

332 7 мая, 23:37 332 1395454

Аноны, а почему в треде нет движухи по поводу ARM и реверсинга мобильных приложух/мобильных малварей и встраиваемых систем с выходом в тырнет? Годная тема же.

Ответы395483

sage 333 8 мая, 01:30 333 1395483

>>1395454
В треде вообще движухи нет. Спрашивай свои ответы, обсудим.

Ответы395494

334 8 мая, 01:52 334 1395494

>>1395483
В общем, недавно понял, что я не люблю винду, а люблю линукс, плюс узрел ARM асм краем глаза и он мне понравился. Подумываю вкатиться в это дело как следует.
Хотел спросить знает ли кто-то какие-то хорошие источники почитать/посмотреть. На инглише или русском, желательно офк на инглише. Кроме Linux internals, это и ежу понятно.
В общем, знатоки мобайл секьюрити и имбэдэда, если таковые имеются, закидайте меня годнотой плиз.

Ответы395589

335 8 мая, 03:16 335 1395530

>>1395421
Устарели уже как лет 5 если не больше. Но все о чем он писал, знать необходимо.

336 8 мая, 10:48 336 1395588

Как пользоваться сэмплами на арм асме из книги Юричева? Чем компилить сорцы под виндой?

Ответы395590

337 8 мая, 10:58 337 1395589

>>1395494
>В общем, недавно понял, что я не люблю винду, а люблю линукс, плюс узрел ARM асм краем глаза и он мне понравился. Подумываю вкатиться в это дело как следует.
>Хотел спросить знает ли кто-то какие-то хорошие источники почитать/посмотреть. На инглише или русском, желательно офк на инглише. Кроме Linux internals, это и ежу понятно.
>В общем, знатоки мобайл секьюрити и имбэдэда, если таковые имеются, закидайте меня годнотой плиз.

Проблема арма в том что он наглухо проприетарно огорожен и в большинстве своих реализаций, из исключений разве что школомалина да микроконтроллеры на Cortex M. Кроме того арм очень многое не прощает в многопоточности что прокатывает на шинтеле по причине отсутсвия инвалидации кеша по умолчанию. SIMD там по прежнему с заебами "перед использованием включить те и те флаги и не забыть сохранить" аля MMX/3DNow.

Ответы395776

338 8 мая, 11:01 338 1395590

>>1395588
> Как пользоваться сэмплами на арм асме из книги Юричева? Чем компилить сорцы под виндой?

https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads

Ответы395591

339 8 мая, 11:02 339 1395591

>>1395590

https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads

sage 340 8 мая, 17:54 340 1395776

>>1395589
> Проблема арма в том что он наглухо проприетарно огорожен
Это не более-менее решаемая проблема. Чаще всего можно нарыть мануалы, а то и целые сдк у китайцев. Часто производители SoC закупают IP у одного и того же разработчика (тот же Synopsys DesignWare например), и поэтому можно использовать чужие мануалы, ну и в крайнем случае, можно худо-бедно отреверсить интересующие вещи.

341 9 мая, 14:05 341 1396355

Поясните пж, как вычисляется псевдокодом иды глобальная переменная класса относительно GOT (Global Offset Table). Xrefs не видит, а в псевдокоде есть. В процесс включены операции со Stack Pointer'ом вида: LDR R12, [SP, #0x1A4+var_190]. Научите считать эту дичь.

Ответы396662

sage 342 10 мая, 02:15 342 1396662

>>1396355
Сколько-нибудь полный пример тащи.

Ответы396674

343 10 мая, 03:25 343 1396674

>>1396662
https://ideone.com/nGn0dH
Как-то так. Нужно еще что-то добавить?

Ответы396683

sage 344 10 мая, 05:23 344 1396683

>>1396674
Ну вот смотри. Вся адресация очень простая: в GOT при загрузке кладутся правильные (абсолютные) адреса всякой хуйни, ты знаешь офсет GOT относительно своего кода (при линковке впатчивается линкером), но ты не знаешь, куда именно загрузили твой код. И ты идешь с конца: читаешь из PC адрес кода, вычисляешь относительно этого адреса адрес GOT, читаешь из нужного элемента GOT абсолютный адрес данных, работаешь с этими данными по этому адресу.

По 004D9E14 вычисляется абсолютный адрес GOT: PC + офсет. Не забывай, что инструкции, читающие PC, получают не адрес текущей инструкции, а адрес текущей инструкции + 8, потому что конвейер, потому что ARM. Т.е., чтобы посчитать адрес GOT относительно PC, наш офсет должен быть равен $_GLOBAL_OFFSET_TABLE_ - (0x4D9E14 + 8), мы его берем из R8, а положили его туда по по 004D9E04 (сравни - офсет правильный). В результате после выполнения R8 = PC + R8, в R8 у тебя адрес GOT.

Дальше по 004D9E10 в R3 грузится смещение нужного элемента относительно начала GOT, в котором IDA облажалась (как обычно). Тыкни H по этому литералу, чтобы увидеть просто число, потом тыкни Ctrl+R по нему же (если ничего не произойдет - сходи в конец функции и поищи этот литерал там). В диалоге Reference information пересчитай адрес относительно GOT: type=32-bit full offset, base address = $_GLOBAL_OFFSET_TABLE_ (или адрес GOT числом напиши), галки снять, target address = 0xFFFFFFFF. После этого во втором операнде LDR ты должен заметить правильное имя переменной (имя_ptr). Если видишь что-то типа "dword_abcd - $_GLOBAL_OFFSET_TABLE_" или "off_abcd - $_GLOBAL_OFFSET_TABLE_ " - Enter по имени, и переименовываешь вот это говно_abcd в имя_ptr, т.е., чтобы оно выглядело как имя_ptr dcd имя.

Ну и дальше. По 004D9E28 R3 (офсет в GOT) сохраняется на стеке (компилятор - говно). Дальше по 004D9E7C он обратно читается в R12. Т.е., в R8 GOT, в R12 офсет внутрь GOT, значит по 004D9E90 в R10 из GOT (R8 + R12) читается адрес переменной. Ну а следующие две инструкции пишут по этому адресу и еще рядом. Ну и раз это называется screen size, то очевидно это структура из width и height, тыкаешь Enter на k_screenSize, Alt+Q, все дела.

sage 344 10 мая, 05:23 344 1396683

>>1396674
Ну вот смотри. Вся адресация очень простая: в GOT при загрузке кладутся правильные (абсолютные) адреса всякой хуйни, ты знаешь офсет GOT относительно своего кода (при линковке впатчивается линкером), но ты не знаешь, куда именно загрузили твой код. И ты идешь с конца: читаешь из PC адрес кода, вычисляешь относительно этого адреса адрес GOT, читаешь из нужного элемента GOT абсолютный адрес данных, работаешь с этими данными по этому адресу.

По 004D9E14 вычисляется абсолютный адрес GOT: PC + офсет. Не забывай, что инструкции, читающие PC, получают не адрес текущей инструкции, а адрес текущей инструкции + 8, потому что конвейер, потому что ARM. Т.е., чтобы посчитать адрес GOT относительно PC, наш офсет должен быть равен $_GLOBAL_OFFSET_TABLE_ - (0x4D9E14 + 8), мы его берем из R8, а положили его туда по по 004D9E04 (сравни - офсет правильный). В результате после выполнения R8 = PC + R8, в R8 у тебя адрес GOT.

Дальше по 004D9E10 в R3 грузится смещение нужного элемента относительно начала GOT, в котором IDA облажалась (как обычно). Тыкни H по этому литералу, чтобы увидеть просто число, потом тыкни Ctrl+R по нему же (если ничего не произойдет - сходи в конец функции и поищи этот литерал там). В диалоге Reference information пересчитай адрес относительно GOT: type=32-bit full offset, base address = $_GLOBAL_OFFSET_TABLE_ (или адрес GOT числом напиши), галки снять, target address = 0xFFFFFFFF. После этого во втором операнде LDR ты должен заметить правильное имя переменной (имя_ptr). Если видишь что-то типа "dword_abcd - $_GLOBAL_OFFSET_TABLE_" или "off_abcd - $_GLOBAL_OFFSET_TABLE_ " - Enter по имени, и переименовываешь вот это говно_abcd в имя_ptr, т.е., чтобы оно выглядело как имя_ptr dcd имя.

Ну и дальше. По 004D9E28 R3 (офсет в GOT) сохраняется на стеке (компилятор - говно). Дальше по 004D9E7C он обратно читается в R12. Т.е., в R8 GOT, в R12 офсет внутрь GOT, значит по 004D9E90 в R10 из GOT (R8 + R12) читается адрес переменной. Ну а следующие две инструкции пишут по этому адресу и еще рядом. Ну и раз это называется screen size, то очевидно это структура из width и height, тыкаешь Enter на k_screenSize, Alt+Q, все дела.

Показать весь текст
Ответы396795

345 10 мая, 12:39 345 1396787

Хочу написать свой дизассемблер по статье https://habr.com/ru/post/128042/ и интел мануалу. Посоветуйте простые реализации дизасма, чтобы можно было изучать теорию и смотреть, как дизассемблирование реализуется на практике. Я нашел крутые вещи типа VirXdasm (дизассемблер, который весит 333 байта), но там очень хардкорные алгосы.

Ответы396790396917397377

346 10 мая, 12:44 346 1396790

>>1396787
Крис Касперски тоже дает много теории, а практики у него нет. Он не показывает, как строятся таблицы, как происходит поиск в них и как обрабатываются составляющие части инструкции. Но излагает он более понятно.

347 10 мая, 12:48 347 1396795

>>1396683
Черт, гениально. После настройки в Reference information пойнтер сам обозначился именем, гайд однозначно золотой. А про width и height мне известно. Спасибо за столь развернутый ответ, однозначно сохраню его.

sage 348 10 мая, 14:39 348 1396917

>>1396787
Ну короч берешь Intel SDM, там в конце 2 тома таблицы есть. Ты их копипастишь, разбираешь условные обозначения, разбираешь формат инструкций (в начале 2 тома) - получаешь дизассемблер. На недовасме поищи "Заклинание кода".

Ответы396946

349 10 мая, 15:02 349 1396946

>>1396917
Я хочу научиться писать оптимизированные алгоритмы, а не те, которые писал Зомби при помощи огромного switch case http://www.rohitab.com/discuss/topic/36031-defs-lde/

Ответы396948397277

350 10 мая, 15:04 350 1396948

>>1396946
>Заклинание кода

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

Хорошее начало дизассемблирования, лол

Ответы396976

sage 351 10 мая, 15:30 351 1396976

>>1396948
> Хорошее начало дизассемблирования, лол
Ну это ж аквила, чего ты хочешь.

Ответы396982

352 10 мая, 15:41 352 1396982

>>1396976
Нормально. Я прям чувствую его фанатизм. Не в пример двачерам.

353 10 мая, 23:57 353 1397277

>>1396946
Краткий гайд.

1. Делаешь запрос в гугле а не на дваче
fastest disassembler library
2. git clone...
3. Копаешься в тысячах строк кода сколько тебе угодно
4. Понимаешь, что лучше ничего придумать нельзя, одному уж точно
5. Пользуешься готовыми решениями и не выебываешься.

Ответы397302

sage 354 11 мая, 00:38 354 1397302

>>1397277
> Пользуешься готовыми решениями
Капстоун нельзя назвать быстрым и тем более компактным решением. Медиана не поддерживается. Что-то другое подскажешь?

> лучше ничего придумать нельзя
Расскажи это авторам вирусов из 90х, у которых дизассемблер длин с таблицами занимал полкило.

Ответы398265

355 11 мая, 07:53 355 1397377

>>1396787
загляни в гит эмулятора https://github.com/Ryujinx/Ryujinx красиво и просто написан на шарпе. сделаны таблицы для опкодов и т.д.

356 12 мая, 10:47 356 1398224

>>1378386
>Крис дважды по заданию шерифа участвовал в платных боевых операциях по задержанию бандитских группировок. В первой операции четверо ребят вместе с ним, не служивших в армии, брали банду из шести вооруженных человек. Крису пришлось первый раз в жизни, по необходимости, стрелять в человека. Все шестеро были задержаны.
Истории уровня /b какие-то..
Хотя я конечно могу и ошибаться.

357 12 мая, 13:14 357 1398265

>>1397302
Вот этот например https://github.com/zyantific/zydis

358 13 мая, 14:55 358 1399038

Меня одного пугает Китай? Китайцы спокойно постят в своих блогах о том как пилят малварь, обходят разные продукты безопасности, буткиты, руткиты, анальные зонды. И их даже никто за это не бутылит! Информация размещена в свободном доступе, на всяких
новостных порталах аля наш XAKEP. Что за пиздец? У них такое законом не запрещено?

Ответы399048399083399295

359 13 мая, 15:05 359 1399048

>>1399038
разрабатывать малварь не запрещено законом, запрещено распространять с целью порчи/кражи данных.

360 13 мая, 16:39 360 1399083

>>1399038
можно линки на блоги?

361 13 мая, 21:47 361 1399295

>>1399038
>У них такое законом не запрещено?
Так они же буржуйские программы вскрывают. За вскрытие программы из КНР их будет ждать что похуже побольше, чем бутылка.

362 14 мая, 07:37 362 1399497

Сап,реверсач
есть сэмл app. any.run/tasks/d55 93b4d -1911- 4d4f-b60d-6eff182efd9b уберите пробелы
Накрыт KoiVM+confuser
Чем вскрывать и как?никаких идей
На tuts4you 1.5 упоминания и то вскользь

Ответы399663

363 14 мая, 13:17 363 1399663

>>1399497
dnspy, ded4dot, любой анпакер для кофусера с гитхаба.
В чем проблема-то? Ты дебагером пользоваться умеешь?

Ответы399732

364 14 мая, 15:30 364 1399732

>>1399663
де4дот вообще говно ебанное и виртуализацию не осилит
в днспае его нормально не выходит продебажить

Ответы399793

365 14 мая, 16:54 365 1399793

>>1399732
Если ты не можешь .net-помойку дебажить, то у меня для тебя плохие новости. Кроме того, зачем тебе девиртуализировать приложение? У тебя задача какая?

Ответы399863400090

366 14 мая, 18:11 366 1399847

Чуваки, начал читать книгу Ирвина, в ней используют masm, а у меня линукс. Как быть, что посоветуете? Может выкрутиться как то можно, чтобы запустить masm на линуксе?

Книга нравится, кроме ассемблера рассказывает подробно про процессор. Поэтому другую читать нехочется. Остальные мне показались слабенькими. Может я не прав и есть крутые книги?

Ответы399853399949403502

367 14 мая, 18:26 367 1399853

>>1399847
https://board.flatassembler.net/topic.php?t=588

Ответы399859

368 14 мая, 18:37 368 1399859

>>1399853
Спасибо, но это виндовая утилита, а у меня линукс. Там сплошные батники и экзешники.

369 14 мая, 18:41 369 1399863

>>1399793
вскрыть и получить исходники
>то у меня для тебя плохие новости
не злись,я совсем новичек:3

Ответы400090

370 14 мая, 18:57 370 1399874

Реверсач, а нахой юзать бесплатную кастрированную айду, если есть гуй Каттер от радар2 с таким же функционалом, только бесплатный и поддерживающий очень много архитектур?

Ответы399938

371 14 мая, 20:09 371 1399938

>>1399874
>нахой юзать бесплатную кастрированную айду
Действительно, нахой? Есть же торрент.
Кстати, пароль от архива с 7.2 ещё не слили?
>с таким же функционалом
В голосину.

Ответы399949

372 14 мая, 20:26 372 1399949

>>1399847
Зачем тебе запускать masm на линуксе? Возьми fasm или nasm, почитай про различия в синтаксисе.

>>1399938
> В голосину.
Присоединяюсь.

Ответы399963399964

373 14 мая, 20:40 373 1399963

>>1399949
>Зачем тебе запускать masm на линуксе?
Хрен его знает. В книге винда и masm.

374 14 мая, 20:40 374 1399964

>>1399949
>fasm или nasm
Что предпочтительней?

Ответы399980

375 14 мая, 20:57 375 1399980

>>1399964
fasm мощнее, nasm больше подходит для линукса, поддерживает привычную отладочную информацию без костылей.

Ответы399986

376 14 мая, 21:01 376 1399986

>>1399980
спасибо

377 14 мая, 23:13 377 1400090

>>1399793
>>1399863
хотя даже исходники не нужны,нужно найти порядка 5 разных стрингов и заменить их значения на свои нужные
в любом случае надо как-то снять этот KoiVM

378 15 мая, 15:21 378 1400505

Пытаюсь вкатиться в ROP. Как можно автоматизировать поиск гаджетов?

Ответы400589

379 15 мая, 16:25 379 1400589

>>1400505
https://github.com/JonathanSalwan/ROPgadget
А вообще под любой дебагер есть плагины для ROP.

Ответы400758

380 15 мая, 16:27 380 1400592

Вечер в хату!
Прохожу тут курсик по radare2 (да, я вижу по шапке, что он тут не в почёте, но мой вопрос не совсем по нему) - https://github.com/s4n7h0/Practical-Reverse-Engineering-using-Radare2
Там всё на элементарном уровне освоения команд, но вот с пятой лабой янихуянепонел. Задание "найти шелкод и понять что он делает". Ну символ obj.shellcode я вижу. Опкоды по нему парсятся в какое-то говно непонятное - https://pastebin.com/cZxZtJUt
ЧЯДНТ?

Ответы400603

381 15 мая, 16:39 381 1400603

>>1400592
>.string "^1\xc9\xb1'"

5E pop si
31C9 xor cx,cx
B1XX mov cl,XX

Ответы400627

382 15 мая, 16:55 382 1400627

>>1400603
Спасибо!
сссука всё-таки дело в радаре оказалось...
"e bin.strings=false" сделал, конечно строковые константы при этом отвалились. Как реинтерпретировать конкретные байты так и не ясно.

Ответы400829

383 15 мая, 20:12 383 1400758

>>1400589
Мне на С/C++ либа нужна. Есть годные?

sage 384 15 мая, 22:17 384 1400829

>>1400627
Берешь иду, видишь свою "строку", выбираешь ее мышью или стрелками, нажимаешь на клавиатуре C, профит. Берешь r2, нажимаешь кучу кнопочек, чтобы попасть в visual mode, куда-то все же попадаешь, теряешься в набегающих домиках и гей-параде из разноцветного ASCII-арта и цифр, но героически нажимаешь D C, тоже профит (или нет?).

Ответы400852

385 15 мая, 22:51 385 1400852

>>1400829
Да, действительно. Хотя ни в одном cheat-sheet или quick start это не упоминалось, да и не трогал я этот visual mode.
За пол дня конечно хер столько команд и опций запомнить.

386 18 мая, 14:13 386 1402447

В Си треде не отвечают. Продублирую сюда.

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

Ответы404267

387 18 мая, 14:43 387 1402464

>>1394956
Матросов годно шарит, он Intel BootGuard сломал пару лет назад. За остальных не скажу.

388 18 мая, 14:45 388 1402465

>>1394956
Где можно купить?

Ответы402491

389 18 мая, 15:45 389 1402491

>>1402465
На амазоне, например. Или https://dropmefiles.com/zjhT3

Ответы402591402896

390 18 мая, 20:07 390 1402591

>>1402491
Чаю. украл забрал

391 19 мая, 12:04 391 1402896

>>1402491
Спасидо.

Ответы402912

392 19 мая, 12:29 392 1402912

>>1402896
Эсдек плз.

393 19 мая, 19:09 393 1403341

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

Ответы403457

sage 394 19 мая, 21:00 394 1403457

>>1403341
> что почитать
1) Любую книгу по питону.
2) idaapi.py/idc.py/idautils.py
3) Исходники проектов типа flare.
Это просто чтобы научиться писать скрипты хоть как-нибудь. Плюс теория. По теории не подскажу.

395 19 мая, 22:09 395 1403497

Сап, Антош. Хочу инжектить свою DLL во все виндовые процессы уровня пользователя в т.ч. svchost на постоянной основе на этапе их создания. Предусловия - полный физический и административный доступ к машине. ОС - шиндошс 10 х64. Я попробовал appinit_dlls, но оно работает только для того, что грузит user32.dll (очевидно). Как я понял, SSDT и вообще все фишки связанные с ядром соснулей, ибо требуют включения testsign для дров. Вроде есть варианты через колбэки и APC - это то, что мне надо? Где почитать?

Ответы403608

396 19 мая, 22:20 396 1403502

>>1399847
Gas + .intel_syntax noprefix вполне. Впрочем, на вкус и цвет - мне AT&T кажется логичней.

Ответы403538

sage 397 19 мая, 23:27 397 1403538

>>1403502
> AT&T кажется логичней
А тебе не кажется нелогичным, что под все остальные архитектуры, кроме интел, у gas сразу же, по умолчанию нормальный порядок операндов?

398 20 мая, 03:04 398 1403608

>>1403497
Судя по твоему набору слов, ты понятия не имеешь что делаешь. Учи архитектуру ОС. Где ты вообще этот баянистый способ реализации руткита вычитал? Ему больше 20 лет.

Ответы403700

399 20 мая, 12:32 399 1403700

>>1403608
> Судя по твоему набору слов, ты понятия не имеешь что делаешь.
Как минимум общее представление имею, просто с конкретно такой задачей впервые столкнулся.
> Учи архитектуру ОС.
Пустые понты кидать не хочу, поэтому скажу, что в целом в курсе, могу не знать каких-то тонких деталей, необходимых для данного случая.
> Где ты вообще этот баянистый способ реализации руткита вычитал? Ему больше 20 лет.
Который именно? В интернете, само собой. Если кинешь ссылку на что-то более актуальное - буду благодарен.

Ответы404241

400 20 мая, 13:35 400 1403748

Как ОС работает с dll/so в винде/линуксе при загрузке в процесс в случае системных либ типа kernel32.dll и пользовательских типа libmylib.so? Она создает копию либы в виртуальном пространстве процесса или создает отдельный процесс под эту либу (какой нибудь dllhost.exe/svchost.exe) и пользовательские процессы просто напрямую смотрят туда? Если два процесса импортируют одну и ту же либу, если один процесс в ней сделает детур на свой код, то повлияет ли это на второй процесс?

Ответы403765404241

401 20 мая, 14:05 401 1403765

>>1403748
> Как ОС работает с dll/so в винде/линуксе при загрузке в процесс в случае системных либ типа kernel32.dll и пользовательских типа libmylib.so? Она создает копию либы в виртуальном пространстве процесса или создает отдельный процесс под эту либу (какой нибудь dllhost.exe/svchost.exe) и пользовательские процессы просто напрямую смотрят туда?
Первое, только не копию, а отображение с коровой (COW). Это если очень по-простому. В линуксе нет "системных" либ, в винде это только ntdll.dll (kernel32.dll нужна только Win32 процессам).
> Если два процесса импортируют одну и ту же либу, если один процесс в ней сделает детур на свой код, то повлияет ли это на второй процесс?
Опять же COW, иначе каждый мамкин хакер загружал бы в память OpenSSL и отключал бы шифрование во всей системе.

Ответы403771404002404241

402 20 мая, 14:21 402 1403771

>>1403765
Прочитал про copy on write. А если у либы есть состояние и она сама в себя пишет при вызове определенной функции, чтобы его изменить. Что произойдет, если процесс А вызовет эту функцию? Изменение состояния либы будет заметно в процессе Б, использующем эту же либу? И еще, если ОС копирует в VM процесса либу во время первой записи, то эта либа как то хостится ОСью? Для этого есть какие нибудь системные процессы, или это где то в кишках ОС зарыто и из пользовательского пространства до туда не добраться?

Ответы403784

403 20 мая, 14:50 403 1403784

>>1403771
С линуксами вроде понял. При загрузке процесса делается мемори мап на исполняемую и readonly секции shared object'а с дальнейшим копированием в VM space процесса при записи благодаря CoW, а writable-секции так и вовсе при запуске копируются в адресное пространство запускаемого процесса если верить гуру с stackoverflow. А что с видновсами? Я в эльфе не шарю, но вот в РЕ знаю, что file alignment и virtual alignment могут быть (и КМК, почти всегда) разные, там так просто файл не замапишь. Что в винде то происходит?

Ответы403832

404 20 мая, 15:52 404 1403832

>>1403784
> Что в винде то происходит?
Да плюс на минус то же самое, с другими названиями и реализациями. В теории и архитектуре ОСей последние лет так 30 если не 50 никаких существенных изменений не происходило, и старый добрый Таненбаум до сих пор прекрасно все описывает. Совершенствуются конкретные механизмы, да - за ними тебе к Руссиновичу и в исходники ReactOS.

7 Кб, 365x147
405 20 мая, 18:45 405 1403916

сап,реверсач
что за протектор для дотнета?NB2.Properties(особо в них не шарю,извините)
в гугле пусто

Ответы404241

406 20 мая, 19:38 406 1403928

Как в айде темную тему поставить?(

Ответы404241

407 20 мая, 22:15 407 1404002

>>1403765
> в винде это только ntdll.dll (kernel32.dll нужна только Win32 процессам).
Кстати ntdll.dll не грузится в пико процессы.

408 21 мая, 14:30 408 1404241

>>1403700
Гугли cплайсинг.

>>1403748
У тебя задача какая? Ты хочешь узнать можно ли похукать все глобально? Можно, но без танцев с бубнами не обойтись.

>>1403765
>только ntdll.dll
Если процесс wow64, то еще 4 либы сверху, насколько я помню.

>>1403928
IDA Skins гугли.

>>1403916
Выглядит как обычный конфусер. Гугли de4dot.

Ответы404251

409 21 мая, 14:52 409 1404251

>>1404241
вроде какой-то кастомный конфузер,после де4дот во всяком случае херня выходит

Ответы404255

410 21 мая, 15:01 410 1404255

>>1404251
А ты думал тебе чистенький сурс вытащат? Нет таких инструментов. Вообще пиздуйте в C# тред со своими кофусерами, заебали срать здесь высокоуровневой парашей.

Ответы404292

411 21 мая, 16:04 411 1404267

>>1402447
Бамп вопросу. Или просто забить на этот 1 мб? У юзверя ведь много ресурсов.

Ответы405255

412 21 мая, 17:59 412 1404292

>>1404255
>пиздуйте в C# тред
там вообще не шарят

Ответы404299

413 21 мая, 18:13 413 1404299

>>1404292
Ну тогда в PHP-тред, там даже кнопку ответа не найдут.

414 23 мая, 05:12 414 1405062

Объясните, пожалуйста, начнающему ассемблерщику мне. Я не понимаю. В Long mode (x86-64) опреранды могут задаваться их линейными адресами (в качестве immediate-аргументов в командах). Но ведь при загрузке требуемые данных (которые мы хотим адресовать) могут быть размещены достаточно произвольно - страница с данными может быть в разных местах памяти. И адрес данных будет меняться от загрузки к загрузке. А значение immediate-аргумента не изменяется. Как же инструкция доберётся до нужных данных? Видимо, я что-то упускаю. Извините, за корявую формулировку.

Ответы405083

415 23 мая, 08:52 415 1405083

>>1405062
Не совсем понял, о чем ты конкретно. Нарисовал бы пример что ли.
> страница с данными может быть в разных местах памяти
Таблица страниц.

> адрес данных будет меняться от загрузки к загрузке
Вместе с адресом кода. RIP-relative адресация, редко (гораздо реже, чем в 32-битном режиме) таблица поправок.

Ответы405152

416 23 мая, 13:27 416 1405146

Говорят, современные компиляторы АСМов сосут, это правда?

Ответы405174405179405366

417 23 мая, 14:01 417 1405152

>>1405083
Ну вот например.

data: dd 123456789h
...
mov rax , [data]

Место данных data в памяти определяется во время загрузки, а immediate-аргумент команды mov ([data] - некоторый адрес) фиксирован (при трансляции, видимо).

Ответы405179

418 23 мая, 15:17 418 1405174

>>1405146
БАМП.

Оптимизация у АСМов сосёт, да?
Понятно.

Ответы405177

419 23 мая, 15:20 419 1405177

>>1405174
Какая оптимизация? Ты уверен, что хорошо понимаешь, как действуеет ассемблер, и для чего он применяется?

Ответы405179405180

420 23 мая, 15:26 420 1405179

>>1405146
Сосут по сравнению с чем? И что в них такого нового появилось за последние 30 лет?

>>1405152
Ну вот, оно сассемблируется с ошибками, потому что ты кладешь дворд в rax, а еще потому что 123456789h не влезает в dd с вычислением адреса относительно адреса следующей инструкции, т.е. будет:
mov rax,[rip+(data-next_instruction)]
next_instruction:
...
data dq 123456789h
Вот если бы у тебя положение секции данных менялось относительно кода, то при загрузке пришлось бы патчить адреса.

>>1405177
У асмов есть оптимизация. Например, можно воткнуть длинный jmp, а можно короткий. Это работает. Остальную оптимизацию делает приставка к клавиатуре.

Ответы405181405205405209

421 23 мая, 15:27 421 1405180

>>1405177
Ну говорят, что компиляторы С/С++ сейчас оптимизированы гораздо лучше АСМовских.

Ответы405182

422 23 мая, 15:28 422 1405181

>>1405179
А есть какой-нибудь кроссплатформенный ассемблер и бесплатный, но чтобы быстро было?

Ответы405182

423 23 мая, 15:29 423 1405182

>>1405180
Говорят, что кур доят. Автоматическая векторизация по-прежнему сосет. Алиасинг в си/си++ по-прежнему создает проблемы. Приставка к клавиатуре по-прежнему рулит. Только она медленная и дорогая, поэтому ей пользуются относительно редко.

>>1405181
nasm/fasm/gas, похуй.

Ответы405200405668

424 23 мая, 15:51 424 1405200

>>1405182
А есть какой-нибудь кроссплатформенный машинный код?
Или кроссплатформенность начинается только с АСМа?

Ответы405232

425 23 мая, 15:57 425 1405205

>>1405179
>относительно адреса следующей инструкции
То есть абсолютных адресов в immediate-аргументах не бывает?

>Вот если бы у тебя положение секции данных менялось относительно кода
А что если они загружаются (или даже транслируются) по отдельности? Что, вообще с раздельной сборкой?

>патчить адреса
Как это делается?

Ответы405248

426 23 мая, 16:03 426 1405209

>>1405179
Кстати адресация в immediate-аргументах в виде (сегментный регистр + immediate-смещение) имеет смысл в Long mode?

Ответы405248

427 23 мая, 16:19 427 1405232

>>1405200
>кроссплатформенный машинный код
Сухая вода? Выбери одно или машинно-специфичный язык (машинный код) или код не зависящий от платформы ('машины').

Ответы405248405294

428 23 мая, 16:32 428 1405248

>>1405205
> То есть абсолютных адресов в immediate-аргументах не бывает?
Ну хватит уже это immediate называть. immediate - это значение, которое ты непосредственно используешь для чего-то, константа, число (в mov eax,1 единица - просто число), поэтому оно immediate и называется. А ты говоришь про офсеты.

Бывают абсолютные адреса. Эффективная адресация осталась, ты можешь не использовать в ней scale/index/base, оставив только 32-битное смещение, тем самым получив абсолютный адрес в пределах первых 4 гб. Алсо, есть mov rax с 64-битным офсетом (да, только для rax).

> А что если они загружаются (или даже транслируются) по отдельности?
Линкер, когда занимается связаванием (link) символов, как раз патчит все ссылки на символ так, как будет в памяти.

> Как это делается?
Ну формируется список адресов (у линкера или если мы про рантайм - то в исполняемый файл кладется) и типов поправок (ну где относительный адрес, где абсолютный, где только кусок какой-нибудь, там дохуя вариантов, особенно для некоторых особо хитровыебанных процессоров). Ну и код (линкер или загрузчик) идет по списку и что-то делает в зависимости от типа. Например, в 32-битном коде для mov eax,[data] линкер положит в инструкцию правильный адрес data, а если у нас дллка виндовая, которая загружена не по своему предпочтительному адресу, то загрузчик прибавит к адресу data внутри инструкции разницу между предпочтительным адресом загрузки дллки и фактическим. Ну это самые простые примеры.

>>1405209
> сегментный регистр +
Для fs/gs сохранилась более-менее, для остальных сегментных регистров база из дескриптора не учитывается и считается равной нулю.

>>1405232
Считать ли x86-код кроссплатформенным, если его раньше всякие трансметы микрокодом выполняли?

Ответы405250405263

429 23 мая, 16:34 429 1405250

>>1405248
> есть mov rax с 64-битным офсетом (да, только для rax)
В смысле, для al/ax/eax/rax, и, конечно же, не только в регистр, но и обратно, из регистра в память.

430 23 мая, 16:41 430 1405255

>>1404267
И ведь никто не помог! Решение: поместить либу в отдельную секцию и пометить ее как сбрасываемую. После инициализации драйвера, загрузчик винды сам её выгрузит.

431 23 мая, 16:52 431 1405263

>>1405248
>Ну хватит уже это immediate называть.
Извините ещё раз за корявость формулировок. Ты прав. Это называется "смещение в команде".

>Линкер, когда занимается связаванием (link) символов, как раз патчит все ссылки на символ так, как будет в памяти.
А если без линкера? Что в случае сборки в бинарный файл?

>Считать ли x86-код кроссплатформенным, если его раньше всякие трансметы микрокодом выполняли?
Думаю, сейчас нет. Машинные инструкции и сейчас в микрокод транслируется процессором. Но ведь программисту микрокоды недоступны. И машинный язык однозначно определён архитектурой ЦП. Нет тут кросплатформенности (в нынешних x86 процессорах).

Ответы405271405296

432 23 мая, 17:04 432 1405271

>>1405263
> А если без линкера? Что в случае сборки в бинарный файл?
Не понял вопроса. Если у тебя ассемблер, нет секций и бинарник на выходе (допустим, fasm и format binary), то ассемблер все равно делает то же самое, что и линкер внутри себя, когда назначает адреса меткам и впатчивает эти адреса в инструкции.

> Но ведь программисту микрокоды недоступны
Это пока процессор не твой собственный. Берешь, значит, много-много баксов и подходящую по размеру FPGA... Хотя вообще-то я пошутил.

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

Ответы405296

433 23 мая, 18:36 433 1405294

>>1405232
>Сухая вода?
https://ru.wikipedia.org/wiki/Novec_1230

Я всё понимаю, но разве нельзя сделать такую штуку, которая будет некоторые кроссплатформенные команды перефигачивать под конкретное железо и ОС?

Полно их.
Только тут разница в низкоуровневом программировании, ниже, чем у АСМа.

Ответы405435

434 23 мая, 18:39 434 1405295

Buf1 db 11
Len1 db ?
Opnd1 db 12 dup( ? )
Buf2 db 11
Len2 db ?
Opnd2 db 12 dup( ? )
Res db 12 dup(' '),'$'

codeseg
startupcode
push DS
pop ES
BEGIN:
;Ввод первого слагаемого
B1:
lea DX, Buf1
mov AH, 0Ah
int 21h
cmp Len1, 0
je B1

Помохите пожалуйста.
Переписываю потихонечку чужой код и не могу понять для чего тут Len1. Точнее я знаю, он туда засунет в последствии кол-во символов в строке.
Но что означает это?
cmp Len1, 0
je B1

Зачем сравнивать Len1 с нулём, и в случае равенства или нуля переходить обратно на начало?
Что это за колдунство?
В лен1 же нихуя нет.
Зачем он сравнивает?

434 23 мая, 18:39 434 1405295

Buf1 db 11
Len1 db ?
Opnd1 db 12 dup( ? )
Buf2 db 11
Len2 db ?
Opnd2 db 12 dup( ? )
Res db 12 dup(' '),'$'

codeseg
startupcode
push DS
pop ES
BEGIN:
;Ввод первого слагаемого
B1:
lea DX, Buf1
mov AH, 0Ah
int 21h
cmp Len1, 0
je B1

Помохите пожалуйста.
Переписываю потихонечку чужой код и не могу понять для чего тут Len1. Точнее я знаю, он туда засунет в последствии кол-во символов в строке.
Но что означает это?
cmp Len1, 0
je B1

Зачем сравнивать Len1 с нулём, и в случае равенства или нуля переходить обратно на начало?
Что это за колдунство?
В лен1 же нихуя нет.
Зачем он сравнивает?

Показать весь текст
Ответы405304

435 23 мая, 18:39 435 1405296

>>1405263
>>1405271
А сейчас на микрокоде писать нельзя проги?

А как обстоит дело и машинными кодами на Видеокартах?
И есть ли под них свой АСМ?

Ответы405304

436 23 мая, 19:02 436 1405300

Как сделать сайт на машинных кодах?

Ответы405302

437 23 мая, 19:06 437 1405302

>>1405300
Без задней мысли, просто берешь и делаешь.

Ответы405303405304

438 23 мая, 19:07 438 1405303

>>1405302
Так покажи примерчик хоть.

Ответы405305

439 23 мая, 19:10 439 1405304

>>1405295
> Зачем он сравнивает?
Ну видимо чтобы запросить ввод повторно, если юзер просто нажал Enter.

>>1405296
> А сейчас на микрокоде писать нельзя проги?
У интела микрокод не документирован, обновления зашифрованы. Максимум, что есть - это статьи про какой-то очень древний AMD, у которого микрокод еще шел без шифрования.

>>1405302
> Так покажи примерчик хоть.
mov ah,09h
imov dx,_text
int 21h
int 20h
_text db 'Content-Type: text/plain',13,10,13,10,'Hello, world!$'

Ответы405312405481

440 23 мая, 19:10 440 1405305

>>1405303
https://habr.com/ru/post/188114/

Ответы405308

441 23 мая, 19:12 441 1405306

А что на видеокарты до сих пор не завезли кроссплатформенный Ассемблер?

У Нвидиа свои языки, у АМД свои.
Модели видях ещё новые нужны для новых языков.
Херня какая-то.

442 23 мая, 19:14 442 1405308

>>1405305
это ассемблер, а не машкод.
И это сервер, а не сайт.

Ответы405309405310

443 23 мая, 19:16 443 1405309

>>1405308
> не машкод
Ну скомпилируй, будет машкод.
> не сайт
Ну вот тебе сайт https://board.asm32.info/

Ответы405335

41 Кб, 600x450
444 23 мая, 19:17 444 1405310

>>1405308

Ответы405332

445 23 мая, 19:20 445 1405312

>>1405304
> Ну видимо чтобы запросить ввод повторно, если юзер просто нажал Enter.
Пасиба. Понял. А если буковку ввести? Он сожрёт и пропустит дальше по коду?

Ответы405324

446 23 мая, 19:32 446 1405324

>>1405312
А если буковку ввести, то во втором байте буфера, т.е., в Len1 уже не будет 0 (а будет 1, например), сравнение не выставит ZF, je не сработает.

447 23 мая, 19:40 447 1405332

>>1405310
ты глупый?

448 23 мая, 19:43 448 1405335

>>1405309
Речь идёт о программировании на машкоде, а не о перегоне в него из других языков, улавливаешь?

Так что твой АСМовский сервак ничем не особо не отличается от сервака на Раби. Только побыстрее работает в десятки раз и всё.

Ответы405423

449 23 мая, 19:53 449 1405342

БАМП!
Для GPU ASM какой есть универсальный?

1,3 Мб, 1920x1036
450 23 мая, 20:09 450 1405350

Бля, не вижу смысла учить ASM из-за такой хуеты с GPU.

Лучше тогда C/C++ взять, а GPU хуярить на универсальном OpenCL.

Ответы405423

451 23 мая, 20:44 451 1405366

>>1405146
Современные писатели на АСМ сосут, это правда.

sage 452 23 мая, 22:11 452 1405423

>>1405335
Нет, не улавливаю. Хочешь - бери таблицу опкодов и пиши, только кроме кучи дополнительной ебли это ничем не будет отличаться от использования ассемблера. Никаких дополнительных преимуществ, ничего такого, что нельзя с точностью до бита воспроизвести из ассемблера.

>>1405350
> не вижу смысла учить ASM
Не учи, разрешаю.

Ответы405450

453 23 мая, 22:27 453 1405429

Господа, нас пытаются тралливалить.

Ответы405438

454 23 мая, 22:50 454 1405435

>>1405294
Стандартная библиотека называется. Ты из какого века вылез-то? У асма никогда не было кроссплатформенности.

Ответы405451

455 23 мая, 22:55 455 1405438

>>1405429
Да это не троллинг. Сюда действительно иногда дебилы первокурсники из C/C++ тредов закатываются и начинают тупить. Тут только ОП-хуй который с сагой пишет всегда адекватный.

Ответы405472405940

456 23 мая, 23:27 456 1405450

>>1405423
Тогда почему сразу С/С++ не взять?
Ебли же меньше, а скорость работы сложных программ уже выше, потому что не будешь вручную оптимизировать каждую строчку на АСМе.

Ответы405472

457 23 мая, 23:28 457 1405451

>>1405435
я читал статьи про кроссасмы всякие.

Ответы405465

458 23 мая, 23:51 458 1405465

>>1405451
Ты кроссассемблирование/кросскомпилляцию с кросплатформенностью (языка машинного) не путаешь?

Ответы405664

sage 459 24 мая, 00:12 459 1405472

>>1405450
> Тогда почему сразу С/С++ не взять?
Я для тебя специально пояснил: между машинным кодом и ассемблером разница - только ебля. Между ассемблером и более высокоуровенвым языком разница в огромном количестве возможностей и полным контролем над кодом. Ну почти. В ассемблерах обычно ты не можешь выбирать из разных вариантов кодирования одной и той же инструкции, но ты всегда можешь написать под это макрос, если это почему-то важно.

> скорость работы сложных программ уже выше
Зависит только от тебя. Не от компилятора, а от тебя. И нет, причина использования высокоуровневых языков - скорость разработки, а не работы. Модификация оптимизированного ассемблерного кода может закончиться переписыванием с нуля.

> почему сразу С/С++ не взять?
Если ты не пишешь какую-нибудь жестокую математику для SIMD, хитровыебанный JIT, низкоуровневые процедуры для своей ОС типа сохранения/восстановления контектста или обработчика прерывания который все равно выполняет только самую грязную работу, а потом вызывает код на Си - без вариантов стоит брать нормальный высокоуровневый язык, а ассемблер использовать там, где он действительно необходим.

>>1405438
> ОП-хуй который с сагой
Я не оп.

Ответы405663

460 24 мая, 00:33 460 1405477

Хочу заняться фазингом. Сейчас у каждой второй десктоп приложухи драйвер под копотом, никто писать их толком не умеет, багоров куча. Подводные?

461 24 мая, 01:28 461 1405481

>>1405304
>У интела микрокод не документирован, обновления зашифрованы
Зашифрованы чем, универсальным интеловским ключом? Почему тогда до сих пор никто не вытащил из кремния этот ключ электронным микроскопом и не выложил в паблик? Я не верю, что там в каждом камне физическая защита уровня смарткарт на всем УУ.

Ответы405485

sage 462 24 мая, 01:53 462 1405485

>>1405481
> Зашифрованы чем, универсальным интеловским ключом
Да, там предполагался 2048-битный RSA. И там несколько блоков под разные семейства с разными ключами:
https://www.dcddcc.com/docs/2014_paper_microcode.pdf
https://www.emsec.ruhr-uni-bochum.de/media/emma/veroeffentlichungen/2017/08/16/usenix17-microcode.pdf

> не вытащил из кремния этот ключ электронным микроскопом и не выложил в паблик
Размер кристалла, техпроцесс. Это тебе не R3051 реверсить.

Ответы405491

463 24 мая, 02:14 463 1405491

>>1405485
Ну у того же AMD есть такие возможности точно. Могли бы отреверсить и выложить, чтобы мимокрокодилы там регулярно находили всякие непотребства и опускали Intel. Гораздо дешевле, чем вкладываться в рекламу и всякое такое.

464 24 мая, 13:16 464 1405659

Куда делся тред про машинный кодинг?

Ответы405846

465 24 мая, 13:21 465 1405663

>>1405472
Я так нихуя и не понял.
АСМ зачем нужен, если скорость почти та, что на С, но писать дольше и сложнее?

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

Но вот с выбором АСМ вместо С или плюсов не ясно.

Ответы405743405820

466 24 мая, 13:22 466 1405664

>>1405465
нет.

467 24 мая, 13:26 467 1405668

>>1405182
>nasm/fasm/gas
Какой самый быстрый и самый кроссплатформенный?

468 24 мая, 15:30 468 1405743

>>1405663
На АСМе пишут куски кода в системах реального времени и ОС, в кодах вирусов, в софте встроенных систем. На чистом АСМе уже давно не программируют, уже как лет 40 точно.
Уметь читать чистый АСМ нужно реверсерам. Статический анализ = чтение чистого ассемблерного листинга с целью восстановить исходный алгоритм функции/блока кода/всей программы, нужное подчеркнуть. Для чего? Чтобы написать похожую программу, написать кряк для нее, найти дыру в безопасности для тех или иных целей и т.п. Нужное подчеркнуть, как говорится.

Ответы405845405872

469 24 мая, 15:38 469 1405750

Можете обьяснить BCD-числа и их умножение.

Такая ебанина пиздец. Мама я у них поел просто.

Точнее алгоритм перевода в неупакованный bcd у меня есть, вот он. https://pastebin.com/t4Kgs8hY
Но алгоритм не мой, я черт его знает что там происходит.
И умножение я хуй знает как сделать. Умножение через мул как то ниполучаицца.
Там сначала результат залетает в АХ, потом надо аам делать ради (исправления чего-то?), и результаты раскидываются по двум регистрам.
Теперь сразу два регистра выводить?
Йа тупой, арррр.

Ответы405958

470 24 мая, 17:50 470 1405820

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

471 24 мая, 18:35 471 1405845

>>1405743
Ну и поэтому компиляторы АСМа сосут в оптимизацию.
Потому что 40 лет назад он всё.

Ответы405860

472 24 мая, 18:36 472 1405846

>>1405659
БАМП!

160 Кб, 640x468
473 24 мая, 18:45 473 1405851

Народ, на каком АСМе можно написать программу, которая будет работать на 32 и 64 архитектуре, Intel, AMD, ARM, а также Винде, Линуксе, Маке и желательно Андроид с Айфоном?

Ответы405861

20 Кб, 512x384
474 24 мая, 19:13 474 1405860

>>1405845
>компиляторы АСМа сосут в оптимизацию

217 Кб, 477x353
475 24 мая, 19:14 475 1405861

>>1405851

Ответы405867

sage 476 24 мая, 19:35 476 1405867

>>1405861
Он, конечно, троллит, но здравое зерно в этом есть. https://www.slideshare.net/ShaneWilton/one-shellcode-to-rule-them-all Подобные вещи сделать можно, но вот сделать именно программу будут мешать отличия файловых форматов.

Ответы405871

477 24 мая, 19:42 477 1405871

>>1405867
А что код на Ассемблере сильно ОС-зависимый?

Ответы405879

478 24 мая, 19:47 478 1405872

>>1405743
> в кодах вирусов
Размечтался. Сейчас вирусы пишут на Node.js и тянут за собой хром с драйвером контроллера xBox.

Ответы406217

479 24 мая, 20:16 479 1405879

>>1405871
Ну, если он работает в реальном режиме и загружается с дискеты - нет. А иначе дергать ось тебе таки придется.

Ответы405881

480 24 мая, 20:18 480 1405881

>>1405879
А что компилятор не может на себя взять работу с АПИ, чтобы можно было сразу для любой оси писать?

Ответы405883

481 24 мая, 20:21 481 1405883

>>1405881
А компиляторов-то и нет. Можешь хоть в хекс-редакторе писать на асме, хотя это и несколько сложновато. Ну, com уж точно можно.

Ответы405886

482 24 мая, 20:30 482 1405886

>>1405883
Так универсального ОС АПИ для ассма нет?

Ответы405887405892

483 24 мая, 20:36 483 1405887

>>1405886
Нет. Ну, накостылить-то можно, а смысл?

Ответы405890

484 24 мая, 20:47 484 1405890

>>1405887
А в Си есть?

Ответы405894

sage 485 24 мая, 20:49 485 1405892

>>1405886
А универсального апи вообще нет. Оно либо не универсальное, либо ограниченное и не позволяет пользоваться всеми возможностями ОС.

486 24 мая, 20:50 486 1405894

>>1405890
Аналогично. Стандартная библиотека не покрывает всего. Хотя странновато, что потоки в нее включили, а получение листинга директории - нет.

487 24 мая, 20:55 487 1405895

Перестаньте кормить этого тролля.

Ответы405897

488 24 мая, 20:58 488 1405897

>>1405895
тебе оставить?

71 Кб, 700x488
489 24 мая, 21:06 489 1405903

Какой АСМ выбрать и как вкатиться побыстряку за пару дней?

Не смог найти книги "АСМ для чяйников", она есть?

Легко ли будет вкатиться после Пайтона?

Ответы405910405913

490 24 мая, 21:16 490 1405910

>>1405903
AVR. Желательно 8535.
Методички ЮУрГУ.
С питона слезать будет больно.
Не, ну а хуле?

Ответы405916

86 Кб, 748x814
491 24 мая, 21:25 491 1405913

>>1405903
>Не смог найти книги "АСМ для чяйников", она есть?

492 24 мая, 21:32 492 1405916

>>1405910
серьёзно давай, ты тупая?

Ответы405922

46 Кб, 1366x728
493 24 мая, 21:38 493 1405922

>>1405916
Это ты тупая. Вот он, ассемблер. Деньги можно зарабатывать.

Ответы405941406030

494 24 мая, 22:11 494 1405940

>>1405438
>Тут только ОП-хуй
Куда вы столько пишите? Завтра придётся перекатывать
Настоящий ОП-хуй

Ответы405947

495 24 мая, 22:13 495 1405941

>>1405922
Что за допотопный шлак?

569 Кб, 430x615
496 24 мая, 22:23 496 1405947

>>1405940
У нас тут

sage 497 24 мая, 22:46 497 1405958

>>1405750
А в чем вопрос-то? У тебя есть два числа, состоящие из BCD-цифр. Берешь и умножаешь цифры в столбик, как в школе. Самый простой метод.

> я черт его знает что там происходит
Ну берутся цифры одну за другой из ввода, приводится ASCII-код к 0..9 (используя тот факт, что '0'...'9' - это 0x30...0x39, поэтому можно просто взять младшие 4 бита), потом это все зачем-то двигается (хотя удобнее и логичнее хранить числа в little-endian, начиная с младшего разряда).

> аам делать ради (исправления чего-то?)
Ну потому что 09h умножить на 02h = 12h не будет валидным неупакованным BCD. И надо отнять и поделить получить две правильные цифры. Можешь это сделать медленнее вручную, через деление на 10, но это займет несколько инструкций, а тебе дали одну удобную, которая сама сделает из 12h = 18 = (18 / 10, 18 % 10) = (ah = 01h, al = 08h).

Ответы405970405979

498 24 мая, 22:56 498 1405963

Асмач, что за йоба-функции по типу: _enable(), _disable(), _writecr(), _mm_... итп? Очень часто их вижу в хэдерах, но не понимаю что они делают и для чего вообще нужны? Да, визуал студио.

Ответы405970

499 24 мая, 23:11 499 1405970

>>1405958
> Берешь и умножаешь цифры в столбик, как в школе. Самый простой метод.
Но не самый эффективный. habr.com/post/451860/
>>1405963
>_writecr
Записывает регистр CR

P.S. Как избавится от уебанской гугкапчи? В настройках поставил 2капчу, не работает. Абу пидарас

Ответы405978

500 24 мая, 23:23 500 1405978

>>1405970
Так для чего в целом эти команды нужны? Какой спектр задач решать? Там хэдеры сотнями таких команд засраны.

Ответы405982

501 24 мая, 23:24 501 1405979

>>1405958
А выводить как два регистра сразу?

Ответы405989

502 24 мая, 23:31 502 1405982

>>1405978
Компутером управлять.

503 24 мая, 23:41 503 1405989

>>1405979
Ну например:
or ax,3030h
mov [output+0],ah
mov [output+1],al
mov dx,mesg
mov ah,09h
int 21h

...
mesg db 'Result is '
output db 'XX'
mesg2 db '.', 13, 10, '$'

Или:
or ax,3030h
push ax
mov dl,ah
mov ah,02h
int 21h
pop ax
mov dl,al
mov ah,02h
int 21h

Ответы405993406027

504 24 мая, 23:53 504 1405993

>>1405989
Спасибо тебе, мил человек.
Дай бог тебе здоровья.

505 25 мая, 01:00 505 1406027

>>1405989
это на каком асме?

506 25 мая, 01:03 506 1406030

>>1405922
Atmel Studio (ранее AVR Studio) — основанная на Visual Studio бесплатная проприетарная интегрированная среда разработки (IDE) для разработки приложений для 8- и 32-битных микроконтроллеров семейства AVR и 32-битных микроконтроллеров семейства ARM от компании Atmel, работающая в операционных системах Windows NT/2000/XP/Vista/7/8/10.

Чо за лажа?

507 25 мая, 12:52 507 1406214

; ПЕРЕКАТ
jmp >>1406213 (OP)
jmp >>1406213 (OP)
jmp >>1406213 (OP)
jmp >>1406213 (OP)
; END ПЕРЕКАТ

508 25 мая, 13:04 508 1406217

>>1405872
Скажи это руткитам, которые орудуют на уровне гипервизора и ниже, лол

Ответы406257

512x512
509 25 мая, 14:30 509 1406257

>>1406217
> на уровне гипервизора
> и ниже

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

Ответы406505

510 26 мая, 00:44 510 1406505

>>1406257
Ты серьезно думаешь, что такие руткиты выкладывают в паблик? Почитай слитые каталоги АНБ, охуеешь, какие вещи успешно реализуют.

Ответы406532

511 26 мая, 03:30 511 1406532

>>1406505
Хуйню там слили у анб, никакими гипервизорами, фирмваре даже и не пахнет, сам модуль у них тоже тухлый. В паблике как раз есть вещи по-круче, особенно у китайцев.

512 26 мая, 18:13 512 1406913

Сап, аноны
Расскажите нубу кто шарит
Есть ли какая-то сила за разработкой драйверов? Ведь код драйвера имеет больше привелегий, нежели рядова прога (кольца 2 и 1, если не ошибаюсь)
Значит ли это, что существуют малвари, написанные в стиле драйверов? Или завернутые в драйвер?

Ответы406997407137

513 26 мая, 20:34 513 1406997

>>1406913
Я другой анон. Как устанавливается малварь в виде драйвера?

Ответы407137

514 27 мая, 01:49 514 1407137

>>1406913
>Есть ли какая-то сила за разработкой драйверов
Безусловно. Средняя зп ~150 тыс. долларов в год.

>Значит ли это, что существуют малвари, написанные в стиле драйверов
Да.

>>1406997
Как и обычный драйвер, логично же.

515 5 июня, 19:15 515 1412360

Ну что у вас тут? Код то мало-мальский написали хоть, или может реверснули чёнить?

516 6 июня, 21:29 516 1413049

Что будет если поделить на ноль на асме?

Ответы418886

517 19 июня, 16:57 517 1418886

>>1413049
Мать умрет

Тред утонул или удален.
Это копия, сохраненная 29 июня 2019 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion