Windows命令行查看/设置指定文件的owner
2023-9-25 15:44:16 Author: mp.weixin.qq.com(查看原文) 阅读量:2 收藏

7.15 命令行查看/设置指定文件的owner

https://scz.617.cn/windows/202309251425.txt

Q:

Win10命令行如何查看、设置指定文件的owner?GUI界面我会操作。

A:

查看owner:

dir /q some.ext

该命令会显示some.ext的owner,但有个缺陷

dir /q C:\Windows\System32\notepad.exe | findstr notepad.exe

01/08/2021  06:37           243,200 NT SERVICE\TrustedInstanotepad.exe

倒数第二列的owner本应是"NT SERVICE\TrustedInstaller",被截断了。

wmic path Win32_LogicalFileSecuritySetting where Path="C:\\Windows\\System32\\notepad.exe" ASSOC /RESULTROLE:Owner /ASSOCCLASS:Win32_LogicalFileOwner /RESULTCLASS:Win32_SID

… S-1-5-80-…-2271478464 … TrustedInstaller … NT SERVICE …

表示owner是"NT SERVICE\TrustedInstaller",其SID是

S-1-5-80-...-2271478464

已知SID,查询名称:

PowerShell中执行

[wmi]"Win32_SID.SID='S-1-5-80-...-2271478464'"
---------------------------------------
$sid = 'S-1-5-80-...-2271478464';
$obj = New-Object -TypeName System.Security.Principal.SecurityIdentifier -ArgumentList $sid;
$obj.Translate([System.Security.Principal.NTAccount]).Value;
---------------------------------------
$sid = 'S-1-5-80-...-2271478464';
$obj = New-Object System.Security.Principal.SecurityIdentifier($sid);
$obj.Translate([System.Security.Principal.NTAccount]).Value;

若SID对应普通用户,而非内置SID,下列命令亦可查询名称:

wmic useraccount where sid="S-1-5-21-...-1001" get Caption

上述命令无法查询内置SID的名称

A:

设置owner:

icacls C:\temp\notepad.exe /setowner "DESKTOP-TEST\scz"
icacls C:\temp\notepad.exe /setowner "NT SERVICE\TrustedInstaller"

在管理员级cmd中执行上述命令,下列命令检验效果:

dir /q C:\temp\notepad.exe
wmic path Win32_LogicalFileSecuritySetting where Path="C:\\temp\\notepad.exe" ASSOC /RESULTROLE:Owner /ASSOCCLASS:Win32_LogicalFileOwner /RESULTCLASS:Win32_SID

A:

获取owner:

takeown /f C:\temp\notepad.exe

不同于"icacls /setowner"指定owner,takeown固定将owner改成当前用户

A:

SubInACL
https://web.archive.org/web/20190830103837/http://www.microsoft.com/en-us/download/confirmation.aspx?id=23510
https://web.archive.org/web/20190830103837/https://download.microsoft.com/download/1/7/d/17d82b72-bc6a-4dc8-bfaa-98b37b22b367/subinacl.msi

微软已经下架了该工具,上面是archive备份。

设置owner:

subinacl /file C:\temp\notepad.exe /setowner="DESKTOP-TEST\scz"
subinacl /file C:\temp\notepad.exe /setowner="NT SERVICE\TrustedInstaller"

查看owner:

subinacl /file C:\temp\notepad.exe /display=owner

文章来源: https://mp.weixin.qq.com/s?__biz=MzUzMjQyMDE3Ng==&mid=2247486832&idx=1&sn=164526c3d81269a48d048c44d95d6140&chksm=fab2ce4fcdc54759f46f75deb2eb42564ae68ba741d3d05198e18223ccd54b30ab5a9c746d30&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh