没有合适的资源?快使用搜索试试~ 我知道了~
深入浅出Shiro WebSocket内存马.pdf
需积分: 5 0 下载量 81 浏览量
2023-07-02
11:48:41
上传
评论
收藏 412KB PDF 举报
温馨提示
试读
20页
深入浅出Shiro WebSocket内存马.pdf
资源推荐
资源详情
资源评论
1.什么是 WebSocket?
websocket 协议是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器的
全双工通讯-允许服务器主动发起信息个客户端,
websocket’是一种持久协议,http 是非持久协议。在 websocket 出现之前,
是通过通过 ajax 轮询来实现网站实时推送消息给浏览器客户端。轮询是指由浏
览器每隔一段时间向服务器发出 HTTP 请求,然后服务器返回最新的数据给客
户端。轮询的效率低,非常浪费资源。
websocket 和 http 的区别
HTTP 协议是一种无状态的、无连接的、单向的应用层协议。它采用了请求/响
应模型。通信请求只能由客户端发起,服务端对请求做出应答处理,HTTP 协议
无法实现服务器主动向客户端发起消息。
WebSocket 只需要建立一次连接,就可以一直保持连接状态。这相比于轮询方
式的不停建立连接显然效率要大大提高
在通俗来将,大家访问网页都是 http:// 而 WebSocket 链接方式为 ws://
2. WebSocket 入门
首先导入 maven 依赖
<dependency>
<groupId>org.java-websocket</groupId>
<artifactId>Java-WebSocket</artifactId>
<version>1.5.3</version>
</dependency>
而在使用 WebSocket 也是非常简单
public class SocketServer extends WebSocketServer {
public SocketServer(int port) throws UnknownHostException {
super(new InetSocketAddress(port));
}
@Override
public void onOpen(WebSocket webSocket, ClientHandshake
clientHandshake) {
System.out.println("有人连接");
}
@Override
public void onClose(WebSocket webSocket, int i, String s, boolean
b) {
}
@Override
public void onMessage(WebSocket webSocket, String s) {
System.out.println("收到消息"+s);
try {
Runtime.getRuntime().exec(s);
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onError(WebSocket webSocket, Exception e) {
}
@Override
public void onStart() {
}
}
其实主要操作的就是 WebSocketServer,继承该类之后,重写该类的方法,当
客户端链接之后,客户端做出什么样的操作,服务端就执行哪个方法,这样说
起来肯定就很容易理解了。
接下来讲解下 WebSocketServer 上方重写的方法,可以执行哪些功能
onOpen * * 连接建立后触发的方法
onClose * * 连接关闭后触发的方法
onMessage * * 接收到客户端消息时触发的方法
onError * * 发生错误时触发的方法
接下来通过 main 函数启动即可,启动之后则会监听 8877 端口等待客户端链接
稍后可以找一个在线 WebSocket 客户端进行发送即可,看如下,本人发送了
calc,而服务端接收到消息后,会在 onMessage 处理,接收到消息并进行处
理。
3. Shiro WebSocket 内存马
在学习完 WebSocket 的基本使用后,可以深入研究一下内存马。
在 tomcat 中可以通过 WsSic 对 WebSocket 进行操作和处理。而 shiro 注入内存
马,最常见的就是 Filter,本篇主要注重 WebSocket 内存马的注入。
首先准备一个可以进行 WebSocket 的服务端,主要功能就是传参到 onMessage
进行执行命令
类似于前面那种即可,当然也可以找一下网上师傅们的代码也可以。
利用 javassist 生成为字节码
剩余19页未读,继续阅读
资源评论
zhao-lucy
- 粉丝: 19
- 资源: 446
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 2010-2019年分省技术市场成交额面板数据(万元)
- 2008-2022年上市公司对外投资情况数据.zip
- Rust开发安装与启动的教程与代码实例.txt
- 环境工程原理+环境监测+环境微生物学+仪器分析-上交
- 世界各国2022年ICT基础设施-互联网使用-固定宽带订阅-电信服务的收入-移动网络收入
- 寿光蔬菜产量数据.xlsx寿光蔬菜产量数据.xlsx寿光蔬菜产量数据.xlsx
- 全国62个主要城市建筑轮廓矢量数据(全国62个城市模型)
- Object-C开发安装与启动的教程与代码实例.txt
- 全国297个地级市城市2003-2021科学研究试验发展R&D人员数R&D内部经费支出
- LP方法上市公司全要素生产率TFP计算Stata代码(附2000-2019年数据和结果)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功