1.b374k
b374k是一款国外较轻便的开源的php类webshell,项目地址为:https://github.com/b374k/b374k/
并且在这里还有以前老版本的各种样式的webshell:
https://code.google.com/p/b374k-shell/downloads/list
2.weevely
weevely是一款针对PHP的webshell的自由软件,可用于模拟一个类似于telnet的连接shell,weevely通常用于web程序 的漏洞利用,隐藏后门或者使用类似telnet的方式来代替web 页面式的管理,weevely生成的服务器端php代码是经过了base64编码的,所以可以骗过主流的杀毒软件和IDS,上传服务器端代码后通常可以通过weevely直接运行。
3.一些搜集的webshell
……
更多内容请参见后来写的文章:常见的PHP Webshell集合[bak]
《 “[collect]关于PHP webshell的一些[bak]” 》 有 9 条评论
Substr函数助你免杀php脚本(淫荡思路)
https://bbs.ichunqiu.com/thread-27138-1-1.html
精华篇之webshell在php方向的研究
https://bbs.ichunqiu.com/thread-28862-1-1.html
https://www.laimooc.cn/
渗透测试时,绕过上传的限制之后,如何通过 WebShell 向合法的 Apache 进程注入任意代码
https://x-c3ll.github.io/posts/parasite-web-server-process/
AntSword2 安装指南
https://mp.weixin.qq.com/s/IezN9aYCn51t1ZQ7wX3X3Q
加密webshell流量
https://paper.tuisec.win/detail/e0194ce540b3411
利用burp插件打造单向数据加密的菜刀
http://blog.j14nj13.com/?p=7
模块化网站管理工具的思考
https://tmr.js.org/p/4644576d/
`
1. 菜刀
2. 蚁剑
3. 冰蝎
4. 工具改造
5. 模块化思考
`
腾讯lake2 :Webshell检测的前世今生
https://mp.weixin.qq.com/s/n72QEX_reaDcY4_iXZgeWA
`
Web时代,ASP、PHP这种新兴的动态脚本技术被大量网站使用,即由服务端执行脚本程序返回结果给客户端,客户端的浏览器仅展示结果。如果服务端执行的脚本是一个控制服务器的后门程序呢?那这就是被称为WebShell的Web后门程序(相对传统的命令行Shell而言,这是一种基于Web的Shell)。
WebShell是与冰河、灰鸽子这种传统二进制木马不同的一类木马,它是文本文件,由Web Server运行环境解释执行的。跟所有的新技术一样,它给安全行业带来了新的挑战:1)当时基于特征检测的杀毒软件根本没见过这种新木马,更不要说查杀了;2)它本身是一个CGI文件,控制走的HTTP协议,对网络层的防火墙来说这就是一次网页浏览行为,查不了也拦不住。
后来我加入腾讯安全中心,正好参与建设服务器安全系统“洋葱”,就把PHP、JSP、ASP、ASPX这些语言的WebShell特征全部提取了一遍,基本上可以发现当时市面上所有的WebShell,连见多识广的乌云白帽之王“猪猪侠”ring04h尝试后也不得不承认“腾讯在PHP安全领域的防护实力,当属国内第一”。当然,要纵深防御,更要在事前防御,送你一个Web安全秘诀:“目录默认不可写,可写目录不解析,Web Server非root,管理页面不对外”。
有检测就有对抗,WebShell进入对抗时代,各种针对性的新的变形方法被提出来,脚本语言松散的语法使得简单地通过特征字符串来检测WebShell越来越显得吃力,急需新的检测方案。新的方案大致可以分为以下几类:
1. 动态执行。采用RASP方式,把脚本运行起来,各种危险函数都hook掉,各种混淆就失效了,还可以实时阻止后门行为。xti9er、bghost一直在做这方面的研究,取得一些成绩,后面让他们分享下;
2. 语义分析。把代码进转换成语法树,然后去进行分析,还可以带上污点追踪和虚拟执行,各种奇怪语法和混淆最终会现形。从代码分析安全漏洞常使用这种方法;
3. 统计分析。通过对文件信息熵、元字符、特殊字符串频率等统计方式发现WebShell有别于正常文件的规律,老牛曾经尝试过用贝叶斯;
4. 机器学习。通过机器学习方法来对各类样本做训练生成模型,发现异常。不过这种方法需要大量样本做基础训练,而有些算法可解释性比较差,不利于运营。职业欠钱在腾讯时也带队实测过,AI在一定场景下有效;另外就是算法人员需要了解一定的安全知识,我还记得当时算法团队说样本不足以训练,要flyh4t给出十万个WebShell样本来,flyh4t气得把桌子都摔了;
`
闲谈Webshell实战应用
https://www.anquanke.com/post/id/206664
https://github.com/volcanohatred/webshell-bypass
PHP Webshell那些事-攻击篇
https://mp.weixin.qq.com/s/FgzIm-IK02rjEf3JvxOxrw
污点传递理论在Webshell检测中的应用 — PHP篇
https://mp.weixin.qq.com/s/MFmSliCQaaVEQ0E66vN5Xg
无字母数字webshell总结
https://xz.aliyun.com/t/8107
红与蓝:现代Webshell检测引擎免杀对抗与实践
https://mp.weixin.qq.com/s/j7gPuNg6dR5VQISOxeWCyA
`
上半年Webshell话题很火,业界举办了数场对抗挑战赛,也发布了多篇站在安全产品侧,着重查杀思路的精彩文章,但鲜有看到以蓝军视角为主的paper。
作为多场挑战赛的参赛者及内部红蓝对抗的参与者,笔者试着站在蓝军角度,聊聊现代Webshell对抗的一些思路,也以PHP Webshell为例,分享包括利用PHP自身bug、构造PHP内存马、强制赋值私有变量等一些还没有被提及到但又比较有趣的trick。
希望能对正在参与某些大型攻防对抗演练的你有所收获。
1.轻松绕过传统规则查杀
1.1一个极端的case
1.2 花括号的妙用
2.突破现代Webshell查杀引擎
2.1 静态分析缺陷
2.1.1 利用php自身的bug
2.1.2 利用sink或source点不覆盖
2.1.3 打断污点传播
2.1.4 强制修改私有变量
2.2 沙箱执行的弱点
2.2.1 随机行为
2.2.2 利用定时/延时绕过
2.2.3 文件信息不对称
3.其他trick
3.1 PHP下的内存马、无文件马
3.2 PHP版本差异
3.3 莫名其妙的case
4.结语
我们讨论了蓝军视角下传统和现代webshell查杀的一些缺陷和弱点,但同时也注意:在红蓝对抗中,webshell查杀通常是hids的一部分。作为主机层面的入侵检测工具,hids除了漏报率和误报率要达到条件,能否及时探测web路径、能否云上互相感知同步等基础能力也十分重要,一但某一环节的及时性或有效性跟不上,都有可能带来新的gap点。
`