NTFS权限设置以避免通过webshell遍历主机目录

(编辑:jimmy 日期: 2024/11/14 浏览:2)

测试环境:Windows 2003 + IIS6.0 + Access数据库

运行上传的asp助手,在浏览其他分区的时候提示“路径未找到”,用asp探针查看发现是因为对分区没有读取权限。
NTFS权限设置以避免通过webshell遍历主机目录

我们知道,匿名访问web使用系统中的“IUSR_主机名”这个用户,只要限制了这个用户的读取权限,即能限制访问者遍历服务器目录,保护服务器数据不被非法访问。

操作步骤:

1. 我的电脑,磁盘安全属性。
2. 首先删除Everyone组。一般在服务器上看见Everyone就要删。
3. 添加IUSR_Hostname用户,对其设置“拒绝读取和运行”权限。如图。
NTFS权限设置以避免通过webshell遍历主机目录

4. 应用。会出现提示,不用理会。
5. 设置完成。

这是非web站点分区的NTFS设置,对存放web站点的分区还要进行额外的设置才可以正常访问。否则在访问网站的时候因为没有运行权限而无法浏览。

假设我的网站放在F:\www下。在按照上述五个步骤设置完F区的NTFS权限后,要进行下面步骤的设置:

1. 进入www目录安全属性。这时可以看到IUSR_hostname这个用户的权限设置为拒绝读取和运行,并且checkbox是灰的,无法修改。
2. 点高级,把下面允许继承的checkbox的勾勾掉,在弹出的提示中选“复制”。
NTFS权限设置以避免通过webshell遍历主机目录

3. 确定。这时你可以看到刚才不可修改的checkbox现在都可以修改了。
4. 更改IUSR_hostname用户权限,改为只允许“读取”。
5. 确定。

至此,所有分区的NTFS设置都已完成。

这时你再把asp探针和asp助手上传到服务器上运行,就会收到权限不足的提示了。

对C盘设置的权限不自动继承,需要对每个文件夹再进行设置拒绝访问权限。Program Files、Documents and Settings和Inetpub这几个文件夹一定要设置。

Windows或Winnt目录一定不要这样设置,否则在运行asp程序时:(动网除外,原因未知。)

如果用ODBC连接的Access数据库,那么会报错:

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
[Microsoft][ODBC Microsoft Access Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x1844 Thread 0x1b40 DBC 0x554cc59c Jet'。

如果用OLEDB连接的Acess数据库,会报错:未指定错误。

Windows或Winnt目录的设置如图:“列出文件夹/读取数据”这个不要设置拒绝。
NTFS权限设置以避免通过webshell遍历主机目录

对Windows或Winnt目录这样设置后,用asp助手还是可以浏览到目录的内容,但没有权限打开其中的文件浏览。

另外,如果服务器硬盘这样设置,能用什么方法进一步得到主机权限,还请赐教!!

此文仅是给大家提供一个保护服务器数据的思路,请根据自己的需要进行设置。有不对的地方希望大家指出!
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。