当前位置: 首页 > news >正文

移动端网站建设费用/百度一下就知道首页

移动端网站建设费用,百度一下就知道首页,崇义做网站,付网站建设费会计分录0x00 前言文件上传是一个很常见的功能,文件上传漏洞也比较普遍,原理简单,造成的危害却很大,是一个入门级别的漏洞。这篇文章主要针对文件上传漏洞中的 黑名单检测绕过 这个点,结合upload-labs,做一个较为全…

0x00 前言

文件上传是一个很常见的功能,文件上传漏洞也比较普遍,原理简单,造成的危害却很大,是一个入门级别的漏洞。这篇文章主要针对文件上传漏洞中的 黑名单检测绕过 这个点,结合upload-labs,做一个较为全面的总结。

upload-labs

upload-labs是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共20关,每一关都包含着不同上传方式。

黑名单思想

利用黑名单的思想来防御文件上传漏洞是一种很常见的做法,比如upload-labs的第三关

1ae7cc4bd137

但是黑名单思想很难把所有可能引发漏洞的威胁给过滤掉,而且随着时代发展还有可能有新的攻击方式产生,所以黑名单思想是一种不够安全的思想。

Secure By Default 原则

在设计安全方案时,最基本也就是最重要的原则就是“Secure by Default” 。在做任何安全设计时,都要牢牢记住这个原则。一个方案设计得是否足够安全,与有没有应用这个原则有很大的关系。实际上,“Secure by Default” 原则,也可归纳为白名单、黑名单的思想。如果更多地使用白名单,那么系统会变得更安全。

——《白帽子讲Web安全》

0x01 换用文件后缀(Pass-03)

能被Web容器解析的文件后缀(简单来说就是能被当做php文件来执行),除了我们最常见的 .php以外还有很多,比如php1、php2、php3、php4、php5、phtml。

以 upload-labs 第3关为例:

1ae7cc4bd137

本pass禁止上传.asp|.aspx|.php|.jsp后缀文件!可以看到这关禁用了4种文件,但是这是远远不够的......

可以看看 upload-labs 第4关,体会一下这两关的区别:

1ae7cc4bd137

所以思路就很明确了,我们先创建一个文件,取名为phpinfo.php3(php1、php2、php3、php4、php5、phtml),内容如下:

1ae7cc4bd137

把这个文件上传,然后查看图像

1ae7cc4bd137

可以看到我们上传的文件成功被当成php文件来解析,文件内容被成功执行

1ae7cc4bd137

当然,如果文件内容是一句话木马,我们就可以成功地利用工具连接、控制目标网站。操作也比较简单,这里就不演示了。

0x02 .htaccess文件的利用(Pass-04)

.htaccess文件

htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。仅限于Apache服务器

简单来说,我们如果上传了 .htaccess 这样一个配置文件到了upload目录里,那么这个文件里的一些可以人为操作的指令就可以控制upload这个目录以及子目录的一些功能。

1ae7cc4bd137

第4关和第3关的相比之下禁用了更多的后缀名,真是让人头疼,这时候我们灵光一闪,想到了.htaccess文件的利用,然后我们上传一个以下内容的.htaccess文件。它的作用是 让这个文件所在的目录里的所有文件都以php来解析

1ae7cc4bd137

.htaccess

这时再上传一个内容为 <?php phpinfo(); ?> 的文件,文件名为 phpinfo.jpg,这时的文件名后缀就不用那么讲究了,就算是phpinfo.xxx 也是可行的,结果被成功执行。

1ae7cc4bd137

0x03 大写绕过(Pass-05)

这关相比上一关增加了禁止 .htaccess 文件的上传

1ae7cc4bd137

但是我们还有一个简单的小思路,那就是利用其过滤的不严谨性,没有顾及到后缀的大小写检测,以及windows对大小写不敏感,从而简单的绕过

上传一个文件名为 phpinfo.PHP的文件,内容为 <?php phpinfo(); ?>,结果被成功执行。

1ae7cc4bd137

0x04 加空格绕过(Pass-06)

查看本关的源码可以看到没有对文件后缀进行去空操作

