ASM & Reverse engineering №12 /asm/ /asm/

 Аноним 11/07/20 Суб 22:59:15 #1 №1748635 
image.png
image.png
image.png
image.png
В этом треде мы изучаем самый компактный и низкоуровневый язык Ассемблер и смежную с ним область: Реверс-инженеринга (RE).

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

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

Книги по RE:
Денис Юричев: "Reverse Engineering для начинающих"- бесплатная современная книга на русском языке. К прочтению вкатывающимся и прочим ньюфагам обязательна!
Прямая ссылка - https://yurichev.org/b564f46f1c207b2dbc84a2bd4a41ed4c/
Рикардо Нарваха: Введение в реверсинг с нуля, используя IDA PRO https://yutewiyof.gitbook.io/intro-rev-ida-pro/
Введение в крэкинг с помощью OllyDbg https://backoftut.gitbook.io/intro-cracking-with-ollydbg/

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:
Дизассемблеры:
1) IDA Pro Torrent Edition 7.2 | 7.0 | 6.8 на выбор. Иногда ограничения версий x86/x64, патчинг, вылеты прилагаются
2) IDA Freeware 7.0 - бесплатная для некоммерческого использования Важные функции/процы/форматы не завезли, саппорт все обращения ксорит побайтово.
3) IDA Home - тем, кто реверсит для хобби 365$ в год, ага. Умеет на выбор PC|ARM|MIPS, обычные и х64. Завезли IDAPython, но забыли Decompiler.
4) Ghidra - главный конкурент IDA Pro, разработка NSA под свободной лицензией. Тормозной Java UI, гипотетические звездно-полосатые анальные зонды в комплекте.
5) Radare 2 | Cutter - консольный + гуй на Qt дизассемблер. Умеет в Ghidra decompiler. Предположительно нужен только клиническим, не умеющим в скачивания торрентов, пользователям альтернативных ОС.
6) Hiew - Hex-редактор и легкий x86|64|arm дизассемблер за копейки. AV-ресечеры текут, вирьмейкеры боятся, поклонники st. Криса грят малаца.
7) Остальное

Отладчики:
1) x64dbg - х86/64 юзерспейс виндовый отладчик с открытым кодом не Olly же в 2020, верно?;
2) WinDbg - родной виндовый дебаггер от MS 32/64 битные приложения, драйвера, анализа аварийных дампов - это все к нему;

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

Книги по ассемблеру:
"Архитектура компьютера" Э. Таненбаум - https://www.libgen.is
Юров В.И: Assembler http://booksdescr.org/item/index.php?md5=73957AEFEADCB7F0C112DCAED165FEB6
С.В. Зубков: Assembler. Язык неограниченных возможностей.
Randall Hyde: The Art of Assembly Language http://booksdescr.org/item/index.php?md5=9C0F88DC623FCE96A4F5B901ADCE95D3

Сайты по ассемблеру:
Замена почившему wasm.ru- https://wasm.in/ , архив старого сайта https://rutracker.org/forum/viewtopic.php?t=407571 или восстановленный https://vxlab.info/wasm/index.php.htm
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
https://conspectuses.blogspot.com/2019/03/fasmg.html

Дизассемблер онлайн:
https://onlinedisassembler.com/

Сборник компиляторов онлайн:
https://godbolt.org/

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

Документация Intel:
https://software.intel.com/en-us/articles/intel-sdm
Документация AMD:
https://developer.amd.com/resources/developer-guides-manuals/
Документация Arm:
https://developer.arm.com/documentation/

Разное:
Michael Abrash's Graphics Programming Black Book Special Edition http://www.phatcode.net/res/224/files/html/index.html
http://www.phatcode.net/res/224/files/html/index.html
https://www.agner.org/optimize/
http://booksdescr.org/item/index.php?md5=5D0F6DBC1410E10BC489167AFE8192DF
https://www.cs.cmu.edu/~ralf/files.html
https://www.sandpile.org/
http://ref.x86asm.net/index.html
https://pnx.tf/files/x86_opcode_structure_and_instruction_overview.png
http://www.jegerlehner.ch/intel/

Предыдущие:
№9 https://2ch.hk/pr/arch/2019-11-11/res/1439555.html
№10 https://2ch.hk/pr/arch/2020-03-11/res/1499956.html
№11 >>1584716 (OP)


Loading...
Аноним 11/07/20 Суб 23:29:42 #2 №1748677 
>>1748635 (OP)
Вкатился
Аноним 11/07/20 Суб 23:42:32 #3 №1748687 
Я вот занимался извлечением ресурсов из игр.
Аноним 11/07/20 Суб 23:51:38 #4 №1748697 
Идея для стартапа. Деплою публичную кукушку как эстонский cert и предлагаю анализ малвари на заказ по ежемесячной подписке как gib. Рекламлюсь в твитере на хайповых новостях и на заказных статьях в тематических сми. Нанимаю других реверсеров в команду по мере роста заказов и становлюсь миллионером. Какие подводные?
Аноним 11/07/20 Суб 23:53:00 #5 №1748699 
>>1748697
Давай лучше займёмся разработкой отечественной DRM системы.
Аноним 11/07/20 Суб 23:57:35 #6 №1748706 
>>1748699
Поподём в список отечественного по и будем пилить заказы от газпром-медиа? А если они не захотят купить? Как-то не очень надёжно спланировано
Аноним 12/07/20 Вск 00:04:50 #7 №1748711 
>>1748706
Нет. Мы с тобой будем пилить DRM систему для Android приложений и игр. Нам передают условно игру на Unity, мы ставим защиту, отдаём аппу разрабу.
Аноним 12/07/20 Вск 00:07:27 #8 №1748713 
>>1748711
Гугл говорит в андроиде встроенный есть. Кому нужна альтернатива? И зачем тогда делать отечественую?
Аноним 12/07/20 Вск 00:12:41 #9 №1748716 
>>1748713
Нету. Android - это дыра.>>1748713
>Кому нужна альтернатива?
Коммерческие защиты очень дорогие. В России нет компаний, которые бы занимались защитой приложений мелких разработчиков.
>И зачем тогда делать отечественую?
Мы ж патриоты, нах.
Аноним 12/07/20 Вск 00:17:04 #10 №1748719 
>>1748713
> Кому нужна альтернатива?
Хуавею.
Аноним 12/07/20 Вск 00:38:23 #11 №1748727 
>>1748472 →
на юниора или на фулл вакансию?
Аноним 12/07/20 Вск 00:44:12 #12 №1748732 
>>1748729 →
на джуна, если не тролль вопрос
Аноним 12/07/20 Вск 01:34:52 #13 №1748755 
>>1748697
Есть куча бесплатный сервисов, где дело не ограничено кукушкой. Вообщем хз, разве что индусам впаривать.
Аноним 12/07/20 Вск 02:38:32 #14 №1748765 
>>1748755
Я про мануал реверс того, что кукушка сочтёт подозрительным. Типа автоматически любой желающий может бесплатно проверить файлик, а если что-то важное, то можно за денюжку попросить живого человека оперативно взглянуть на этот файл.
Аноним 12/07/20 Вск 03:14:44 #15 №1748773 
>>1748765
Да не, бред какой-то.
Аноним 12/07/20 Вск 10:05:15 #16 №1748873 
>>1748773
Ну gib же предлагает такую услугу. Только у них ещё и свой форк кукушки выдаётся заказчику. Но я надеюсь у меня и без этого взлетит
Аноним 12/07/20 Вск 20:34:22 #17 №1749631 
>>1748706
> Поподём в список отечественного по и будем пилить заказы от газпром-медиа? А если они не захотят купить?
Как работник газпром-медиа скажу - не захотят. Всё уже давно куплено и продано за вас. Тем более в компании сейчас массированные кадровые перестановки произошло, нужных человечков-кабанчиков посадили на высокие должности.
Аноним 12/07/20 Вск 21:34:44 #18 №1749682 
>>1748880 →
получилось, спасибо!
а поч вирус сам мог писать в секцию, без флага writeble?
Аноним 13/07/20 Пнд 00:27:48 #19 №1749806 
xuita.png
Посоветуйте ассемблер/дизассемблер, чтобы можно было без геммора одну команду транслировать туда-обратно в консольке. Сейчас пользуюсь radare2, но у них rasm2 явно поломатый, см. пик.
sageАноним 13/07/20 Пнд 00:39:49 #20 №1749812 
>>1749682
> а поч вирус сам мог писать в секцию
А он и не мог. Запусти, попробуй, точно так же вывалится.

>>1749806
> чтобы можно было без геммора одну команду
Возьми питон, capstone+keystone и напиши под себя. Там реально два десятка строк получится, не больше.
Аноним 13/07/20 Пнд 00:46:02 #21 №1749822 
>>1749812
>Возьми питон, capstone+keystone и напиши под себя
То, что надо, спасибо!
Аноним 13/07/20 Пнд 12:18:57 #22 №1750064 
.PNG
Там это, касперский проводит крякми2020. Может кому то интересно. Скачать задания можно без регистрации и смс. В коде страницы есть прямые ссылки. Я сам пока решил 2 и 3, а вот как 1 решать не понял.
https://careers.kaspersky.ru/crackme/
Аноним 13/07/20 Пнд 17:50:09 #23 №1750427 
>>1748697
Отбой. Я передумал. Теперь новая идея. Сделать то же самое, но для андроида. Развернуть андроидную кукушку и сделать публичной. Такой в инете я не нашёл. Похоже моя популярная будет среди независимых ресёрчеров. Принимать заказы на ручной анализ малвари на адроид, а в свободное от заказов время писать статьи. Публиковать бесплатно статьи, а внизу писать, что больше инфы для подписчиков услуги threat intelligence. Как касперский с apt репортами делает. Ну и продавать сигнатуры, хеши, детальный анализ разным антивирусам или крупным компаниям через ресейл партнёров за бугром. Годная идея? Рянок же особо не занят. Хотя спроса на андроид безопасность не много, но тренд на рост есть. Сделает такой стартап меня долларовым миллионером?
sageАноним 13/07/20 Пнд 21:28:51 #24 №1750660 
>>1750064
О надо попробовать, может еще и на работу возьмут.
Аноним 14/07/20 Втр 01:46:23 #25 №1750838 
>>1750427
только самой активной малвари под андройд всего 5-6 штук наверное,лол
Да и у гибрид анализса и эни рана вроде есть песочницы под ведра
У первого точно
Аноним 14/07/20 Втр 02:30:36 #26 №1750884 
>>1750064
Во второй таске дропер не может создать запустить пэйлоуда, а пэйлоуд не может подключиться к пайпу. От админа запускать пробовал. Есть у кого так же? Как решили?
Аноним 14/07/20 Втр 02:39:32 #27 №1750887 
image.png
>>1750884
в касперском даже дроппер нормально написать не могут
Аноним 14/07/20 Втр 10:48:24 #28 №1751029 
Ебаный рот, какая-то тварь с Пикабу шапку переписала
Ебал твою мать уебок. Ахах прикольный сайтик да?))) Мудила пидорас блять ещё другие ебики видят эту хуйню и не стыдно даже писать в этот тред. Студентишки зумерки ебучие твари пидорасы каждому ссал в рот
Аноним 14/07/20 Втр 10:52:26 #29 №1751032 
1.PNG
2.PNG
3.PNG
>>1750884
>Есть у кого так же?
У меня все нормально.
>Как решили?
Ставил бряк на CreateProcessW в Terminal.exe. Аттачился к процессу apof.bin. Он запакован UPXом. Расспаковал его и сдампил. Потом уже смотрел в дебагер. Очень простой крякми, но сложнее 3, как мне показалось.
Сильно не бейте если хуйню сделал и можно проще, я ньюфаг пока.
Аноним 14/07/20 Втр 11:14:00 #30 №1751038 
>>1751032
Странно. У меня CreateProcess возвращает ошибку. А какой версии у тебя ида? У меня библиотечные функции сами не задетектились. Даже не стал снимать upx т.к. какой смысл это делать когда процесс даже не запускается. А когда запускаю вручную, то бесконечно пытается подключится к пайпу безуспешно, хотя пайп создан
Аноним 14/07/20 Втр 11:17:39 #31 №1751041 
>>1751038
7.2
Аноним 14/07/20 Втр 11:59:22 #32 №1751076 
>>1751041
Действительно в ней всё удобней. Я чёт очковал пользоваться пираткой на случай если в каспер на собес позовут и спросят как решал. Поэтому взял бесплатную, а там фичи до 7.0
Аноним 14/07/20 Втр 12:02:46 #33 №1751082 
>>1751076
1 решил?
Аноним 14/07/20 Втр 12:13:45 #34 №1751086 
>>1751082
Нет. Вторая самой просто показалась. Но даже её ещё не решил. А долго это будет длиться? Судя по лидерборду всего несколько человек всё решили, а длится оно уже почти месяц
Аноним 14/07/20 Втр 12:17:12 #35 №1751088 
>>1751086
>А долго это будет длиться?
Хз. Я все равно не участвую, просто так решаю.
Аноним 15/07/20 Срд 02:38:06 #36 №1751654 
image.png
Пикрилейтед. Что думаете?
Аноним 15/07/20 Срд 04:46:03 #37 №1751676 
image.png
>>1751654
А софтайс им не нужен?
По сабжу - контора червепидорская,работа червепидорская,платят мало
Аноним 15/07/20 Срд 04:51:24 #38 №1751678 
>>1751654
https://www.google.com/search?q=%D0%BE%D1%82%D0%B7%D1%8B%D0%B2%D1%8B+%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0+%D0%B2+%D0%BA%D0%B0%D1%81%D0%BF%D0%B5%D1%80%D1%81%D0%BA%D0%BE%D0%BC
Начинай сразу с негативных
Не знаю еще одного человека который бы работал в вирлабах и ушел бы оттуда довольный
Аноним 15/07/20 Срд 07:02:17 #39 №1751701 
>>1751654
Требования как из 2010. Я бы сильно призадумался почему они такие отсталые.
Аноним 15/07/20 Срд 16:54:02 #40 №1752109 
>>1751676
Я с сюсера тоже проиграл. Джун чисто физически знать про него не может. И вообще это локальный инструмент с соседних форумов, лол.

>>1751701
А что-то изменилось разве? Малварь все та же, добавляются лишь слои запутывания, новых ботов никто не пишет, винда(натив) все тоже самое. Какие требование к новичку еще могут быть по твоему?
Аноним 15/07/20 Срд 20:47:48 #41 №1752299 
>>1752109
> А что-то изменилось разве?
Никто такие дебагеры не использует в 2020.
Только анальная IDA Pro указана.
Ring-0, Perl в 2020?
Аноним 15/07/20 Срд 22:07:03 #42 №1752340 
>>1752299
> Никто такие дебагеры не использует в 2020.
Какие такие? WinDbg (Preview) единственный ядерный отладчик.
> Только анальная IDA Pro указана.
Ида универсальный инструмент, аналогам еще расти и расти.
> Ring-0
Сложные атаки с задействованием драйверов никуда не пропали и даже замечен рост в последние годы. LPE/RCE/DOS/ etc, etc также на уровне ядра работают, напрямую или косвенно. Весь натив апи, которым оперирует малварь - это вызовы системных сервисов ядра.

Можно было закинуть конечно владение DBI/EMU фреймворками/движками, но джунам расти до такого.
Аноним 16/07/20 Чтв 02:40:47 #43 №1752507 
Ловите подборочку книг.

