• XSS.stack #1 – первый литературный журнал от юзеров форума

user mode anti-screen

mddbs

RAID-массив
Пользователь
Регистрация
09.02.2024
Сообщения
98
Реакции
3
добрый вечер, хотел я по быстрому написать антискринграб но вот не получилось так как окно(winver.exe) не даёт поменять конкретные параметры окна из юзермода. Пробовал через установку флага WDA_EXCLUDEFROMCAPTURE и WS_EX_LAYERED но к сожалению безрезультатно.
Был бы рад получить пару идей как можно реализовать антискрин из юзермода для окна winver.exe.
Заранее всем спасибо ☺️
 
Копай в сторону WDA_EXCLUDEFROMCAPTURE, только привилегии должны быть соответствующие или внедряй dll.
 
Копай в сторону WDA_EXCLUDEFROMCAPTURE, только привилегии должны быть соответствующие или внедряй dll.
ну в сторону WDA_EXCLUDEFROMCAPTURE думаю не стоит так как изменить его из юзермода будет проблематично, а вот касательно внедрения dll думаю может сработать
 
Последнее редактирование:
я слышал что можно как то через эксклюзив фуллскрин(прямое обращение к видеопамяти) рисовать и даже если будут брать буфер двм то там всё равно не будет видно то что рисуется
 
Последнее редактирование:
можно рендер в двм завести и перед отрисовкой двм отрисовывать свой софт. тогда у тебя не будет видно софт. либо можешь в двм команды пусшить но для этого тебе требуется отреверсить двм как отправлять в него команды и как засинхронить все это дело. либо как выше поставить окну флаг WDA_EXCLUDEFROMCAPTURE если что то не работает надо смотреть поставился ли флаг.
 
Вы можете попробовать внедрить DLL в процесс в котором находится целевое окно что даст вам возможность напрямую контролировать его поведение. Попробуйте перехватить CreateWindowEx или SetWindowLongPtr чтобы применить WDA_EXCLUDEFROMCAPTURE. Вы также можете переопределить логику рендеринга.
Единственный минус этого способа - вам нужны повышенные привилегии.
 
Или другой способ - использование эксклюзивного полноэкранного режима поскольку он позволяет получить прямой доступ к видеопамяти и отрисовывать содержимое независимо от DWM. Это позволяет скрыть то что видно при захвате экрана.
В DirectX 11/12 содержимое рендерится непосредственно во фреймбуфер перед композитингом DWM. Попробуйте это, если ваше приложение поддерживает полноэкранный режим
 
Или другой способ - использование эксклюзивного полноэкранного режима поскольку он позволяет получить прямой доступ к видеопамяти и отрисовывать содержимое независимо от DWM. Это позволяет скрыть то что видно при захвате экрана.
В DirectX 11/12 содержимое рендерится непосредственно во фреймбуфер перед композитингом DWM. Попробуйте это, если ваше приложение поддерживает полноэкранный режим
Вот это я попробую, спасибо большое
 
Вы можете попробовать динамически менять содержимое окна чтобы показать фиктивную или поддельную информацию во время скриншота. Вы можете периодически перерисовывать содержимое окна чтобы показать черную накладку или использовать таймер для обнаружения WM_PAINT или подобных событий и перезаписи буфера окна. Я понятия не имею, видно ли это пользователю.
 
Вы можете попробовать динамически менять содержимое окна чтобы показать фиктивную или поддельную информацию во время скриншота. Вы можете периодически перерисовывать содержимое окна чтобы показать черную накладку или использовать таймер для обнаружения WM_PAINT или подобных событий и перезаписи буфера окна. Я понятия не имею, видно ли это пользователю.
Идея хорошая надо попробовать
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх