Dmitry
вариант с NtQueueApcThread(GlobalGetAtomName), NtQueueUserApc(LoadLibrary) мне показался слишком банальным
Dmitry
и я решил расширить тот метод
Dmitry
если посмотреть дальше по логам, то решение я таки нашел
Dmitry
и оно пашет... для всех осей кроме w10, потому что в w10 есть CFG :)
Dmitry
который запрещает мне делать NtQueueUserApc на инструкции "pop ebp / ret" в конце функции
Dmitry
в принципе на этом я пока и остановился, другие дела есть
Anonymous
👍👍
Lev
насколько понимаю, это не ассемблер а win api
Lev
c++
Lev
хардкор тоже но не такой как ассемблер
Dmitry
во-первых winapi можно звать откуда угодно.
Dmitry
во-вторых, тут решение именно про ROP, т.е. про ассемблер
Dmitry
об NtQueueApcThread можно знать только то, что эта функция, позволяющая передать управление на любой адрес и передать три параметра. всё
Dmitry
далее идет ассемблер
Dmitry
машинные коды далее идут, вот что идет
bilka00
Как допишу выложу на куриво
Anonymous
вм чтоле?
Lev
машинные коды далее идут, вот что идет
а зачем так низко спускаться?
Anonymous
давай затестю
bilka00
И интерпретатор )
Человек-Даук
Человек-Даук
РИМ
Anonymous
ахаха
Человек-Даук
o timore, o more !
Dmitry
ну задача такая, а как иначе ты решишь? есть возможность сформировать нужный стек по определенному адресу, там ROP
Dmitry
"o tempora o mores" же.
Lev
ну дальше машинных кодов вроде как уже некуда
Anonymous
сигналы
Dmitry
ну и задача собственно состояла в том, как бы в esp запиздярить этот адрес, и все
Anonymous
генерировать импульсы
Anonymous
😁😁 😁
Человек-Даук
"o tempora o mores" же.
да, проиграл
Dmitry
а я не тебе
Dmitry
я ответил на "зачем так низко спускаться"
Человек-Даук
а блин
Человек-Даук
пора в больничку
Lev
я ответил на "зачем так низко спускаться"
а машинные коды ведь привязаны к определённому железу
Dmitry
шиндоус, не поверишь, тоже привязан к определенному железу
Anonymous
😊
Lev
стало быть, в виндовсе есть дыра в безопасности
Lev
и заделали её только в 10 версии
Dmitry
нет, это нельзя назвать дырой в безопасности
Dmitry
в линуксе я тебе точно так же ptrace()'ом из юзермода вещей накручу
Dmitry
а VirtuaAllocEx/WriteProcessMemory/CreateRemoteThread тоже дыра в безопасности? :)
Dmitry
это просто метод инжекта, основанный только лишь на QueueUserApc
Dmitry
ну, точнее на NtQueueApcThread
Dmitry
а CFG в Win10 это просто антиэксплоитная вещь
Dmitry
я же могу и в W10 накрутить решение, NtQueueApcThread(GlobalGetAtomName) и QueueUserApc(LoadLibrary)
Dmitry
я тебе такую же фичу точно так же замучу в линуксе.
bilka00
Я никсы так низко не знаю
bilka00
У винде не мало таких фичь
Lev
стало быть ты можешь пробиться через любую защиту? Например если на линукс-сервере ssh с 128 битным сертификатом?
Dmitry
вполне нормальная фича. как ты отлаживать другой процесс будешь без возможности писать в него и читать из него?
Dmitry
нет.
Dmitry
это решение просто по тому как заинжектить код из одного процесса в другой процесс, причем тут ssh с 128-битным сертификатом?
Dmitry
я просто пытаюсь доказать что это не баг, собственно
Anonymous
где ты на ssh видел 128 битный серт?\
Anonymous
там rsa минимум 2048 битные
Anonymous
ты еще скажи кто RC4
Lev
моя картина мира рушится: когда вижу что оказывается такие вещи можно делать в системе
Anonymous
ну вот найдут если баг в ssh демоне напишут сплоит под него аля rce или use after free
Anonymous
вон гугл слил в сетьсплоит по инжекту длл
Anonymous
из под юзерки
ovf
про бага vs фича -- см. https://blogs.msdn.microsoft.com/oldnewthing/20060508-22/?p=31283
ovf
а в линуксе есть ещё process_vm_readv/writev
Anonymous
😉
Anonymous
никого нет?
Anonymous
все чтоль кодят
Dmitry
я есть
Человек-Даук
分解物質
while (expr); vs. while (expr) ;
Anonymous
😁
分解物質
分解物質
тоесть такое читаеться ок?
分解物質
ладн