57 Best Kernel Books of All Time:
https://bookauthority.org/books/best-kernel-books?t=h2s0g7&s=author&book=1977593372
Аноним 16/07/20 Чтв 02:46:21 #44 №1752509 
image.png
image.png
image.png
бывалые реверсачики, подскажите пожалуйста
Есть задача найти в UEFI прошивке модуль обработки нажатия F2 для входа в BIOS Setup.
Согласно пик. 1, логично предположить, что он работает или во время DXE фазы или после работы CMS модулей (модуль поддержки совместимости) или после загрузки DXE.
На пик. 2 - файловая система прошивки.
Но проблема не только найти соответствующий модуль, на пик. 3 - дизассемблер SECurity фазы, самой первой. И если fninit, cli - понятно что и зачем на старте, то даже дальше что происходит - непонятно.
Вот функции обработки нажатия, я предполагаю что логично было бы после инициализации модулей совместимости, то есть после возможности отображать картинку на экране, или в каждый исполняемый фрагмент вставить обработчик или же в векторе прерываний от клавиатуры ссылаться на него. Но это лишь догадки.
проблему-вопрос когда-то поднимали челик на exelab.ru (https://exelab.ru/f/?action=vthread&forum=2&topic=26280), но там народ лишь развел руками и примерно указал сторону куда двигаться.
Ссылка на файл - (http://www.lex.com.tw/download/bois/CI770A/CI770AA6.zip)
Как и некто на exelab - не прошу решать, подскажите куда думать.
Аноним 16/07/20 Чтв 02:47:20 #45 №1752510 
image.png
>>1752509
Пик. 1 открепился, вот он
Аноним 16/07/20 Чтв 03:04:07 #46 №1752513 
Заинтересовался темой Jit, в частности опенсорс asmjit.
Хочу попробовать запилить простой верификатор хешсуммы сегментов кода.
Допустим, по tcp я буду получать пакет с шеллкодом который считает хеш какого-то сегмента и отправляем обратно.

Можно ли посчитать в комбайн тайме размеры сегментов? Можно их перечислить, вроде бы, компилятор на своё усмотрение их делает?
Есть ли разница между ос для определения размеров сегментов или начального сдвига?
Как вшить в блоб хеш самого блоба вместе с этим хешем?
Аноним 16/07/20 Чтв 03:55:50 #47 №1752525 
>>1752513
> Можно ли посчитать в комбайн тайме размеры сегментов
Нельзя. Нужно модифицировать линкер, либо анализировать файл после компиляции.

> Есть ли разница между ос для определения размеров сегментов или начального сдвига?
Формат файлов PE, ELF, Mach-O, etc.
Аноним 16/07/20 Чтв 03:59:55 #48 №1752527 
>>1752509
Похоже на переключение режима работы процессора. Ссылка битая, перезалей.
Аноним 16/07/20 Чтв 04:05:40 #49 №1752528 
>>1752507
>>1752527
https://exelab.ru/f/?action=vthread&forum=2&topic=26280
http://www.lex.com.tw/download/bois/CI770A/CI770AA6.zip
я как еблэн ссылки в скобки взял
Аноним 16/07/20 Чтв 05:07:04 #50 №1752534 
>>1752528
>>1752509
думаю, что копать надо модуль AMITSE, он выводит графон и предложение нажать кнопочки
Аноним 16/07/20 Чтв 08:20:03 #51 №1752553 
>>1752340
> WinDbg (Preview) единственный ядерный отладчик.
Чего, блять? cdb/ntsd/kd для кого?
> Ида универсальный инструмент, аналогам еще расти и расти.
При этом IDA уже сосет у гидры. HexRays на свежих компиляторах спотыкается и выдает совершенно нечитабельное говно. С AVX вообще пиздец.
> Сложные атаки с задействованием драйверов никуда не пропали и даже замечен рост в последние годы.
Тут надо пользователей пиздить палкой, а не ковырять это говно.
Аноним 16/07/20 Чтв 09:28:26 #52 №1752566 
>>1752340
>Какие такие? WinDbg (Preview) единственный ядерный отладчик.
Речь про сиську и олли
первый уже просто не работает в современных системах,второе устарело,тк 32 бит онли
Аноним 16/07/20 Чтв 09:31:52 #53 №1752568 
>>1752340
>владение DBI/EMU фреймворками/движками
расскажи что это,не гуглится чет
Аноним 16/07/20 Чтв 09:32:39 #54 №1752569 
>>1752568
А,все
нашел
хуита
Аноним 16/07/20 Чтв 14:00:00 #55 №1752805 
Screenshot1.jpg
Screenshot2.jpg
вопрос навскидку: Есть простое немодальное окно, созданное
CreateDialogParam, скрин1. После сворачивания-разворачивания имеем скрин2. Что надо добавить в код? Обработку WM_Size?
Аноним 16/07/20 Чтв 14:14:34 #56 №1752827 
>>1752553
> Чего, блять? cdb/ntsd/kd для кого?
> WinDbg, NTSD, CDB, and KD all share the same debugging engine, so they share all the same commands. The only differences between them is that WinDbg has GUI interface, NTSD, CDB and KD have console interfaces
А ты не знал еще скажи. Так и живем.

>>1752566
Это понятно. В принципе иды и виндбг хватает.

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

sageАноним 16/07/20 Чтв 20:01:12 #57 №1753210 
>>1752805
Какой пиздец. Выкинь создание класса нахуй.
Аноним 16/07/20 Чтв 20:16:38 #58 №1753221 
>>1753210
создавать модальное окно через DialogBoxParam? Вроде, у немодального какие-то дополнительные возможности/плюшки..
Иклезион пишет:"Независимые диалоговые окна дают вам возможность перемещать фокус ввода на другие окна. Пример - диалоговое окно 'Find' в MS Word. Есть два подтипа модальных диалоговых окон: модальные к приложению и модальные к системе. Первые не дают вам переключаться на другое окно того же приложения, но вы можете переключиться на другое приложение. Вторые не дают вам возможности переключиться на любое другое окно. "
Имхо, он пизидит, устарел, т.к. на W7 фокус переключается. Далее он пишет об отлтичиях в сообщении WM_CREATE - тоже устарело. Метод тыка показал, что оба CreateDialogParam/DialogBoxParam получают только WM_INITDIALOG.
п.с. спасибо, сейчас сам разберусь и отпишу..
п.с. от яндекса толку почти ноль, ничего нельзя найти!
sageАноним 16/07/20 Чтв 21:47:51 #59 №1753288 
>>1753221
> создавать модальное окно через DialogBoxParam
Вообще да. Но можешь продолжать использовать CreateDialogParam. Класс для этого не нужен.

> Имхо, он пизидит, устарел, т.к. на W7 фокус переключается
Что касается system modal - да, устарело еще в 9x. Application modal все еще работают. Например, стандартный диалог открытия файлов, если вызываеть его с правильным OPENFILENAME.hwndOwner будет как раз application modal, т.е., заблокирует твое основное окно.

> WM_CREATE
Не знаю, что именно он там пишет, но вот как раз ради всевозможных WM_CREATE классы для диалогов и регают. Если тебе просто кнопочки, а не выебываться - эти сообщения тебе не нужны, как и кастомный класс.
sageАноним 16/07/20 Чтв 21:53:37 #60 №1753294 
>>1753221
Короче либо выкинь классы, либо осознай, что DialogProc != WindowProc. В первом для необработанных сообщений нужно возвращать FALSE, во втором - дергать DefWindowProc. Сейчас ты вызываешь DefWindowProc, когда это не нужно (менеджер диалогов от тебя этого совсем не ожидает), и при этом ты еще и проебываешь ее код возврата, который имеет значение для WindowProc. Если напишешь две разных и правильных процедуры - спецэффекты тоже должны прекратиться.
Аноним 16/07/20 Чтв 22:41:10 #61 №1753334 
>>1753294
спасибо!!!
Аноним 17/07/20 Птн 08:02:44 #62 №1753528 
>>1753294
всё заработало! Как ты и говорил, после замены DefWindowProc на
.default
mov eax,FALSE
.endc
То есть, выходит, WndProc для DialogBoxParam и для CreateDialogParam абсолютно одинаковы!

Но мастадонт от мира asm'а Iczelion утверждает, что CreateDialogParam ближе к CreateWindowEx, ей требуется DefWindowProc. И.. его примеры компиллируются на masm и правильно работают!
Залил Iczelion на диск , урок №10.
https://yadi.sk/d/gAHUFiB4iQT2mA
Как этот парадокс можно объяснить?!

п.с. может, есть книга, в которой всё это разжёвано?

п.с.2. как ты и сказал, можно убрать (для CreateDialogParam - примера выше) регистрацию класса (он уже предопределён), оставить в WinMain только:
.while GetMessage(&msg, 0, 0, 0)
TranslateMessage(&msg)
DispatchMessage(&msg)
.endw
mov eax,msg.wParam
ret
Похоже, это всё наследие от WindowProc/CreateWindowEx. Для DialogBoxParam и этого не требуется..
Аноним 18/07/20 Суб 18:57:59 #63 №1754864 
Screenshot.jpg
Уважаемые asm-олды, помогите пожалуйста разобраться c простым переполнением буфера.
Вот тут объяснение с примером си-шного кода:
https://ctf101.org/binary-exploitation/buffer-overflow/
Вот тут 29 байт готовой полезной нагрузки:
http://shell-storm.org/shellcode/files/shellcode-905.php
При сборке бинарника указаны no-stack-protector и execstack. GDB говорит, что полезная нагрузка легла в стек, сохраненный RIP перезаписан - и дальше выполняется /usr/bin/bash симлинк /bin/sh. Но при этом без отладчика этот же пример с этими же входными данными валится в segmentation fault.
Але, я не пони, где моя консоль?
Аноним 19/07/20 Вск 16:05:51 #64 №1755403 
>>1754864
ASLR включен?
Даже если выключен, то границы адресов стэка в GDB != границы адресов стэка при исполнении программы вне его, во многом из-за переменных окружения.

Убедись, что ASLR выключен.
Запусти программу в отладчике через env - gdb /path/to/program

пропиши:
unset env LINES
unset env COLUMNS

После этого команда show env не должна ничего выводить в консоль отладчика.

Продолжай дебажить прогу, найди адрес на стэке, куда хочешь писать шеллкод и вполсдедствие перенаправлять instruction pointer, и захардкодь этот адрес в эксплоит. Должно работать.
Аноним 19/07/20 Вск 16:14:11 #65 №1755407 
>>1754864
добавлю:
Запускай эксплоит следующим образом:
(python exploit.py ; cat) | /path/to/program
Иначе даже корректный эксплоит может крашнуться.
А вообще советую изучить либу pwntools, там есть метод interactive() для этих целей, да и вообще там есть много плюшек, которые упрощают написание эксплоита, засим можно полностью сконцентрироваться на исследовании уязвимостей, а не ебаться с написанием замысловатых эксплоитов, жонглируя потоками в шелле и пихая embedded скрипт на пайтоне/перле/баше каждый раз.
Аноним 20/07/20 Пнд 10:50:13 #66 №1755808 
>>1755403
>>1755407
ASLR выключен, но адресация действительно различалась в отладчике и без - зааттачился к уже рабоющей программе, посмотрел/изменил перезаписываемый $rip.
Спасибо за советы. Вся эта возня с пайпами, бинарным выводом башем/перлом/питоном, да чтоб порядок байт BE\LE как надо, действительно утомляет - поиграю с готовым фреймворком.
Аноним 21/07/20 Втр 22:09:11 #67 №1757169 
Видос где реверс инженер крякает десятку без активаторов хекс редактором
https://www.youtube.com/watch?time_continue=2&v=Cjmdh0tQ_fw&feature=emb_logo
ключевые моменты заблюрены
Анонасы, где найти без блюра?
Аноним 24/07/20 Птн 01:13:44 #68 №1758899 
Тут это, свеженький легковесный дизассемблер выкатили. https://github.com/bitdefender/bddisasm
Аноним 24/07/20 Птн 07:05:17 #69 №1758988 
>>1758899
Но ведь есть Zydis, который всем лучше.
Аноним 24/07/20 Птн 17:57:27 #70 №1759348 
>>1758988
А ты докажи сначала.
Аноним 25/07/20 Суб 07:44:04 #71 №1759699 
>>1759348
Zydis обкатан на x64dbg, а твое свежее говно только сами кодеры трогали.
Аноним 25/07/20 Суб 18:56:52 #72 №1760074 
>>1759699
Ну знаешь, Zydis может и обкатан в x64, а этот диз, используется во всех продуктах bitdefender. У меня как-то больше доверия к крупной аверской конторе, чем к разрабу зудиса, который является обычным Васяном.
Аноним 25/07/20 Суб 23:40:26 #73 №1760239 
>>1760074
>bitdefender
Работал однажды с одним из их сдк для кернелдевелопмента. У них там костыли уровня в скиплист можно добавить конкретную папку чтобы скипать все объекты из этой папки, но нельзя отдельный файл. И в документации (ридми в формате тхт очевидно без разметки и навигации) написано осторожней с этим список, а то в эти папку может спрятаться малварь. Всё максимально низкоуровнево и примитивно на плюсах, но в си стиле написано (и юзерспейс и кернелспей код). Могу ошибаться т.к. доступа к исходникам не было, но судя по самплам и докам всё именно так. Они это писали поверх одного майкрософтовского фреймворка. Оказалось они тупо обернули майкрософтовский апи своими функциями, сделали typedef, пару новых структур и свою инициализацию с деинициализацией библиотеки. А и ещё службу с нуля написали, которая проксировала вызовы из юзерспейса в кернелспейс чтобы все приложения могли кернеловские колбэки вызывать. Мы очень быстро переписали весь полезный функционал и отказались от их решения.
Аноним 26/07/20 Вск 03:06:59 #74 №1760332 
>>1760239
> Оказалось они тупо обернули майкрософтовский апи своими функциями, сделали typedef, пару новых структур и свою инициализацию с деинициализацией библиотеки.
А как надо? Для этого документированный апи и существует. Что за библиотека то?

> А и ещё службу с нуля написали, которая проксировала вызовы из юзерспейса в кернелспейс чтобы все приложения могли кернеловские колбэки вызывать.
Некоторые сервисы можно перенаправить легитимными механизмами. Или там был хук + перенаправление на драйвер?

> Мы очень быстро переписали весь полезный функционал и отказались от их решения.
Т.е своровали фичи?

Аноним 26/07/20 Вск 17:54:10 #75 №1760893 
Screenshot from 2020-07-26 16-11-29.png
>>1760332
> А как надо? Для этого документированный апи и существует.
Не знаю. Но большинство их экспортируемых функций были обёрткой вокруг стандартных виндосовских с почти тем же именем и точно такой же сигнатурой. Ничего они не делали кроме того, что свои аргументы передавали в стандартную функцию. Похоже было, что большинство работы они сделали только чтобы вставить аббревиатуру битдефендера в название функции
> Что за библиотека то?
Кажется та что на пике, но я не уверен. Можешь загуглить если вся пдф нужна
> Некоторые сервисы можно перенаправить легитимными механизмами. Или там был хук + перенаправление на драйвер?
Хуков не было. Был какой-то простенький самописный протокол коммуникации поверх дефолтного способа передачи буфера. И в зависимости от данных в буфере драйвер решал какую функцию с какими данными вызвать. Обычно просто на разные события ставились разные колбэки обработчики
>Т.е своровали фичи?
Ну почти. Там почти не было фич. Просто немного модифицировали виндосовкий апи. Мы прямо на этом апи и стали делать. Изначально руководство даже не понимало что они хотят. Отправили смотреть на разные опенсорсные технологии и этот сдк купили. Я тоже не понял что они хотят. Просто отреверсил драйвер, а дальше другая часть команды свой клон писала.

Суть в том, что они продавали либу по сложности пет проекта с функционалом, который и так почти весь в винде был.
Аноним 26/07/20 Вск 18:23:37 #76 №1760906 
>call 7<init_module+0x7>

Но по офсету 7 нелегальная ебуда. Либо я не понял синтаксис, либо скажите пожалуйста чем/как дизассемблировать модульный образ.
Аноним 27/07/20 Пнд 00:15:06 #77 №1761138 
>>1760893
Понятно, буду знать, анон.
Аноним 27/07/20 Пнд 11:29:45 #78 №1761399 
Аноны, может кто разжевать как правильно запилить trampoline при detour на функцию stdcall? Стек и регистры портятся и всё ломается, второй день ебусь.
Оригинальный кусок кода до вызова хука или после выполнять? Как правильно функцию хука вызывать и выходить из неё, чтоб не запарывало стек/регистры?
Смотрел на гитхабе как в либах сделаны хуки, но нихуя не понял. Detour делаю через jmp rax по абсолютному адресу.
Аноним 28/07/20 Втр 22:27:44 #79 №1762644 
Подскажите тему для диплома связную с анализом малвари
Аноним 28/07/20 Втр 23:10:09 #80 №1762685 
>>1762644
"Анализ малвари"
Аноним 29/07/20 Срд 00:33:42 #81 №1762740 
>>1762644
Зарази универ вирусом и потом его излечи. его же ты написал
Аноним 29/07/20 Срд 01:57:46 #82 №1762804 
>>1762644
виртуалку, протектор опиши, не знаю.
хотя это не малварь.
малварь - winapi если винда. методы неявного вызова функций, перехвата библиотечных функций и т.п.
зайди на форум реверсеров и почитай статьи как что ломалось и поймешь о чем писать. а о малварях на хакере можно почитать, чтобы понять чем заинтересовать читателя диплома.
Аноним 29/07/20 Срд 04:16:26 #83 №1762842 
>>1762644
Modern malware deobfuscation and analysis.
Аноним 30/07/20 Чтв 12:00:45 #84 №1764127 
>>1748697
>>1750427
Всё. Теперь новая идея для стартапа. Incident responce по страховке на линукс инфраструктуре для малого и среднего бизнеса плюс threat intellegence. Никаких больше кукушек. Теперь только партнёрство с интеграторами. Каждый раз когда к ним приходит небольшой энтерпрайз закупить серваки циско на 100к долларов они предлагают заказчику страховку от взлома с одноразовой выплатой или рассрочка на год и берут с этого свою комиссию. Я же взамен обещаю бесплатно среагировать и починить инфраструктуру если случится атака один раз в год. Собираю команду из пяти человек и по мере необходимости реагируем на инциденты клиентов, а когда реагировать не надо, то делаем ресёрч и рассылаем threat intellegence. Как вам идея?
Аноним 30/07/20 Чтв 12:03:51 #85 №1764132 
>>1764127
>Всё. Теперь новая идея для стартапа. Incident responce по страховке на линукс инфраструктуре для малого и среднего бизнеса плюс threat intellegence. Никаких больше кукушек. Теперь только партнёрство с интеграторами. Каждый раз когда к ним приходит небольшой энтерпрайз закупить серваки циско на 100к долларов они предлагают заказчику страховку от взлома с одноразовой выплатой или рассрочка на год и берут с этого свою комиссию. Я же взамен обещаю бесплатно среагировать и починить инфраструктуру если случится атака один раз в год. Собираю команду из пяти человек и по мере необходимости реагируем на инциденты клиентов, а когда реагировать не надо, то делаем ресёрч и рассылаем threat intellegence. Как вам идея?

Слаженная зондеркоманда пыневиков/вагнерят/ЕНОТов/ветеранов АТО умеющих в пытки утюгом паяльником и избавляться от трупов есть? Знакомые погоны ГДЕ НАДО есть? Без всего этого threat intellegence не взлетит.
Аноним 30/07/20 Чтв 12:09:18 #86 №1764140 
>>1764132
>Без всего этого threat intellegence не взлетит.
Не. Это будет customized osint ti плюс внутренний ресёрч для malware driven ti. Типа хеши фейлом взять в разных misp комьюнити, а потом разыскать сами файлы, проанализировать и написать сигнатуры детектирования более продвинутые, чем просто хеши. Такой формат ничего из того, что ты описал не требует
Аноним 30/07/20 Чтв 12:22:10 #87 №1764156 
>>1764140
>Не. Это будет customized osint ti плюс внутренний ресёрч для malware driven ti. Типа хеши фейлом взять в разных misp комьюнити, а потом разыскать сами файлы, проанализировать и написать сигнатуры детектирования более продвинутые, чем просто хеши. Такой формат ничего из того, что ты описал не требует

А , ну так епта, добро пожаловать

http://www.consultant.ru/document/cons_doc_LAW_10699/a4d58c1af8677d94b4fc8987c71b131f10476a76/

Полотенце перешагивать будешь?
Аноним 30/07/20 Чтв 13:06:19 #88 №1764200 
>>1764156
Во-первых я не буду рассылать вредоносы, а только сигнатуры. А во вторых это обычная практика в индустрии и сомневаюсь, что я окажусь первым, кого за это посадят
Аноним 30/07/20 Чтв 13:30:31 #89 №1764229 
>>1764200

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

ТАААК, КАНТРОООЛЬНЫЕ МААААСОЧКИ ШОУ ЧЕРНЫМИ ЧЕЛОВЕЧКАМИ ЕБАЛОМ В ПОЛ, НЕ ДВИГАТЬСЯ СУКА.
@
ЧТО ТУТ У НАС ?
@
ААА ФЛЕШКИ, ХАРДЫ ССДШКИ, ТАК ДЭНЧИК, ЭТО ВСЁ НА ЭКСПЕРТИЗУ. ДА, КОМПЫ ТУДА ЖЕ
@
ОППА,ПРИЗНАКИ ВРЕДОНОСА, НЕ, НУ ЭТО НЕ, ЭТО ДЕЛО СРАЗУ, 272 НАХ ОТКРЫВАЕМ, ТАК ПИШЕМ СОДЕРЖАНИЕ ПОД СТРАЖЕЙ, НИКАКОЙ ПОДПИСКИ.
@
ПРЕСС-ХАТА В ПРЕСНЕ
@
НУ ЧТО ЧЕЛОВЕЧЕК, ЩА ТЫ РАССКАЗЫВАЕШЬ ГДЕ ДЕНЕЖКА ЛЕЖИТ, А ТАК ЖЕ ВОТ РУЧКА, ВОТ БУМАГА ЗАДНИМ ЧИСЛОМ НА ДОЧКУ ПОЛКОВНИКА. И ДА, ТЫ ОСОБО НЕ ДУМАЙ, ИНАЧЕ ЭТА РУЧКА ЕЩЕ НЕ ФАКТ ЧТО ТОЧНО В ДЫРКУ В ТВОЕМ ПЕРДАЧЕЛЛЕ ПОПАДЕТ, А НЕ НА МИЛИМЕТР ПРАВЕЕ
Аноним 30/07/20 Чтв 13:44:00 #90 №1764242 
>>1764200

И да, что бы не быть голословным(>>1764229):

https://www.bbc.com/russian/news-44151638

А чувачок всего лишь очередной маняавтокад писал.
Аноним 30/07/20 Чтв 16:21:56 #91 №1764396 
>>1764242
Это другое
Аноним 30/07/20 Чтв 16:36:27 #92 №1764413 
>>1764396

Угу, до стадии когда у тебя будет что можно вымогать ты не дотянешь, тупо за палку по хакерам хлопнут тебя и дадут условку или пару лет поселка которые ты к суду уже отсидишь в СИЗО.
Аноним 30/07/20 Чтв 18:57:39 #93 №1764520 
>>1764127
Мде, одна хлеще другой идеи у тебя.
Аноним 30/07/20 Чтв 20:10:19 #94 №1764547 
>>1764520
А чё такого? Всякие чуваки из твитера же темы мутят. Чё я не могу? Реверсом в россии серьёзно на аутсоср только групайби и соцы занимаются. Все остальные подзабили на это направление. Но если для того чтобы закупиться тдс от групайби нужны бюджеты газпрома, то всяким мелком конторам может быть удобней услуга по подписке, которую почти никто не предлагает. И тут появляюсь такой я, который предлагает интегратору купить пакет на 100 секьюрити репортов в месяц написанных вручную опытным реверсером, а интегратор продаёт их в розницу своим заказчикам. Осталось нанять опытных реверсеров и начать поднимать бабки. А? Неужели никто не думает, что идея хорошая?
Аноним 31/07/20 Птн 12:16:36 #95 №1764841 
Там этта 7.4 installer со всеми декомиляторами для floating license утек. Но пока без пароля
Аноним 31/07/20 Птн 13:30:35 #96 №1764907 
>>1764841
Так давай ссылку пидрила
Аноним 31/07/20 Птн 18:39:09 #97 №1765133 
>>1764907
а толку с сылки, если пароля от инталлятора все равно нет
а без него хрен что установишь
Аноним 31/07/20 Птн 19:58:15 #98 №1765203 
>>1764841
Также утек кряк 7.3, но без декомпиля и только x64. Вообщем ждем фулл кряк 7.4.
Аноним 31/07/20 Птн 20:23:12 #99 №1765230 
>>1765203
7.3 - это релиз какой-то группы, которая заморочилась и собрав несколько копий 7.3, вывела общее среднее, которое не содержит отпечатков пальцев. А декомпиляторы они релизить в паблик не собираются, только для своих внутри группы.

А 7.4 - это floating license installer со всеми потрахами. Вот только пароля блеять нету
Аноним 31/07/20 Птн 23:08:44 #100 №1765273 
>>1764841
попробуй ghidra от анб. она просто уничтожает ильфака. там есть все и она кроссплатформенная. правда жаба тяжеловата. только загугли как зонд убрать и не пользуйся с рабочей
Аноним 01/08/20 Суб 07:53:15 #101 №1765370 
>>1765273
Ты так не шути. Гидра - обрубок, до идочки ей еще далеко.
Аноним 01/08/20 Суб 10:27:45 #102 №1765410 
>>1765370
Но код она выдает более читаемый, чем 7.2.
Аноним 01/08/20 Суб 12:37:12 #103 №1765448 
image.png
>>1765410
Ждем, что покажет 7.4. Мне приходится изредка переносить свою базу на новую версию бинарника программы. И эти козлы любят немного менять порядок полей в классе. Поэтому вот эта фича нужна как воздух
Аноним 01/08/20 Суб 12:48:54 #104 №1765462 
13b.jpg
Поясните. Можно ли в гидре (или еще где) подать на вход ассемблерную инструкцию с операндами, а на выходе получить состояния регистров, измененных данной инструкцией с операндами? Например, через stdin/stdout. Как вообще такое сделать, что-тотничего похожего нагуглить не могу...
Аноним 01/08/20 Суб 16:59:52 #105 №1765636 
>>1765462
По описанию похоже на bochs debugger
Аноним 01/08/20 Суб 17:19:25 #106 №1765659 
>>1765273
>загугли как зонд убрать
Можно подробнее, плиз?
Аноним 01/08/20 Суб 18:29:46 #107 №1765744 
15960528468130.png
>>1765636
> bochs debugger
Хм, интересно, спасибо. А более классические дебаггеры, хоть GDB, так не могут?
Аноним 01/08/20 Суб 19:10:31 #108 №1765780 
>>1765744
В теории не должны т.к. обычные дебагеры запускают настоящий процесс, вставляет инт3 в кусок исполняемого кода, а потом по одной инструкции смотрят что в процессе исполнения поменялось. А тебе нужен какой-то эмулятор, который без запуска процесса просто скажет какие изменения делает какая инструкция. В r2 ещё кажется такая штука есть. Там кажется даже можно эмалировать код с другой архитектуры. Типа арм шелкод на х64 системе запускать и смотреть что он делает.
Аноним 01/08/20 Суб 22:32:12 #109 №1765911 
>>1765410
Ты просто готовить не умеешь, один бинд F5 видимо только используешь. У меня за 1-10 минут любая функция в неотличимый си код преобразуется.
Аноним 01/08/20 Суб 22:34:08 #110 №1765912 
>>1765462
Эмулятор, учи мат. часть.
Аноним 02/08/20 Вск 05:39:24 #111 №1766024 
15934195757920.jpg
>>1765912
> Эмулятор, учи мат. часть.
Я за матчастью и пришел. Любой эмулятор? Выше посоветовали bochs и r2, я просто пытаюсь понять, в какую сторону вообще смотреть.
Аноним 02/08/20 Вск 12:23:18 #112 №1766116 
>>1766024
Пиши кастомный эмулятор (правда, если это на CISC архитектуру, то там работы жопой жуй), заодно будет солидный пет-проект в копилку.
Аноним 02/08/20 Вск 16:59:15 #113 №1766352 
>>1766116
> Пиши кастомный эмулятор
Не-не, мне нужно что-то готовое.
sageАноним 02/08/20 Вск 17:34:26 #114 №1766394 
>>1766352
https://www.unicorn-engine.org/
Аноним 02/08/20 Вск 18:41:20 #115 №1766498 
>>1766394
Это только процессор эмулирует? Надо ещё чтобы задействованные адреса памяти отображал, инструкции же могут менять содержимое памяти тоже.
Аноним 02/08/20 Вск 22:22:02 #116 №1766678 
>>1766498
процессор 99.9% времени перекладывает числа из регистра в регистр. Без имплементации адресного пространства для эмулируемого процесса ты нихуя не сэмулируешь.
Похоже, ты слабо представляешь как работают эмуляторы. Загугли, пчел.
sageАноним 02/08/20 Вск 23:36:00 #117 №1766717 
>>1766498
Не еби мозгу, открывай документацию и читай. Если нужно что-то большее, то гугли DBI.
Аноним 03/08/20 Пнд 04:21:17 #118 №1766806 
>>1750064
Какой пароль от архива к 3 таску?

Или в его бруте и состоит задание
Аноним 03/08/20 Пнд 17:39:04 #119 №1767469 
Рекомендуется к прочтению. https://arxiv.org/ftp/arxiv/papers/2007/2007.14266.pdf
Аноним 03/08/20 Пнд 18:31:33 #120 №1767570 
>>1765370
она хотя бы бесплатная и кроссплатформенная. можно на планшете сидя на унитазе реверсить.
Аноним 03/08/20 Пнд 18:33:47 #121 №1767573 
>>1764547
лучше найти дуру в популярном по. это как филосовский камень прям. главное закон не нарушать.
Аноним 03/08/20 Пнд 18:37:13 #122 №1767576 
>>1767573
>>1764547
ну т.е. дыры искать тоже профитно.
правда это не вайтхет дела, если будешь эксплуатировать или продашь.
правда почти нихуя не делать и сидеть ждать когда понадобится помощь тоже умно.
Аноним 03/08/20 Пнд 19:42:58 #123 №1767615 
подскажите:
1. куда переехал exelab? Называют "реверслаб" какой-то.. Дайте ссылку, т.к. пробовал reverslab.ru и reverslab.com - нет таких сайтов. Хуяндекс давным давно нихуя не ищёт..
2. что с сайтом purebasic.info? Уже неделю лежит! Хостинг копеечный - 70р в месяц. Не думаю, что денег на оплату нет - скинулись бы (это же не абу..)
Аноним 03/08/20 Пнд 19:51:15 #124 №1767623 
>>1767615
никуда он не переезжал
какие-то клоуны сделали клон его на бегете
поищи урл на васме
Аноним 03/08/20 Пнд 20:03:47 #125 №1767637 
>>1767623
>>никуда он не переезжал
теперь это подментованная параша хуже мейлача.. Ссылку давай! На васм тоже сто лет на заходил, с тех пор, как аквила свой сайт просрал со всей личной перепиской..
Аноним 03/08/20 Пнд 20:08:39 #126 №1767644 
>>1767637
Да тебе не похуй долбоеб?Кто тебя искать будет?
А если бы и искали,ты думаешь бэдгай бы не выдал твои данные европолу?
Аноним 03/08/20 Пнд 20:20:26 #127 №1767651 
>>1767644
мне - не похуй, долбоёба в зеркале поищи. Надеюсь, бэдхуй хотя бы бабла срубил норм. Если в этой конторе ЗП до 500к в месяц, то уж пару зарплат он получить должен был! Для сайта такого уровня, посещаемости и целевой аудитории - это норм. За пару лямов продал дохлый форум)))
Аноним 03/08/20 Пнд 21:36:34 #128 №1767721 
если очень волнует, можешь скачать или спарсить все что есть и перехватить инициативу.
один хер - без доверия купленный форум затонет.
Аноним 03/08/20 Пнд 21:55:25 #129 №1767741 
>>1767721
охлол, кто-то так и сделал.
анонасы, что скажете насчет софта на exelab? нет ли там троянов?
нормальные ли хэши файлов или вирустотал такое впервые видит?
Аноним 03/08/20 Пнд 22:06:15 #130 №1767748 
>>1767741
Если ты анон, то не заходи туда, ищи в других местах. Если майор, то иди нахуй!
Аноним 03/08/20 Пнд 22:38:31 #131 №1767772 
>>1767748
а если я подумывал, но не решился?
Аноним 04/08/20 Втр 15:09:58 #132 №1768234 
Существует инструмент для динамического логирования виртуальной памяти процесса? То есть запускаю программу в виртуалке, а он следит какого размера с какими правами аллоцируются чанки в куче и что туда записывается. А я потом по завершению работы программы вижу, что программа аллоцировала кусок памяти с правами на запись и исполнение, а потом записала туда какие-то данные. А потом просто извлекаю из дампа то, что программа туда записала. Помню в каких-то песочницах была возможность дампы памяти каждую секунду собирать, которые потом можно в волатилити загрузить. Есть ещё что-то похожее?
Аноним 04/08/20 Втр 15:18:23 #133 №1768244 
>>1768234
Да, DBI.
Аноним 05/08/20 Срд 00:50:39 #134 №1768605 
>>1766806
КАКОЙ ПАРОЛЬ ОТ АРХИВА С 3 ТАСКОМ, ДОЛГО Я БУДУ ЖДАТЬ, БОМЖИ ОБОСРАННЫЕ?
Аноним 05/08/20 Срд 02:17:02 #135 №1768636 
>>1768605
Я тоже не знаю. Прости. Можешь разрабам написать. Если ответят, то напиши в тред.
Аноним 05/08/20 Срд 09:40:52 #136 №1768702 
>>1768605
>не может подобрать простой пароль
>называет кого-то бомжами
Может тебе ещё решение сказать.Даже на моём сральном ведре крякнулся за минут 10-20.
Аноним 05/08/20 Срд 13:32:14 #137 №1768916 
.PNG
>>1768605
>>1768636
Как то странно время считается, можете чекнуть. Оба варианта на пике были опубликованы спустя 10 мин после регистрации.
В первом варианте задания были опубликованы по отдельности 5 мин + 5 мин и каким-то образом получилось 15 мин. Как будто ко времени с начала реги прибавляется последнее время из таблицы.
Во втором варианте 2 задания были опубликованы сразу за 10мин, а получилось 20 мин. По такой логике получается, что отправлять резултаты лучше по отдельности, быстрее будет. Почему так? Может я ебанулся уже.
Аноним 05/08/20 Срд 13:42:42 #138 №1768936 
>>1768916
Забей. Никто всё равно не поверит, что ты решил за 20 минут
Аноним 05/08/20 Срд 13:47:54 #139 №1768942 
>>1768702
Скинь его сюда, я отсосу
Аноним 05/08/20 Срд 13:50:59 #140 №1768951 
>>1768942
>>1768702

А не, иди нахуй, я сам подобрал.

Так что максимум подрочить могу
Аноним 05/08/20 Срд 13:52:35 #141 №1768960 
>>1768936
>Забей. Никто всё равно не поверит, что ты решил за 20 минут
Причем тут это.
Ну смотри, если я решаю за 24 часа 2 задания. Отправляю 1 решение спустя 12 часов после реги. Спустя 24 часа после регистрации отправляю 2 решение. Казалось бы должно получится 24 часа, но получится 24 + 12 = 36 часов.
А если отправить сразу 2 после 24 часов в результате получится 48 часов.
Так понятней?
Аноним 05/08/20 Срд 17:25:09 #142 №1769249 
>>1768951
На сайте касперского надо указывать ник в 10 чаров из-за того что алгоритм в 3 таске принимает чанк такого размера?

Браво! Браво! Это просто охуительно! В след раз они сами ники будут раздавать: baitosos, exploit_mne_v_zhopu. Красавчики ребята, вот так надо опускать байтопетухов
sageАноним 05/08/20 Срд 19:59:07 #143 №1769329 
>>1768936
А что там за задания были? У меня так и не дошли руки зарегаться.
Аноним 06/08/20 Чтв 03:05:42 #144 №1769528 
>>1750064
Это нормально, что он на почту ничего не прислал?
Аноним 06/08/20 Чтв 08:49:10 #145 №1769586 
>>1769528
Думаю да. Мне тоже ничего не приходило. Даже после отправки всех решений ничего не приходит.
Аноним 06/08/20 Чтв 12:14:21 #146 №1769715 
как опустить punix петуха в чате, если не программист?
Аноним 06/08/20 Чтв 12:26:01 #147 №1769729 
>>1769715
Обоссы его.
Аноним 06/08/20 Чтв 12:27:05 #148 №1769730 
как научно опустить punix петуха в чате, если не программист?
Аноним 06/08/20 Чтв 12:49:56 #149 №1769759 
>>1769715

В смысле ПитухОС или в смысле Punix?

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

Если второй - то там уже нужно по-английски и это надо учиться на форчан в политач.

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



