内容提要
ASP.NET有两种主流开发方式:Webform和MVC。Webform中,aspx文件负责显示,动作在aspx.cs文件中定义。MVC中,Model存储和处理数据,View展示数据,Controller处理用户交互。常见文件后缀包括aspx、cs、ascx、asmx、asax、config、web.config、ashx、soap。ASPX和ASP的区别在于ASP.NET是动态网络编程的设计语言。ASPX的webshell权限比ASP大。常用审计工具包括反编译工具、目录扫描工具、代码编辑器。常见漏洞案例包括任意文件上传、任意文件下载、SQL注入、XSS、未授权访问、命令执行、反序列化。
关键要点
-
ASP.NET有两种主流开发方式:Webform和MVC。
-
Webform中,aspx文件负责显示,动作在aspx.cs文件中定义。
-
MVC中,Model存储和处理数据,View展示数据,Controller处理用户交互。
-
常见文件后缀包括aspx、cs、ascx、asmx、asax、config、web.config、ashx、soap。
-
ASPX和ASP的区别在于ASP.NET是动态网络编程的设计语言,ASPX的webshell权限比ASP大。
-
常用审计工具包括反编译工具、目录扫描工具、代码编辑器。
-
常见漏洞案例包括任意文件上传、任意文件下载、SQL注入、XSS、未授权访问、命令执行、反序列化。
-
WebForm模型中,aspx负责显示,.cs是类文件,.ashx是一般处理程序。
-
MVC模型中,Model实现业务逻辑层,View展示数据,Controller处理用户交互。
-
web.config文件用于储存数据库连接字符、身份安全验证等配置信息。
-
ASP.NET的全局过滤代码通常在Global.asax中定义。
-
反编译工具如Reflector、ILSpy、DnSpy可用于查看编译后的代码。
-
任意文件上传漏洞通过class定位后端业务处理处进行审计。
-
SQL注入漏洞通常由于SQL语句拼接和缺乏预编译SQL参数造成。
-
XSS漏洞在aspx文件中通过设置validateRequest属性进行防护。
-
未授权访问漏洞通过AuthorizeAttribute进行控制,需关注[AllowAnonymous]特性。
-
反序列化漏洞常见于SoapFormatter、BinaryFormatter等,需关注类型解析和数据反序列化过程。