Как запустить из программы процесс?

Тема в разделе "WASM.ASSEMBLER", создана пользователем alex-rudenkiy, 3 июл 2017.

  1. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    D34DC0D3_R,

    > Уже не первый раз замечаю, у Вас, какая-то странная техника чтения, вы пропускаете слова

    То как я говорю вас волновать не должно. А есчо <-- я допускаю иногда ошибки намеренно, стиль такой. Претензии шлите не сюда, а вот сюда http://filologia.su :sarcastic_hand:

    > В общем вот мой код, надеюсь Вы тоже покажете свою реализацию, желательно что бы она работала :lol: :

    Смотрим ваш шелл:
    Код (Text):
    1. BA C793BF77  mov edx,77BF93C7
    2. FFD2  call edx
    Вы задали какой то фикс адрес, оно должно и будет крэшить.

    Ну и я вам ничего не должен, кода тоже не будет никакого.
     
  2. D34DC0D3_R

    D34DC0D3_R New Member

    Публикаций:
    0
    Регистрация:
    14 июл 2017
    Сообщения:
    11
    Я смотрю какие-то еще и сами додумываете) ну да ладно.
    Я задал не фиксированный адрес, а адрес памяти, которую я выделил с помощью VirtualAllocEx()
    И наличие правильно записанных байт по этому адресу я проверял.

    Доб:
    Да, кстати, аналогичным способом у меня был реализован DLL Injector для Reveletion Online. Который кстати работал...
     
  3. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    D34DC0D3_R,

    > Я задал не фиксированный адрес, а адрес памяти, которую я выделил с помощью VirtualAllocEx()

    Адрес 77BF93C7 это системный, что бы выделить память по этим адресам нужно указать спец флаг. Память гранулярна, а этот адрес указывает вникуда. Вы тупо скопировали шелл из первого поста, не имея представления что это такое.
     
    D34DC0D3_R нравится это.
  4. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    875
    Нет.
    BA C7 93 BF 77 - MOV EDX,77BF93C7
    FF D2 - CALL EDX
     
    D34DC0D3_R нравится это.
  5. D34DC0D3_R

    D34DC0D3_R New Member

    Публикаций:
    0
    Регистрация:
    14 июл 2017
    Сообщения:
    11
    Thetrik,
    Оу... вы про шел... прошу прощения)) Я его даже и не смотрел, честно... Я думал вы про мой код.
    Да Indy_, Вы правы, я тупо скопировал шел с первого поста.
    Извиняюсь :dntknw:
     
  6. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    D34DC0D3_R,

    С этого и нужно было начинать. В #6 я сказал ведь что данный шелл никуда не годится, те кто задал вопрос должны были дизасмить его что бы выяснить логику работы, а не копировать и исполнять.

    И впрыск через изменение контекста у вас не корректный. Вы пытаетесь установить rEip в контексте, не зная что это сделать нельзя - этот регистр нельзя изменить до старта потока(вроде как, но точно не помню), он указывает на стартап APC. В вашем случае изменяется один из регистров Eax/Ebx - через них происходит передача управления на юзер код(entry point").
     
    D34DC0D3_R нравится это.
  7. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    875
    D34DC0D3_R, почему бы не записать код в entry-point exe? И просто без всякой подмены контекста unsuspend'ить?
     
    sl0n, D34DC0D3_R и TermoSINteZ нравится это.
  8. D34DC0D3_R

    D34DC0D3_R New Member

    Публикаций:
    0
    Регистрация:
    14 июл 2017
    Сообщения:
    11
    Ну я легких путей не ищу.
    Ну а если честно, я что-то и не подумал. У меня так часто - "изобретение велосипеда", да и колеса за частую квадратные :lol:
    Хотя думаю по моим коментам кода это и так понятно :))