eXeL@B —› Вопросы новичков —› sysenter |
<< . 1 . 2 . |
Посл.ответ | Сообщение |
|
Создано: 10 февраля 2012 00:23 · Личное сообщение · #1 |
|
Создано: 15 февраля 2012 00:10 · Поправил: tiranosaur · Личное сообщение · #2 ))) только я прогу пишу для себя. а под другие системы создать версии для них. кстати сисентер довольно забавная штукенция. особенно для инжекта. и проверить на какой винде и какие номера системных вызовов, а также какое прерывание используется, проблем не составит. я по-моему даже готовый код где-то видел. Господа кодеры посоветуйте простенький метод IPC. задача какая? внедряю код в процесс, не длл а код. код переносимый, проверял. мне нужно наладить простенький канал передачи строк между 2мя процессами. какой метод из всяких мьютексов пайпой самый простой в реализации( в инжектируемом коде) |
|
Создано: 15 февраля 2012 00:29 · Поправил: ARCHANGEL · Личное сообщение · #3 |
|
Создано: 15 февраля 2012 00:33 · Личное сообщение · #4 |
|
Создано: 17 февраля 2012 21:50 · Поправил: Hexxx · Личное сообщение · #5 |
|
Создано: 24 ноября 2018 00:31 · Поправил: IOCTL_ · Личное сообщение · #6 |
|
Создано: 24 ноября 2018 07:49 · Поправил: difexacaw · Личное сообщение · #7 IOCTL_ А что именно не понятно ? Из за иного механизма возврата аргументы смещаются на стеке. Так реализовано, потому что при прерывании сохраняется его адрес(trap), а при sysenter источник вызова не известен. Поэтому и возврат происходит на фикс. адрес(из ядра, стаб который выполняет переход по рет), а адрес возврата передаётся через стек. Отсюда и смещение. ----- vx | Сообщение посчитали полезным: IOCTL_, punxer |
|
Создано: 24 ноября 2018 18:32 · Поправил: IOCTL_ · Личное сообщение · #8 difexacaw Всё ясно, спасибо! Добавлено: А вообще, что очень приятно, на этом форуме подход совершенно иной, чем на многих других форумах, на которых: запостил код, написал "памагите!" и тебе выдали рабочий вариант кода или ткнули носом в какую-то строчку, написав, мол, "должно быть вот так" без каких-либо пояснений. А здесь всё по-другому. Здесь учат думать. Спасибо! |
|
Создано: 19 декабря 2018 21:53 · Поправил: Ate · Личное сообщение · #9 Подскажите по аргументам syscall в х64 приложении Из той информации что я нашел, они должны передаваться через регистры Code:
остальные через стек. Но когда смотрю в отладчике, то первыми используются rdx и rcx Я не то накопал, или как? Мб ссылки по теме есть интересные? |
|
Создано: 20 декабря 2018 13:01 · Личное сообщение · #10 Ate пишет: используются rdx и rcx Если не ошибаюсь, то на Win64 юзаются как раз RCX, RDX, r8, r9, а если аргументов больше четырех остальные уходят в стек. | Сообщение посчитали полезным: Ate |
|
Создано: 20 декабря 2018 15:50 · Личное сообщение · #11 https://docs.microsoft.com/en-us/cpp/build/x64-software-conventions?view=vs-2017 Секция Register volatility and preservation. Первые четыре аргумента идут через RCX, RDX, r8, r9 | Сообщение посчитали полезным: Ate |
|
Создано: 20 декабря 2018 16:15 · Личное сообщение · #12 VOLKOFF пишет: Если не ошибаюсь, то на Win64 юзаются как раз RCX, RDX, r8, r9, а если аргументов больше четырех остальные уходят в стек. subword пишет: Первые четыре аргумента идут через RCX, RDX, r8, r9 Пассажир похоже имел в виду сисколл в линухе ----- 2 оттенка серого | Сообщение посчитали полезным: difexacaw |
|
Создано: 20 декабря 2018 18:08 · Поправил: difexacaw · Личное сообщение · #13 f13nd Это всё вайн голову морочит, он не понимает какая конвенция используется, а в гугле конечно же забанили. Наверно начал сам вайн разбирать, а там тоже сискалы линя. Это же что нужно вдуть что бы так напутать А есчо одновременно с этим появился вопрос в комерс васма про отличие вин от вайна. Походу он и есть автор запроса ----- vx |
<< . 1 . 2 . |
eXeL@B —› Вопросы новичков —› sysenter |