在上班时发现一个问题:在畅捷通T+服务当中存在一个任意目录文件上传,但是该应用是整套程序进行了预编译,无法对aspx文件进行解析,因此只能上传与之相关的dll和compiled文件


ASP.NET

ASP.NET 是一个免费的 Web 框架,用于使用 HTML、CSS 和 JavaScript 构建出色的网站和 Web 应用程序。 还可以创建 Web API 并使用实时技术,例如 Web 套接字。ASP.NET可以运行在安装了.NET Framework的IIS服务器上。

ASP 和 ASPX 的区别在于 ASP 运行在 IIS 上,而 ASPX 运行在 .NET 框架上。 他们使用不同的编码语言。 ASP 使用 VBscript 作为其编码语言,而 ASPX 使用 C# 和 VB.NET 作为其编码语言。 因此ASPX文件可以执行c#中的系统命令函数。

ASPX文件的预编译

相较于动态编译,预编译的速度更快,同时可以防止源代码被查看。在网站部署时使用aspx文件进行编译,转换成dll文件,放到指定位置,.NET程序便会在运行时会优先加载bin目录下的程序集 即index.aspx -> /bin/index.dll 也就是说在访问index.aspx时,程序会去寻找/bin目录下的index.dll文件加载网页(即使访问的目录下没有index.aspx文件)。

哥斯拉生成CShapDynamicPayload (.net2.0及以上)

使用哥斯拉生成aspx文件,文件生成后放到一个单独的文件,方便接下来复现

aspnet_compiled程序

dll与compiled

—————-待更新—————待更新——————–待更新———————–待更新—————–待更新————待更新————