1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

Учусь по книге Ершова В.Г.

Тема в разделе "WASM.BEGINNERS", создана пользователем CKAP, 29 апр 2019.

  1. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    452
    Оооо друг, (смайл рука-лицо) этот ход мысли = путь в никуда, время достижения = никогда.

    У тебя какой комп? сколько оперативки и сколько места свободного на диске?
    исполняемые файлы:
    1. сделать в линуксе аналог exe
    2. сделать в линуксе аналог dll
    3. сделать в линуксе драйвер, аналог sys
    4. дотянуться до переменных окружения в линуксе
    5. просто взять явные переменные
    6. запустить любую программу из языка с в линуксе:
    7. IPC лекция Кирилла Кринкина: что там перечислено? files, pipe, signals, sockets... вот про это и гугли.
    8. fork :
    9. thread
    10. и три статьи с хабра:
      https://habr.com/ru/post/150327/
      https://habr.com/ru/post/106107/
      https://habr.com/ru/post/199090/
    Сколько нужно времени что бы это повторять как мартышка до состояния пока из ушей не полезет? Следующий шаг от мартышки, это комбинировать эти пазлы, и в хвост и в гриву. Следующий шаг, начать читать про это же самое, что бы не быть мартышкой бесконечно. А все книги и советы выбрось нахрен. Кроме этой.
    она же Хакинг: искусство эксплойта.
    что к этому еще можно добавить? google\youtube ptrace(gdb) syscall(assembler/edb) ioctl(драйверы)
     
    Последнее редактирование модератором: 14 май 2019
    CKAP нравится это.
  2. CKAP

    CKAP Member

    Публикаций:
    0
    Регистрация:
    27 апр 2019
    Сообщения:
    53
    Оу, у меня их много ((: есть и 32 битные и 64 битные.. 32 битный топовый 3Гига озу два ядра, 64 битный 4 ядра 4 озу (чет расширить озу руки не доходят, но место есть под планки) У меня четыре сына маленьких, мозг взрывают нереально, вот я каждому подсобрал по пк, + в запасе пару ноут буков.. так что тачек валом [​IMG]

    По поводу пути в никуда\отдельного винта... да норм идея вроде, у меня башня без крышки стоит, че там перекинул шлейфа, и работай себе на чистенькой ОСи, заточенной под все это дело + каши такой не будет, как на рабочей ОСи. К тому же винтов у меня тоже навалом. Штуки три сатовских по по терабайту свободных точно есть. Ну говорю же фанатик я ;)

    Зы\ отличный пост. Благодарю за старание\потраченное время. [​IMG]
     
  3. Aoizora

    Aoizora Member

    Публикаций:
    0
    Регистрация:
    29 янв 2017
    Сообщения:
    125
    А я думаю о том, как совмещать увлечение низкоуровневым извратом с карьерой. Работаю в блокчейн-стартапе и, общаясь с людьми, узнаю, что несмотря на то, что в интернете инфы по Hyperledger мало и вакансий немного, зато на этих вакансиях готовы платить космические деньги. Можно ли точно так же зарабатывать реверсом где-нибудь в лаборатории касперского?
    Одним из блокеров в развитии реверсера может стать то, что ты ковыряешься в этом годами, но всегда остаешься один и не участвуешь ни в каких проектах. Такой чувак-самодрочер. Когда я еще учился в универе, от бывшей преподавательницы слышал, какой насыщенной жизнью она живет, ездит по конференциям, в том числе за рубеж, общается с математиками, отдыхает во всяких шри-ланках. По работе меня тоже стали отправлять на конфы и я первый раз увидел Питер. Это к тому, что успех не может быть без взаимодействия с другими людьми, нужно быть в потоке, знать об актуальных задачах и о том, что уже решено и на что не надо тратить время. Нужно профессионально расти и зарабатывать большие деньги. Иначе в старости будешь нищим, без практических результатов и никому не нужным.
     
  4. CKAP

    CKAP Member

    Публикаций:
    0
    Регистрация:
    27 апр 2019
    Сообщения:
    53
    Философски сложный вопрос на самом деле. И тут многое зависит от жизненного кредо каждого отдельного человека. Если человек мизантроп успевший поведать мир, при этом твердо убежден, что в конце пути либо ящик, либо урна. А "ценности" в большинстве своем очень странная размытая хрень.. то и подход к жизни может немного отличатся, чем скажем у "нормальных", добрых, гордых, и тд..

    В рф связи как решали, так и решают. Есть и элемент удачи. Ну скажем просто оказался в нужном месте в нужное время, познакомился с хорошими людьми, и попасть в "струю". Конечно же как Вы\ты правильно подметил про взаимодействие. Оно важно, и нужно уметь как минимум быть интересным.

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

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

    Про путешествии.. блин, я вот смотрю в прошлое.. зря на геолога не пошел учится.. :crazy:
     
    _edge нравится это.
  5. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    452
    Удивительно, вроде и четыре сына маленьких, а время до сих пор для тебя не ресурс. Удивительно.

    Aoizora, ткни их носом пару раз в дыры, которые требуют знания низкого уровня. Они отметят, запомнят. Подожди с месяц иль два, примерно столько нужно на обсуждение. Может в их головах родится мысль, и тебя припашут к более близкой тебе работе. Ну а нет, без суеты собирай деньги, жди и создавай окно возможностей для скачка в нужном направлении. В основном жди, когда окно откроется. Выпрыгивать в неподходящее время = буксовать и спалить всю финансовую подушку безопасности. А в касперском про большие зп - сомнительно. Иначе бы они брали одаренных студентов на степухи. А так юзают как негров. Хотя опять же, откуда инфа, так, слухи. А раз такая схема там живет, значит и текучка кадров из этих студентов есть. Мне так кажется, я там не был, могу и ошибаться.
     
    CKAP нравится это.
  6. Aoizora

    Aoizora Member

    Публикаций:
    0
    Регистрация:
    29 янв 2017
    Сообщения:
    125
    >Конечно же как Вы\ты правильно подметил про взаимодействие. Оно важно, и нужно уметь как минимум быть интересным.

    Да. Человек, который изучает что-то для себя, становится похож на ящик с книгами, который никто не открывает. Может, кому-то это нравится.
     
    CKAP нравится это.
  7. CKAP

    CKAP Member

    Публикаций:
    0
    Регистрация:
    27 апр 2019
    Сообщения:
    53
    Да, мне нравится. Всегда интересно узнать, что то новое. Хотя иногда, встречаю людей, рядом с которыми чувствую себя тупым как пробка.. Гхм, редко, но бывает.
     
  8. CKAP

    CKAP Member

    Публикаций:
    0
    Регистрация:
    27 апр 2019
    Сообщения:
    53
    Блин я все ещё читаю эту чудную книгу, и наверное дочитаю.. хотя уже настроил ВМ с пингвином, для юзания советов от мемберов.
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Очепятка детектед как в скан версии книги так и в текстовой, коротая приводит к ошибки. error a2025: Improper align/combine type

    [​IMG]
    Лечится заменой SACK на STACK
     
  9. _edge

    _edge Well-Known Member

    Публикаций:
    1
    Регистрация:
    29 окт 2004
    Сообщения:
    566
    Адрес:
    Russia
    CKAP, будьте готовы к тому, что

    - то, что Вам интересно, никому кроме Вас не нужно
    - то, что интересно другим, Вы не сможете осилить

    иногда это ломает людей.
     
    Mikl___ и CKAP нравится это.
  10. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.327
    Адрес:
    Fryazino
    В этой книге много опечаток. Даже где-то список был и правленый файл.
     
    CKAP нравится это.
  11. CKAP

    CKAP Member

    Публикаций:
    0
    Регистрация:
    27 апр 2019
    Сообщения:
    53
    Понято, учту.
     
  12. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    452
    если речь про мои советы, то добавлю...
    а)книжка Learning Linux Binary Analysis даст подсказки на очень многие вопросы. Objdump -D , readelf и т.п.
    б)то что Кринкин рассказывает про IPC в виде пятиминутных роликов есть на канале ShellWave(первый ролик с этого канала)
    в) в ресурсах есть книжка Penetration testing with shellcode - там есть про то как установить edb. Голый рецепт скорее всего на 100% не поможет, надо будет почитать ерроры при установке, что бы доставить необходимые пакеты. edb - линуксовый аналог ollydbg.
    г) для того что бы gcc при сборке файла на си не затирал промежуточный файл с программой в ассемблерном виде нужен ключ -S , а для того что бы код ассемблера был в интел нотации -nasm=intel. Итого:
    gcc -S -masm=intel test.c
    д) сразу же поставьте себе radare2 , в его комплект входит консольная утилита rasm2. Как ей пользоваться:
    вводите: rasm2 -a x86 -b 64 "xor rbx,rdx"
    получаете: 4831d3 - это байты опкодов
    вводите: rasm2 -a x86 -b 64 -d 4831d3
    получаете: xor rbx,rdx

    Общая идея моих советов какая. Вы смотрите что реально можете сделать с помощью си(очень простые но прикладные примеры, одна программка - одна фишка), и с помощью gdb и gсс -s смотрите на то, как это выглядит в ассемблерных командах. И с помощью gdb смотрите где в памяти что лежит. Обвыкнитесь с gdb, для удобства переходите на edb. И либо, как в ollydbg выделяете какую-то память и в ней забиваете ассемблерные команды, и смотрите что происходит, либо вставками ассемблерного кода внурть простенькой си программы, geogle если подзабыли в поиске assembly code inline c example , можно и в интеловской нотации забивать вставки. Долго не засиживайтесь на этом этапе, переходите к написанию кода на асме (к примеру fasm или masm если захотите все же винду).
     
    CKAP нравится это.
  13. CKAP

    CKAP Member

    Публикаций:
    0
    Регистрация:
    27 апр 2019
    Сообщения:
    53
    Да, очень годные советы, решил, что можно пока обойтись ВМ.
     
  14. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    452
    CKAP, советы под линукс можно исполнять и в винде, ставиться mingw и туда доставляются nasm binutils и т.п. Но лучше виртуалка. По вские хитрые антивм антиотладочные приемы не надо, то виртуалка отлично подходит.

    обязательно разберитесь с 33-ей и 40-й главой learning c hard way ?
    https://arisuchan.jp/λ/src/1524899631243.pdf
     
    Последнее редактирование: 18 май 2019
    CKAP нравится это.
  15. CKAP

    CKAP Member

    Публикаций:
    0
    Регистрация:
    27 апр 2019
    Сообщения:
    53
    Да чет на каждом шагу..

    [​IMG]

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

    Зы: гадость вся в том, что ведь будут такие куски кода, где я просто не смогу понять или увидеть опечатку.. балин :sad:
    --- Сообщение объединено, 20 май 2019 ---
    Начал попутно читать Аблязов Р.З. .. блин, это реально крутая книжка, прям норм, буду читать попутно с Ершовым.. если есть у кого топовое издание поделитесь а? Можно в лс.. я лично нашёл походу самое первое 2011 года (и то кое как ).
     
    Последнее редактирование: 20 май 2019
  16. f13nd

    f13nd Active Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    912
    q2e74, каждый раз, когда кто-то предлагает асм-портяки си-программ для изучения ассемблера, где-то в параллельной вселенной умирает один розовый пони :scare:
     
  17. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    452
    f13nd, у одних есть понимание о подводящих упражнениях, а у других нет. Чтобы человек крест на кольцах сделал, ему сперва надо научиться подтягиваться. Бессмысленно не имея представлений об IPC браться за ассемблер. Сказано же, не засиживайтесь на этом этапе, переходите к fasm или masm. Сперва знания ос, страниц и загрузчика, а уж потом знание о макросах и алгоритмах поиска. Но можно щеки дуть о розовом пони, и с попкорном следить за тем, как человек топчется на граблях.
     
    CKAP нравится это.
  18. f13nd

    f13nd Active Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    912
    А все перечисленное для того, чтобы ос на следующем этапе выбирать не пришлось?
     
  19. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    452
    заметно да? :blush:
    ну не было под рукой примеров, а эти каналы были под рукой. по винде я знаю только эту ссылку на канал
    https://www.youtube.com/user/y0011langester
     
    CKAP нравится это.
  20. CKAP

    CKAP Member

    Публикаций:
    0
    Регистрация:
    27 апр 2019
    Сообщения:
    53
    Вообщем некий вердикт.
    Поюзав советы мемберов сформировалось некое мнение. Начну с Ирвина.
    Я теперь понимаю, что имел ввиду Инди говоря:
    Проще говоря идеальных переводов НЕТ. Вот простая строчка из Ирвина 4е издание.

    [​IMG]
    У меня "она" вопросов вызвала бы больше чем ответов. Переводчик явно не в теме. К тому же ввел новое понятие "Переменные программы".. хз что это вообще. Тем не менее книга годная, но об этом чуть ниже. Я бы посоветовал, тем кто прям с нуля начинает, все же обратить внимание на Русскоговорящих авторов, Калашникова к сожалению есче не смотрел, но его хвалят, судя по отзывам. По переведенной зарубежной литературе нужно учится под присмотром понимающих сабж людей. Конкретно по Ирвину я нашел вот этого рассказчика.
    ***********
    Ссылка на плей лист:

    Слайды к презентации нужно скачивать отдельно, ссылка на них в описании.
    [​IMG]
    ***********
    Книга Ирвина действительно хороша. Видно что он пытался акцентировать внимание на важные моменты. Но вот перевод, такой себе.
    -----------------------------------------------
    Советы от q2e74 так же очень хороши, но я бы их отнес на второй план, для оттачивание вот тех вот первых сккилов, и закрепление материала \ да и просто расширение кругозора.. из разряда:

    А потом уже можно всякие практикумы.
    -------------------------------------------------

    Вот так же нашел не плохой канал:
    https://www.youtube.com/channel/UC7slECCBPsndEusmY49cR9g
    Очень хорошо объясняет человек сабж. Человек пишит игру на Ассемблере. но к нему имеет смысл идти когда есть понимание синтаксиса, что бы понимать что вообще происходит. Хотя у него есть видосы и по обучению, но мало.
    ----------------------------------------
    Ну и наш мембер конечно, сабж по дезасемблеру.

    :good3:
    -------

    Огромное благодарю ещё раз. Ершова я конечно дочитаю. Но чисто по фану.

    Зы, собственно этот топик можно перетащить на первую страницу, дабы случайный гость, который пришёл по тегу Ершов, мог сразу лицезреть чем все закончилось [​IMG]

    Полезные ссылки от q2e74
    Там было что то есче, чекайте хронологию. Я пойду эволюционировать дальше ОоооооууумЪ :dirol:
     
    Verc0tti нравится это.