深圳尚学堂:简单介绍ASP应用程序
如果我安装 sdk 并且使用 ASP.NET,会不会中断现有的 ASP应用程序?
不会。ASP.NET 应用程序与现有的 ASP应用程序可以同时运行。
ASP 使用的文件扩展名(如 .ASP 和 .asa)和 ASP.NET 使用的文件扩展名(如 .ASPx、.asax、.ascx、.asmx 等等)是完全独立的,不会互相替代。而且,ASP.NET应用程序的处理由一个独立的 isapi 扩展进行。
一点说明:尽管 ASP 和 ASP.NET应用程序可以同时运行,但即使在同一目录下,它们也不能共享应用程序信息。例如,在 global.asa 中所作的设置不会影响 ASP.NET 应用程序,而在 global.asax 中所作的设置也不会影响 ASP应用程序。类似地,应用程序和会话状态信息也不共享。ASP应用程序中的某个用户无法使用在 ASP.NET应用程序中为同一个用户添加的会话数据,除非重新创建该用户。
创建 ASP.NET 页面需要使用 visual studio 或其他工具吗?
不需要。尽管 visual studio.NET 将提供惊人的设计、编码和调试环境,但创建 ASP.NET应用程序并不需要使用它。ASP.NET 遵循与 ASP 相同的“只需保存”设计原则:任何基于文本的编辑程序都可用于创建 ASP.NET 应用程序。在第一次访问 ASP.NET 页面时,该页面会自动编译,以后的请求将访问编译过的资源。
ASP.NET 可以在 windows 95、windows 98 和 windows me 上运行吗?
不可以。您确实可以利用这些平台之一来进行开发,但是 ASP.NET应用程序必须运行在 web 服务器上,或者运行在安装了 iis 的 windows 2000 或 windows nt 4.0 上。
进一步了解
在这一步中,我将尽量概括一些联机、印刷和活动方面的重要资源。如果得到新消息,我会继续补充新的资源和活动。
ibuyspy microsoft ASP.NET 示例应用程序
ibuyspy是功能全面的电子商务应用程序,它详细介绍了如何使用 ASP.NET 创建高性能、可伸缩的 web 应用程序。您可以联机浏览示例应用程序(包括完整的源代码和文档),也可以下载完整的 c# 或 visual basic.NET 版本的应用程序。
ASP.NET 主机服务
brinkster inc.是最大的免费 ASP web 主机服务提供商,它提供免费 ASP.NET 主机服务。加入的每个成员可获得 5 mb 空间用于测试和学习 ASP.NET。用于测试和学习的成员身份,给开发人员提供了了解这项新技术的机会。brinkster 提供免费 ASP 主机服务已经有一年多的时间,在 ASP/ASP.NET 主机服务市场处于领先地位。
社区站点和分发列表
ASP.NET 社区(包括人、活动、讨论列表和新闻组等)是非常奇妙的,它不仅是得到答案或解决问题的最好场合之一,而且其中还有一些站点提供联机的快速入门示例——这意味着您可以尝试 ASP.NET,而不需要安装它。
文件上传漏洞是什么?这么通俗易懂的讲解真的很难得!
一、文件上传的定义和危害
(1)定义
文件上传漏洞是指用户上传了一个可以执行的脚本文件,并且可以通过该文件获得服务器的权限的一种漏洞。
(2)原理
网站Wb应用都有一些文件上传功能,比如文档、图片、头像、视频上传,当上传功能的实现代码没有严格校验上传文件的后缀和文件类型,此时攻击者就可以上传一个webshell到一个Web可访问的目录上,并将恶意文件传递给如PHP解释器去执行,之后就可以在服务器上执行恶意代码,进行数据库执行、服务器文件管理,服务器命令执行等恶意操作。还有一部分是攻击者通过Wb服务器的解析漏洞来突破Web应用程序的防护。
- 上传文件是病毒或木马时,主要用于诱骗用户或者管理员下载执行或者直接运行。
- 上传文件是Flash的策略文件crossdomain.xml时,黑客用于控制Flash在该域下的行为。
- 上传文件是钓鱼图片或者包含了脚本的图片,在某些版本的浏览器中会被作为脚本执行,被用于钓鱼和欺诈。
js检查:随便上传一个文件看是否会有提示,只允许什么格式的文件进行上传。
(1)扩展名绕过
这个就很简单就是利用burp 抓包改包。
先对web上传一个含有木马的txt文本,通过抓包改成后缀名为jsp/php/asp后缀的文件,这就是客户端校验。
(2)后缀大小写绕过
后缀名会显示非法的时候,有时候可以尝试大小写进行绕过 例如:PhP、pHP等等
例如:
(3)双层后缀绕过
web代码中会将可能存在漏洞的脚本文件后缀名进行过滤,大部分情况下只能过滤一层,所以可以尝试双写后缀名进行绕过
例如:
(4)空格绕过
这个要了解ur编码,文件上传过程中,有时候会遇到一些情况,正常的php脚本不可以绕过,但是后面加上一个空格即可绕过,所以利用这个特性,可以进行上传。
例如:
(5)点绕过
这个要了解ur编码,文件上传过程中,有时候会遇到一些情况,正常的php脚本不可以绕过,但是后面加上一个点(.)即可绕过,所以利用这个特性,可以进行上传。
例如:
(6)上传.htaccess
.htaccess文件(或者\”分布式配置文件\”),全称是Hypertext Access(超文本入口)。提供了针对目录改变配置的方法,即,在一个特定的文档目录中放置一个包含一个或多个指令的文件,
以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。管理员可以通过Apache的AllowOverride指令来设置。
方法:直接上传这个文件,看是否可以获得权限。
(7)::$DATA绕过
在window的时候如果文件名+\”::D A T A \” 会 把 : : DATA\”会把::DATA\”会把::DATA之后的数据当成文件流处理,不会检测后缀名,且保持::$DATA之前的文件名,他的目的就是不检查后缀名.
方法:抓包改包
例如:
(1)web解析绕过
1.IIS
这里服务器人员进常用的是宝塔IIS
下载连接: IIS.
(1) 当建立.asa、.asp格式的文件夹时,其目录下的任意文件都将被IIS当作为asp文件解析。(2) 当上传文件.asp;*.jpg
IIS6.0会将文件当做asp文件解析。
2.Apache
如果对方中间件是apache属于低版本,我们可以利用文件上传,上传一个不识别的文件后缀,利用解析漏洞规则成功解析文件,其中的后门代码被执行。例如:x.php.aaa.bbb.ccc.ddd,可以被当作php文件进行解析,从最后一个.ddd开始,apache不认识,就往前走,一直到.php,这样即绕过了验证,有可以进行解析。
3.Nginx
上传可以上传的文件,在文件地址后加上/x.php,可以让文件以php代码去执行。
这里其实我个人的理解还是要多了解中间件的特性,另外需要多看一些技术帖,多复现一些漏洞。
(2)00截断绕过
0x00截断原理:
0x00是十六进制表示方法,是ascii码为0的字符,在有些函数处理时,会把这个字符当做结束符。系统在对文件名的读取时,如果遇到0x00,就会认为读取已结束。这个可以用在对文件类型名的绕过上。但要注意是文件的16进制内容里的00,而不是文件名中的00.就是说系统是按16进制读取文件(或者说二进制),遇到ascii码为零的位置就停止,而这个ascii码为零的位置在16进制中是00,用0x开头表示16进制,也就是所说的0x00截断。%00是被服务器解码为0x00发挥了截断作用。
(3)mime文件绕过
方法:抓包改包
客户端软件,区分不同种类的数据,例如web浏览器就是通过MIME类型来判断文件是GIF图片,还是可打印的PostScript文件。web服务器使用MIME来说明发送数据的种类,
web客户端使用MIME来说明希望接收到的数据种类。
(1)服务器配置问题
解决方法:重新配置服务器。
(2)开源编辑器问题
解决方法:如果新版本已经修复,直接升级新版本即可。
(3)本地上传文件限制绕过
解决方法:在服务器后端对可以实现绕过的文件进行过滤。
(4)设置文件上传的目录为不可执行
解决方法:只要web无法解析目录,那马即使攻击者上传了脚本也没什么作用,服务器不受任何影响。
(5)判断文件后缀的漏洞
解决方法:在判断文件类型的时候,利用MIME,Type后缀检查,其中对图片的处理可以使用,压缩函数,或者resize函数,在处理图片时破坏图片中包含额html代码。
(6)使用随机数改写文件名和文件路径
解决方法:文件上传要执行代码的情况下,则需要用户访问到这个文件才可以(在这里加入限制)。在一些情况下,文件可以上传,但是无法访问。
(7)单独设置文件服务器的域名
解决方法:由于不同浏览器的策略不一样,客户端攻击就会失效。
最后,如果我的文章对你有所帮助或者有所启发,欢迎关注公众号(微信搜索公众号:首席架构师专栏),里面有许多技术干货,也有我对技术的思考和感悟,还有作为架构师的验验分享;关注后回复 【面试题】,有我准备的面试题、架构师大型项目实战视频等福利 , 小编会带着你一起学习、成长,让我们一起加油!!!
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。