1ae7cc4bd137

所以可以利用 BurpSuite 截断 给文件名 phpinfo.php 尾部加一个空格后,将绕过服务器端的检测

1ae7cc4bd137

访问

1ae7cc4bd137

0x05 加点绕过(Pass-07)

利用 BurpSuite 截断 给文件名 phpinfo.php 尾部加一个点后,可以绕过服务器端的检测

1ae7cc4bd137

根据windows的特性,会自动去除文件尾部的点,从而让文件被web容器解析执行

1ae7cc4bd137

0x06 ::$DATA绕过(Pass-08)

根据ntfs文件系统的特性,可以在后缀中加::$DATA绕过

1ae7cc4bd137

查看图片发现禁止访问,原因我也说不上来。 ps:关于::$DATA绕过我还不是很懂,要是有dalao看到希望能教教我。

1ae7cc4bd137

然后把URL框的::$DATA去掉就可以以php的形式解析执行了。

1ae7cc4bd137

0x07 点空点绕过(Pass-09)

可以看一下这一关的源码,把之前讲的绕过方式都给禁用了

1ae7cc4bd137

这时候我们给后缀加点加空再加点,去了一个点和去空之后就和前面加点绕过效果一样了

1ae7cc4bd137

文件被成功解析执行:

1ae7cc4bd137

0x08 双写绕过(Pass-10)

这关把所有和黑名单匹配的后缀名都替换为空,但是只替换一次,源码如下

1ae7cc4bd137

遇到这种情况我们可以双写后缀来上传一个php文件,比如文件名为phpinfo.pphphp即可成功上传,最后访问的是info.php文件,文件内容成功被web容器解析

1ae7cc4bd137

0x09 总结与心得

文件上传之黑名单检测绕过这个点就说完了,欢迎纠错、补充。当然,这只是文件上传漏洞非常小的一部分,文件上传漏洞还有很多姿势等着我去学习。一开始我用的是 buu 的 upload-labs,但是可能是环境问题(那里的php版本是7点多的,官方建议的是5.2.17),导致一些关卡也存在问题。所以推荐大家自己动手搭一个环境,下载一个集成环境,只要7.7M,非常方便 https://github.com/c0ny1/upload-labs

http://www.jmfq.cn/news/4904209.html

相关文章:

  • 重庆江北网站建设/google 优化推广
  • 贵阳网站商城建设/网站怎么做
  • 公司手机网站开发招标书/四川网站seo
  • 网站建设得多少钱/公司培训课程有哪些
  • 网站建设综合实训心得体会/百度推广需要多少钱
  • 牡丹江网站建设/网络推广优化品牌公司
  • 苏州网站开发建设服务/百度推广技巧方法
  • 朝阳区住房和城乡建设委员会官方网站/刘雯每日资讯
  • 帮别人做网站用织梦模板行吗/免费域名怎么注册
  • 蚌埠做网站多少钱/seo公司 上海
  • 建设一个朋友的网站/百度官网网站
  • ftp上传网站之后/百度app在哪里找
  • 网站经营性备案需要什么资料/推广方案是什么
  • 石景山网站建设设计公司/网站排名靠前
  • c web怎么做网站/网店培训
  • 佛山市外贸企业高端网站设计/互联网优化
  • 在哪里找给公司做网站优化的人/成都网络营销推广
  • 吴志祥最早做的网站是什么网站/网上找客户有什么渠道
  • 建设部网站13清单/百度客服怎么联系
  • 手机网站开发下崽/网站seo好学吗
  • 做曖网站/怎么在网上做广告宣传
  • 有网站了小程序怎么做/我赢网客服系统
  • 网站是怎么做/三只松鼠营销案例分析
  • 做网站学什么语言/百度官网推广
  • 免费做头像网站有哪些/指数基金是什么意思
  • 广东省番禺疫情最新消息/seo是什么服务器
  • 鬼畜做的青龙游戏网站/上海网络推广外包
  • 做网站地图/seo托管服务
  • 做淘宝网站需要/优化大师会员兑换码
  • 做钓鱼网站教程/百度关键词优化平台