Files
Sec-Interview/Chapter7/7-4.md
T
2025-09-25 03:32:26 +08:00

25 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
### 为什么 aspx 木马的权限会比 asp 木马的权限更高
**ASP 木马的权限 (老式技术)**
早期的 **ASP** 技术,在 IIS 中运行时,通常会使用一个叫做 `IUSR` 的匿名用户账户
- **账户权限低**`IUSR` 账户的权限被严格限制,它只能访问一些特定的文件和目录,比如网站的根目录
- **执行后果**:如果你上传一个 ASP 木马并成功执行,这个木马的所有操作都将以 `IUSR` 的权限进行。它可能能读取或写入网站目录里的文件,但无法访问系统核心文件,也无法创建新的系统管理员账户
- **总结**:ASP 木马的危害被**账户权限**牢牢限制在了一个较低的水平
**ASP.NET (ASPX) 木马的权限 (新式技术)**
**ASP.NET** 是微软推出的新一代 Web 技术,它采用了更现代的权限管理模型:**应用程序池 (Application Pool)**。
每个 ASP.NET 应用都运行在一个独立的应用程序池中,而每个应用程序池都使用一个特定的**账户身份**来运行
这个身份决定了它的权限!!!
问题就出在这里:
- **默认配置(安全)**:在现代 IIS 中,应用程序池的默认身份是 `ApplicationPoolIdentity`。这是一个非常安全的低权限账户,它的权限和 ASP 的 `IUSR` 账户类似,甚至更低。在这种情况下,ASP.NET 木马的权限也很低,无法造成太大危害
- **错误配置(危险)**:出于某些历史或方便的原因,一些管理员为了解决权限问题,会**手动将应用程序池的身份更改为高权限账户**,最常见的就是 `SYSTEM` 账户
- **`SYSTEM` 账户**:这是 Windows 操作系统中**权限最高的本地账户**。它几乎可以执行任何操作,包括读写系统核心文件、创建新的管理员、停止或启动系统服务等
- **执行后果**:如果攻击者上传的 ASP.NET 木马恰好运行在一个配置为 `SYSTEM` 账户的应用程序池中,那么这个木马就会**继承 `SYSTEM` 的所有权限**。此时,它将拥有对整个服务器的完全控制权,可以为所欲为