首页 存档 技术 查看内容

PHP一句话后门过狗姿势万千之理论 实践

2018-3-30 13:00 |来自: 互联网 314 0

摘要: 前言过狗相关的资料网上也是有很多,所以在我接下来的文章中,可能观点或者举例可能会与网上部分雷同,或者表述不够全面。 但是我只能说,我所传达给大家的信息,是我目前所掌握或者了解的,不能保证所有人都会有收 ...


前言

过狗相关的资料网上也是有很多,所以在我接下来的文章中,可能观点或者举例可能会与网上部分雷同,或者表述不够全面。

但是我只能说,我所传达给大家的信息,是我目前所掌握或者了解的,不能保证所有人都会有收获,但是个人水平有限,可能您觉得文章水平过低,或者并无太大营养。但是跳出文章本身,无论何种技术,重在交流,分享与总结。

另外,希望年轻人不要有太多戾气,更多的是需要保持一个谦逊态度对待技术,尤其是这个浮躁的安全界。

写PHP后门连载的目的

希望大家能够暂缓日站的脚步,静下心来想一想,我们在用菜刀做一些除(sang)暴(jin)安(tian)良(liang)的事的时候,PHP做了些什么,安全狗又蜷缩在门后目睹了些什么。

其实我更愿意传授安全之道,而非渗透之术。

参考过网上很多种已有的PHP后门的写法,总之思路各种奇葩与新奇,但是衡量一个优秀的PHP后门并不是单单的看代码多少,过狗怎么样,而是一种基于实际场景的一种变通,所以,PHP后门这是一门艺术。

连接后门时发生了什么

所以当我在菜刀中双击连接的时候到底发生了什么,安全狗又是如何发现后门并拦截的?

PHP后门原理很简单,当我们连接时,实际上我们会向PHP文件Post数据,这个数据的内容为我们需要PHP去执行的代码,当php获取到数据并执行后,将返回一个response

WAF能够识别到什么层次

其实WAF最多获取到TCP数据,也就是说,可以获取到我们所post的数据,与服务器所返回的数据,至于PHP执行命令的过程,用了什么对象,走了什么函数,大部分WAF是无法得知的,只能检测敏感字符的提交与返回,与特征查杀。

所以即使是eavl()这个最原始的函数PHP如何去执行,WAF是不管的,但是实际情况你可能还没到那一步,后门就被和谐了。

因为在此之前WAF肯定要对后门文件进行特征分析,这关过了,才到数据层,最后才到返回层,那么接下来第二章与第三章将从后门构造与数据提交角度来探讨过狗的方式。

由于WAF软件众多,防护机制不尽相同,我的一系列文章全部以安全狗为例。

WAF如何查杀

首先,后门写入的方式有很多,比如程序本身的move函数,远程包含,数据库导出等等方式,在这里就不详细展开了,

在后门写入过程中,waf首先会对文件的格式进行一个黑白名单检测,如一律不允许PHP文件上传。

如果上传这一步可以过,那么接下来就是对上传的文件内容进行被动查杀。

而后门特征的查杀一般在后门上传的过程与访问的过程,waf会使用相关的正则与代码预编译来判断是否为危险代码。

以前还经常有用字符串叠加或者加注释来躲避字符串匹配,但是现在很难单纯靠这种方式来绕过了。

当我们的代码本身可以过狗,加工post数据后门执行也没有问题后,最后就是WAF对返回的敏感信息进行检测与过滤了。

除此之外WAF可能会对特殊上传的文件进行权限控制,例如无法执行某些命令等等。

理论篇其实本身并没有太多的东西可说,更多的是希望大家对于WAF有个初步的认识,不要盲(qiang)目(xing)过狗,滥用菜刀。

开搞

前面是针对初级,分析菜刀PHP代码的执行过程,较基础;第二部分主要总结一些可以利用的后门姿势,这部分我主要给大家分享一些搜集的后门,希望可以拓展大家的思路;第三部分主要分享后门隐藏之道。

声明:在后门举例中大部分后门构造与思路,可能网上都有类似的,如有雷同,来打我呀!

目前主流的WAF软件(如安全狗)一般对于后门文件有主动查杀与被动查杀,主动好理解,被动主要就在于你访问该文件的时候,对该文件就行查杀,比如链接菜刀的时候。

因为安全狗对后门的查杀其实就是对代码的一个预编译,去除注释等无用代码,遇到if,直接检查if内部内容。

安全狗获取其他各种WAF有什么样的特征库,我们并不能全部知晓,我们能做的只有一点点尝试,WAF永远在更新,黑阔门永远在换套路,几乎没有一劳永逸的后门。

说明:如果想更好的过狗,那么PHP是必须要会的,为了尽量照顾到不会PHP的同学,本文分享一些猥琐思路弥补一下。

先来一个最简单的过狗后门

下面分享的几个一句话都是可以直接过狗的,虽然很简单,但此之前,我们来遛一遛狗。

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部