А если задача не тривиальна и мне нужны координаты соперника? Хорошо,что pdfка на русском, сейчас приступлю к изучению, благодарю за материал
Так как ты в итоге читаешь память? OpenProcess -> ReadProcessMemory? Или сделал в драйвере? Если в драйвере, через что читаешь?
Собираюсь опробывать через маскировки виртуальной ОС плюс А вот через драйвер немного облажался через DSEFix, кидали ссылку на гитхаб с исходником на первой странице топика
DSEFix уже давно во всех античитерских базах. Юзаешь DSEFix - автоматически бан. Он наследил и драйвером виртуалбокса, и сам флажок g_CiEnabled давным давно проверяется всеми античитами. Пока не выкладываешь в паблик, можешь смело грузить свой драйвер через CreateService -> StartService, детекта не будет. Для начала, напиши нормальный код для чтения памяти из драйвера, убедись, что он работает и что не крашит систему. Затем отладь его на тестовом процессе в разных ситуациях (например, читаешь память и приложение закрывается или освобождает/сбрасывает в своп читаемую память - бсодов быть не должно). И лишь затем переходи на игру и пиши на основе этого драйвера чит. Когда чит будет готов, думай, как скрыть драйвер от античита - и здесь тебе прямая дорога на unknowncheats, чтобы понять, как почистить следы своего драйвера и как загрузить его незаметно для системы (например, отправлять драйверу запросы через другой драйвер, заполнив какой-нибудь неиспользующийся обработчик IRP твоим каллбэком). Т.е., сначала делаешь основной функционал, а скрытие - второстепенно (отчасти, это даже не твоя задача, а тех, кто будет грузить твой чит). Это вообще как?
HoShiMin, > Когда чит будет готов, думай, как скрыть драйвер от античита - и здесь тебе прямая дорога на unknowncheats Такое впечатление как будто это очень крутая техника, прямо как в виксах. В ядре кто первый тапки надел, тот их и носит. А есчо и ссылка на какой то школоборд, я смотрел там походу спецы по ядру; с их вопросами тут бы сразу забанили
На всю огромную аудиторию там всего человек 10-15 разработчиков, которые что-то делают сами. Но зато как делают! Там есть несколько очень интересных техник по подмене памяти. А в большинстве... Ну да, иногда их сурсы читать стыдно. Там и на PASSIVE_LEVEL'е сбрасывают cr0.wp (очень распространённый у них способ записать что-то туда, куда записывать нельзя), и просто совершенный ансейф-код, который при любом удобном случае рискует свалиться в бсод. Но вот ради тех 10-15 человек и стоит туда заходить, потому что в русскоязычном сегменте ничего подобного не видел. Кстати, Indy_, скинули файлики BattleEye из игры PUBG: https://www.dropbox.com/s/syj9j8gyf0m7w8k/battleeye.zip?dl=0
чекать надо слоты кэша и чрез них можно прикинуть реальный адрес в озу + работа кэша всегда подстраивается под физ. объём озу, а не под мифические теры виртуального адресного пространства с тем же aslr всё же МАЛЁХО лукавят == можно канЭшЪ сдурема просеивать теры виртуальных адресов, но цЭ (мягЪко скажу) очень апЪшибочно
Пока что я сомневаюсь в своих силах... Indy_, у вас не найдется какого-либо материала по теме ассемблера и режима ядра, который понять вполне возможно даже новичку, желательно с кодом? ... Между прочим, игра запустилась под WM без проблем, как ни странно, сейчас изучаю, как читать физическую память, ибо виртуалка ее как-то иначе хранит... Итак, получилось прочитать память виртуалки, крутяк, думаю, какое-то время эта методика вполне себе будет работать, осталось найти многоуровневый указатель на мой адрес и написать скрипт, рассчитываю справиться) Но вот навыки работы с драйверами лучше прокачать, есть идейки?)
Здесь найдёшь по драйверам буквально всё, что тебя интересует: http://www.cyberforum.ru/drivers-programming/thread1451904.html --- Сообщение объединено, 2 янв 2020 --- А в общих чертах можешь описать, как это реализовать? Как, например, узнать, какие страницы есть в кэше, не перебирая их все? А если страница не в кэшируемой памяти?
HoShiMin, доступ к кэшу идёт по топорной функции get_cached_val(given_va).. Код (Text): tag_slot=(given_va mod cache_size)/slot_size; get_slot_val(tag_slot); то бишь доступ к одному и тому же физ адресу в озу может идти по самым разным ва без акой-либо проверки по секуре. Второй момент, еть спекулятива == её реализация мб разной.. 1. она локальна, то бишь включает теневой доступ к кэшу проца и его регистрам (еть стандартная схема). 2. может иметься доступ к любому физ адресу жестянки. ======== спекулятива нужна для убирания холостого простоя проца, то бишь её эффективность в хаке ограничена длиной теневой цепочки команд. обычно, чтобы увеличить её длину, применяют некую тяжёлую нагрузку на комп (к примеру, тормозят файловыми операциями) и в итоге лаг загрузки актуальных данных в проц сильно разбухает. касательно дма атак, есть забавная писулька..
LastNoob, пореверси адреналинбот для ладвы. хотя бы старые версии которые с отломаной подпиской еще гуляют.
UOPilot и подобные скрипто-выполнители могут справиться? Вроде, даже в Eve Online автоматизировали управление кораблями шахтеров, но это не точно. И незачем прыгать через голову с ядерными читами.
HoShiMin, Я пролистал, там вмп морф. Так как у меня нет девирта, то можно сделать просто - напрямую запустить его код и скормить нужные данные. Просто отобразив образ в юм и передав управление на его входа(на #AV подставить нужные данные). Так частично динамикой можно поработать с этим, но это долго. А есчо никогда норм код так не криптуется ядерный. Что бы провести атаку это нужен весь набор софта, для которого этот драйвер предназначен. --- Сообщение объединено, 4 янв 2020 --- LastNoob, Твоя идея древняя как г-мамонта. Так j00ru & gynvael искали ядерные утечки памяти и повторные дереференсы памяти, что бы провести атаку на ядро и в частности km-disclosure.
_edge, UOPilot очень грубо говоря кликер. адрик же работает напрямую с памятью. что позволяет удобно в скриптах рулить большим количеством окон напрямую. читает статы скилы предметы мир всё окружение, есть даже своя карта на которой всё показано и удобно можно строить маршруты и границы, активное окно игры не нужно при этом, главное чтоб был процесс запущен. В сети ломаные версии под старые сервера времен грации, под актуальные - только по подписке. Ну и само собой его время от времени начинают палить, автор своевременно допиливает обход этого дела. Уже оч давно продолжается эпопея)
UbIvItS, Эта ваша таблица по статистике атак не корректна, во первых уязвимости в нт почти всегда описываются и находятся ms(добываются из обновленных модулей поиском изменений после апдейта), а во вторых на линь не проводят атаки, так как эта ось никому не интересна. --- Сообщение объединено, 4 янв 2020 --- UbIvItS, Смотри забавная статистика. win32 Тем 4.957 Сообщений 44.605 unix Тем 488 Сообщений 3.853 4957/488 ~ 10,15 44605/3853 ~ 11,57 Разница между количеством тем и ответов 0,87 Знакомое число. Это не учитывая что один раздел по линям обьединяет все остальные тут, наверно нужно числа помножить на порядок. И это без учёта содержимого, там всегда какая то примитивная дичь типо вызова прерываний аналогичных дос. Вот и скажи к чему твоя таблица и кто её сделал.
Цена атаки на датацентр и на домашнего пользователя немного разная. А в датацентрах повсеместно линукс. По линуксу здесь мало тем, потому что форум не той тематики: там нечего реверсить. На сисадминских форумах картина другая - никто не админит под виндой. Исключение - сети предприятий с ActiveDirectory.
Суждения Инде как всегда оторваны от реальности чуть более чем полностью, ничего нового. --- Сообщение объединено, 4 янв 2020 --- Эта кстати очень хорошо в том плане, что я могу спокойно себе сидеть на десктопном линуксе, не перекручивая сам себе яица всяческими аверами и другим бредом, который призван защитить мою систему от уничтожения скрипт киддисами.
очень даЖЬ наоборот == пущай прыгают.. акь минимум любопытна будет динамика развития античитов --- Сообщение объединено, 5 янв 2020 --- возможность теневых атак не относится к багам софтухи и багам вообще == это принцип работы современных жестянок. И в обозримом будущем его никто менять не станет, ибо секурные жестянки не менее, чем в 10 раз медленней гламурных/играчных. Тебе покажи секурную жестянку и ты заплачешЪЪЪ --- Сообщение объединено, 5 янв 2020 --- если выньку блокировать от прямого доступа к инету, то с ней можно дружить не менее безопасно, чем с линем. + по чесноку, вынь гораздо более развитый десктоп и едва ль линь достигнет такого уровня.. увы и ах, развивать линь-десктопы для корпи сейчас не выгодно. А новомодная зрада с облачными десктопами может сильно ударить по гуям линя.
Ну до тех пор, пока кто-нить другой в локальной сети не словит какое-то гуано и тебя не прохакают каким-нить удаленным сплойтом или просто не зайдут на твой комп админом домена, пароль от которого собрали контроллера. --- Сообщение объединено, 5 янв 2020 --- Ну да, но мне как девелоперу вполне хватает, понятно, что некий специализированный софт вероятно не будет иметь альтернативу под линукс и не заведется под вайном, но в целом десктопы линуксовые сейчас довольно неплохие. Я уже давно сижу на линуксах и не жаьуюсь. --- Сообщение объединено, 5 янв 2020 --- И кстати сейчас отключать венду от инета уже не так удобно, например у тебя на ней сидит девелопер, вне зависимости от того, на чем он разрабатывает, ему нужен доступ к библиотекам, а руками их качать (на машине с интернетом) со всеми зависимостями и переносить на машину без интернета - слишком много неприятной работы. А заводить себе в локальной сети зеркала для всех нугетов, нпмов, пипов, мейвенов и тд тож не особо хочется никому.