Правила DLL AppLocker для сборок .NET - PullRequest
0 голосов
/ 07 октября 2019

Я использую AppLocker для предотвращения выполнения обычным пользователем чего-либо кроме приложений, подписанных нами, и некоторых необходимых файлов Windows.

Файлы exe и dll подписаны нашим сертификатом с использованием signtool.exe,и затем в AppLocker у меня есть правила Publisher, которые запрещают пользователю запускать что-либо, что не было подписано нами.

Это сработало, но это не мешает подписанному исполняемому файлу загружать неподписанные dll-файлы, что кажетсякак риск для безопасности. Я протестировал, заменив все dll на неподписанные версии, оставив только подписанный exe-файл, включил dll-правила, которые блокировали все, что не было подписано нами, и приложение работало нормально. EventLog не показывал никаких потенциальных блоков (я включил dll-правила в режиме аудита).

Я немного читал, и, насколько я понимаю, причина этого может заключаться в том, что они не являются "нормальными" (Win32) а точнее сборки dll, которые компилируются и выполняются в CLR, что обходит правила dll AppLocker?

В таком случае кажется, что единственный способ убедиться, что библиотеки DLL не подделаны, - это подписать сборку, присвоив каждой сборке строгое имя, и это обеспечит, что исполняемый файл будет только загружаться и запускаться. эти конкретные DLL. Это правильно?

Есть ли способ заставить правила AppLocker dll блокировать dll (сборки), которые компилируются и запускаются CLR? Если нет, то есть ли смысл даже подписывать сборки dll's?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...