Аноним 06/08/20 Чтв 16:29:38 #150 №1770021 
>>1769759
>пользователь пролобированых в пиндосское образование калькуляторов от техасов никем иным как чистокровным пиндосом быть не может
это в /zog/
Аноним 06/08/20 Чтв 19:54:50 #151 №1770196 
>>1769586
Так как пароль от третей таски узнать?
Аноним 06/08/20 Чтв 21:57:29 #152 №1770314 
>>1770196
Выше же писали, что нужно сбрутфорсить.
Аноним 07/08/20 Птн 17:10:23 #153 №1771127 
>>1770314
Серьёзно? Или тролишь?
Аноним 07/08/20 Птн 19:16:20 #154 №1771276 
.PNG
>>1771127
Погоди, ты про пароль от архива или про пароль от самого крякми? Если про архив, то пароль брутфорсится. Пароль от архива: infected
Если про пароль от крякми, то тут хуй знает, что сказать. Просто и без задней мысли дебажишь. Проще тебе решение спалить, алгоритм там очень простой. Насколько я помню там свитч кейс переходы, которые от входных данных не зависят, так вот бери и проходи все переходы, делай пометки.
Аноним 07/08/20 Птн 21:27:13 #155 №1771384 
>>1771276
>infected
А это что-то вроде правил гигиены среди AV-ресерчеров (менять расширения на неисполняемые, пихать в архивы)? Подобный пасс из разряда дефолтных?
Мимо-другой-анчоус.
Аноним 08/08/20 Суб 02:13:52 #156 №1771560 
>>1771276
>infected
Спасибо. Я пробовал, но с первого раза не подошёл и я из ответов в треде подумал, что его брутить надо. А на самом деле скорее всего неправильно ввёл
Аноним 08/08/20 Суб 05:04:46 #157 №1771624 
>>1771384
Да,под архив и в неисполняемые чтобы случайно не запустить на основном хосте малварь,а сам инфектед очень давно используется,вроде с какого-то малварного трекера
Аноним 09/08/20 Вск 17:51:22 #158 №1772816 
>>1766116
>солидный пет-проект в копилку
А хуле его там писатьто. память, стэк-хуек, командная оболочка, регистровый файл.
Аноним 09/08/20 Вск 17:56:28 #159 №1772820 
>>1748635 (OP)
на Юричева ссылка протухла
Аноним 09/08/20 Вск 20:36:38 #160 №1772924 
>>1772816
Это примитивно. Надо еще мусор удалять, датафлоу смотреть, солверы подключать. Вот и будет что писать.
Аноним 09/08/20 Вск 22:32:02 #161 №1772989 
>>1772816
А еще soft mmu, парсер РЕ/ELF/MACH-O (смотря на какую ОС пишешь), эмуляция ммап/хуки на маллок/аппаратная эмуляция по надобности и дохуя чего прочего, если ты хочешь написать нормальный эмулятор. Ну и JIT можно прикрутить, а там cache и кастомный ассемблер. Да и дебажить это чудо порой непросто.
sageАноним 10/08/20 Пнд 18:13:50 #162 №1773489 
>>1772989
Так это уже выходит не CPU эмулятор, а целый DBA фреймворк. Ну тогда еще DSE туда прикрутить, program synthesis и перекомпиляцию в blackbox режиме. А что?
Аноним 12/08/20 Срд 17:20:00 #163 №1775276 
image.png
image.png
Introduction
Chapter 1: Introduction to Disassembly
Chapter 2: Reversing and Disassembly Tools
Chapter 3: Meet Ghidra
Chapter 4: Getting Started with Ghidra
Chapter 5: Ghidra Data Displays
Chapter 6: Making Sense of a Ghidra Disassembly
Chapter 7: Disassembly Manipulation
Chapter 8: Data Types and Data Structures
Chapter 9: Cross-References
Chapter 10: Graphs
Chapter 11: Collaborative SRE with Ghidra
Chapter 12: Customizing Ghidra
Chapter 13: Extending Ghidra’s Worldview
Chapter 14: Basic Ghidra Scripting
Chapter 15: Eclipse and GhidraDev
Chapter 16: Ghidra in Headless Mode
Chapter 17: Ghidra Loaders
Chapter 18: Ghidra Processors
Chapter 19: The Ghidra Decompiler
Chapter 20: Compiler Variations
Chapter 21: Obfuscated Code Analysis
Chapter 22: Patching Binaries
Chapter 23: Binary Differencing and Version Tracking
Appendix: Ghidra for IDA Users

Кек, это художественное оформление.
Уже хочется украсть почитать.
Аноним 12/08/20 Срд 19:41:45 #164 №1775442 
>>1775276
Держи в курсе, я подписался на твой пост.
Аноним 13/08/20 Чтв 00:11:58 #165 №1775597 
Кста, ребят, есть у кого доступ к семинарам от OSR? Темы там супертоповые, но просят бабок за них моё почтенье. Пробовал гуглить, но не нашел. Может есть у кого ченить?
Аноним 13/08/20 Чтв 10:46:44 #166 №1775808 
787px-Punchedcardprogramdeck.agr.jpg
Человек может закодировать гораздо лучше любого оптимизирующего компиллятора. Прув ми ронг.
Аноним 13/08/20 Чтв 17:09:48 #167 №1776273 
>>1775808
>маня не в курсе, что на перфокартах обычный соурскод
Аноним 13/08/20 Чтв 17:34:03 #168 №1776317 
>>1775808

Микроархитектуры. Они меняются каждый ебаный процессор.
Аноним 15/08/20 Суб 10:29:45 #169 №1777968 DELETED
>>1775442
>>1775276
Аноним 15/08/20 Суб 10:30:24 #170 №1777970 DELETED
>>1775276
>>1775442
Аноним 15/08/20 Суб 10:31:01 #171 №1777971 DELETED
>>1775276
>>1775442
https://x0.at/mZj.epub
СУКА БЛЯДЬ ЕБУЧАЯ ОБЬЗЬЯНА ХВАТИТ ФИЛЬТРОВАТЬ МОИ ССЫЛКИ
Аноним 15/08/20 Суб 11:11:15 #172 №1777989 DELETED
>>1777971
Спасибо, солнышко.
А твоя матушка порядочная женщина.
Аноним 17/08/20 Пнд 00:53:07 #173 №1779098 
>>1757169
Никто не в курсах?
Аноним 17/08/20 Пнд 23:58:44 #174 №1780006 
>>1775276
>>1775442
Ищи меня врейде на либгене.
Аноним 18/08/20 Втр 01:57:13 #175 №1780094 
>>1748635 (OP)
>Программируете микроконтролёры, пишете драйвера для ОС, а то и саму ОС
А разве все это уже давно не пишут на С/С++?
Ладно там суперпердольные оптимизации на мкк, но драйвера и аж целые ОС? Ну может пару инлайн вставок, но не от А до Я же.
Аноним 19/08/20 Срд 07:18:42 #176 №1781182 
>>1780094
>find /usr/src/linux -name "*.S" -type f | wc -c
>46727
Это ядро. Ну и так для примера, даже в userspace, в openssl куча имплементаций.
sageАноним 19/08/20 Срд 08:47:00 #177 №1781210 
>>1781182
> wc -c
> -c
Кого ты наебать пытаешься? Мы не дети из /s/.

В реальности там около 1к файлов, в которых стартапы и те функции из либц, которые имеет смысл писать на ассемблере (всевозможные memcpy), криптография и эмулятор FPU для x86 не знал, что его еще не дропнули!. Это на 25 семейств архитектур. Всего 10 файлов в драйверах (это пять сотых процента).

В общем, все, как и сказал >>1780094, за исключением того, что это не инлайн-вставки (фублядь, ебанутая практика), а отдельные файлы в основном один файл = одна функция.

Почти никто не пишет на асме ОС целиком, даже embedded RTOS не пишут. Из исключений разве что menuet/kolibri, но первый с огромной болью переползал на amd64, а вторая хочет arm, но уже не может.

И никто не пишет на асме драйвера, это не нужно, потому что это ОС предоставляет низкоуровневые функции для работы с железом, а драйвер перекладывает байтики.
Аноним 19/08/20 Срд 09:34:01 #178 №1781231 
>>1781182
Найс подстава лол
На самом деле куски кода на асме есть в бутлоудерах по большей части.
Дрова, допустим, все на сишке, а они составляют примерно 60% от общей кодовой базы, по весьма понятным причинам.
Впрочем, если ты зайдешь на гитхаб Линукса, ты увидишь процент асм кода (1.1%)
Что самое смешное, даже ПЛЮСОВОГО кода, который так ненавидит Торвальдс, больше (1.3%) кек
Асм часто не нужен даже при разработке на голый мкк без ОС типа STM32. Пишешь код на С, компилируешь с флагами оптимизации - профит.
Асм для реверсеров нужен, это да, но в разработке это уже атавизм в 99% случаев.
Аноним 19/08/20 Срд 10:58:06 #179 №1781284 
>>1780094
>А разве все это уже давно не пишут на С/С++?
Мне почему-то кажется, что байтослесари со стажем уже наизусть знают, как гцц/клэнг скопмилит тут или иную хуитку. Так что кроме загрузчика наврятли что-то напишут.
Аноним 19/08/20 Срд 11:03:58 #180 №1781290 
>>1781284
Да нихуя они не компилят, нет магии. Вот когда можно будет четко задать спецификацию компилю, кастомный calling convention, управление регистрами, тогда да. А до сих пор приходится юзать интринсики и реализовывать свои хелперы. Прям какую-то супер логику на асме естественно никто не пишет.
Аноним 19/08/20 Срд 23:33:07 #181 №1782217 
г-н юричев денег просит на написание книг(( sad
Аноним 20/08/20 Чтв 11:44:37 #182 №1782520 
>>1782217
Не нашел у него в блоге/твиттере подобных новостей, можно ссылку, пожалуйста?
Он собирает донаты и одно время искал работу/подработку по соответствующей специфике, но заявлений книги в обмен на деньги вроде не делал.
Аноним 23/08/20 Вск 18:23:28 #183 №1785711 
Что быстрее и насколько (изначально в а - единица):

>mov a, 0x40

или

>shl a, 5
sageАноним 24/08/20 Пнд 00:50:12 #184 №1785969 
>>1785711
А какой процессор-то? Шифт может быть медленнее, но при этом короче, поэтому все сильно зависит от архитектуры. Плюс у шифта зависимость по данным от инструкции, меняющей a.
sageАноним 24/08/20 Пнд 22:10:40 #185 №1787016 
Я так понимаю у IDA HOME урезанный набор поддерживаемых архитектур и нет декомпиля? В чем еще отличие от PRO версии? Апи такой же?
Вот думаю, может перестать быть пиратом и купить лицушную HOME версию, ибо разрабы плагинов кряки/старые версии не поддерживают. Вместо HexRays можно заменить на декомпиль гидры или retdec.
Аноним 25/08/20 Втр 02:12:10 #186 №1787200 
>>1787016
>HexRays можно заменить на декомпиль гидры или retdec
нельзя,ильFUCK запретил использование плагинов для прикручивания сторонних декомпилей
sageАноним 26/08/20 Срд 22:42:42 #187 №1789144 
>>1787200
Понятно. Глянул на офф. сайте различия, это пиздец. Кастрированная версия и 100 баксов не стоит, если честно.

Кстати, выше кто-то писал, мол инсталлер от 7.4 версии слили. Есть у кого ссылка?
Аноним 28/08/20 Птн 20:11:56 #188 №1791388 
https://philosopherai.com/philosopher/reverse-engineering-f0cba2

Что скажите? Права нейросеточка?
Аноним 29/08/20 Суб 22:24:05 #189 №1792183 
Аноны, сколько нужно вкатываться для нахождения первой работы? Допустим с нуля
Аноним 29/08/20 Суб 22:30:49 #190 №1792188 
>>1792183
Ты лучше объясни откуда у тебя появилось желание копаться в чужом дерьме? И почему ты решил сделать это работой и потратить на это единственную жизнь?
Аноним 29/08/20 Суб 22:33:03 #191 №1792190 
>>1792188
Ну так это интересно же, не? Нужны абсолютно все топики cs алгоритмы всякие и тд квинтессенция мира компутеров
Аноним 29/08/20 Суб 22:39:06 #192 №1792197 
>>1792190
То то мыщъх жаловался на рсдн что нихуя в алгоритмах не понимает.
Аноним 29/08/20 Суб 22:43:20 #193 №1792199 
>>1792190
Скорее станешь батей постоянно разгадывающим кроссворды и ходячей энциклопедией.
Аноним 29/08/20 Суб 22:56:26 #194 №1792209 
>>1792183
6-8 лет
Аноним 29/08/20 Суб 23:00:05 #195 №1792213 
>>1792209
Понял. Спасибо. Получается на время придётся вкатиться в какой-то яп и там работать? Что выбрать тогда? Java или C++? Сказал бы ассемблер но на нём работы нет
Аноним 29/08/20 Суб 23:17:56 #196 №1792227 
>>1792213
В джаву легче вкатиться, работа там проще, сам ЯП тоже проще, чем плюсы.
Если ты ищешь наиболее быстрого вката, иди в веб, анон. Потому что чтобы быть хорошим и востребованным байтоебом - надо не просто быть не тупым, а еще и иметь овердохуя опыта и, главное, искреннюю страсть к этому. Реверсинг, плюсы и прочая байтоебля - это не для вкатышей.
Аноним 30/08/20 Вск 13:14:16 #197 №1792587 
>>1792227
В бэкэнд на джаве идти тогда? Или на шарпе ибо он ближе к плюсам? Реально оттуда вообще в байтоеблю перекатиться? А то хочу именно сидеть с байтами дрочиться, но работа вот вот нужна ибо 3 курс уже, а с вуза без опыта выходить это пиздец
Аноним 30/08/20 Вск 23:03:27 #198 №1793103 
>>1792197
Нифига ты вспомнил... Этож лет 15 назад было.
Аноним 31/08/20 Пнд 15:40:58 #199 №1793812 
>>1792227
>Реверсинг, плюсы и прочая байтоебля - это не для вкатышей
Реверсинг это хуйня для аутистов с суженным сознанием, которые живут отстойно и у себя в воображении строят виртуальную карьеру реверсера. Сколько там двачеров разреверсили защиту хотя бы одной современной игры? Даже до поиска бинарных уязвимостей в рашкинских анало-говнетах не развились, чтобы пердолиться на заводике с гостайной по форме доступа. Чистый манямирок и кряканье crackme друг для друга.
Аноним 31/08/20 Пнд 16:15:16 #200 №1793853 
>>1792188
>Ты лучше объясни откуда у тебя появилось желание копаться в чужом дерьме? И почему ты решил сделать это работой и потратить на это единственную жизнь?
Он ботан-ноулайфер с комплексами и ему девочки не дают. Для него реверсинг это самоактуализация-самореализация, способ вырасти в своих глазах, т.к. другие способы самоактуализации ему не доступны.
Аноним 31/08/20 Пнд 18:33:00 #201 №1794034 
>>1793812
хз, на моем счету уже 4 CVE, 2 из которых во всемирно известном софте, уверен, что здесь такие еще найдутся, хоть и немного. Не вижу в чем проблема, какая разница, если человеку нравится этим заниматься? Вкатываться в это, тем более для зарабатывания денег, это архисложно по сравнению с многими другими отраслями, об этом и было сказано.
Аноним 01/09/20 Втр 08:03:18 #202 №1794445 
>>1793812
Этот подрыв неосилятора.

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

> Даже до поиска бинарных уязвимостей в рашкинских анало-говнетах не развились
Ну здесь вообще в голосину, сразу видно, что ты не в теме. Учитывая, что именно наши ребята ебут в хвост и гриву индустрию. Тот же Краш, Матросов, да и вообще все ребята, которые организовывают конференции у нас в рахе, куда приезжают шляпы со всего мира. Они настоящие первопроходцы. Там уровень гораздо выше, чем обычная бинарная эксплуатация, что является примитивом.
Аноним 01/09/20 Втр 08:08:52 #203 №1794446 
>>1794445
Это так круто технически, весь это реверс, и так глупо если представить что все труды идут только на то чтобы выложить крякнутый софт на торренты. Компьютерное робингудство.
Аноним 01/09/20 Втр 10:48:38 #204 №1794522 
>>1794446
>Это так круто технически, весь это реверс, и так глупо если представить что все труды идут только на то чтобы выложить крякнутый софт на торренты
У них суженное сознание, как я и говорил. Не могут посмотреть на себя в масштабах мира и развиваться дальше, искать для себя что-то более интересное.
Аноним 01/09/20 Втр 11:28:40 #205 №1794581 
Поясните мне, что можно написать такого на языке ассемблера, чего нельзя сделать на С?
Аноним 01/09/20 Втр 11:43:47 #206 №1794597 
>>1794581
Интринсики процессора, libc, ядро, компилятор самого си.
Аноним 01/09/20 Втр 12:01:46 #207 №1794602 
>>1794597
>ядро
Только бутлоудер и архитектурно-зависимые части (реализация прерываний, например), но это 1% от кода ядра. Все остальное пишется на Си (пример - ядро Линукса).
>libc
всего 14% кода на асме, бОльшая же часть кода опять же на Си.

Вывод - асм нужен в узкоспециализированных архитектурно-зависимых местах. Целиком от А до Я крупные проекты на чистом асме не пишут.
Аноним 01/09/20 Втр 12:07:43 #208 №1794609 
>>1794602
Ебать у тебя открытия. ИТТ асм читают и реверсят, а не пишут на нём проекты от а до я.
Аноним 01/09/20 Втр 17:17:04 #209 №1794959 
>>1794602
Да ладно!? Так всегда было между прочим. Даже первый компилятор языка высокого уровня был написан частично на асме, а не полностью.
Аноним 02/09/20 Срд 05:22:43 #210 №1795215 
>>1794602
>Вывод - асм нужен в узкоспециализированных архитектурно-зависимых местах. Целиком от А до Я крупные проекты на чистом асме не пишут.
Ебать америку открыл
Аноним 02/09/20 Срд 22:26:23 #211 №1795778 
Как вообще начать в этой сфере практиковаться? Есть что-то типо хеллоу ворлда для асм?
Аноним 03/09/20 Чтв 13:08:01 #212 №1796204 
Анчоусы, я тут вкатился в реверс и тут у меня встал вопрос. Нужно ли реверс инженеру в пентесте разбираться? А то пока таких задач не было
Аноним 03/09/20 Чтв 14:00:49 #213 №1796266 
>>1796204
Пентест с реверсингом вообще никак и нигде не пересекается.
Аноним 03/09/20 Чтв 19:07:53 #214 №1796565 
А где иду скачать?
Аноним 03/09/20 Чтв 19:08:58 #215 №1796567 
>>1796565
ida pro*
sageАноним 04/09/20 Птн 13:06:13 #216 №1797119 
>>1796204
Нет. А вот основы incident response, threat hunting, soc analysis стоит знать. Хотя общее развитие никогда не помешает, можешь вечером под пивко коробки на hack the box ломать.
Аноним 04/09/20 Птн 16:50:35 #217 №1797360 
У меня получится запустить код NASM для i386 на своем i5-6200U? Не спрашивайте, зачем мне оно надо. Просто ответьте, запустится или нет? Если нет, то не знаете интернет ресурсы, на которых может запуститься NASM для i386?
sageАноним 04/09/20 Птн 18:43:02 #218 №1797436 
>>1797360
Получится.
Аноним 08/09/20 Втр 10:45:22 #219 №1800336 
image.png
>Published 12/18/2020
Уже на год в сумме насдвигали, вроде.
Аноним 08/09/20 Втр 11:17:50 #220 №1800370 
>>1800336
Уже можно в обложке заказывать. Правда электронная версия будет доступна только ближе к новому году.
Аноним 08/09/20 Втр 19:34:01 #221 №1801022 
>>1796266
Почему же? Допустим, стоит задача по атаке на софтину, а исходных кодов нет - есть лишь закрытый бинарь.
Аноним 08/09/20 Втр 19:34:17 #222 №1801023 
>>1796567
На рутрекере.
Аноним 09/09/20 Срд 00:28:12 #223 №1801268 
>>1801022
и? Причем здесь пентестинг? Пентестеры атакуют софт/инфраструктуру существующими программами, не вдаваясь в подробности реализации атакуемых программ, реверсеры же анализируют программный код, по надобности восстанавливая алгоритмы программы. Их скиллсеты не пересекаются.
Для простоты понимания - пентестер атакует "вширь", реверсер - "вглубь". Причем скиллсет реверсера позволяет ему находить уязвимости нулевого дня, пентестеры такое делать не умеют, их знания гораздо, гораздо более посредственные.
Аноним 09/09/20 Срд 11:23:54 #224 №1801409 
>>1801268
То есть, пентестер = скрипт кидди? Я бы вот хотел искать 0day уязвимости в софте, а не быть макакой, которая с помощью кали линукса сканит сетку и подбирает эксплойт из metasploit под софтину и CVE, так как в 99% случаев известные всем уязвимости в реальных корпоративных сетях патчатся.
Аноним 09/09/20 Срд 11:44:21 #225 №1801426 
>>1801409
И смысл искать 0дей пентестеру?Только если он блечер и хочет потом зашифровать всем рансомварью
Компаниям по итогу нужен отчет где они проебались,а что делать с зиродеями о которых никто ничего не знает и патча для них еще нет?Разве что в жопу засунуть себе
Мимо
Аноним 09/09/20 Срд 13:16:01 #226 №1801517 
>>1801409
пентестеры не ищут зиродеи, они не располагают нужными для этого скиллами. И да, пентестеры - макаки, по сравнению с ресёрчерами, которые реверсят и фаззят софт, и при наличии дыры, могут написать под нее эксплоит. Пенстестер != ресёрчер. Это определения разных профессий в инфосеке.
Аноним 09/09/20 Срд 15:08:36 #227 №1801619 
>>1801517
Я слышал, что сейчас весь хакинг проводится на уровне сетевых протоколов и бэкенда, а бинарщину залатали целиком и полностью (разве что реверс-инжиниринг и крякание софта сохранились).
Аноним 09/09/20 Срд 15:57:17 #228 №1801672 
>>1801619
Бинарщину не залатают никогда, пока есть программы, написанные на неуправляемых языках программирования (С/С++), а таких программ дохуя и больше. Весь известный софт - операционные системы, драйвера, прошивки, веб-сервера (nginx + apache), куча библиотек - все на Сишке и плюсах написано. Глянь в CVE, любая дыра, получившая CVSS более 7, это бинарщина (немудрено, там импакт больше, чем в любых других видах уязвимостей). Доп. пример - в ядре Линукса нашли около 600 уязвимостей в 2019 году, в ядре винды примерно столько же. Единственное что - порог входа поднялся просто в стратосферу, ибо есть очень много защит, которые нужно уметь обходить. Если в 2007 году можно было на 1 баге в ядре написать, например, джейлбрейк на айос, то сейчас для такой цели нужно зачейнить от 5 до 8 эксплоитов с разными багами, чтобы достичь такого же результата. Хотя справедливости ради стоит отметить, что и информация стала дороже, куда дороже. И еще - защитные механизмы в определенных случаях способствуют взлому (лол, да), так что это вечная игра в кошки мышки. И даже если представить розовый мир с летающими пони, где вся инфрструктура компьютерных технологий написана на Расте, а не С/С++, это все равно было бы актуально, просто ЕЩЁ сложнее. Реальность такова, что современная архитектура железа не позволяет иметь абсолютную безопасность памяти на ВСЕХ уровнях абстракций. Для того, чтобы превратить бинарные дыры в прошлый век, нужен технологический переворот в мире железа, который пока не предвидется.
Аноним 09/09/20 Срд 16:21:04 #229 №1801697 
>>1801672
Нужно ли перед крякингом реального софта решать разного рода CTF-задачи, связанные с переполнениями буфера и форматными строками (со всеми этими запретами выполнения кода в стеке, канарейками и ASLR)? Или достаточно просто понять, как эксплуатируются те или иные уязвимости с разной защитой, прочитав какую-нибудь книгу вроде Shellcoder's Handbook, чтобы начинать работать с софтом промышленного уровня?
Аноним 09/09/20 Срд 17:47:05 #230 №1801799 
>>1801697
Основная проблема вката в эту область - необходимость изучать всю историю с самого начала. Условно, первый задокументированный случай эксплуатации бинарной уязвимости - это червь Морриса, который распространялся по сети благодаря переполнению буфера на стэке в демоне fingerd. Это случилось в 1988 году, формально начиная историю проблем с низкоуровневой безопасностью. Именно поэтому любой hello world бинарщины - это классический stack smashing из девяностых с перезаписью адреса возврата в стэковом фрейме уязвимой функции. С годами придумали немало защит, которые нужно уметь все обходить. ASLR, NX, канарейки есть примерно с 2004 года, они дефолтные, причем как в пространстве пользователя, так и в пространстве ядра. Их, без вариантов, нужно уметь обходить, это база. Но есть еще более современные способы защиты, которые обходить гораздо сложнее. Например, control flow integrity, который усложняет эксплуатацию через code reuse атаки. Более того, есть песочницы а-ля seccomp, которые не позволяют исполнять абсолютно любой произвольный код от лица программы, которая в нем находится. Обойти это можно только если есть дополнительный баг, желательно даже на уровне ядра. Апогей бинарной безопасности в данный момент - мобильные ОС - и Андроид, и iOS. Там, помимо всего прочего, есть криптографическая аутентификация указателей (в iOS точно, в андроиде точно не знаю, но нечто похожее точно есть), вышеупомянутый control flow integrity на уровне ядра и гипервизор ПОД операционкой, который сэндбоксит всё ядро. Именно поэтому на белом (повторяю, тарищ майор, на белом) рынке эксплоитов эксплоит на Андроид в данный момент - самый дорогой, около 2.5 миллионов долларов (удаленное исполнение кода без надобности интеракции жертвы, только чтобы к Интернету была подключена).

С течением времени будут придумывать новые защиты и новые обходы, ибо с С/С++ на другие языки никто ничего не будет переписывать. При этом, на этих языках дохуя нового кода пишется, а сломать что-то в бинарщине очень и очень просто. Совет тут простой как валенок - учить надо все подряд, связанное с низким уровнем. Писать много кода на С и С++, отлично знать ассемблер, уметь в соответствующий тулинг, на ВЫСОЧАЙШЕМ уровне знать кишки операционной системы (Линукс/винда/мэк/андроид на выбор) и иметь определенный склад ума и очень, очень много терпения, ну и участие во всех CTFах подряд будет явно нелишним, главное в правильных категориях участвовать.

Условно, вкат в каком-нибудь 2030 году для новичков будет совсем суровым, им помимо огромного багажа знаний надо будет пройтись по всей истории бинарного инфосека, который формально тянется с конца 80ых.
Аноним 09/09/20 Срд 18:54:31 #231 №1801878 
>>1801799
Большое спасибо за развёрнутый ответ.
Аноним 09/09/20 Срд 22:23:20 #232 №1802156 
>>1801697
Vulnerability research != exploit development != red-teaming/pentesting != reverse engineering. Так понятно? А на CTF разные задачи бывают, это зависит от тематики проводимого эвента.

>>1801799
> Именно поэтому эксплоит на Андроид в данный момент - самый дорогой
Это самая популярная платформа с высоким уровнем обхвата и своей спецификой, благоприятной для атакующего.
Аноним 10/09/20 Чтв 00:45:55 #233 №1802273 
>>1802156
>Это самая популярная платформа с высоким уровнем обхвата и своей спецификой, благоприятной для атакующего.
Да. Но вдобавок, по этой же причине, Андроид очень сложная цель для атаки, если не самая сложная.
Аноним 12/09/20 Суб 13:26:32 #234 №1804341 
>>1748635 (OP)
Почему в списке книг нет Shellcoder's Handbook?
Аноним 12/09/20 Суб 14:40:56 #235 №1804388 
>>1804341
Потому что. Нужно обновить шапку.
Аноним 12/09/20 Суб 14:59:36 #236 №1804393 
>>1748635 (OP)
Посоветуйте книги НА РУССКОМ, которые объясняют как находить уязвимости в программах, типо как взламывать ПО, желательно вообще для чайников можно не для чайников, ну и чтобы она была свеженькая, если эт возможно конечно.
Аноним 12/09/20 Суб 16:50:27 #237 №1804461 
>>1804393
свежих нет даже на английском. А вообще, без инглиша ловить нечего, анон, овладеть им гораздо важнее в первую очередь, поверь наслово.
Аноним 12/09/20 Суб 17:22:26 #238 №1804484 
>>1804393
На русском есть Хакинг: искусство эксплойта, только она показывает лишь самые основы без тех средств защит, которые описывал этот господин >>1801799. К тому же, нет такой книги, которая научит тебя именно НАХОДИТЬ уязвимости, и быть ее, в принципе, не может. Необходимо поучиться самому разрабатывать софт идентичный тому, что используется широким кругом людей, если уже умеешь - читать какой-нибудь "Совершенный код" Стивена Макконнелла, который даст правильное видение этой самой софтины как системы. Любое место в программе, где происходит получение входных данных извне (пользовательский ввод, сеть, файл, БД) - это потенциальная уязвимость, которую следует исследовать.

Анон выше прав, английский обязателен к изучению в 2020 вообще всем, не только айтишникам, ведь это открывает тебе доступ к глобальному рынку, к сообществам и ценной информации.
Аноним 12/09/20 Суб 17:37:57 #239 №1804502 
>>1804484
Там анон попросил свежую, а она 2008 года. С тех пор появилось с десяток новых защитных технологий, которые надо уметь обходить. Ну и надо уметь их не только эксплуатировать, а еще и находить. Просто втупую читать код/ассемблерный листинг, сугубо вручную реверся всё и вся, заведомо проигрышная тактика. Нужно уметь в большое количество тулинга и уметь писать собственные утилиты для поиска уязвимостей.
Аноним 12/09/20 Суб 17:45:54 #240 №1804507 
>>1804502
Лично я пробовал читать ассемблерный листинг/код, начиная с библиотечных/системных функций, выполняющих то, что я хотел бы атаковать. К примеру, хочу попробовать написать сетевой эксплойт под Apache, атаковав его со стороны клиента - ищу recv() и копаю под нее. В любом случае, ничего у меня не получилось, к сожалению - слишком глубоко пришлось копаться в коде, я так и не нашел целевой буфер, куда данные после приема recv'ом уходят. С реверсом получилось следующим образом: я вскрыл в IDA Pro одну софтину, начал копать с той же recv() и остановился на моменте, куда попросту не ссылается ничего. Наверное, это функция, которая вызывается через указатель, и понять, что ее вызывает, можно лишь с помощью дебага - а вот как работать в OllyDBG я, к сожалению, не смог разобраться (хотя GDB вполне осилил).
Аноним 12/09/20 Суб 18:32:22 #241 №1804555 
>>1804502
Алсо, почему бы не добавить в шапку треда канал LiveOverflow?
Аноним 12/09/20 Суб 19:08:36 #242 №1804577 
>>1748635 (OP)
>В этом треде мы изучаем самый компактный и низкоуровневый язык Ассемблер
Насколько быстро напишешь на Ассемблере программу уровня Фотошопа(или хотя бы калькулятор как в винде)?
Аноним 12/09/20 Суб 19:42:09 #243 №1804606 
Flare-On кто-то решает? https://2020.flare-on.com/
Почему так сложно сразу? На втором задании сижу не пойму что делать. Нужно восстановить битый PE файл накрытый upx и запустить его. Сделал ресайз секций, распаковал через upx -d, пересобрал таблицу импорта, пофиксил манифест и... и оно нихуя не работает, при запуске импорт не резолвит, хотя в IDA все ок. Что сделать то еще нужно?
Аноним 12/09/20 Суб 19:51:05 #244 №1804621 
>>1804507
Мое почтение за старание, но такой "грубый" подход занимает слишком много времени. Без фаззинга очень сложно искать уязвимости, а все существующие фаззеры медленные, нужно уметь писать свои.
Аноним 12/09/20 Суб 19:53:11 #245 №1804624 
>>1804577
Уровня фотошопа - всей жизни не хватит, такие вещи не пишут на ассемблере. А вот калькулятор можно написать. Ассемблер не для этих задач, короче.
Аноним 12/09/20 Суб 20:13:12 #246 №1804643 
>>1804606
А все разобрался, нужно было еще ASLR отключить.
Аноним 12/09/20 Суб 20:22:31 #247 №1804653 
>>1804502
Искусство эксплойта это про основу,она не сильно поменялась с тех пор
книжка маленькая,полезно прочитать будет имхо
>>1804555
потому что это для школьников,несерьезный уровень
Под пивасик разве что вечером посмотреть сойдет
>>1804577
Гвозди микроскопом не забивают,для этого молоток есть
Сьеби нахуй
Аноним 12/09/20 Суб 22:38:10 #248 №1804781 
>>1804624
>Ассемблер не для этих задач, короче.
У него в 2к20 вообще никаких задач нет, от слова совсем.
А реверс инжиринг это не разработка ПО.
Аноним 13/09/20 Вск 06:37:32 #249 №1804934 
>>1804621
Понятно. Надо научиться этому, значит.
Аноним 13/09/20 Вск 06:40:49 #250 №1804935 
>>1804653
> потому что это для школьников,несерьезный уровень
Всяко больше инфы для начинающих, чем во всяких книжках вроде "Искусство эксплойта" - там про обход канарейки, nx и ASLR вполне себе рассказывается.

Аноним 13/09/20 Вск 21:28:59 #251 №1805628 
Capture.PNG
Можете помочь с этим участком кода?
Что представляют собой эти string literals:
StringLiteral___28631336;
StringLiteral___28558824;
StringLiteral___28517688
И это:
String__TypeInfo->static_fields;
v10->Empty

Куда копать? Шарп после IL2CPP, если что
Аноним 14/09/20 Пнд 17:30:23 #252 №1806363 
>>1804653
>несерьезный уровень
Можешь посоветовать источники, которые дают серьезный уровень? Буду очень благодарен.
Аноним 14/09/20 Пнд 22:58:36 #253 №1806729 
https://download.vusec.net/papers/blindside_ccs20.pdf

Просто оставлю здесь, интересно почитать.

TLDR: Особенности процессора связанные со спекулятивным выполнением, позволяют вслепую брутфорсить адресное пространство ядра без крашей.
Аноним 14/09/20 Пнд 23:12:30 #254 №1806750 
>>1806363
нет таких источников и никогда не будет, особенно по бинарщине. Эти вещи нужно учить путем исследований, проб и ошибок.
Аноним 14/09/20 Пнд 23:15:53 #255 №1806762 
>>1804781
Да что ты говоришь? А бутлоудер ты на чем писать будешь? А шеллкод? Ты в курсе, что 14% кодовой базы glibc написана на языке ассемблера? Да, он САМЫЙ нишевый ЯП, да, в 99% случаев для реверсинга, но у него таки есть супернишевые задачи в разработке.
Аноним 15/09/20 Втр 16:20:40 #256 №1807331 
Привет. Нужна помощь по лабе, постараюсь деньгами не обидеть. Стучите в тг @twoomer
Аноним 15/09/20 Втр 17:02:24 #257 №1807373 
1567373387824.gif
>>1804577
В КолибриОС есть ANIMAGE, но я не знаю сколько ее писали.
Аноним 16/09/20 Срд 22:31:25 #258 №1808559 
Расскажите за профиты знания асма для стартапера-сиппшника.
Аноним 17/09/20 Чтв 03:10:13 #259 №1808701 
>>1807373
в колибри не все на асме написано
Уже давно как
вполне возможно что там плюсы или си
Аноним 17/09/20 Чтв 23:27:02 #260 №1809567 
>>1808701
Кроме асма там только С-- используется.
Аноним 18/09/20 Птн 11:05:15 #261 №1809815 
>>1808701
Нет, только асм.
Аноним 18/09/20 Птн 11:11:54 #262 №1809822 
>>1808701
>колибри
Шёл мимо, увидел Колибри, не смог пройти мимо.

Положняк по Колибри такой: "Эту бы энергию, да в мирное русло".

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

При всём уважении к труду разработчиков Колибри.
Аноним 18/09/20 Птн 11:14:09 #263 №1809826 
>>1808559
>Расскажите за профиты знания асма для стартапера-сиппшника.
Не может быть программиста на Си, не знающего хотя бы ОДИН ассемблер.

В этом плане x86 лучший вариант - таки CISC читается в разы легче чем RISC.
Аноним 18/09/20 Птн 14:08:53 #264 №1809933 
Хуя мой тред ещё перекатывают.
ОП первых тредов
>>1805628
>Не обозначил имена булевых переменных
>Что-то там гадает
sageАноним 18/09/20 Птн 23:52:01 #265 №1810356 
>>1809933
> ОП первых тредов
Ну охуеть. А кто перекатывает тогда, если не ты?
Аноним 19/09/20 Суб 01:41:31 #266 №1810425 
>>1810356
А кто его знает. Я где-то на пятом отвалился, если правильно помню. Тогда я ещё ядро венды реверсил, вот и создал. А сейчас окончательно деградировал, сложно это для меня но получаю больше в 2 раза, лол.
Вот и удивился, что тему развивают, шапку не проебали и прочее.
Аноним 19/09/20 Суб 04:50:15 #267 №1810477 
image.png
>>1809822
sageАноним 19/09/20 Суб 05:41:06 #268 №1810497 
>>1810356
Иногда я.
Аноним 19/09/20 Суб 18:19:03 #269 №1810981 
>>1806750
Они есть, без них никак.
Аноним 19/09/20 Суб 18:40:35 #270 №1811000 
>>1810477
Ну извини - не школа, а университет.
sageАноним 19/09/20 Суб 22:52:22 #271 №1811177 
>>1806363
Что тебя конкретно интересует? Общих источников нет, это нишевая тема. База - asm x86/arm, С/C++/Python/Rust, cpu internals (include vmx), os internals, static analysis (disasm, control-flow/data-flow analysis, binary lifting, optimization/deobfuscation techniques - MBA theory, recompilation - compiler theory), dynamic analysis (debugging, instrumentation, binary translation), binary instrumentation (static/dynamic), fuzzing theory and tools (SMT solvers, symbolic/concolic execution, program synthesis, hardware-based profiling - PMU, etc), modern os attack surface reduction and mitigations, code reuse attacks and variations, data-oriented attacks, side-channels/hardware attacks and mitigations, итд итд.
Аноним 20/09/20 Вск 01:20:04 #272 №1811284 
>>1810981
Нет, они отсутствуют. Есть outdated книги, которые тебя подведут к азам, но по-настоящему нырнуть можно только запустив руки по локоть в самостоятельный ресёрч.
Аноним 20/09/20 Вск 06:33:37 #273 №1811323 
Господа байтоебы, кто-нибудь занимается написанием на заказ, если у меня нет 6-8 лет на то, чтобы вкатиться в асм? Есть виндовое приложение, в которое нужно внедрить несколько дополнительных функций, реализовать это в виде сторонней гуевой утилиты, взаимодействующей с приложением. Прятать процесс, обходить защиты - не надо. Плачу сотни денег.
Оставляйте тележки итт
Аноним 20/09/20 Вск 06:48:36 #274 №1811325 
>>1811323
Есть https://forum.reverse4you.org/c/jobs/6
Создаешь там топик,он постится в https://t.me/r0_jobs
Меньше 200 долларов бюджеты не принимаются
И на ехелаб есть топик
там минимальный прайс это 50 баксов
Аноним 20/09/20 Вск 12:57:55 #275 №1811428 
>>1811177
Конкретно про механизмы защиты от бинарных уязвимостей - то, как определять, какие именно стоят на атакуемом софте и как их обходить. Как мне понять, используется тут ASLR или нет?
Аноним 20/09/20 Вск 12:58:57 #276 №1811430 
>>1811323
> 6-8 лет
Лол, асм за 30 минут учится.
Аноним 20/09/20 Вск 13:17:41 #277 №1811438 
image.png
Моё творчество. Задавайте вопросы.
Аноним 20/09/20 Вск 13:44:37 #278 №1811456 
>>1811325
О, спасибо, полезные ссылки
Бюджет у меня ближе к паре тыщ, поэтому обе площадки заебись
Аноним 20/09/20 Вск 13:51:37 #279 №1811458 
>>1811456
От вопросов, подобных заданному тобой, возникает желание распространять софт в искходном коде. Вот без шуток.
Аноним 20/09/20 Вск 15:01:02 #280 №1811508 
>>1811458
Да, с исходниками даже мне работы было бы максимум на полдня.
Аноним 20/09/20 Вск 20:50:35 #281 №1811897 
>>1806762
Подразумевается, что ты выучиваешь язык программирования и идешь работать, получая каждый месяц-два оплату за свой труд. Как в этом плане может быть полезен ассемблер?
>бутлоудер
И что, ты будешь постоянно работать пися бутлоадеры? Так часто телефонов не выпускают, да и Сяоми с Самсунгом для этого нужны 1,5 человека.
>А шеллкод?
За создание и распространение вирусов вообще уголовка предусмотрена. Да и нельзя рассматривать создание вирусов как постоянный и легальный способ заработка.
>что 14% кодовой базы glibc написана на языке ассемблера
Ну написано и написано, что тебе это даёт? Какой профит тебе от этого?
Аноним 20/09/20 Вск 20:54:50 #282 №1811900 
>>1811458
>От вопросов, подобных заданному тобой, возникает желание распространять софт в искходном коде.
Почему?
Опенсорс проекты в основном полное говно, все норм прикладное и ОС-по(Фотошоп, Винда, МАК-ос, Майкрософт Оффис(Ворд, Эксель) - только проприетарное и с закрытым кодом.
Аноним 20/09/20 Вск 21:51:29 #283 №1811963 
>>1811900
>Опенсорс проекты в основном полное говно
А кто сказал open source? EULA, запрещающая распростнять приобретённый исходный код - хорошее решение.
sageАноним 20/09/20 Вск 22:10:35 #284 №1811989 
>>1811428
Где тут? Какая ос? Какой софт? Запрашивать данные у ос/через наблюдения.
Аноним 21/09/20 Пнд 10:43:47 #285 №1812270 
>>1811430
тут проблема не асм выучить, а наработать хватку и интуицию реверсера, уметь программировать на хорошем уровне, и если ты ищешь дыры - уметь их искать и эксплуатировать. Это очень долго и сложно в виду большого количества защитных механизмов и в целом security awareness разрабов, наряду с тестами, статическими анализаторами до релиза и т.п.
Разрабам не настолько похуй на безопасность, как было было в 90ых, где нахождение и эксплуатация уязвимости требовали от хакера, как ты написал, 30-ти минутного изучение асма и базовые знания программирования. Уже давно все поменялось. Все стало куда интереснее, но сложнее.
Аноним 21/09/20 Пнд 11:00:08 #286 №1812283 
>>1811428
Стадия разведки (через тот же nmap - дефолтная процедура) не всегда, а точнее, почти никогда, не дает тебе полную инфу об атакуемой системе, многие вещи завязаны на интуиции и на знаниях множества технологий. Насчет ASLR - этот механизм защиты завезли в 2005 году в Линукс и Винду, в 2006 году в Мэк, отключается только вручную с правами рута. Соответственно, пространство ядра это не обошло стороной, есть KASLR, делающий то же самое, только в адресном пространстве ядра. Это присутствует и в мобильных девайсах, помимо десктопных ОСей, причем мобильные ОС защищены еще больше, чем десктопные, так как там буквально все процессы находятся в сэндбоксах, включая частично даже ядро (есть гипервизор, который ограничивает ядро от произвольных действий), начиная с Андроид 9, про iOS точно не скажу.
Аноним 21/09/20 Пнд 12:31:39 #287 №1812364 
>>1812283
Если я хочу набить руку на программировании на языках С, С++ и асм, чем именно посоветуешь заниматься? Писать свою операционную систему? Я потихоньку программирую под микроконтроллеры arm, осваивая их интерфейсы взаимодействия с периферией, но мне почему-то кажется, что там особо много кода не напишешь, тем более с библиотекой HAL. Алсо, как можно изучить кишки ОСей, тоже путем ковыряния, или же стоит прочитать что-то о них? Я читал Таненбаума (сети, ОС, архитектура), знаю большую часть терминологии и понимаю в общих чертах, как работает та или иная технология и куда следует копать, но сейчас не представляю, как выбрать цель для реверса/эксплуатации. Я читаю сейчас RE4B из шапки, понял, как орудовать IDA Pro и x64dbg (а также GDB и radare2), из эксплуатации пока проделывал только переполнение буфера без всяких защит и чтение памяти с помощью уязвимости форматной строки. @фф
Аноним 21/09/20 Пнд 13:44:42 #288 №1812452 
>>1811438
Задавайте хотя бы ответы, если нет вопросов.

Аноним 21/09/20 Пнд 14:52:56 #289 №1812515 
>>1812364
>Писать свою операционную систему
Неплохой вариант, кстати. Известные ядра, конечно, не переплюнешь, но в образотельных целях написать небольшое ядро - это отличный экспириенс.
>пока проделывал только переполнение буфера без всяких защит и чтение памяти с помощью уязвимости форматной строки
Это необходимая база, но если говорить о реальном мире - все уже стало куда сложнее. Учи паттерны уязвимостей, читай блоги исследователей и участвуй в CTFах. Учись атаковать кучу, не только стэк, учись эксплуатировать TOCTTOU уязвимости (классический пример: состоние гонки), более экзотические, но релевантные уязвимости, вроде type confusion. Находить уязвимости тоже надо уметь, на одном чтении ассемблерного листинга не уедешь.
Аноним 21/09/20 Пнд 16:32:50 #290 №1812635 
>>1812515
> паттерны уязвимостей
Не понимаю, что ты подразумеваешь под этим.
> читай блоги исследователей
А какие можешь посоветовать?

> учись эксплуатировать TOCTTOU уязвимости
> type confusion
Про этих чудищ я вообще впервые слышу, за исключением состояния гонки..
Аноним 21/09/20 Пнд 16:34:20 #291 №1812637 
>>1812515
На ум приходит только одно: смотреть существующие CWE и попутно гуглить информацию о том, как их атаковать.
Аноним 21/09/20 Пнд 16:55:17 #292 №1812648 
>>1812515
И еще хотел узнать.
>Находить уязвимости тоже надо уметь, на одном чтении ассемблерного листинга не уедешь
Как осуществляется этот поиск, если я, допустим, не знаю все CWE (да и было бы крайне затруднительно знать их все, я полагаю), а одно чтение ассемблерного листинга не помогает? Выше ты (вроде) писал про написание собственных фаззеров, но как писать их, если мы заранее не знаем, что в конкретном куске кода (где со стороны сетки приложение принимает данные, или со стороны stdin) могут быть именно такие уязвимости, а не какие-то другие?
Аноним 21/09/20 Пнд 16:58:21 #293 №1812654 
>>1812635
>Не понимаю, что ты подразумеваешь под этим.
Я имел в виду примитивы эксплуатации. Например, если программа может войти в определенное уязвимое состояние, ты должен уметь определять то, что ты можешь поиметь с этого как атакующий (примитив на произвольное чтение/запись, возможность использовать указатель, память для которого была ранее освобождена и т.п., примерров достаточно много). Вкратце, если ты вдруг замечаешь что-то неладное, ты должен уметь определять эксплуатабельность, ибо не каждый баг == дыра в безопасности.

>А какие можешь посоветовать?
Всех зарубежных, ребята, работающие в google project zero, самые топовые и имеют дело с наисложнейшими уязвимостями, как в плане поиска, так и в плане их эксплуатации.

>за исключением состояния гонки
Состояние гонки входит в категорию TOCTTOU. Сие расшифровывается как time of check to time of use. Side channel attacks, например, это тоже TOCCTOU, но это аппаратная атака, а не программная.
>>1812637
верно, только таким образом можно запрыгнуть глубоко в кроличью нору.
Аноним 21/09/20 Пнд 17:01:09 #294 №1812657 
>>1812648
>но как писать их
Ответ один - реверс инжиниринг. Ты должен понимать ДОСКОНАЛЬНО ту цель, которую атакуешь, именно поэтому harness setup для фаззинга может вполне длиться несколько месяцев для серьезных целей. Ну и не забывай про интуицию, такие вещи уже исключительно с опытом приходят.
Аноним 21/09/20 Пнд 17:14:23 #295 №1812668 
>>1812654
>>1812657
Спасибо за советы.
Аноним 23/09/20 Срд 18:17:37 #296 №1814434 
По задания моего говновуза я должен писать на ассемблере в VS на винде. Но сука, там код с другими регистрами. При вводе/выводе на косоль вызываются, сука, магические функции. Тогда как весь интренет напичкан понятными туториалами по ассемблеру на Линуксе. Там уже другой код, но если его тупо скопипастить в Вижак, то нихера не запустится. Правильно ли я понимаю, что это разность архитектур процессоров (x64 и x32)?
И заставит ли меня переписывать всё препод, если я буду на линуксе код писать. Как думаете?
Аноним 23/09/20 Срд 18:27:44 #297 №1814447 
>>1748635 (OP)
сап аноны, норм ли вкатываться в программирование с ассемблера?
Аноним 23/09/20 Срд 18:29:57 #298 №1814451 
>>1814434
> там код с другими регистрами
Дело в другой архитектуре процессора, а не в операционной системе. Разница в программировании на асме под Linux или Windows лишь в системных вызовах.
> Правильно ли я понимаю, что это разность архитектур процессоров (x64 и x32)
Если регистры rax, rbx, rcx, ... то 64 битный intel, eax, ebx, ecx, ... - 32-битный intel, r0, r1, r2, .. - ARM
Аноним 23/09/20 Срд 18:30:34 #299 №1814455 
>>1814447
Вполне возможно.
Аноним 23/09/20 Срд 18:31:15 #300 №1814458 
>>1814451
Воу, спасибо, дружище!
Аноним 23/09/20 Срд 18:32:25 #301 №1814459 
>>1814458
По сути, тебе придется другие системные вызовы использовать (как минимум один из них - для завершения программы).
Аноним 23/09/20 Срд 18:32:59 #302 №1814461 
>>1814455
я просто насколько понял что в него можно вкатываться поскольку он очень сложный как то так сказали, и с остальными языками будет проще
Аноним 23/09/20 Срд 18:35:25 #303 №1814465 
>>1814461
Честно говоря, не знаю еще ни одного человека, у которого бы получилось вкатиться в программирование с ассемблера. То, что ассемблер сложный - миф, он сложен не сам по себе, а тем, что на нем разрабатывать полноценный софт придется крайне долго.
Аноним 23/09/20 Срд 18:40:22 #304 №1814466 
>>1814459
А, стоп, я выебывался, что мне сейчас придется использовать магическую WriteConsoleA, так а по сути в любом случае, на любой архитекуре, для вывода ты просто находишь команду и передаешь в нее аргументы (через регистры). Я правильно понял?
Аноним 23/09/20 Срд 18:42:19 #305 №1814467 
>>1814466
Да, все так.
Аноним 23/09/20 Срд 18:45:20 #306 №1814468 
>>1814467
Вопрос немного не в тему: а как дотошно понять, что происходит при выводе на консоль, то есть при вызове этой команды?
Аноним 23/09/20 Срд 18:53:06 #307 №1814471 
>>1814468
Изучить операционные системы хотя бы в теории, ведь когда ты пишешь софт в юзерспейсе, твоя программа обращается к оси (в твоем случае запрашивает вывод символов в консоль), а она делает всю работу.
Аноним 23/09/20 Срд 18:56:20 #308 №1814473 
>>1814471
А почему это делает ОС, а не я? Ведь код зависит от архитектуры процессора, а не от ОС.
Аноним 23/09/20 Срд 21:05:41 #309 №1814520 
>>1814447
Да
Аноним 23/09/20 Срд 21:07:35 #310 №1814521 
>>1814451
>Разница в программировании на асме под Linux или Windows лишь в системных вызовах.
source и destination переставлениы. Вроде как Intel vs AT&T стили
Аноним 23/09/20 Срд 21:22:20 #311 №1814528 
>>1814473
Можешь и сам. Но для этого тебе понадобится MS-DOS - пишеь по адресу 0B8000 в память, а циферки и буковки сами появляются на экране.

Современные OC не дают прямого доступа к устройствам из юзерспейса. И совершенно правильно поступают.


sageАноним 23/09/20 Срд 21:36:28 #312 №1814539 
>>1814521
> source и destination переставлениы
AT&T синтаксис и в mingw-gcc есть. Точно так же, как в линуксе никто не запрещает тебе использовать ключ -Mintel.

>>1814528
> Современные OC не дают прямого доступа к устройствам из юзерспейса
Всегда есть выход. Например, /dev/mem в данном конкретном случае (хотя ее активно выпиливают по дефолту).
Аноним 23/09/20 Срд 22:21:26 #313 №1814584 
>>1814539
>Например, /dev/mem в данном конкретном случае

этой ебале рут нужен
Аноним 23/09/20 Срд 23:21:49 #314 №1814632 
Скачал hex-редактор, открываю текстовый файл а там пиздец. Как начать в этом разбираться? Куда копать подскажите если к примеру я хочу побайтово прочитать что там написано, может таблица по переводу есть или подобное
Аноним 24/09/20 Чтв 00:48:55 #315 №1814667 
image.png
А правда что если ты знаешь один ассемблер, то ты знаешь их все? Или это чёс?
Аноним 24/09/20 Чтв 00:58:32 #316 №1814673 
>>1814539
> Точно так же, как в линуксе никто не запрещает тебе использовать ключ -Mintel.

И что, скушает .asm, сгеренированный в msvc?
sageАноним 24/09/20 Чтв 01:21:27 #317 №1814687 
>>1814673
Почистишь - скушает, различия в синтаксисе самих мнемоник будут минимальные. А директивы естественно разные у всех.

>>1814667
> А правда что если ты знаешь один ассемблер, то ты знаешь их все?
Почти правда. Но у каждой архитектуры свои тонкости: где-то ебнутые режимы адресации, где-то неявные регистры, где-то delay-слоты. Но ты берешь мануал, смотришь общее описание, смотришь режимы адресации, проглядываешь мнемоники за вечер и уже более-менее можешь читать код. Некоторые архитектуры отличаются сильнее (специализированные DSP с VLIW, например), на них уходит больше времени. Но все равно это гораздо быстрее, чем осилять первый в жизни ассемблер.

>>1814632
Если бы ты поискал свой вопрос в гугл, а не сюда, то нашел бы ASCII table. Или Unicode table. Или способ кодирования в UTF-8.
Аноним 24/09/20 Чтв 04:13:27 #318 №1814760 
>>1814687
>за вечер и уже более-менее можешь читать код
засада в том, что оптимально писать код под разные архитектуры - это сложно. надо знать все эти тонкости, приёмчики, как лучше всего задействовать имеющиеся средства. и вот это всё индивидуально для каждой архитектуры.
Аноним 24/09/20 Чтв 10:25:00 #319 №1814846 
>>1814687
>>1814760

Тогда ответьте по существу - вот лично вы сколько ассемблеров знаете? (32 и 64 бита х86 можно считать за разные)
Аноним 24/09/20 Чтв 16:36:50 #320 №1815203 
>>1814846
228
Аноним 24/09/20 Чтв 20:02:11 #321 №1815374 
Как вкатиться в асм то? В шапке ничего толком не написано
Аноним 24/09/20 Чтв 21:59:40 #322 №1815528 
>>1815374
>Как вкатиться в асм то?
Напорись на баг в системной библиотеке или ОС, расковыривай его, рано или поздно дойдёшь до пошагового ассемблера
Аноним 25/09/20 Птн 04:51:49 #323 №1815606 
>>1815374
На моей материнке был баг в BIOS, из-за которого она не могла нормально работать с большим жёстким диском. Это приводило к невозможности загрузки ОС.
Я написал небольшой workaround на ассемблере, который переназначал кое-какое прерывание и располагался в MBR.
Вот так и вкатился-попрактиковался. Можно ещё ассемблерные вставки пописать для оптимизации производительности критичных участков программ. Тока это надо иметь программу и реальную необходимость.
На всю историю, включая исследование проблемы ушло где-то 2 недели.
А новая материнка стоила 1500 руб. Но я был нищеброд тогда, и у меня было много времени.
Были бы деньги, я б не задумываясь бы купил бы новую мать и закрыл бы вопрос.
Аноним 25/09/20 Птн 05:10:38 #324 №1815607 
>>1815374
Советую книгу Столярова, называется "Низкоуровневое программирование".
Аноним 25/09/20 Птн 10:54:25 #325 №1815727 
>>1815374
Я изучил MOS 6502 ассемблер по книжке, не видев до этого компьютер вживую, только на картинках. Книжка была библиотечная, переводная и посвящалась программированию на ассемблере для Apple I. В принципе, тогда я не изучил ассемблер, а просто понял как он работает. А впервые пощупать удалось в школе на БК-0010Ш. "Пидипишный" ассемблер это масло. Если на нём долго писать, то со временем можно напрямую в машинных кодах писать, настолько он прост. Залить видеопаиять сплошным цветом - как ещё проверить что ассемблер работает?
Затем 8080. Вот это было время. Программы в сотни строк. Это не какой-то там тормозящий Бейсик. Это ассемблер.
Ну а затем 8086, затем защищённый режим 80386, а затем интерес к ассемблеру пропал.
sageАноним 25/09/20 Птн 10:58:20 #326 №1815729 
>>1815607
> Столярова
Ты бы еще сикп посоветовал.
Аноним 25/09/20 Птн 12:10:45 #327 №1815759 
>>1815727
Сколько тебе вообще лет?
*мимо?
Аноним 25/09/20 Птн 12:22:52 #328 №1815772 
>>1815759
Точно не помню. Или 47, или 48. Где-то так.
Аноним 25/09/20 Птн 13:13:24 #329 №1815806 
1519838723324.gif
1480112224441.png
Там это, исходники xp и не только слили. Причём уже где-то около недели прошло, а в новостных агрегаторах только сейчас появилось.
https://mega.nz/file/PdhxBSZD#w-O3C-BAMwE4E02qPn_fSdTivILcE8hzk9PeyoXg7wU
magnet:?xt=urn:btih:1a4e5b67060ff2bc8fe2de36a6c265c77f392a0c
https://pixeldrain.com/u/eikufy8J // torrent file
Аноним 25/09/20 Птн 13:17:47 #330 №1815811 
изображение.png
>>1815806
>исходники xp и не только слили

Аноним 25/09/20 Птн 13:39:46 #331 №1815827 
>>1815811
Я сижу на линухе, есть софт под линух чтобы поковырять проги на исходники? знаю про ollydb, но тот только для винды. Как вообще с RE и ассемблером дела обстоят на линухе. Виртуалка есть, но хочется нативного.
Аноним 25/09/20 Птн 17:03:30 #332 №1816020 
>>1815729
Что не так со Столяровым? Именно его книга помогла мне освоить NASM.
Аноним 25/09/20 Птн 17:06:09 #333 №1816024 
>>1815827
На линухе есть Hopper и GDB. Но вообще, линуха - это мир свободного ПО (в том числе и драйверов), которое пишут на основе проприетарщины после реверса.
sageАноним 25/09/20 Птн 17:19:01 #334 №1816046 
>>1816020
Что не так с человеком, который в 2016 году предлагал изучать CVS? Паскаль? С человеком, который выдает свои заблуждения за истену и высрал по этому поводу несколько книг? Хороший мужик, лойс.

>>1815827
r2 попробуй. Если сразу не стошнит, будешь пользоваться и радоваться.
Аноним 25/09/20 Птн 18:01:07 #335 №1816133 
>>1816046
>который в 2016 году предлагал изучать CVS? Паскаль?
Вероятно ты так же ненавидишь свою первую учительницу, которая учила тебе алфавиту.

Чем плох Паскаль? Да ни чем. То же самое, что и Си.
Аноним 25/09/20 Птн 18:06:19 #336 №1816149 
>>1816024
>>1816046
Я хочу вкатиться в ассемблер, но сижу на линухе, как то давно начинал, потом забросил. Теперь вот снова вернулся.
Что лучше, Hopper или radare2? Или это одно и тоже? Мне так чтобы реверсить можно было и качать навык в ассемблере.
Аноним 25/09/20 Птн 18:17:26 #337 №1816163 
>>1816149
бля hopper вообще платный сука.
Аноним 25/09/20 Птн 18:47:16 #338 №1816198 
>>1816046
> Что не так с человеком, который в 2016 году предлагал изучать CVS? Паскаль?
Интересно, как тот факт, что он учит паскалю, мешает ему учить программировать на ассемблере? Поссаль предлагается классической российской системой образования, и именно на нем выросло немало программистов (если говорить об академической среде), это не хорошо, но и не плохо.
Аноним 25/09/20 Птн 18:48:31 #339 №1816199 
>>1816149
radare2 - это дизассемблер, а Hopper - это дебаггер. Первое позволяет тебе прочитать бинарный файл, а второе - выполнить его, наблюдая в режиме реального времени за тем, что происходит с регистрами и стеком.
Аноним 25/09/20 Птн 19:12:03 #340 №1816216 
>>1816199
Ок, чем можно заменить тогда платный hopper?
И подойдет ли nasm для изучения, или лучше yasm или fasm. Какой вообще лучше стек выбрать для линуха чтобы вкатиться и изучить? Подскажи плис.
Аноним 25/09/20 Птн 19:13:48 #341 №1816219 
>>1816216
>И подойдет ли nasm для изучения

gcc пойдёт
Аноним 25/09/20 Птн 19:15:22 #342 №1816223 
>>1816216
> чем можно заменить тогда платный hopper?
GDB с горлом хватит.
> И подойдет ли nasm для изучения,
Да.
> Какой вообще лучше стек выбрать для линуха чтобы вкатиться и изучить? Подскажи плис.
Вкатиться во что?
Аноним 25/09/20 Птн 21:39:40 #343 №1816301 
>>1816223
Попутный вопрос, где можно заюзать ассемблер? Какое у него практическое применение, и как можно на нем заработать? На высокоуровневых , ну и на си подобных еще можно подянть бабок, а тут? Кроме как пилить всякие шелы.
Аноним 25/09/20 Птн 22:08:40 #344 №1816331 
>>1816301
Не парься. Когда тебе понадобится ассемблер, ты об этом узнаешь. Учить только лишь потому, что это круто - бессмысленно. Вот интерес - это хорошая причина выучить какой-нибудь ассемблер.
Аноним 26/09/20 Суб 05:52:14 #345 №1816470 
>>1816301
Лично я учил его как раз для того, чтобы вкатиться в эксплойты и реверс.
Аноним 26/09/20 Суб 12:43:14 #346 №1816556 
>>1815806
Ну что, пацаны, собираемся для компиляции и доработок? Хотеть встроенную в IDE (VSCode или хотя бы Visual studio community) однокнопочную систему для компиляции отдельных прог и отдельную кнопку сделать заебись собрать готовый ISO.
Аноним 26/09/20 Суб 12:47:28 #347 №1816559 
>>1816556
Надо создавать конфу в телеге.
Аноним 26/09/20 Суб 12:58:31 #348 №1816563 
>>1816559
>телеге
>Регистрация по номеру, все аккаунты давно слиты товарищем майором
Я за.
Аноним 26/09/20 Суб 13:00:34 #349 №1816564 
>>1816563
Покупаешь левую симку, зарегистрированную на какого-нибудь хача, в одной из подпольных контор, и регистрируешься.
Аноним 26/09/20 Суб 13:08:22 #350 №1816567 
>>1816564
Да это понятно. Но всё равно не анонимно.
Тут всё нужно начинать так, чтобы не выпилили. Поэтому никаких гитхабов и анальных телеграмов, трущих посты по DCMA.
Аноним 26/09/20 Суб 14:04:36 #351 №1816623 
>>1816556
Вот черти. И ведь можете собраться. Только зачем? Не надоело быть "левшами", подковывающими механических блох?
Аноним 26/09/20 Суб 14:12:27 #352 №1816651 
>>1816623
А хуй его знает. Понастальгировать, накатить пару патчей и запуститься на собственноручно собранной винде - разве это не кайф?
Впрочем, активности что-то не видно. Утекает только то, что нахуй 99,999% не нужно.
Аноним 26/09/20 Суб 14:30:26 #353 №1816698 
>>1816651
Ну если только на Эльбрус в нативный 128-бит код портируете. :-)

Кстати, конфу в телеге вполне можно создать, только не палиться. Совсем не палиться, чтобы никто не подкопался. Типа исследование. Просто там отбирать людей. А конфа должа быть настолько легальна, что даже ссылки на 2ch в ней бы считались моветоном.

Но всё же я против. Если делать совсем нечего - лучше бы мне помогли.
Аноним 26/09/20 Суб 14:49:01 #354 №1816718 
>>1816698
>Если делать совсем нечего - лучше бы мне помогли.
Думаю, тебе будет помогать не интересно. А что ты делаешь?
Аноним 26/09/20 Суб 15:02:07 #355 №1816732 
>>1816718
Да вот систему команд придумал, а компилятора для неё нет. Собственно помощь заключается в изучении системы команд. Может какие функции полезные кто напишет, пока изучать будет. Вот как-то так.
Аноним 26/09/20 Суб 17:51:21 #356 №1816899 
Поможите плис, опыта в асме нету. Я тот анон что на линухе.
По радару.
Можно ли им просмотреть двочный всех програм, не обязательно exe файлов.
Как наиболее быстро выучить язык асма, если куча процессоров, архитектур и тд, и разые инструкции. И еще разрядность. Можно ли как-то на асме смотреть системыне вызовы и процесыы на линухе? Но хочется для начала все таки освоить яп асма. Есть варики это сделать быстро.
Аноним 26/09/20 Суб 17:53:43 #357 №1816900 
>>1816899
Выучи сначала один из ассемблеров.
Аноним 26/09/20 Суб 18:45:08 #358 №1816928 
>>1816900
Какой выучить лучше?
Я в них плохо шарю, с какого начать.
Могу nasm, или лучше под винду? Я вообще хз с чего начать. Я читнул про насм - как бы ниху сложного, знать регистры, как работать с памятью и пару моментов.
Аноним 26/09/20 Суб 18:46:10 #359 №1816929 
>>1816928
А для чего тебе? Софт под какую ось ты хочешь реверсить?
Аноним 26/09/20 Суб 18:48:16 #360 №1816930 
>>1816929
Для себя, для развития, ну и чтобы если что шелы пилить. Нуно как-то зарабатывать.
Аноним 26/09/20 Суб 18:50:36 #361 №1816933 
>>1816930
Не знал, что на создании шелл-кодов вообще можно заработать.
Аноним 26/09/20 Суб 18:54:42 #362 №1816934 
>>1816933
Монетизация различных функций - безгранична, в теории, начиная от дудоса например, или шантажа. Но в целом, мне бы просто начать для общего развития.
Аноним 26/09/20 Суб 19:04:33 #363 №1816942 
>>1816934
Бляяяя.... На, почитай - http://rus-linux.net/MyLDP/BOOKS/zip/hackers-heroes.pdf

Пока не осилишь - не пиши тут.
Аноним 26/09/20 Суб 20:45:50 #364 №1817006 
>>1816942
Спасибо, начал читать. Желание узнать асм - так как вирусология - перспективное направление и продукты на определенных рынках стоят не мало. Да и самому можно юзать тоже.
Аноним 28/09/20 Пнд 07:53:25 #365 №1817913 
А в радаре можно любой файл дизасемблить? Какое вообще расширение можно юзать, .o , .exe? Или можно вообще все разложить на атомы?
И еще, что лучше все таки, фасм или насм? Какой язык учить? Там немного синтаксис разный, но у фасма есть 64 бита.
Аноним 28/09/20 Пнд 10:18:58 #366 №1817951 
>>1817913
Какая нахуй разница какое расширение у файла...
Возьми блчдь и скачай этот радар
Зачем спрашивать?
Аноним 28/09/20 Пнд 10:27:00 #367 №1817953 
>>1817913
>расширение можно юзать, .o

objdump -d mycode.o | less
Аноним 28/09/20 Пнд 11:52:00 #368 №1817989 
>>1817951
Да скачал я, как запустить cutter? Качал гуевину. В оф доках даже нету как запустить софтину, только картинки. Таб тоже не помогает. Сам радар есть - r2, робины и прочее. Вот катер не могу посмотреть, не нашел файлика для запуска.
Аноним 28/09/20 Пнд 12:48:04 #369 №1818020 
Можно в иде поставить брекпоинт на область памяти?
Аноним 28/09/20 Пнд 14:03:44 #370 №1818075 
>>1818020
Или как импортировать breakpoint list, надо 1000 адресов.
Аноним 28/09/20 Пнд 14:10:50 #371 №1818078 
>>1818075
Разобрался)
Аноним 28/09/20 Пнд 15:42:55 #372 №1818180 
>>1817989
ап как завести cutter? на радаре?
Аноним 29/09/20 Втр 12:04:07 #373 №1818732 
>>1818180
https://т.ми/joinchat/EFevPlAhSIzTdlO5TJbS2A
Тут спроси
Аноним 29/09/20 Втр 13:32:51 #374 №1818789 
image.png
>>1817989
>>1818180
>как запустить cutter?
Чел, ты не можешь пойти на github, скачать последний релиз под шиндовз и запустить cutter.exe - как ты собрался вообще что-то реверсить?
Аноним 29/09/20 Втр 15:24:11 #375 №1818841 
>>1816928
>>1816899
Главное начать, вообще без разницы какой. Потом сам поймешь что к чему и что тебе нужно
Аноним 29/09/20 Втр 23:07:15 #376 №1819210 
Fgt.png
Разбираясь с кодированием текстовых данных, узнал что кодирует мой компьютер обычный неформатированный .тхт файл по-умолчанию в однобайтовой ANSI. Но его также можно "Сохранить как..." и поставить кодировку юникода.
Сперва предположил что с помощью управляющих символов как-то она в файле устанавливается, затем после нескольких часов пердолинга с байтодрочерством в hex-редакторе дошло что кодировка походу скрыта от моих глаз где-то еще
Также подметил то что файлы сохраняются по 4Кб размера на диске, хотя они обычно у меня в несколько байтов влазят, я путем гуглинга нашел инфу что это возможно так называемые кластеры которые создаются файловой системой, и у меня вопрос: Как разобрать этот кластер на атомы? Как достать оттуда всю инфу? Где храниться имя моего файла и расширение? Где храниться кодировка файла?
Ни расширение, ни имя, ни указанной кодировки при открытии файла в hex-редакторе нету.
>>1814687
Пока в процессе активного пердолинга и прошу бывалых байтослесарей помочь в моем освоении машинного кода
Аноним 30/09/20 Срд 00:11:30 #377 №1819248 
>>1819210
Кодировка может храниться в начале файла как bom https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%80%D0%BA%D0%B5%D1%80_%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8_%D0%B1%D0%B0%D0%B9%D1%82%D0%BE%D0%B2
а может и вообще не храниться, просто нужно знать её, чтобы правильно открыть.
С ФС это не связано вообще никак.
Аноним 30/09/20 Срд 07:53:22 #378 №1819332 
>>1819248
Как это может не храниться? Как тогда компьютер узнает о том в какой кодировке открывать файл?
Аноним 30/09/20 Срд 08:01:24 #379 №1819339 
>>1819332
Компьютеру похуй, он читает байты, а байты переводит в символы конкретная программа по реализованной в ней логике.
Аноним 30/09/20 Срд 11:56:36 #380 №1819507 
firefox2020-09-3011-53-39.png
>>1819332

Для японских игор надо всю систему переводить на японскую локаль и на японсий формат записи времени потому они часто не используют юникод и вместо иероглифов отображается ??????
Аноним 30/09/20 Срд 13:44:42 #381 №1819615 
>>1819507
юникод и локаль это ортогональные вещи
Аноним 30/09/20 Срд 14:11:36 #382 №1819669 
Бывает у вас такое: реверсишь, реверсишь, вроде бы много сделал, инструментарий написал. А потом просто в душе не ебешь че дальше делать. Это нормально?
Аноним 30/09/20 Срд 15:42:34 #383 №1819774 
Я абсолютно никак не могу понять, почему переменная неведомым образом изменила свое значение! Или je не работает, сука.
Я четко присвоил переменной numberSign значение 0, сравнил заведомо ложное выражение, сработал флаг jne, потом я сравниваю numberSign с 1 при помощью je, и он, сука, говорит, что они РАВНЫ! Чтоооо?

код:
mov ecx, 1

mov numberSign, 0
mov bl, '1'
cmp bl, '-'
jne convertToNumber
mov numberSign, 1

convertToNumber:
LOOP convertToNumber

cmp numberSign, 1
je changeSign

changeSign:
neg eax; то умножаем его на -1
Аноним 30/09/20 Срд 15:43:25 #384 №1819775 
>>1819774
Извиняюсь, за сбитый код.

mov ecx, 1

mov numberSign, 0
mov bl, '1'
cmp bl, '-'
jne convertToNumber
mov numberSign, 1

convertToNumber:
LOOP convertToNumber

cmp numberSign, 1
je changeSign

changeSign:
neg eax
Аноним 30/09/20 Срд 16:36:42 #385 №1819792 
>>1819774
>>1819775
Почему может не работать je, а вот это cmp bl, '-' может?
Аноним 30/09/20 Срд 16:38:14 #386 №1819793 
>>1819792
Я поэтому и спросил, потому что программа работает не так, как ожидается
Аноним 30/09/20 Срд 16:42:43 #387 №1819796 
>>1819775
>>1819775

Ты какую-то хуйню написал. Во всех смыслах. Устану пояснять.

Зачем пустой цикл с одной итерацией?
Зачем условный переход на следующую инструкцию?
Аноним 30/09/20 Срд 16:44:36 #388 №1819798 
>>1819796
Я просто свою программу сократил, чтобы блять весь код сюда не вставлять. Но даже такая обрезанная херня не работает, так как надо. Либо я тупой, но укажите где именно
Аноним 30/09/20 Срд 16:53:40 #389 №1819802 
>>1819798
mov bl, '1'
cmp bl, '-'
Потому что ты загружашь в bl переменную которой нет, поэтому там ноль. Потом сравниваешь с переменной которой нет, т.е. с нолем. Джамп не выполняется и mov numberSign, 1

Где моё пиво?
Аноним 30/09/20 Срд 16:56:46 #390 №1819803 
>>1819792
>Почему может не работать je, а вот это cmp bl, '-' может?

Да, бля, КАК ты понял что оно не работает?
Ты даже не сказал что происходит.

На метку changeSing оно не должно перейти, потому что ты сравниваешь 0 и 1, в результате флаг Z не установите и je никуда не перейдёт.
Аноним 30/09/20 Срд 16:59:20 #391 №1819806 
>>1819802
Ты обосрался, кстати. Значение '1' легко помещается в регистр bl. И '1' это не переменная
Аноним 30/09/20 Срд 17:05:47 #392 №1819816 
>>1819803
СУКАААААААААА, я тупой дибил, я забыл, что если флаг не выполняется, то программа просто дальше продолжает работать и соответственно попадает в метку. Спасибо, анон
Аноним 30/09/20 Срд 17:20:23 #393 №1819836 
>>1819806
Так он сказал что в коде чтото меняет значение numberSign на 1. Я подумал что у него je changeSign срабатывает, а не должен срабатывать.
Аноним 30/09/20 Срд 18:44:42 #394 №1819906 
>>1819669
Не бывает. Бывает так: реверсишь, реверсишь, много сделал, инструментарий написал (говно полное), а потом просто смотришь, сколько еще нужно сделать, и думаешь, не дропнуть ли это все нахуй, и не пойти ли в грузчики.

>>1819332
> Как тогда компьютер узнает о том в какой кодировке открывать файл
Эвристики. Например, если попытаться декодировать файл как UTF-8, и при этом не попадется ни одного невалидного символа, можно предположить, что это UTF-8. Если попытаться открыть как cp1251, и кириллица будет перемешана с латиницей, то это была нихуя не cp1251, а скорее 1250 или 1252. Кроме эвристик, как уже сказали, есть BOM, а еще можно тупо предположить UTF-8 по умолчанию, или предложить пользователю задать кодировку в настройках.
Аноним 01/10/20 Чтв 17:13:37 #395 №1820532 
Какие есть IDE-ассамблер на телефон? Хочу говнокодить с своего ксяоми
sageАноним 01/10/20 Чтв 19:11:47 #396 №1820640 
>>1820532
> IDE
> ассемблер
Туда ли ты зашел?
Аноним 01/10/20 Чтв 19:20:46 #397 №1820650 
>>1820640
Я образно
Аноним 01/10/20 Чтв 19:32:45 #398 №1820671 
Я разобрался с софтом. Подскажите с чего начать и как вкатить в ре. Я имею ввиду что задрачить и к чему стремится в итоге.
Аноним 01/10/20 Чтв 19:53:16 #399 №1820702 
>>1820671
https://tproger.ru/translations/reverse-engineering-basics/
прочитал это.
По сути - советуют и разибрают язык Си. Попутно тупо смотрят код на ассемблере. Все.
Мне интересно в чем суть и какой алгоритм работы в ре. Смотреть код Си в дизассембеле и графы?
На что тогда стоит обращать внимание? Не скрою, я пока слабо понимаю как писать шелы всякие и эксплойты, но для себя интересно. Например, я не понимаю как написать прогу или ее исправить а асме чтобы она каким-то образом сделала то что мне надо. Например, локер, или чтобы тупо вырубало комп, или что-то в этом роде. Хз как объяснить даже. Но как-то так.
Аноним 01/10/20 Чтв 21:13:05 #400 №1820792 
>>1820671
>ре

Забавно. Это у кого профессиональная деформация, у меня или у тебя? Всегда знал что PE 'это https://en.wikipedia.org/wiki/Portable_Executable
Аноним 01/10/20 Чтв 22:07:40 #401 №1820835 
>>1820640
Просто хочу писать на асм в своем ебучем коледже, потому-что нету там доступа к компьютеру. Как это организовать?
Аноним 02/10/20 Птн 11:00:50 #402 №1821074 
>>1820835

Есть Cxxdroid , там можно использовать инлайн-ассемблер

с синтаксисом GNU

https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html

https://www.element14.com/community/servlet/JiveServlet/previewBody/41836-102-1-229511/ARM.Reference_Manual.pdf

https://developer.arm.com/documentation/den0024/a/preface
Аноним 02/10/20 Птн 12:30:19 #403 №1821139 
>>1816024
Наивный ты
На деле проприетарщина спиздила овердохуя идей из опенсорса. Единственный явный продукт реверсинга в опенсорсе - это дрова Noveau для видеокарт Nvidia, но это только потому, что нвидия мрази ебаные и в этом плане им похуй на опенсорс от слова совсем, хотя в одночасие они используют ядро Линукса для своих новых железок (нвидия не только видеокарты производит, а полупроводники в целом).
Аноним 02/10/20 Птн 12:36:52 #404 №1821145 
>>1815827
Есть гуй для r2 - Cutter. Весьма годный, там даже декомпиль от гидры есть прикрученный. Отличная замена айде, имхо.
Аноним 02/10/20 Птн 12:46:31 #405 №1821147 
>>1821145
Уже нашел. У них на офсайте есть хорошая документация по радару. Там и консолькой неплохо все делать.
Аноним 02/10/20 Птн 20:57:52 #406 №1821540 
code55.png
Не гоните ссаными тряпками - я не тролю а действительно этого хочу. Как научиться писать на машинных кодах? Ну прям открывать hex-редактор, ебашить байты и запускать сразу то что вышло. Как этому научиться? Пока осилил только системы счисления и различные операции с числами в них и виды кодов:прямой, обратный, дополнительный. Сейчас читаю про кодировку разных данных: текст, графика, видео, звук и тд. Куда копать посоветуете чтобы научиться все программы в нулях и единицах писать? Пока среди следующий целей навернуть "архитектуру компьютеров" таненбаума да и с hex редактором играться, если что учу просто для души
Аноним 02/10/20 Птн 21:27:14 #407 №1821561 
>>1821540
Вероятнее всего тебя интересует архитектура x86.
Ты открываешь официальную документацию Intel по ней. Там расписано всё: все инструкции процессора, регистры, как работать с всем этим хозяйством. В т.ч. там расписаны все машинные коды для инструкций, и их формат.
Штудируй это. Только, боюсь, скорее всего ты надорвёшься. Слишком сложно и муторно.

Я вот сам думал освоить сиё. Хотел написать либу, которая бы во время работы программы генерировала машинный код, исходя из некого высокоуровнего представления, и позволяла его запустить. Очень полезно, когда например юзер задаёт какие-нибудь формулы (как визуализация в winamp), и надо их быстро-быстро обсчитывать. Вроде в природе существуют уже готовые библиотеки для генерации машкодов из ассемблера.
Аноним 03/10/20 Суб 00:03:55 #408 №1821649 
>>1821561
Старый добрый PDP11... На нём можно было писать в машинных кодах.
Аноним 03/10/20 Суб 10:16:42 #409 №1821840 
>>1821649
>PDP11
Есть эмулятор на мобилку?
Аноним 03/10/20 Суб 12:21:22 #410 №1821884 
>>1814846
Кроме 86 ещё mips32, armv4, avr и pic младшие, pdp11. Ещё несколько поверхностно.
Аноним 03/10/20 Суб 12:24:11 #411 №1821886 
>>1821561
> Либу
llvmSljit
Аноним 03/10/20 Суб 12:38:27 #412 №1821889 
>>1821561
>когда например юзер задаёт какие-нибудь формулы
>и надо их быстро-быстро обсчитывать
Для такого лучше LLVM IR генерировать, а потом компилировать.

Редактирование самих машинных кодов будет полезно, когда в уже работающей программе надо заменить jump на один адрес в jump на другой адрес или по другому флагу.
Аноним 03/10/20 Суб 13:55:52 #413 №1821933 
https://www.youtube.com/watch?v=2bXP5VNukmY
я уже близко
Аноним 04/10/20 Вск 16:39:49 #414 №1822903 
бля, я тут где-то мельком на доске видел месседж от челика, который за ~10к пишет на ассемблере в ДС.
ГДЕ ТЫ?
Аноним 04/10/20 Вск 17:01:38 #415 №1822916 
>>1821540

Позанимайся реверсом 10 лет и начнёшь как в матрице видеть за цифрами. А вообще ты совсем что ли ебанутый? Для этого как раз асм и придумали. Я даже в теории не могу представить, нахуя это нужно. Если хочешь что-то ручками пропатчить по-быстрому (нопами, например) - всё равно сначала смотришь дизасм, идёшь на это место в бинарнике, пишеш. Основные оп-коды сами по себе учатся.

https://www.youtube.com/watch?v=7-GTcHZkfCs
Аноним 04/10/20 Вск 18:58:10 #416 №1823001 
Есть функция, внутри функции есть команда которая записывает данные по разным адресам. Можно в иде залогировать результаты этой команды?
Аноним 04/10/20 Вск 19:27:14 #417 №1823032 
>>1823001
Это вот трейсинг и есть? Не пользовался ещё.
Аноним 04/10/20 Вск 20:27:57 #418 №1823105 
>>1822916
Ну про матрицу слишком гиперболизировано - поднять ту же спецификацию по ПНГ или ЖПЕГу то запись там такая что никак уж не начнешь видеть цельную картину - оперативной памяти мозга не хватит чтобы каждый пиксель мысленно сопоставить
Аноним 04/10/20 Вск 23:41:39 #419 №1823208 
>>1823105
А можно ещё QR коды читать и кросить дворды в уме.
Аноним 05/10/20 Пнд 13:28:03 #420 №1823558 
Screenshot196.jpg
Screenshot198.jpg
Screenshot199.jpg
Короче, функция DrawOTag рисует изображение из связного списка. Список выглядит пик2, в списке указаны адреса на примитивы в которых указыны адреса на след. примитивы. Но адрес следующего примитива может быть не адресом в списке. То есть адрес в списке может указывать на несколько связных примитивов.
Сделал дамп памяти, теперь надо написать простенькую прогу которая найдет в примитивы в памяти. Исследовать этот кусок, найти текст который рисуется прямоугольниками. Найти что именно рисует эти прямоугольники, и заменить на то что нужно.

Сегодня бухаю.
Аноним 05/10/20 Пнд 13:50:45 #421 №1823578 
Или я чёто не то делаю
Аноним 05/10/20 Пнд 14:28:50 #422 №1823626 
Анон, привет.
Я решаю разные ситиэфы в категориях эксплуатации и реверсинга, порой подглядываю в райтапы, если знаний не хватает, тем самым заполняя пробелы, но чаще всего дохожу до конечного решения самостоятельно.
Проблема в том, что я могу понять как подступиться к ситиэфу в плане решения проблемы (допустим, если надо найти уязвимость и эксплуатировать ее), но все, что касается реальных программ, вгоняет меня в ступор. Как правильно проштудировать все векторы ввода данных в программу? Если мы говорим о Линуксе, то те же strace/ltrace не скейлятся на крупные программы, я уже молчу о таких монстрах, как браузеры, состоящие из множества программных модулей, порой напрямую друг с другом не связанных. Как правильно делать энумерацию векторов ввода? Выход один - реверсинг наощупь? А если программу нельзя запустить, нужно искать решения в лице эмуляторов? Вопросы мб слишком общие, но я буду рад, если кто-то направит меня в нужное русло и/или попросит конкретизировать каким-либо образом вопрос. Заранее спасибо.
Аноним 05/10/20 Пнд 15:04:01 #423 №1823664 
>>1823626
Почему бы просто не посмотреть по библиотечным/системным вызовам?
Аноним 05/10/20 Пнд 17:36:55 #424 №1823812 
Аноны, поведайте мне как можно отдефрагментировать стек на ассемблере?
Аноним 05/10/20 Пнд 20:33:10 #425 №1823915 
ufilesstore62229.jpg
Норм ли пик для изучения асм?
Аноним 05/10/20 Пнд 21:09:42 #426 №1823958 
>>1823626
Я слишком низкоуровневый чтобы понять что ты написал.
Аноним 05/10/20 Пнд 21:40:22 #427 №1823970 
>>1823958
1110100 1101001 100000 1110000 1101001 1100100 1101111 1110010
Достаточно низкий уровень абстракции?
Аноним 05/10/20 Пнд 22:21:57 #428 №1823987 
image.png
>>1823915
Морер У.Д. Язык ассемблера для персонального компьютера Эпл. (Apple Assembly Language a course of study based on LazerWare software, 1984) Монография. Перевод с английского И.П. Пчелинцева, К.Г. Финогенова.
(Москва: Издательство «Мир». Редакция литературы по информатике и робототехнике, 1987)
Аноним 05/10/20 Пнд 23:26:56 #429 №1824015 
Как вкатиться в вирусологию, чтоб прям по научному. С классификацией и тд, почитал в сети, куча всего, интересно. Хочется как-то упорядочить. Систематизировать знания. Чтоб понимать чем шелл отличается от бекдора, а троян от руткита. Пожалуйста. В телеге дох инфы, но там такая каша, что я аж запутался.
Аноним 06/10/20 Втр 00:03:21 #430 №1824029 
>>1823915
Не осилишь, смотри видосики на ютубе.
Аноним 06/10/20 Втр 00:05:34 #431 №1824032 
>>1824029
Как вообще можно осилить асм, если там хуева туча диалектов. Как учить какой-то один и под какую задачу? Или вообще похуй?
Аноним 06/10/20 Втр 00:17:50 #432 №1824045 
>>1824032
Унесколько регистров, несколько операций, флаги, условные и беусзловные переходы. запись/чтение в память/изпамяти, вызов подпрограммы и возврат из неё,

Операции сложения и вычитания есть везде. Почти везде есть операции умножения/деления.

Операции AND OR, XOR.
Оперции сдвига в право/влево.

Всё. Ты знаешь ассемблер.

Аноним 06/10/20 Втр 02:51:03 #433 №1824084 
>>1824015
>научному
Малварь - сверхпримитивный софт в 99 процентов случаев,лол
Нет никаких научностей,реверс ботов и малвари в целом = табуретка на уроках труда
>Чтоб понимать чем шелл отличается от бекдора, а троян от руткита
удаленный шелл - доступ к консоли
Бекдор - закладка в коде позволяющая получить доступ через нее
Троян - малварь замаскированная под что-то
руткит - любая программа скрывающая как-то свое присутсвие на компе
Не важно р0/р3
это все гуглится
Не занимайся хуйней,не иди в индустрию торговцев страхом - антивирусов
Там даже платят хуево
А так есть книжка Вскрытие покажет - практический анализ вредоносного ПО
Неплохая
и новых еще поновыходило,может завтра скину в тред ссылки
Аноним 06/10/20 Втр 11:06:59 #434 №1824206 
>>1824084
Годная книга спс, моар.
Аноним 06/10/20 Втр 15:21:25 #435 №1824433 
Screenshot202.jpg
Походу это буква
Аноним 06/10/20 Втр 16:40:04 #436 №1824494 
>>1824206
вскрытие покажет немного старая(2011 год),но в целом там все ок
из нового я хотел скинуть mastering malware analysis,ее недавно еще раздавали всем бесплатно
но она только на англ
Аноним 06/10/20 Втр 16:55:32 #437 №1824499 
Screenshot203.jpg
>>1824433
Оказалось тень от букв. Уже ближе.
Аноним 06/10/20 Втр 17:06:52 #438 №1824513 
>>1824499
Что ты пытаешься сделать?
Аноним 06/10/20 Втр 17:09:58 #439 №1824517 
>>1824513
Перевод
Аноним 06/10/20 Втр 17:24:52 #440 №1824532 
Хочу понять алгоритм по которому данные с диска преобразуются в буквы.
ps говорят тут 2600 шрифтов
Аноним 06/10/20 Втр 17:57:59 #441 №1824560 
>>1824513
Поднимай спецификацию по интересующему тебя формату
Аноним 06/10/20 Втр 17:58:25 #442 №1824562 
>>1824560
Да блять мимо, сюда -- >>1824532
Аноним 06/10/20 Втр 18:14:30 #443 №1824581 
>>1824562
Ты бот чтоли?
Аноним 06/10/20 Втр 18:20:35 #444 №1824588 
>>1824581
Какой впизду бот? Или это сорт оф подъеб? Дельный совет - ищи спецификацию и читай, там все должно быть вплоть до бита расписано что и куда и как преобразуется
Аноним 06/10/20 Втр 18:22:42 #445 №1824591 
>>1824560
А какой там формат?
Аноним 06/10/20 Втр 18:31:48 #446 №1824603 
>>1824588
Там текст рисуется прямоугольниками в 1 пиксель.
sageАноним 06/10/20 Втр 18:43:14 #447 №1824613 
>>1824588
> Дельный совет - ищи спецификацию
Спецификацию чего? Каждая игра свой формат придумывает.
Аноним 06/10/20 Втр 18:55:06 #448 №1824643 
Высокоуровневый мастер спецификаций.
А что если сделано не по спецификации?
Аноним 06/10/20 Втр 19:22:32 #449 №1824673 
Там текст отрисовывается как графика. DrawOtag просто отправляет адрес связного списка gpu, в этом списке адреса на примитивы(лайт мод), обычно там адрес на первый примитив, в котором адрес на след. примитив, до тех пор пока адрес не вернется в изначальный список. Список этот сделан для Z-глубины, то есть первый слой будет дальше, второй слой перерисует первый.
И вот в игре последний слой рисует диалоговое окно вместе с текстом и ее рожей. Хотя сонибляди могли бы сделать слой для текста.....
И вот я хочу найти байты текста в этом слое, чтобы их изменить.
Аноним 06/10/20 Втр 19:27:16 #450 №1824681 
>>1824591
>>1824603
>>1824613
>>1824643
Мне откуда знать блядь какая спецификация, ты же сейчас реверсишь эту хуйню, глянь откуда оно берет и куда, где лежит нужный текст а там разберешься. Я вообще даже не понимаю что тебе нужно
И да представь нахуй - рисовать по 1 пикселю это тоже где-то регламентировано, ведь это происходит на твоем компьютере - буква разбивается на чанки, чанки загружаются в видеопамять и тд. Все эти процессы детально описаны, нужно просто понять что к чему там и как идет, для этого реверс и нужен. Я так понял тебе нужно пилить перевод - так в файл с буквами закинь кириллицу, посмотри что выйдет, ну а дальше по мере поступления проблем решай их
Аноним 06/10/20 Втр 19:32:31 #451 №1824686 
>>1824681
Вот он ответил тебе так, что лучше не скажешь ---->>1824613
Аноним 06/10/20 Втр 19:34:57 #452 №1824687 
>>1824686
Я тебе говорю об одном ты мне об другом
Аноним 06/10/20 Втр 19:39:54 #453 №1824689 
>>1824681
Это рисуется как графика. Это на диске сохранено как изображение. Нет никакого формата. Они не хотели чтобы их игру перевели. Там еще кроме этого всяких заморочек хватает, типа чтения данных из raw-области диска или тип того.
Аноним 06/10/20 Втр 19:42:06 #454 №1824691 
>>1824689
Первое что приходит в голову - сделать свой перевод аналогично как графику и задудонить туда, пробуй так решай проблемы по мере поступления. И да - изображение тоже формат
Аноним 06/10/20 Втр 19:46:20 #455 №1824694 
>>1824691
Я так и делаю, хочу хоть понять как они вообще туда текст запихали. И вот рассказал что понял пока.
Аноним 06/10/20 Втр 20:00:59 #456 №1824718 
Выкладываю скрины, объясняю. А мне почитай спецификацию. Было похоже на бота.
Аноним 06/10/20 Втр 20:11:21 #457 №1824728 
>>1824694
Ебаш дальше, со временем что-нибудь еще поймешь рано или поздно, а потом и цельная картина подъедет
Аноним 07/10/20 Срд 08:05:51 #458 №1824965 
Screenshot204.jpg
Screenshot205.jpg
Screenshot206.jpg
Это и есть буква, потому что в очереди появляются только выделенные байты. 64 это спрайт с tone mapping(поясните что это значит), что уже лучше, значит гдето лежит спрайт буквы. Просто я менял значение цвета 606060 на синий и почемуто синим стала только тень. Е1 это Environment command, видимо задаётся область рисования.
В документе ошибка? 011 Sprite primitive, а в таблице 100
Аноним 07/10/20 Срд 08:22:49 #459 №1824972 
Screenshot208.jpg
Заебись!! Первая цель достигнута: изменить хотя бы одну букву.
Аноним 07/10/20 Срд 09:58:39 #460 №1825006 
>>1824972
Оказалось что это просто координаты на текстуре, и сначала слово пишется на текстуре, а потом переносится на экран. Бля, это теперь выяснять как буквы попадают на текстуру, вообще хз как это делать.
Аноним 07/10/20 Срд 10:00:55 #461 №1825008 
... Потому что текстура хранится в памяти гпу а прямого доступа нет, только через координаты и команды гпу.
Аноним 07/10/20 Срд 12:48:46 #462 №1825108 
Впринципе, если подумать. То у норм разрабов в этой текстуре должен быть типа алфавит. Достаточно изменить буквы в текстуре и просто менять положение каретки.
Аноним 07/10/20 Срд 14:56:04 #463 №1825205 
Бухаю. Отмечаю первую изменённую букву. юху!
Аноним 07/10/20 Срд 16:57:25 #464 №1825303 
Можете мне подогнать пример перевода курсора вверх или чего угодно в терминале в виде hex?
Чтобы я его прошил в контроллер, убедился что оно работает и дальше по списку команд тыкал сам.

Хочу сделать меню в контроллере при подключении через UART.
Аноним 07/10/20 Срд 17:38:43 #465 №1825331 
>>1825303
Так у контролера наверно свой набор команд.
Аноним 07/10/20 Срд 17:55:48 #466 №1825349 
Почему еще никто не зареверсил виндовс и ее исходники? Не уж то никому не нужно? Или есть какие-то технические проблемы связанные с этим?
Аноним 07/10/20 Срд 18:00:59 #467 №1825353 
>>1825303
Как ты с такими познаниями в ударился в эту область?
Гугли "ANSI ESCAPE CODES".
Аноним 07/10/20 Срд 19:08:38 #468 №1825396 
>>1825331
Естественно.

>>1825353
Спасибо. Разобрался.
https://www.lihaoyi.com/post/BuildyourownCommandLinewithANSIescapecodes.html

Проблема в том, что все туториалы что я видел, сделаны для тех кто сидит в терминале или ещё какой-то среде. Я вообще не ебу что значит ctrl+[, ^[, ctrl+d как их вводить?
Написали бы 1b5b и вопросов бы не было. Нет, какие-то кодировки наркоманские придумают.

Вот на этом моменте все время застревал.
Аноним 07/10/20 Срд 19:54:59 #469 №1825410 
Ооочень странные делаааааааа
sageАноним 07/10/20 Срд 20:55:25 #470 №1825440 
>>1825396
> Я вообще не ебу что значит ctrl+[, ^[, ctrl+d как их вводить?
Первый байт - escape (0x1b), а дальше вводишь вот эти скобочки квадратные и буковки после них.
Аноним 07/10/20 Срд 21:18:33 #471 №1825453 
Аноны, представьте ситуацию: вы фаззите крупный софт без доступа к исходному коду, фаззер набирает парочку подозрительных сегфолтов, намекая на возможную дыру в безопасности. Ведь наверняка будет недостаточно реверсить только ту функцию, где программа крашнулась, видать, нужно чекать ВСЕ кросс-референсы и реверсить и их тоже, что понять как оно все работает? А если их тысячи? Как это происходит на реальных целях, а не на высосанных из пальца цтфах?
Аноним 07/10/20 Срд 22:40:33 #472 №1825506 
>>1825453
Бред
Аноним 07/10/20 Срд 23:34:05 #473 №1825530 
>>1825349
Всем похуй. АЛСО, >>2860568
Аноним 07/10/20 Срд 23:34:58 #474 №1825532 
>>1825530
Ссылкана другую доску не распарсилась. Вот
https://2ch.hk/s/res/2860568.html
Аноним 08/10/20 Чтв 01:35:02 #475 №1825558 
>>1825532
Самое в этом смешное это то, что у меня есть доступ к ним и к крос-компилятору Эльбруса. Но нет желания даже попробовать компильнуть их.

Хотя при большом желании портануть и скомпилировать возможно бы смог. Только запустить запустить и отлаживать не на чем. Да и интереса нет.
sageАноним 08/10/20 Чтв 03:33:27 #476 №1825579 
>>1824045
Проиграл. С таким уровнем знаний, можно разве что - думать, что знаешь ассемблер. Ну и одноклассникам рассказать.
sageАноним 08/10/20 Чтв 03:38:04 #477 №1825581 
>>1825349
Что там реверсить то? Символы есть, сдк есть, слитые исходники/сдк есть, дебаг сборки есть, windows internals все читали, из инструментов любой на выбор. Тебя что конкретно интересует?
Аноним 08/10/20 Чтв 07:11:05 #478 №1825605 
>>1825581
Интересует написать свой аналог Bolgenos OS на базе виндовса
Аноним 08/10/20 Чтв 07:39:58 #479 №1825614 
>>1823970
ты пидор?
Аноним 08/10/20 Чтв 10:56:03 #480 №1825698 
>>1825506
В чем именно бред, что я написал не так?
Аноним 08/10/20 Чтв 10:57:59 #481 №1825700 
>>1825605
щас бы пытаться на базе виндового говноядра писать ось
Аноним 08/10/20 Чтв 11:45:21 #482 №1825755 
>>1825579
А а чо? База есть. На этом базисе можно начать писать, а опыт подтянется.
Аноним 08/10/20 Чтв 11:46:20 #483 №1825757 
>>1825700
>щас бы пытаться на базе виндового говноядра писать ось
Вообще-то лучшее ядро на сегодняшний день.
Еслм ты этого не понимаешь, что ты делаешь в этой теме?
Аноним 08/10/20 Чтв 12:07:30 #484 №1825774 
>>1825757
после слива ядра хрюши стало ясно из каких говен и палок оно соткано, а все удачные места - копипаста из опенсорса) А хули, ось для потреблядей в лице игродаунов и домохозяек, они и так будут жрать говно, даже с телеметрией на борту. Если ты считаешь, что в дриснятке что-то кардинально поменялось - спешу огорчить, мелкософтам давно похуй на шиндовс как на продукт, ибо свою маркетинговую кампанию он уже давно отбабахал, инерции хватит еще на пару поколений потреблядей вперёд.

>Еслм ты этого не понимаешь, что ты делаешь в этой теме?
Реверсинг не существует лишь на одной шинде, маня, проснись. А если брать эксплуатацию уязвимостей, что косвенно связано с этим тредом, то и подавно, ибо подавляющее общее количество компьютеров на планете крутятся на юниксовых ядрах. Помни, что винда доминирует только в десктоп сегменте, все остальное - юниксовые ядра, особенно учитывая тот факт, что в 2к20 году компьютером вполне считается даже сраная микроволновка.
Аноним 08/10/20 Чтв 12:20:23 #485 №1825785 
>>1825774
Зачем так много написал? Смысла от этого не прибавилось. Есть ядро NT и оно только обрастало фичами до десятки. То, что ты имеешь смутные представления о ядре NT, это твои проблемы.

>>1825774
>Реверсинг
Это тебе кажется что тема про reverse engineering, а фактически "реверс" это небольшой сегомент от "околоассемблерных" задач.
Аноним 08/10/20 Чтв 13:05:46 #486 №1825833 
>>1825698
Всем давно известно, что теоретики кроме бредовых теорий ничего не могут.
Аноним 08/10/20 Чтв 17:26:25 #487 №1826007 
Так все же - как программировать на ассемблере?
Я так понял это такой же ЯП как и другие за исключением того что функции и команды в нем отвечают машинным командам процессора и что для разных архитектур разный ассемблер
Так же понял что существуют различные комплиляторы для ассемблера - MASM, FASM, WASM и тд. Разницы пока в них не вижу
Обязательно ли нужно качать какой-то компилятор? Нету ли встроенного - язык процессора все же
Аноним 08/10/20 Чтв 17:52:36 #488 №1826035 
>>1826007
>Так все же - как программировать на ассемблере?
Для налача напиши "программу", которая срванивает две строки.
Это буквально несколько команд.

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

Аноним 08/10/20 Чтв 18:35:26 #489 №1826056 
>>1826007
Качай фасм и запускай примеры. Читай документацию фасм, там очень сжато и доступно.

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

Masm не самостоятельный и не универсальный. Только винда.

Wasm вообще для чисто браузерная тема, если что.
Аноним 08/10/20 Чтв 18:38:27 #490 №1826059 
>>1826035
Я просто долбоеб который не имеет понятия как там все устроено, ты то этим занимаешься тебе легко, я же не понимаю. При чем тут сравнение строк?
Аноним 08/10/20 Чтв 18:38:52 #491 №1826060 
>>1826056
Скачал, сейчас попробую навернуть
Аноним 08/10/20 Чтв 19:20:15 #492 №1826114 
image.png
>>1826059
>При чем тут сравнение строк?
Юный падаван, я гуру с опытом более 30 лет.
Ты неправильные вопросы задаёшь.
Сильно сомневаюсь в твоих способностях.
Ты умеешь программировать хотя бы на одном языке?
sageАноним 08/10/20 Чтв 19:33:01 #493 №1826130 
>>1825774
Вот это манямирок.
Аноним 08/10/20 Чтв 19:39:48 #494 №1826140 
>>1826114
Писал бывало хеллоуворлды на с++ и js, но серьезного ничего там не делал. Поэтому можно утверждать о том что ассемблер первый яп в который буду серьезно вкатываться, серьезно потому что с самого начала моего интереса к программированию я интересовался наиболее низкоуровневыми яп, но все же не брался их учить потому-что знал что для заработка денежных средств они малопригодны по сравнению с веб-индустрией, сейчас же уже даже не надеюсь на извлечение хоть какой-нибудь прибыли и просто хочу говнокодить для себя попутно ковыряясь во всяких приложениях
Про строки подозреваю что смысл был в том что асм компилятор просто переводит мнемоники и прочую лабуду сразу в машинные коды и поэтому в самом примитивном случае это будет программа которая ставит в соответствие мнемонике некий указанный в спецификации процессора машинный код, вот при чем тут сравнение строк подозреваю
Погромировать умею на уровне хеллоуворлдов, но думаю это вполне поправимо
Аноним 08/10/20 Чтв 19:51:26 #495 №1826146 
Хорошо, тогда отвечу тебе "ПРИ ЧЁМ" тут сравнение строк. Это простейшая задача, которая которая позволит тебе понять как работает процессор.

Говоришь С++. Это плохо. На Си++ можно писать "программы", не понимая что такое указатель. std::string во все поля.

Ладно, есть у меня одна идей - поучить тебя. Но только если ты будешь задавать ПРАВИЛЬНЫЕ вопросы. А на неправильные вопросы я буду злиться.

Какой компилятор у тебя сейчас под рукой?
Аноним 08/10/20 Чтв 20:03:11 #496 №1826150 
>>1826146
FASM скачал, для с++ никакого если ты про него да и не хочу я ни на чем кроме ассемблера программировать, незнаю что за правильные вопросы
Аноним 08/10/20 Чтв 20:34:01 #497 №1826157 
>>1826150
>FASM скачал,
Страшный выбор. Но на самом деле пофиг.
Объяви две строки. Google в помощь.
Аноним 08/10/20 Чтв 20:53:34 #498 №1826166 
>>1826157
Судя по тому что я видел в гайдах я тебе не раньше недели эту задачу сделаю
Аноним 08/10/20 Чтв 21:15:38 #499 №1826177 
>>1826166
>Судя по тому что я видел в гайдах я тебе не раньше недели эту задачу сделаю

Может быть тебе всё же лучше чем-нибудь другим заняться? Ну там музыка или поэзия?

https://board.flatassembler.net/topic.php?t=15676&view=next
Аноним 08/10/20 Чтв 21:53:48 #500 №1826217 
>>1825785
>"реверс" это небольшой сегомент от "околоассемблерных" задач.

И что? Причем здесь понимание того, что ядро шинды, якобы, "самое лучшее"? Ты какую-то хуйню про винду высрал.
Аноним 08/10/20 Чтв 22:30:06 #501 №1826232 
>>1826217
И какое, на твой взгляд, ядро лучше ядрв Windows NT?
sageАноним 08/10/20 Чтв 23:22:23 #502 №1826261 
>>1826177
> Ну там музыка или поэзия?
Будто эти занятия легче асма, лол.
Аноним 08/10/20 Чтв 23:41:07 #503 №1826268 
>>1826261
Нет доблести писать стихи
Это может делать любой
Попробуй-ка на асме чего-нить напиши
А я посмеюсь над тобой

Регистры, инструкци, прерывания
Куда-ж без них? Никуда!
Они покруче сексуального желания
А всякие языки высокого уровня это полная ерунда.

Ха ха ха. Щучу.
Аноним 09/10/20 Птн 06:33:00 #504 №1826360 
Не могу понять, как провести реверсинг прошивки .fw под браслет MI Band 3. Если с прикладным софтом под какую-нибудь винду все крайне просто, и IDA Pro автоматически определяет архитектуру процессора, то тут приходится гадать и гуглить. На 4pda аноны написали, что нужно выбирать архитектуру процессора ARM v7 (little endian), а стартовый адрес ROM равен 0x08008000 (и откуда они вообще взяли эту информацию, может, в hex-редакторе надо вскрывать?), однако при вскрытии IDA Pro все равно выдает сплошные шестнадцатеричные числа, никакого ассемблерного кода, и никак не может найти точку входа в программу.
Аноним 09/10/20 Птн 10:38:48 #505 №1826453 
>>1826360
>стартовый адрес ROM равен 0x08008000
Странно и нетипичино выглядит стартовый адрес.

Посмотри вот тут, может быть поможет
https://stackoverflow.com/questions/6139952/what-is-the-booting-process-for-arm
Аноним 09/10/20 Птн 11:13:49 #506 №1826480 
>>1748635 (OP)
Есть гайды, как научиться быстро считать (плюсовать, складывать) в других системах счисления?
Аноним 09/10/20 Птн 12:35:17 #507 №1826553 
>>1826480
Как и в десятичной - на бумаге в столбик.
Аноним 09/10/20 Птн 12:37:09 #508 №1826558 
Screenshot210.jpg
Нашёл каким образом буква попадает на текстуру. Но вот как она формируется в памяти... там типа каркас(или шифрование такое). Короче, данные о пикселях проходят через процедуру которая разная для каждой буквы.
Разбираюсь дальше
Аноним 09/10/20 Птн 12:39:40 #509 №1826562 
>>1826553
Серьезно? Я думал оно запоминается как-то легко.
Аноним 09/10/20 Птн 14:31:21 #510 №1826636 
image.png
image.png
>>1826562
Самая простая - двоичная. Легко реализуется с помощью логическимх элементов И, ИЛИ, НЕ. Относительно легко.

Даже самый примитивный микропроцессор умеет делать сложение за один такт.
Аноним 09/10/20 Птн 17:10:13 #511 №1826729 
>>1826453
Выяснил, что процессор браслета - Dialog DA14681.

10.2.3 Application start address
SUOTA-enabled applications should be compiled for execution from address 0x20000.
The following lines are already there but it is likely that CODE_BASE_ADDRESS is always set to
0x8000000. This does not work when a bootloader is present. The modification required to
CODE_BASE_ADDRESS is highlighted with red font in Code 20.
Аноним 09/10/20 Птн 17:10:33 #512 №1826730 
>>1826729
> процессор
Микроконтроллер, быстрофикс
Аноним 09/10/20 Птн 17:11:17 #513 №1826732 
>>1826114
> Ты умеешь программировать хотя бы на одном языке?
Юный падаван, я гуру с опытом более 15 лет.
Ты неправильные вопросы задаёшь.
Сильно сомневаюсь в твоих способностях.
Ты хотя бы одного человека обучил в своей жизни?
Аноним 09/10/20 Птн 17:18:01 #514 №1826737 
>>1826166
Прямо в архиве есть пример Hello world с объявлением строки.
Вообще, изучи скачанный архив, там и примеры на разные темы, и инклуды, и исходники.
Примеры запускаются из коробки.
А додика этого не слушай, ассемблер самый простой язык. Как только поймёшь суть, дальше сможешь все сам.
Аноним 09/10/20 Птн 17:20:26 #515 №1826740 
>>1826480
Проще калькулятор специальный найти.
Аноним 09/10/20 Птн 17:36:14 #516 №1826747 
image.png
>>1826729
>Dialog DA14681

Я бы на твоём месте распарсил OTP, если всё перепробовал и ничего не получилось. Затем бы уже исходя из этой информации смотрел бы дальше.
Аноним 09/10/20 Птн 17:57:34 #517 №1826759 
image.png
image.png
>>1826740
А зачем его искать? Он в каждой Windows есть.

Но по правде говоря в "десятке" он говяный. В "XP калькулятор был удобнее с точки зрения систем исчисления.
Аноним 09/10/20 Птн 18:27:00 #518 №1826776 
wuhan.PNG
qwerty1.PNG
weweew.PNG
>>1826747
Все равно не понимаю. Попробовал ввести 0x0 как стартовый адрес, а 0xE0000000 - как последний (вдруг получится найти что-то похожее на ассемблерный код в огромной куче дерьма), тоже ничего не вышло. У меня такое ощущение, что у меня совершенно не хватает знаний в этой области, но я не могу понять, каких.
Аноним 09/10/20 Птн 18:37:21 #519 №1826790 
q1.PNG
>>1826747
Вскрыл прошивку как обычный бинарный файл, без выбора архитектуры. Получилось следующее, лол. Строковые ресурсы IDA Pro обнаружил, а что-то опознал как инструкции Intel.
Аноним 09/10/20 Птн 19:24:33 #520 №1826871 
>>1826776
> У меня такое ощущение, что у меня совершенно не хватает знаний в этой области, но я не могу понять, каких.
>>1819669
Я тебя понимаю, лол. Похоже в RE это всё таки нормальное состояние.
Тоже попробую, может получится.
Аноним 09/10/20 Птн 19:34:28 #521 №1826883 
>>1826871
Я читал всего Таненбаума (правда, это было больше года назад), в общих чертах помню принципы работы вычислительной техники, но, тем не менее, многого не знаю.
Аноним 09/10/20 Птн 19:40:40 #522 №1826892 
>>1826883
Да я методом тыка буду пробовать. Знаю я писарей этих форумных.
Аноним 09/10/20 Птн 19:57:57 #523 №1826923 
>>1826776
Покажи hex-dump начала файла прошивки.
Аноним 09/10/20 Птн 19:58:56 #524 №1826924 
>>1826883
>Я читал всего Таненбаума (правда
Прям всего?
Аноним 09/10/20 Птн 21:05:21 #525 №1826971 
>>1826924
Компьютерные сети, Архитектура компьютера, Современные операционные системы. Я преувеличил, конечно.
Аноним 09/10/20 Птн 21:16:03 #526 №1826980 
1602267363464.jpg
>>1826636
В вузе немного проходили триггеры, счетчики и озу, но как-то наотъебись и абстрактно. Там сложение выглядело так безо всяких разрядов.
Аноним 09/10/20 Птн 21:26:13 #527 №1826989 
Какой же я все таки тупой еблоид, вот как научиться писать на ассемблере? Я беру что-то пишу - диззассемблирую это что-то в ida и смотрю что вышло - там еще какие-то .mmx .686p и .model flat добавляются, сегменты объявляются. У меня столько вопросов но меня за такие нахуй только пошлют подозреваю поэтому буду сам разбираться, пишу одно компилирует вообще другое
sageАноним 09/10/20 Птн 21:39:55 #528 №1827001 
>>1826989
> .mmx .686p и .model flat добавляются
Это чтобы ублажить транслятор. Игнорируй.
Аноним 09/10/20 Птн 22:08:08 #529 №1827025 
>>1826989
Самое главное - DWORD PTR и REP MOVSB. Знаешь это - знаешь Дао.
Аноним 09/10/20 Птн 22:31:21 #530 №1827047 
>>1826980
Лол, не уж то в ВУЗах настолько поверхностно преподают? Что ты там вообще учишь?
Аноним 09/10/20 Птн 23:16:33 #531 №1827076 
>>1827025
Не толсти.

>>1826980
А меня бесит вот этот стандарт отображения логических элементов. Советский гораздо ламповее приятнее.
Аноним 10/10/20 Суб 05:32:33 #532 №1827162 
>>1826989
Не зарывайся вглубь сразу, не пытайся охватить и понять всё. Это практика, как и в любом другом деле.
Аноним 10/10/20 Суб 14:29:14 #533 №1827315 
Перекат будет?
Аноним 10/10/20 Суб 14:33:55 #534 №1827318 
Screenshot198.jpg
Воткните в оп-пост мою пикчу плиз.
Аноним 10/10/20 Суб 14:36:08 #535 №1827320 
>>1827047
Я на препода учился
¯\_(ツ)_/¯
Аноним 10/10/20 Суб 14:40:41 #536 №1827322 
Есть два одинаковых файла, это sfx архивы от крупной компании.

Один по вирус тоталу первый раз был в 2013, второй в 2014.
Версии и метаданные совпадают.
Хэши не совпадают.
Файл с поздней датой не может быть настоящим 100%.

Что нужно сделать чтобы понять есть ли там малварь?
Скан никаких вирусов не выдает.
Аноним 10/10/20 Суб 15:38:32 #537 №1827358 
>>1827322
Я бы для начала сравнил два файла в Neo
Аноним 10/10/20 Суб 15:55:23 #538 №1827364 
Как в IDA Pro поставить все возможные breakpoints? Чтобы полностью отладку пошагово провести
мимо ньюфаг
Аноним 10/10/20 Суб 16:13:20 #539 №1827369 
>>1827364
Нажимай F7 после того как ida остановится на первой инструкции.
Аноним 10/10/20 Суб 17:50:01 #540 №1827424 
>>1827322
запустите в песочнице по типу app.any.run или hybrid-analysis
Единственное,что люди потом смогут скачать ваш файл оттуда при наличии регистрации там,но раз файл уже закачан на вирустотал и ему более 6-7 лет,то я думаю вас это не волнует
Аноним 10/10/20 Суб 18:32:18 #541 №1827446 
Планирую стать хакером. Где в ida надо ставить breakpoints?
Аноним 10/10/20 Суб 18:35:09 #542 №1827448 
>>1827446
В шапке гайд есть на русском по ида
Аноним 10/10/20 Суб 20:02:30 #543 №1827508 
>>1827315
Обязан.
Аноним 10/10/20 Суб 20:10:52 #544 №1827516 
>>1827315
Перекатил бы но стесняют, вдруг обсмеют потом сюда вообще заходить не смогу
Аноним 10/10/20 Суб 20:42:44 #545 №1827535 
>>1827516
>вдруг обсмеют
Так только неудачники делают.
Аноним 10/10/20 Суб 21:12:37 #546 №1827559 
Лол бля. Открыл в fasm'e examples по совету анона >>1826737, а там к хелооуворлду подключается одна библиотека, а к этой библиотеке еще две, а к одной из этих двух еще 12. Не уж-то настолько тяжело писать хеллоуворлд на чистом ассемблере?
Аноним 10/10/20 Суб 21:36:28 #547 №1827572 
В асме надо быть альфачом. Надо, зная всего лишь push и pop, выебать весь асм влвсе щели
Аноним 10/10/20 Суб 21:39:34 #548 №1827574 
Иначе асм выебет тебя.
гуру с опытом более 50 лет
Аноним 10/10/20 Суб 22:02:12 #549 №1827594 
>>1827572
>>1827574
95% ассемблера - это ебанные mov, pop, push и jump, как так?
Аноним 10/10/20 Суб 22:12:59 #550 №1827607 
image.png
>>1827559
>совету анона
А ты слушай его больше.

>Не уж-то настолько тяжело писать хеллоуворлд на чистом ассемблере?
Сам суди


Аноним 10/10/20 Суб 22:25:11 #551 №1827609 
>>1827607
Сужу, вроде как экспортируется процедура _write которая делает всю работу, ну и где тут расписан чистый ассемблер? Заместь тебя все написали а ты просто это используешь, высокоуровневое программирование какое-то
Аноним 10/10/20 Суб 22:52:51 #552 №1827626 
BB 11 01 B9 0D 00 B4 0E 8A 07 43 CD 10 E2 F9 CD 20 48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 21
Переведите на ассемблер
Аноним 10/10/20 Суб 22:58:46 #553 №1827632 
>>1827609
>вроде как экспортируется процедура _write которая делает всю работу
Дергает системный вызов ядра. Оборачивает всякой требухой.
Вот, например, прямой вызов функции ядра

https://stackoverflow.com/a/51482519

>ну и где тут расписан чистый ассемблер?
А какой степени очистки тебе нужен? Могу показать несколько способов "Hello world" без ОС на голом железе.
Аноним 10/10/20 Суб 22:59:22 #554 №1827633 
>>1827626
На какой процессор?
Аноним 10/10/20 Суб 23:00:01 #555 №1827634 
>>1827633
х86 дос
Аноним 10/10/20 Суб 23:10:48 #556 №1827642 
image.png
>>1827634
Это невалидный код. Это может быть заголовком, данными или зашифрованным кодом.
Аноним 10/10/20 Суб 23:22:34 #557 №1827653 
>>1827642
bb 11 01
b9 0d 00
b4 0e
8a 07
...
48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21
Аноним 10/10/20 Суб 23:24:29 #558 №1827654 
>>1827653
Дальше сам - https://defuse.ca/online-x86-assembler.htm#disassembly2
Аноним 10/10/20 Суб 23:43:20 #559 №1827661 
>>1827653
Упс. 16-битный режим.
Аноним 10/10/20 Суб 23:43:28 #560 №1827662 
>>1826558
Кажется я понял для чего эта процедура, похоже если я изменю буквы, то эта процедура запишет в память неправильные данные.
Аноним 10/10/20 Суб 23:47:00 #561 №1827663 
image.png
>>1827653
Извини(те), это было так давно, что 16 битный режим уже забылся окончательно.
Аноним 10/10/20 Суб 23:51:43 #562 №1827664 
>>1827663
Это где ты дизассемблировал в 16бит?
Аноним 10/10/20 Суб 23:55:55 #563 №1827667 
>>1827663
Ха, так это же "Hello world" через прерывания BIOS.
Моё почтение к >>1827626


>>1827664
http://shell-storm.org/online/Online-Assembler-and-Disassembler/
Аноним 10/10/20 Суб 23:59:05 #564 №1827670 
Чем хорош бамплимит, так это тем, что случайные люди сюда не попадут и можно лампово пообщаться. Особенно если модератор будет вовремя прибивать левые бессмысленные темы.

Аноним 11/10/20 Вск 00:06:32 #565 №1827675 
>>1827662
Тогда я возьму уже переведенный вариант, где обошли эту ебалу, и буду там менять буквы. Щаа
Аноним 11/10/20 Вск 01:46:37 #566 №1827700 
Аноны, помогите
Дано: огромная программа
Требуется - узнать максимальное количество путей, через которые программа получает ввод (командная строка, сеть, файлы - все подойдет) и повесить хуки на те функции, где ввод начинает обрабатываться. Речь идет о Линуксе, но на больших программах ltrace/strace - гемор тот еще. Какие подводные? Без кропотливого реверсинга и интуиции никак? Мне интересно могут ли такие вещи быть найдены эффективно и относительно быстро, используя преимущественно динамический анализ.
Аноним 11/10/20 Вск 02:46:51 #567 №1827709 
>>1827559
На Винде у тебя нет прямого доступа ни к чему, в этом суть защищённого режима процессора, поэтому любое действие через вызов библиотек user, kernel и других.
Итак, у тебя выбор из 4 путей:

1. Писать вручную PE (.exe) файл из структур, вручную прописывать все его секции, вручную строить stdcall вызовы, что кстати есть там в примерах.
Потянешь все это со старта? Нет, иначе бы давно сам разобрался.
2. Если хочешь программировать без внешних функций, программируй бутсектор. Но даже там без биоса много чего не сделаешь, например не прочитаешь флешку.
Тебе придется сразу изучить как работает реальный режим, как вычисляется адрес, как работают прерывания, изучить функции биос, изучить распределение адресного пространства.
Нагугли архив старого wasm.ru там есть статьи на эту тему. Все мы когда-то по ним игрались с реальным режимом процессора.
Потянешь? Флаг в руки.
3. Надуть губки и сказать лол, да вы все тупые хуйню мне советуете. И тогда я обязательно возьму в руки соску и буду разбираться, что лялечка хочет и почему начала плакать. Вместо того чтобы задавать конкретные вопросы как взрослый человек.
4. Наконец-то запустить долбанный пример, где пользовательский код написан на чистом ассемблере и красиво отделен от системной хуйни, и который ты сможешь за один час полностью понять и от которого сможешь дальше отталкиваться, либо в сторону 1), либо в сторону решения своих задач.

Сходу написать что-то на ассемблере без библиотек невозможно для новичка.
Примеров в фасме много, есть минимальные без макро, есть и .com под командную строку (.dos совместимую), где каждый байт пишешь сам.
Аноним 11/10/20 Вск 02:52:06 #568 №1827710 
>>1827709
Подсистем несколько бывает. Есть минималистичный дос, есть защищённый 32 битный режим, есть 64 битный и несколько специальных.
Выбери одно и изучай примеры.
Аноним 11/10/20 Вск 07:15:44 #569 №1827762 
>>1827675
Всё, разобрался на 98,5%(вдруг подводные). Эта процедура рисует спрайт буквы из кода на диске. Осталось написать упаковщик, мне оч .сложно и долго.
Мой первый ромхак прост)
Аноним 11/10/20 Вск 09:39:27 #570 №1827793 
>>1827632
Без макросов и библиотек щитаю что чистый
Аноним 11/10/20 Вск 11:23:03 #571 №1827829 
>>1827700
> но на больших программах ltrace/strace - гемор тот еще.

Вывод пропусти через самописный фильтр, отловишь то, что тебе надо.
Фильтр пиши на простых примерах - отдельно по файлам и по сети.

Коомандная строкка тут немного другим боком. Просто считай что этот путь получения информации существует по уммолчанию.
Аноним 11/10/20 Вск 11:32:21 #572 №1827831 
image.png
image.png
>>1827793
Вот анон дал чистый hello world - >>1827626
Вотт анон расписал довольно неплохо >>1827709
И вот две подпрограммы для Helloworrld - ввод строки и вывод байта непосредственно в последовательный порт для экзотического процессора.
Как минимум ещё не показали пример с записью по адресу 0xb8000 на PC/XT
Аноним 11/10/20 Вск 11:40:52 #573 №1827835 
>>1827829
Это я понимаю, проблема состоит в другом - вызовы то можно увидеть в простыне от strace, но как понять где в коде самой программы это происходит? Я-то хочу повесить хуки, а для этого нужно знать адреса тех функций, где это все начинается, чего l(s)trace не дают, показывая просто последовательность вызовов библиотечных/системных вызовов.
Аноним 11/10/20 Вск 11:47:41 #574 №1827837 
>>1827831
Схоронил, буду разбираться что там к чему. А куда именно эти символы выводятся? В консоль? Смущает этот порт
Аноним 11/10/20 Вск 11:52:15 #575 №1827840 
>>1827837
>А куда именно эти символы выводятся? В консоль?
В последовательный порт. Условно там три провода - земля, TX, RX.
Вывод попадает в терминал на компьютер.
Аноним 11/10/20 Вск 11:54:44 #576 №1827841 
>>1827837
Начнем с того, что пример для ARM процессора, если не ошибаюсь.
Все, я больше не участвую. Сам очевидно ты ничего не будешь делать, поэтому и объяснять нет смысла.
Пусть тебя тянут другие.
Мимо
Аноним 11/10/20 Вск 11:57:29 #577 №1827842 
>>1827835
>как понять где в коде самой программы это происходит?
В интернетах для решения твоей задачи предлагают скачать исходники strace и добавить к выводу адреса.

Ну а что? Как вариант, если всё перепробовал и ничего не получилось, то может получиться.
Аноним 11/10/20 Вск 11:58:29 #578 №1827843 
>>1827841
>Начнем с того, что пример для ARM процессора, если не ошибаюсь.

Не, это самоделка в ПЛИС. Система команд оригинальная.
Аноним 11/10/20 Вск 12:08:15 #579 №1827849 
>>1827841
Ок, спасибо. Я пока наворачиваю документацию по FASM'y чтобы инструкции там понять, в ида дизассемблировал хеллоуворлд который в examples, там подключилась библиотека kernel32.dll, придется и ее дизассемблить чтобы посмотреть как эти функции работают, скачал интеловскую документацию на мой процессор, буду архитектуру еще разбирать, спецификацию РЕ читал и hex-дамп .ехе'шников смотрел(из-за того что в редакторе открывал послетали файловые ассоциации, еще пол часа потратил в реестре все восстановить). Аутизмом занимаюсь полнейшим надеюсь что-то из этого выйдет
Аноним 11/10/20 Вск 12:20:46 #580 №1827853 
>>1827843
Прям оригинальная, не микроблейз? Интересно, для чего понадобилось свою систему делать, если не секрет?
Аноним 11/10/20 Вск 12:26:12 #581 №1827857 
>>1827849
Вы вот все высокоуровневые такие - пытаетесь зацепиться за стандарты, найти похожий системы и какбы посмотреть под другим углом. Я не согласен с таким подходом, просто знайте. Из этого ничего хорошего не выйдет. Надо сразу брать цель и решать её.
Аноним 11/10/20 Вск 12:26:21 #582 №1827858 
>>1827853
Это долгая история. Была необходимость добавить некоторый аппаратный блок в любой существующий CPU, был поход на https://opencores.org/projects и анализ разных процессорных ядер. В результате пришлось принять трудное решение делать оригинальное процессорное ядро.
Аноним 11/10/20 Вск 12:26:58 #583 №1827859 
>>1827857
Я не знаю никакого высокоуровневого языка, ассемблер первый из всех япов для меня пока
Аноним 11/10/20 Вск 12:31:45 #584 №1827863 
>>1827859
Это отлично, не углубляйся в теорию, решай больше практических задач. Просто совет. Мне когда надо будет PE-заголовок, тогда и разберусь с ним, к примеру.
Аноним 11/10/20 Вск 12:36:41 #585 №1827869 
>>1827849
Чтобы понять функции виндовс, нужно читать документацию на winapi.
kernel32 реверсить нет смысла для этого.

Я не нашел ссылок на wasm.ru архив, поэтому закинул на диск.
Открой и почитай, там много интересного в том числе найдешь и уроки по win32, и PE.
Тут же можешь скачать документацию на основное win32api.
https://drive.google.com/folderview?id=1Pk9j_vXs_pqAkQy7QyI4KqFftcSQw0sq
Аноним 11/10/20 Вск 12:42:17 #586 №1827871 
Аноны, поясните за реверс-инжиниринг прошивок устройств. Сдается мне, что он в разы сложнее реверса прикладного софта под хайповые оси.
Аноним 11/10/20 Вск 12:42:37 #587 №1827872 
>>1827859
А как же С?
Аноним 11/10/20 Вск 12:54:18 #588 №1827877 
>>1827872
>ассемблер первый из всех япов
Аноним 11/10/20 Вск 12:57:54 #589 №1827878 
>>1827877
И что ты хочешь этим сказать?
Аноним 11/10/20 Вск 12:58:59 #590 №1827879 
>>1827878
Что если первый то С не могу знать
 Аноним 12/10/20 Пнд 17:47:36 #591 №1828664 
>>1751032
Привет, а можешь подсказать, чуть более подробно как решал?
Пытаюсь сам раздуплить, но чето не могу зарешить, если гайд какой-то дашь, буду благодарен
 Аноним 12/10/20 Пнд 18:01:35 #592 №1828675 
>>1768916
Можешь помочь со вторым таском?
Пытаюсь потрениться на нем, но нифига внятного не получается.
Аноним 12/10/20 Пнд 19:15:19 #593 №1828736 
Пытаюсь разобраться в теории. Объясните мне.
1. Инструкция - это опкод или опкод+операнды(0 или несколько)?
2. Команда - это тогда что? То же самое, что инструкция?
3. Что значит принцип хранения данных и инструкций (программ) в одной памяти? В чем разница? Как я понял, (данные) - набор осмысленной, но бесполезной без задействования программ, информации. А (программа) - набор инструкций, приказывающих процессору выполнять определенные действия и работать с этими данными. И в зависимости от интерпретации машинного кода одно и то же условное f5 f3 e9 может быть считано и как слово хуй, и как инструкция? Я правильно понимаю? А как компьютер тогда понимает, как интерпретировать это? В контексте программы?
Извините, если тупость написал, у меня уже каша в голове из терминов.
Аноним 12/10/20 Пнд 19:48:52 #594 №1828750 
>>1828736
>А как компьютер тогда понимает, как интерпретировать это?
У проца есть указатель на адрес с командой/инструкции.
>у меня уже каша в голове из терминов.
FFFFFFF нахуй идут термины
Эти термины придумали специально чтобы сделать из программирования ёбаное сектанство. Никчёмные, прыщавые уёбки напридумывали терминов и обмазываются ими. Поэтому ничего хорошего в этой ёбаной стране нет.
насмотрелся авгна
Аноним 12/10/20 Пнд 20:31:51 #595 №1828774 
>>1828736
>Объясните мне.
>
Инструкция это код операции и операнды, что по сути почти одно и тоже, поскольку операнды зачастую есть часть инструкции.

Команда то же самое что и инструкция.

Код и данные могут быть физически в одной памяти, а могут быть в раздельных. Например, ГАРВАРДСКАЯ АРХИТЕКТРА подразумевает что код и данные разделены. У устройства разные шины для считывания код и считывания данных. Обшая память для инструкция и данных называется Фон Неймовская архитектура.

> И в зависимости от интерпретации машинного кода одно и то же условное f5 f3 e9 может быть считано и как слово хуй, и как инструкция? Я правильно понимаю?
Да.

> А как компьютер тогда понимает, как интерпретировать это?
Если выборка происходит по счётчику команд, то это код, любой другой вариант - данные.

Ничто не мешает установить счётчик команд на данные и процессор "сойдёт с ума".







Аноним 12/10/20 Пнд 21:36:16 #596 №1828816 
666.mp4
>Тип nil — это тип с единственным значением, nil, основная задачакоторого состоит в том, чтобы отличаться от всех остальных значений.Lua использует nil как нечто, не являющееся значением, чтобы изобразить отсутствие подходящего значения.

Это же сектанство. Я пытался читать это, чтобы понять скрипты который написал этот ёбаный сектант. В итоге мне это не понадобилось от слова совсем. И Я ПРОСТО ПОТЕРЯЛ ДОХУИЩА ВРЕМЕНИ!! А всё оказалось намного проще.
Аноним 12/10/20 Пнд 22:05:30 #597 №1828836 
>>1828750
>>1828774
Спасибо. А как это, установить счетчик на данные? Указатель или счетчик? Я пока только вики читаю и таненбаума начал. Есть примеры какие-то, статьи, чтобы разжевали про эти адреса и счетчики?
Аноним 12/10/20 Пнд 22:11:47 #598 №1828838 
Поясните плис как разшифоровывают шифры? В жабере есть шифратор, небезизвестный. Посмотрел что будет без него, полная галиматься, как будто ни та кодировка. Так вот. Нах эти все супер шифры, если все они похожи на просто - не ту кодировку, набор символов, зачем было выдумывать десятки заумных алгоритмов, если можно было смешать разные кодировки и дрочись их годами для дешифорвки. Я не понимать.
Аноним 12/10/20 Пнд 22:29:31 #599 №1828844 
>>1828836
Это указатель с точки зрения языков высоко уровня.
В машинном коде это всё предельно просто - записываешь число (адрес) в регистр, читаешь или пишешь память по этому адресу.

И это прочитанное значение в свою очередь может быть использовано как адрес. Будешь списки реализовывать - поймёшь.
Аноним 12/10/20 Пнд 22:30:48 #600 №1828846 
>>1828838
С этим сюда - >>1008826 (OP)
Не надо засирать тему глупыми вопросами.
Аноним 12/10/20 Пнд 22:34:23 #601 №1828847 
>>1828844
Спасибо!
Аноним 12/10/20 Пнд 22:58:59 #602 №1828851 
>>1828838
>зачем было выдумывать десятки заумных алгоритмов
>Нах эти все супер шифры
Ты пишешь другу зашифрованное сообщение:
Вечером футбол, возьми пива, зайду в гости.
Потом говоришь жене: Вечером пойду к другу смотреть футбол.
Она тебе: Будете пить пиво.
И ты думаешь: она может читать мою зашифрованную переписку? Или она догадалась?
Чтобы быть уверенным что это просто совпадение нужен надёжный шифр(в идеале - идеальный). Ну и ещё чтобы инфа не попала третьим лицам.
Аноним 12/10/20 Пнд 23:06:45 #603 №1828857 
В свое время заебался придумывать отмазки чтобы быдлу не давать пароль от своей учётки. Они же такие смелые, ничего не боятся и скрывать им нечего. Да блять, я тоже не боюсь, но вот завтра случится дерьмо и кто виноват? Я сам или долбоёб неосознанно спалил мои данные?
А объяснить эту концепцию просто нереально. В итоге быдлан думает: я боюсь потому что мне есть что скрывать. Остаётся придумывать отмазки на ходу.
Аноним 12/10/20 Пнд 23:10:14 #604 №1828860 
>>1828857
В crypt иди, пожалуйста. И даже в b.
Аноним 12/10/20 Пнд 23:13:47 #605 №1828864 
>>1828860
Просто пояснил т.к. предоставилась возможность. Он же>>1828838 интересуется потому что не понимает. Надеюсь он в будущем не будет заёбывать и просить пароли.
Аноним 12/10/20 Пнд 23:17:49 #606 №1828867 
>>1828851
Я про кодировки спрашивал, если записка будет на арабском, она один хуй не сможет прочитать. Я к том что если юзать малоизвестные кодировки, то нахуй вообще эти алгоритмы шифрования нужны.
Аноним 12/10/20 Пнд 23:21:07 #607 №1828871 
>>1828867
Я не знаю. Как угадывать, тролинг это или тупость?
Почему не сможет, она так сказала? Ну пиздец......
Аноним 12/10/20 Пнд 23:27:37 #608 №1828876 
>>1828867
Ещё вот так можно объяснить. Если можно зашифровать просто, и можно зашифровать в 2 раза лучше. Почему нужно выбирать первый вариант, если можно выбрать второй?
Всё. Больше не буду развивать тему. Сорян.
Аноним 13/10/20 Втр 05:51:18 #609 №1828998 
>>1828774
> Инструкция это код операции и операнды
Инструкция - это более высокоуровневая сущность. Например, в x86 ты можешь 89 c8 и 8b c1, но выполняться физически будет одна и так же операция. Инструкция задает поведение, опкод - лишь способ записи.

>>1828867
> Я к том что если юзать малоизвестные кодировки, то нахуй вообще эти алгоритмы шифрования нужны.
Сколько ты таких кодировок назовешь? Ну пусть пару тысяч, хуй с ним. То есть любой дебил сможет один раз их все собрать и написать скрипт, который за 2^11 попыток (за доли секунды) декодирует то, что ты там нашифровал. На самом деле и без прямого перебора можно тупо статистикой вскрыть, но похуй. При этом если ты воспользуешься любым сколько-нибудь серьезным шифром, то на перебор потребуется уже 2^64 попыток, даже если шифр совсем говно.
Аноним 13/10/20 Втр 11:32:51 #610 №1829135 
>>1828838
Кодировка это алфавит для компьютера. У каждой буквы есть номер, как в языке, так и в кодировке.
Если ты знаешь, что текст написан на русском, то нет никакой сложности например узнать код буквы А потому что она самая часто встречающаяся.
Сколько не меняй ее код, она всегда будет самая часто встречающаяся.
Аноним 13/10/20 Втр 11:34:59 #611 №1829139 
>>1828867
Перевод естественных языков это гораздо более трудная задача чем просто замена, ее до сих пор до конца никто не решил.
Так что компьютер не сможет перевести на арабский сообщение.
Аноним 13/10/20 Втр 12:51:45 #612 №1829189 
>>1829139
При слове "арабский алфавит" меня начинает трясти. Их письменнность основана на лигатурах, а правила для лигатур зашиты глубоко в шрифтах. Легче защиту на игрушке сломать, чем распарсить лигатуры из шрифта и на их основе построить список глифов. Это боль боль боль боль боль боль.
Аноним 13/10/20 Втр 13:02:16 #613 №1829204 
>>1829189
А почему именно из шрифта? У них что, нет какой то одной стандартной кодировки?
Почему нельзя составить список соответствия лигатур и исходных символов?
Аноним 13/10/20 Втр 13:13:52 #614 №1829211 
>>1829204
> У них что, нет какой то одной стандартной кодировки?
Снаружи, на уровне Unicode, она стандартная. А вот внутри уже ад - в зависимости от позиции буквы она может отображаться разными спосбоами. Так же её вид может отличаться от того, какая или какие буквы стоят перед ней. То есть в алфавите это одна буква, а отображаться она может разными глифами.
Аноним 13/10/20 Втр 17:42:37 #615 №1829423 
ГДЕ ПЕРЕКАТ?
Аноним 13/10/20 Втр 18:46:03 #616 №1829484 
>>1829423
Будет ближе к выходным
Аноним 13/10/20 Втр 19:18:59 #617 №1829503 
.png
>>1828664
>>1828675
Ну я уже даже не вспомню сходу что там было, столько времени прошло.
Нашел код для тебя, может он тебе поможет. Это должно быть решение для второй таски. Не очень хочется снова это говно ковырять.
sageАноним 13/10/20 Втр 23:41:24 #618 №1829676 
>>1829423
И шапку обновить не забудьте
Аноним 14/10/20 Срд 20:31:56 #619 №1830575 
04.png
Не знаю по теме треда ли но поясните: почему в 64-битном режиме интел отказались от сегментации памяти?
Аноним 14/10/20 Срд 20:48:25 #620 №1830598 
>>1830575
Потому что даже в 32 битном сегментация никем почти не используется.
Все сегменты в Винде настроены на 4 ГБ.
Сегментация же вроде как придумана была чтобы больше памяти на маленьких регистрах адресовать. Подвид косвенной адресации можно сказать.
Если 64 бита регистры, то можно без всяких сегментов адресовать терабайты ОЗУ.

Мне было в свое время интересно, почему винда не использует больше 4 ГБ в 32 битном режиме, если у нее есть PAE специально для этого придуманный?
Аноним 14/10/20 Срд 20:53:26 #621 №1830606 
>>1830598
Спасибо за ответ. В документации пишет что основная причина ввода сегментов - это повышение надежности программ: размещение программы в отдельных сегментах предотвращает к примеру роста стека в код или данные и соответственно перезапись им последних. Насколько сейчас эта проблема актуальна?
Аноним 14/10/20 Срд 21:06:05 #622 №1830618 
>>1830606
Вместо этого сделали защищённый режим. Теперь при загрузке можно заполнить целую структуру, в которой записаны параметры памяти, и процессор сам будет следить чтобы задачи не лазили в чужую память.
Винда и Линукс работают в 32 битном защищённом режиме, но 32 битный бывает и не защищённым, это отдельный механизм.
Сегментные регистры остались, но в защищённом режиме они имеют совсем другое значение.

В Википедии подробности.
Аноним 14/10/20 Срд 23:50:33 #623 №1830722 
>>1830575
> интел отказались от сегментации памяти?
Потому что страничная организация целиком покрывает все потребности. А поддержка совместимости добавилы бы больше проблем, чем преимуществ.


Аноним 15/10/20 Чтв 04:13:36 #624 №1830809 
>>1830606
> основная причина ввода сегментов
Основная причина, по которой интел в 286 решили притащить в защищенный режим именно сегменты — это то, что страничную трансляцию они позволить себе еще не могли. Все эти прогулки по таблицам страниц дорого обходятся. А защищенный режим уже хотелось. Вот и слепили, как получилось. А как только получилось это говно выкинуть — выкинули. Не без помощи амд, конечно.
Аноним 15/10/20 Чтв 23:42:58 #625 №1831593 
Здравствуйте, я извиняюсь за возможный 0iq, но не могли бы объяснить - чтобы начать ревёрсить нужен скилл в ассемблере? "Reverse Engineering для начинающих" Начался с не понятной для меня вещей и я дропнул, стоит для начала учить ассемблер?
Аноним 16/10/20 Птн 00:21:58 #626 №1831609 
>>1831593
Да, обязательно.
Аноним 16/10/20 Птн 15:34:48 #627 №1832017 
>>1831593
Конечно. Сначала лучше на С/C++ что-нибудь пописать, если еще не. Потом куришь архитектуру компьютера. Потом язык ассемблера не ассемблер, епт, win32 api желательно, потом уже RE.
Аноним 16/10/20 Птн 17:37:46 #628 №1832128 
Super Mario World на snes не переведена!
Аноним 16/10/20 Птн 18:10:41 #629 №1832153 
>>1832128
Это хорошая игра.
Аноним 16/10/20 Птн 18:27:11 #630 №1832174 
Есть смысл учиться fasm на x16 просто для x64 не нашел. Либо плохо искал
Аноним 16/10/20 Птн 19:20:39 #631 №1832210 
>>1832174
Как насчёт ихнего форума

https://board.flatassembler.net/forum.php?f=23
Аноним 16/10/20 Птн 19:37:03 #632 №1832224 
>>1832174
Смысли есть. Я вообще на восьмибитном постигал.
Аноним 16/10/20 Птн 19:37:54 #633 №1832226 
>>1832224
На 64 нет поддержки. Ставить на виртуалку дос?
Аноним 16/10/20 Птн 19:39:14 #634 №1832228 
>>1832226
>Ставить на виртуалку дос?
Да. Безусловно. Будет прямой доступ ко всему железу. О чём можно только мечтать.

Но есть нюанс. Ставь FreeDOS но ни в коем случае не MS-DOS.
Аноним 16/10/20 Птн 19:48:45 #635 №1832235 
>>1832228
А можно ли с помощью него убить компьютер?
Аноним 16/10/20 Птн 19:57:58 #636 №1832240 
>>1748635 (OP)
>Ghidra
Как это говно хотя бы запустить? В репозитории нашёл только DevGuide.md с какой-то ебической инструкцией, где предлагают наставить всякого говна, затащить пол люнупсы и эклипс в придачу. Там что, нету тупого бинарника, который можно запустить двойным щелчком мыши?
Аноним 16/10/20 Птн 20:06:00 #637 №1832245 
>>1832235
В теории можно, но это долго и муторно - перегеть процессор. Понадобится года три его греть, после того как термопаста высохнет. Других способов нет.
Аноним 16/10/20 Птн 20:20:46 #638 №1832252 
>>1832240
>Как это говно хотя бы запустить?
Возьми vpn и скачай билд с ghidra-sre.org (амеры заруливают запросы с русских ip на 403).
Дальше запуск ghidraRun, батник или шелл на выбор.
Аноним 17/10/20 Суб 03:31:23 #639 №1832455 
>>1832226
У кого нет поддержки х64?
Аноним 17/10/20 Суб 03:35:59 #640 №1832456 
>>1832455
У его процессора вестимо. А скорее у оси, потому как сейчас процессор без 64-бита можно найти только на компе, спрятанном лет 5 назад в кладовку.
Аноним 17/10/20 Суб 04:39:57 #641 №1832460 
>>1832455
У виндвс 10 нет поддержки 16 бит
Аноним 17/10/20 Суб 15:08:57 #642 №1832640 
Хочу кодить на C#, но в асме. Подводные?
Аноним 17/10/20 Суб 15:11:01 #643 №1832643 
>>1832640
Бросишь через 15 минут.
Аноним 18/10/20 Вск 09:41:40 #644 №1833345 
>>1832252
>амеры заруливают запросы с русских ip на 403
Проиграл.
Аноним 18/10/20 Вск 16:22:03 #645 №1833565 
пацики, юричева чек, таненбаум архитектура чек, но все еще загадка про ос, про сисколы [syscall]. не пАнимаю как ос работает, сам писать не хочу. че можно имбалансного почитать так чтобы осветили регистры с описателями страниц памяти, виртуальные адреса поподробнее. ну типа как у процесса и где хранится инфа о своих страницах памяти.
крч таненбаум как-то частями освятил, но пропасть между ос и железом осталась. че некст фундаментальное про ос можно почитать?
Аноним 18/10/20 Вск 16:30:00 #646 №1833572 
>>1833565
Построй пзушку в майнкрафте.
Аноним 18/10/20 Вск 16:49:51 #647 №1833592 
>>1833565
Современные операционные системы Танненбаума описывают все аспекты операционных систем.
Аноним 18/10/20 Вск 17:36:19 #648 №1833624 
>>1833565
>про сисколы [syscall]
Традиционно на старыъ компьютерах системные вызовы осуществлялись через инструкции прерывания. Это позволяло сохранить контекст вызывающей программы. Затем добавились новые расширения для системных вызовов, но пока ты не поймушь суть системных вызовов, лучше не лезть в дебри.

>>1833592
Двачую. Он не вдумчиво читал.
Аноним 18/10/20 Вск 17:39:15 #649 №1833629 
37142.jpg
>>1833565
>не пАнимаю как ос работает
Аноним 18/10/20 Вск 17:42:53 #650 №1833636 
>>1833624
Я остановился на половине книги, где про виртуализацию, все никак не могу дочитать.
Аноним 18/10/20 Вск 18:09:19 #651 №1833668 
>>1833624
>Это позволяло сохранить контекст вызывающей программы.
Программное прерывание прежде всего позволяло не привязываться к точке входа в системный вызов. Оно было универсальным на любой версии ОС.
Аноним 18/10/20 Вск 18:11:28 #652 №1833673 
>>1833592
чекну, спасибо
>>1833624
я выкупаю что такое прерывания для проца, но не понимаю как прерывания обрабатывает ос. типа проц может номер прерывания сопоставить с началом функции, а ос че как вобще постоянно мониторить прерывания програмно. мутная хуйня какая-то.
Аноним 18/10/20 Вск 18:15:42 #653 №1833677 
image.png
>>1833673
>я выкупаю что такое прерывания для проца, но не понимаю как прерывания обрабатывает ос. типа проц может номер прерывания сопоставить с началом функции, а ос че как вобще постоянно мониторить прерывания програмно.

Не позорься. ты НЕ ПОНИМАЕШЬ КАК РАБОТАЮТ ПРЕРЫВАНИЯ.
Пока не поймёшь - не возращайся.
Аноним 18/10/20 Вск 18:18:43 #654 №1833680 
>>1833677
хорошо ладно извините
Аноним 18/10/20 Вск 18:22:10 #655 №1833685 
>>1833673
Прерывания на то и прерывания, что их мониторить не нужно. Они вызываются сами, когда какой-нибудь блок типа usb даст процессору соответствующий сигнал.

Нажал кнопку - процессор все бросил, вызвал функцию - ос, которой принадлежит эта функция, сделала все что нужно и вышла из прерывания - процессор продолжил там где остановился.
Аноним 18/10/20 Вск 18:30:16 #656 №1833690 
>>1833685
так да, и если аппаратно понятно как это может работать, то в случае с прерываниями для ос не понятно.
т.е. если программа напрмер пишет чето в порт для прерывания, то окей, понятно как это можно быстро поймать и обработать, но если сама ос обрабатывает какие то прерывания, то не понятно
ой бля я крч дебич, не выкупаю, почитаю, мб пойму.
но тип апаратные прерывания мега понятные, а как ос обрабатывает исключения и напимер такую хуйню как int 3 или int 21h не понятно. ну типа как вызвать прерывания в программно если их не пониторить??
Аноним 18/10/20 Вск 18:50:40 #657 №1833699 
>>1833690
Программные прерывания точно так же работают, просто сигнал даёт не внешний модуль а команда int.
Команда int - процессор бросил эту ветку - вызвал что там по номеру и так далее, потом вернулся и дальше пошел исполнять то что после int.

Для программы которая вызывает прерывание, отличие от обычного вызова минимальное.
Аноним 18/10/20 Вск 18:57:48 #658 №1833703 
>>1833699
внешние прерывание значение, проц может его сопоставить с массивом функций обработчиков. для внешнего хардварного прерывания есть ножка, при наличии на которой сигнала проц ищет функцию обработки.
а с программными, ну окей, проц исполнил инт, пошел искать че делать ровно так же, но как ос получает сигналы и чето делает пока не выкупаю. крч пропасть между хардваре и ос. я не могу обяснить толком че мне не нрав в этой схеме, но как-то мутно непонятно
Аноним 18/10/20 Вск 23:58:34 #659 №1834050 
>>1832460
А у XP скоро будет.
sageАноним 19/10/20 Пнд 01:44:32 #660 №1834087 
>>1833703
ОС не получает сигналы. ОС просто пишет адрес своего обработчика (или дескриптор в защищенном режиме x86, но похуй, все равно адрес) в массив адресов/дескрипторов, процессор просто берет номер прерывания (похуй, любого, что хардварного, что программного), просто читает из этого массива адрес по индексу и передает управление туда (ну там контекст сохраняет, другие прерывания запрещает - это само собой). Просто тупо делает call far (плюс-минус особенности защищенного режима). Механизм настолько одинаковый, что в реалмоде тебе нужно прикладывать усилия, если ты хочешь как-то отличить call far адрес_обработчика от int номер_вектора от IRQ с тем же вектором.
Аноним 19/10/20 Пнд 07:44:00 #661 №1834143 
тред, если я хочу разлочить дополнительные функции биоса я должен знать нужную область и просто отредактировать дамп в хекс-редакторе?
sageАноним 20/10/20 Втр 07:06:37 #662 №1835089 
>>1834143
В UEFI чексуммы и подписи. В биосах чаще всего были только чексуммы. В любом случае, нужно патчить как минимум проверку в прошивалке или шить, подключившись программатором напрямую. Но для разлочки меню в UEFI часто можно без всего этого обойтись, узнав переменную, которая активирует меню и выставив ее через шелл. Загугли "uefi setup_var" без кавычек.
Аноним 21/10/20 Срд 15:38:46 #663 №1836183 
Screenshot20201021-153755Via.jpg
И че делать
Аноним 21/10/20 Срд 15:41:12 #664 №1836186 
О, пожаловался на дваче и сразу включили.
Вот это техподдержка.
Аноним 21/10/20 Срд 17:03:19 #665 №1836234 
>>1833673
>я выкупаю что такое прерывания для проца, но не понимаю как прерывания обрабатывает ос. типа проц может номер прерывания сопоставить с началом функции, а ос че как вобще постоянно мониторить прерывания програмно. мутная хуйня какая-то.

Сисколлы в лялексе реализованы через программное (его еще называют синхронным, так как происходит в так процессора, в отличие от аппаратного) прерывание. Есть такая штука, как ABI (Application Binary Interface), по конвенциям которого вызываются функции, сисколлы, используются определенные регистры для, например, возврата значения из функции и т.п.
ВНИМАНИЕ! Нижеперечисленное релевантно только касательно архитектуры x86_64.
По ABI, перед вызовом сисколла заполняются соответствующие регистры (в х86-64, например, в rax записывается дескриптор обработчика системных вызовов), когда все соответствующие регистры заполняются, вызывается программное прерывание через инструкцию syscall (int 0x80 в 32-битной версии). Тем самым, вызывается обработчик прерывания, дескриптор которого сигнализирует ядру, что данное программное прерывание - это сисколл. Через регистр rax ядро выясняет какой именно сисколл вызвался, но а другие регистры содержат аргументы сисколла. Сам код сисколла находится в пространстве ядра, поэтому происходит context switch между пространством пользователя и пространством ядра, чтобы CPU смог исполнить привелигированный код. После выполнения кода сисколла, происходит context switch из ядра обратно в юзерспейс.
Аноним 22/10/20 Чтв 07:38:33 #666 №1836629 
как вы думаете с чего начать изучения asm'a? какие книги, видео глянуть (желательно на русском языке)
первоочередной целью этого изучения является удовлетворение собственного интереса
Аноним 22/10/20 Чтв 08:59:14 #667 №1836650 
>>1836629
С хелло ворлда.
Аноним 22/10/20 Чтв 09:20:11 #668 №1836656 
>>1836629
насм столярова
Аноним 22/10/20 Чтв 10:19:31 #669 №1836675 
>>1836656
спасибо, добряк, хорошего тебе дня
Аноним 22/10/20 Чтв 20:10:02 #670 №1837205 
Щас узнал от знакомого, что его бывшие коллеги раньше работали в каспере реверсерами и теперь некоторые из них невыездные в сша т.к. какие-то их законы нарушили. Чё за хуйня? Кто-нибудь в курсе что не нужно реверсить чтобы такого не случилось?
Аноним 22/10/20 Чтв 20:52:36 #671 №1837223 
>>1837205
Возможно у них был допуск здесь, поэтому их не выпускают туда?
Аноним 22/10/20 Чтв 20:56:43 #672 №1837224 
>>1837223
Не не выпускают, а не впускают. Именно штаты чего-то их захейтили. Типа они без лицензии что-то реверсили и их копирайтеры засудили. Или что-то похожее. Может закладки или уязвимости искали. Я вообще не в курсе. Сейчас в акронисе говорят толпа таких работает.
Аноним 22/10/20 Чтв 23:09:00 #673 №1837320 
>>1837224
>Типа они без лицензии что-то реверсили и их копирайтеры засудили.

Почитай Microsoft EULA.
Аноним 23/10/20 Птн 13:18:55 #674 №1837620 
Оказалось что в русском алфавите 33 буквы, а в английском 26. То есть писать упаковщик нет смысла, надо куда-то деть ещё 6 глифов. Решил задействовать не использующийся сектор диска.
Бляяя, cd-rom psx это АДЪ, никто не знает как он работает, это блять живой организм. Почти две бессонные недели убил на поиск решения, а решение оказалось простым(тоже с чтением сектора). Прокрастинация работает даже если чтото делаешь.
Аноним 23/10/20 Птн 13:41:15 #675 №1837637 
Ах жа
ОП треда - коммунист
Аноним 23/10/20 Птн 13:53:30 #676 №1837641 
У коммунистов ничего не работает, за что бы они не взялись. Даже перекаты.
Аноним 23/10/20 Птн 14:21:48 #677 №1837660 
NewYork.mp4
Аноним 23/10/20 Птн 14:42:01 #678 №1837674 
Коммунист, ты гной на теле человечества, ты шизофрения человечества, ты рак человечества. Ты не знаешь даже чего хочешь, но знаешь как нужно делать другим чтобы добиться то чего они хотят. Они хотябы знают чего хотят, а коммунист это простой верун во всё хорошее, только он один хочет чтобы всё было хорошо, а другие хотят чтобы всё было плохо ессно. Ненавижу коммунистов, хочу чтобы они все сдохли уже и не позорили человечество своими хотелками и своим существованием.
Аноним 23/10/20 Птн 15:16:37 #679 №1837715 
Коммунисты крутые, потому что хотят. Если бы все хотели, то были бы коммунистами. Раз не коммунист, значит не хочет.
Аноним 23/10/20 Птн 15:59:24 #680 №1837750 
>>1837674
Ты описал не коммуниста, а буддиста.
Аноним 23/10/20 Птн 16:45:12 #681 №1837790 
>>1837750
Где перекат?
Аноним 23/10/20 Птн 16:50:32 #682 №1837794 
Я бы мог спросить так: Где перекат, ничтожество?
Но не стал, а то ведь проткнутое ничтожество не сделает то что должен сделать. Потому что коммунист.
Аноним 23/10/20 Птн 17:05:00 #683 №1837802 
>>1837790
Я в этом треде меньше месяца.
Аноним 23/10/20 Птн 17:19:11 #684 №1837814 
>>1837802
Умеешь делать перекаты? А то оп-хуй-коммунист повесился. И что? Нам теперь на асм забить и учить высокоуровневые языки?
Аноним 23/10/20 Птн 17:21:27 #685 №1837818 
Я сам накосячу 100%, проверял в отладчике)
Аноним 23/10/20 Птн 18:06:08 #686 №1837863 
>>1837814
https://2ch.hk/pr/res/1837856.html
https://2ch.hk/pr/res/1837856.html
https://2ch.hk/pr/res/1837856.html
https://2ch.hk/pr/res/1837856.html
https://2ch.hk/pr/res/1837856.html
https://2ch.hk/pr/res/1837856.html
https://2ch.hk/pr/res/1837856.html
https://2ch.hk/pr/res/1837856.html
https://2ch.hk/pr/res/1837856.html

Перекат посвятил fasm, а также шизику с копированием строки.
Аноним 23/10/20 Птн 18:45:46 #687 №1837901 
>>1837863
Это Бро
sageАноним 23/10/20 Птн 20:49:29 #688 №1838027 
>>1837863
Забыл тег /asm
Аноним 23/10/20 Птн 21:04:13 #689 №1838036 
>>1837620
>Почти две бессонные недели убил на поиск решения, а решение оказалось простым(тоже с чтением сектора). Прокрастинация работает даже если чтото делаешь.

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

Решение с сектором красивое, потому что простое.
Аноним 24/10/20 Суб 05:32:40 #690 №1838271 
>>1838027
А зачем он?
Аноним 24/10/20 Суб 10:17:41 #691 №1838346 
>>1838036
Мои наблюдения, как новичка. Чтобы побороть прокрастинацию нужно понимать, что неправильные действия это тоже результат. После того как сделаешь кучу ненужной работы, понимаешь что нужно сделать. И какбы вся проделанная ненужная работа становится не такой уж и ненужной, потому что без этой "ненужной" работы я бы не узнал нужную работу.
Но всё равно это ебёт - хуля я такой никчёмный, почему сразу не догадался что надо делать вот это, это же очевидно, зачем понаделал столько всего ненужного.
Аноним 24/10/20 Суб 13:50:07 #692 №1838500 
image.png
>>1838271
Чтоб находить твой недотред из навигатора в шапке.
Аноним 24/10/20 Суб 20:45:50 #693 №1838943 
>>1838027
Попросите мода добавить
Аноним 26/10/20 Пнд 20:40:46 #694 №1840449 
>>1837320

>Почитай Microsoft EULA.

Та эта хуйня и юридически ничтожно, по прецендетному СШАшному праву можно всё реверсить, если чисто. Просто Майкрософт, похоже, настолько крупный зверь, что им похуй вообще на всё. Делают что хотят по праву сильного. Так-то их хуйню реверсить законно.
comments powered by Disqus

Отзывы и предложения