网络安全|网络安全-webshell详解(原理、攻击、检测与防御)
目录
简介
原理
常见一句话木马
php
asp
aspx
jsp
攻击
WebShell管理工具
webshell隐藏
检测与防御
静态检测
参考
webshell
webshell查杀
参考
简介 Webshell是通过服务器开放的端口获取服务器的某些权限。
webshell又称脚本木马,一般分为大马、小马、一句话木马。
大马,体积大、功能齐全、能够管理数据库、文件管理、对站点进行快速的信息收集,甚至能够提权。
小马,一般而言,我们在上传文件的时候,会被限制上传的文件大小或是拦截的情况,那么我通过小马来上传大马,实现我们想要的功能。
一句话木马,短小精悍、功能强大、隐蔽性好、使用客户端可以快速管理webshell。
原理 利用文件上传漏洞、SQL注入漏洞、RCE漏洞等,将恶意文件放到web服务器中,也就是常说的”后门”,之后可以进行文件管理、数据库管理、远程命令执行、提权等恶意操作。
常见一句话木马
php
asp
aspx
jsp
攻击 靶机:pikachu
工具:中国蚁剑
首先,利用文件上传漏洞,上传webshell文件
网络安全-文件上传漏洞的原理、攻击与防御_lady_killer9的博客-CSDN博客
文件为eval.php,内容为
文章图片
之后利用中国蚁剑连接网站,空白处右键->添加数据
文章图片
添加数据
文章图片
添加数据成功
文章图片
上传文件及其他功能
文章图片
终端控制 再打开上传webshell的那个目录,可以看到多出来了%SystemDrive%目录,
文章图片
目录变化 至此,可以进行文件管理,虚拟终端等。
WebShell管理工具
- Cknife 中国菜刀
- antSword 中国蚁剑
- 冰蝎 动态二进制加密网站管理客户端
- weevely3 Weaponized web shell
- Altman the cross platform webshell tool in .NET
- Webshell Sniper Manage your website via terminal
- quasibot complex webshell manager, quasi-http botnet
例如,修改发送数据包的头部,添加webshell。 web服务器一般会保存访问记录到Web日志,若找到web日志,且放到可执行目录下,可能获得shell。
隐藏到合法文件
例如,文件上传漏洞中,将php代码放到jpg文件中,可以使用@运算符,以防发生任何错误。
混淆
删除空格、换行符等,导致代码文件比较乱,使用编码或加密来隐藏掉恶意函数名等。
检测与防御 静态检测 web日志
在对日志文件进行预处理后,对日志记录进行文本特征匹配、统计特征计算与文件关联性分析,最后对检测结果汇总,列出疑似的Webshell文件。
例如,网站目录下某php文件访问量过少,且来源ip固定。
动态检测
webshell传到服务器了,黑客总要去执行它吧,webshell执行时刻表现出来的特征,我们称为动态特征。
例如,webshell如果执行系统命令的话,会有进程。
以上面的攻击进行防御举例
文章图片
webshell扫描
点击执行操作
文章图片
后门被删除 webshell文件被删除,但是%SystemDrive%目录还存在。
总结:攻击层面还应考虑如何绕过系统上传webshell,如何隐藏webshell免查杀,防御方面应该考虑如何避免webshell被上传,如何查杀webshell。
参考 webshell
- webshell
- PHP backdoors
- php bash - semi-interactive web shell
- Python RSA Encrypted Shell
- b374k - PHP WebShell Custom Tool
- JSP Webshells
- MemShellDemo
- D盾
- 深信服WebShell查杀
- 百度WEBDIR+
- 河马
更多内容查看:网络安全-自学笔记
【网络安全|网络安全-webshell详解(原理、攻击、检测与防御)】喜欢本文的请动动小手点个赞,收藏一下,有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。如果您感觉有所收获,自愿打赏,可选择支付宝18833895206(小于),您的支持是我不断更新的动力。
推荐阅读
- Java|Java OpenCV图像处理之SIFT角点检测详解
- C语言浮点函数中的modf和fmod详解
- 虚拟DOM-Diff算法详解
- LSTM网络层详解及其应用实例
- OC:|OC: WKWebView详解
- vue中的条件判断详解v-if|vue中的条件判断详解v-if v-else v-else-if v-show
- Vue组件之事件总线和消息发布订阅详解
- JS截取字符串的方法详解
- C语言进阶栈帧示例详解教程
- C#中类的异常处理详解