Фильтрация процессов и ФС
Запрет запуска процессов
Для PAM Gateway реализован механизм запрета запуска процессов пользователями.
При каждом запуске процесса выполняется ряд проверок. Запуск процесса разрешен, если хотя бы одна из проверок пройдена:
- Если пользователь это
LOCAL_SYSTEM
,LOCAL_SERVICE
илиNETWORK_SERVICE
. - Если пользователь является администратором на сервере RDS.
- Если родительским процессом является один из известных системных (
svchost.exe
,winlogon.exe
,userinit.exe
,rdpinit.exe
). - Старт процесса разрешен в конфигурационном файле
processprotection.settings.json
.
Если ни одна из проверок не пройдена, то запуск процесса запрещен.
Конфигурация разрешенных процессов настраивается в файле: C:\Program Files\Indeed PAM\Gateway\ProcessCreateHook\processprotection.settings.json
{
"BlackListRules": [
{
"Comment": "Common, iexplore from shortcut",
"ParentProcessPaths": [
"C:\\Windows\\System32\\svchost.exe"
],
"ApplicationPaths": [
"C:\\Program Files\\Internet Explorer\\IEXPLORE.EXE",
"C:\\Program Files (x86)\\Internet Explorer\\IEXPLORE.EXE"
]
}
],
"WhiteListRules": [
{
"Comment": "Common, record video",
"ParentProcessPaths": [
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\Pam.Proxy.App.exe"
],
"ApplicationPaths": [
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\ffmpeg.exe",
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\ffprobe.exe"
]
},
{
"Comment": "Common, UserInit process",
"ParentProcessPaths": [
"C:\\Windows\\System32\\userinit.exe"
],
"ApplicationPaths": [
"C:\\Windows\\system32\\rdpinit.exe",
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\Pam.Proxy.App.exe"
]
},
{
"Comment": "Common, RdpInit process",
"ParentProcessPaths": [
"C:\\Windows\\system32\\rdpinit.exe"
],
"ApplicationPaths": [
"C:\\Windows\\system32\\rdpshell.exe",
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\Pam.Proxy.App.exe"
]
},
{
"Comment": "Common, start WebView for authentication on IDP",
"ParentProcessPaths": [
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\Pam.Proxy.App.exe",
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\Microsoft.WebView2.FixedVersionRuntime\\msedgewebview2.exe"
],
"ApplicationPaths": [
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\Microsoft.WebView2.FixedVersionRuntime\\msedgewebview2.exe"
]
},
{
"Comment": "RDP",
"ParentProcessPaths": [
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\Pam.Proxy.App.exe"
],
"ApplicationPaths": [
"C:\\Windows\\system32\\mstsc.exe",
"C:\\Windows\\SysWOW64\\mstsc.exe"
]
},
{
"Comment": "SSH",
"ParentProcessPaths": [
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\ProxyApp\\Pam.Proxy.App.exe"
],
"ApplicationPaths": [
"C:\\Program Files\\Axidian\\Axidian Privilege\\Gateway\\SshClient\\Pam.Putty.exe"
]
}
]
}
BlackListRules
— правила для запрещенных процессов.WhiteListRules
— правила для разрешенных процессов.
Параметры правил:
Comment
— комментарий для правила.ApplicationPaths
— пути до исполняемых файлов, которые можно запускать.ParentProcessPaths
— пути до исполняемых файлов, процессы которых могут запускать приложения изApplicationPaths
.
Защита критичных файлов
Для PAM Gateway реализован механизм разграничения прав для доступа к файлам на уровне процессов.
Пользователи локальной группы администраторов имеют доступ к любым файлам из любых процессов. Остальные пользователи могут открывать любые файлы из любых процессов, кроме уязвимых файлов. Для уязвимых файлов выполняется проверка процесса: если процесс находится в списке разрешенных, то доступ разрешается, иначе — запрещается.
Конфигурация защиты уязвимых файлов настраивается в файле: C:\Program Files\Indeed PAM\Gateway\Service\filesprotection.settings.json
По умолчанию в конфигурационный файл добавлены уязвимые файлы PAM, дополнительная настройка не требуется.
{
"VulnerableFiles": [
{
"Path": "C:\\Program Files\\Indeed PAM\\Gateway\\ProxyApp\\appsettings.json",
"AllowedProcesses": [
"C:\\Program Files\\Indeed PAM\\Gateway\\ProxyApp\\Pam.Proxy.App.exe"
]
},
{
"Path": "C:\\Program Files\\Indeed PAM\\SSH Proxy\\SshProxy\\",
"AllowedProcesses": [
"C:\\Program Files\\Indeed PAM\\SSH Proxy\\SshProxy\\Pam.SshProxy.Service.exe"
]
}
]
}
Параметры:
VulnerableFiles —
список уязвимых файлов.Path
— путь к уязвимому файлу. Можно указывать как конкретный файл, так и директорию.AllowedProcesses —
список процессов, которым разрешен доступ к файлу. Указываются конкретные исполняемые модули.
После изменения конфигурационного файла требуется перезапуск службы Pam.Service.