当前位置: 首页 > news >正文

任务类风险漏洞挖掘思路

任务类风险定义:

大部分游戏都离不开任务,游戏往往也会借助任务,来引导玩家上手,了解游戏背景,增加游戏玩法,提升游戏趣味性。任务就像线索,将游戏的各个章节,各种玩法,各类玩家结合在一起。游戏离不开任务,但是开发者在设计任务时,也存在很多疏漏,导致任务类风险大量存在。任何修改任务正常执行流程,导致玩家可提升任务效率或收益的,都可以称为任务类风险。

任务类风险危害:

上述定义中提到了任务执行的正常流程,我们可以从任务执行环节上先熟悉游戏正常的流程:

  1. 任务执行前:获得任务领取条件,领取任务

  2. 任务执行时:完成任务条件

  3. 任务执行后:交付任务,领取任务奖励

结合上述流程,我们先来看几个案例:

当你辛辛苦苦完成了一个任务等级要求时,你却发现领取任务的NPC离你十万八千里,你需要传送,跑路赶过来领取一个任务,这时漏洞出现了,你在任何地点只需要利用下漏洞,便可以远程领取任务
在这里插入图片描述
当你在执行任务副本时,发现需要打好久好久,太费时间了,这是利用漏洞,直接修改任务难度,原本10分钟的副本任务现在只需要2分钟即可完成

当你在执行连环任务时,需要层层挑战,才可以最终完成任务,这是你利用漏洞,直接从任务的第一关卡跳转到第三关卡,大大减少了任务的完成时间:
在这里插入图片描述
更有甚者,连任务根本都不用领取,也不用去执行,就可以直接完成任务,获取对应任务奖励:
在这里插入图片描述
还有一些任务因为高收益高汇报,被游戏限定每日只能刷一次,或者具备一定前提条件才可以领取,但是却可以利用漏洞,实现任务的无限完成和奖励的无限领取。

总结上述案列,可将任务类风险按流程和效果做以下划分:
在这里插入图片描述
从执行效果上看,任务类风险的危害简单归纳如下:

  1. 极大的降低了任务完成时间,提高任务完成速度

  2. 非法获取或重复获取游戏任务中的大量奖励,提升玩家收益,影响游戏平衡

  3. 极大促进游戏工作室游戏内大量刷任务等非法行为。
    任务类风险存在原因:

出现任务类风险的根本原因是服务器的校验疏忽,只单单对任务最终结果做了校验,进而导致了任务的前置条件和执行过程出现了各种被绕过,被多次利用的可能。

任务类风险漏洞挖掘方法:

结合上述原因分析,如何确定服务器的校验过程是任务类风险漏洞挖掘的核心思路,而对服务器的验证一般均为黑盒测试,常见的方法便是结合猜想,去在协议层进行重发,屏蔽和修改。先来看看一般的任务类协议格式和交互流程:

一般任务请求/完成的协议格式如下:
在这里插入图片描述
在这里插入图片描述
在大多数任务交互过程中,协议1,协议2,协议3,协议4是必不可少的,其他协议需要根据游戏具体逻辑进行分析确认,在验证过程中,针对上述协议进行重发,屏蔽和修改,如果服务器校验不够严谨的话,则会触发相应漏洞。

下面举一案列进一步说明验证过程:

某游戏在一项挑战赛中有一连环任务,玩家在连续完成7次挑战后最终完成任务,获得丰富任务奖励。其接受任务时上行协议被工具截获如下:

[01 21 00 00 00 00 00 36 04 00 E8 F4 68 21 00 00 f7 50 00 02]

二进制数据被工具切割成如下:

[01 21]:协议号

[00 00 00 00]:未知

[00 36 04 00]:服务器ID

[E8 F4 68 21]:玩家ID

[00 00 F7 50]:任务ID

[00 02 ]:任务环节

协议工具截获后,确认其环节数字段后,可将[00 02]修改为指定关卡,重发协议后,玩家即可进行第几次关卡挑战,如果直接改写为[00 07]进行重发,则可直接完成任务。

任务类风险验证需要大胆猜想,并结合协议工具进行分析验证,结合上述协议总结的协议交互流程,可以对任务类风险的挖掘常用方法做出归纳如下图:
在这里插入图片描述

相关文章:

任务类风险漏洞挖掘思路

任务类风险定义: 大部分游戏都离不开任务,游戏往往也会借助任务,来引导玩家上手,了解游戏背景,增加游戏玩法,提升游戏趣味性。任务就像线索,将游戏的各个章节,各种玩法,…...

2023年Dubbo常见面试题

2023年Dubbo常见面试题 Dubbo 中 zookeeper 做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么? 可以通信的,启动 dubbo 时,消费者会从 zk 拉取注册的生产者的地址接口等数据,缓存在本地。…...

星光2开发板使用ECR6600U无线wifi网卡的方法

visionfive2 开发板性能还是不错的,有些人买的时候会带一个无线wifi网卡,但是官方提供的操作系统没有驱动。 所以需要自己编驱动(他大爷的)。 还好有人已经踩过坑了。 星光2之USB无线网卡使用教程【新增RTL8832AU WiFi6双频无线…...

【ArcGIS Pro二次开发】(11):面要素的一键拓扑

在工作中,经常需要对要素进行拓扑检查。 在ArcGIS Pro中正常的工作流程是在数据库中【新建要素数据集——新建拓扑——将要素加入拓扑——添加规则——验证】,工作流程不算短,操作起来比较繁琐。 下面以一个例子演示如何在ArcGIS Pro SDK二次…...

【实现点击下载按钮功能 Objective-C语言】

一、实现点击下载按钮功能, 1.接下来,我们再实现另外一个功能,是什么,点击下载按钮吧: 点击下载按钮,是不是要有效果啊, 就是给大家实现这个功能, 首先,我们要实现单击这个效果,是不是要给按钮注册单击事件吧, 请问,这个按钮在哪里啊,是在控制器里面吗,不是,…...

界面控件DevExpress WinForm——轻松构建类Visual Studio UI(三)

DevExpress WinForm拥有180组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForm能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任…...

项目实战-瑞吉外卖day01(B站)

瑞吉外卖-Day01课程内容软件开发整体介绍瑞吉外卖项目介绍开发环境搭建后台登录功能开发后台退出功能开发1. 软件开发整体介绍作为一名软件开发工程师,我们需要了解在软件开发过程中的开发流程, 以及软件开发过程中涉及到的岗位角色,角色的分工、职责&am…...

Linux 学习整理(使用 iftop 查看网络带宽使用情况 《端口显示》)

一、命令简介 iftop 是实时流量监控工具,可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等。 二、命令安装 yum install -y iftop 三、命令相关参数及说明 3.1、相关参数说明 -i:设定监测的网卡&#…...

Vue3创建项目(四)axios封装及接口配置

项目结构: 目录 🍉🍉🍉index.ts 🍉🍉🍉 api.ts 看完需要预计花费10分钟。 请求拦截器与响应拦截器 阅读下面代码需先了解以下内容: 请求拦截器: 请求拦截器的作用是在请求发送前进…...

【算法笔记】递归与回溯

递归与回溯 To Iterate is Human, to Recurse, Divine. —L. Peter Deutsch 人理解迭代,神理解递归。 —L. Peter Deutsch 1.什么是递归呢 递归形象描述: 你打开面前这扇门,看到屋里面还有一扇门。 你走过去,发现手中的钥匙还可以…...

蓝桥杯备赛——Echarts学习

文章目录前言学习 ECharts 的方法快速上手基础知识option 配置选项可选配置title 标题组件tooltip 提示框组件axisPointer 坐标轴指示器legend 图例组件toolbox 工具栏坐标轴xAxis和yAxisseries ([ ]用数组表示,数组里是一个个数据对象)饼状图散点图交互…...

动态规划--最长公共子串

最长公共子串公共子串问题费曼算法动态规划算法思路代码实现公共子串问题 在计算机科学中,最长公共子串问题是寻找两个或多个已知字符串最长的子串。此问题与最长公共子序列问题的区别在于子序列不必是连续的,而子串却必须是。链接: 百度百科 费曼算法…...

【运筹优化】剩余空间法求解带顺序约束的二维矩形装箱问题 + Java代码实现

文章目录一、带顺序约束的二维矩形装箱问题二、剩余空间法三、完整代码实现3.1 Instance 实例类3.2 Item 物品类3.3 PlaceItem 已放置物品类3.4 Solution 结果类3.5 RSPackingWithWeight 剩余空间算法类3.6 Run 运行类3.7 测试案例3.8 ReadDataUtil 数据读取类3.9 运行结果展示…...

第四阶段15-关于权限,处理解析JWT时的异常,跨域请求,关于Spring Security的认证流程

处理解析JWT时的异常 由于解析JWT是在过滤器中执行的,而过滤器是整个服务器端中最早接收到所有请求的组件,此时,控制器等其它组件尚未运行,则不可以使用此前的“全局异常处理器”来处理解析JWT时的异常(全局异常处理器…...

毕业设计 基于51单片机的指纹红外密码电子锁

基于51单片机的指纹红外密码电子锁1、项目简介1.1 系统框架1.2 系统功能2、部分电路设计2.1 STC89C52单片机最小系统电路设计2.2 矩阵按键电路电路设计2.3 液晶显示模块电路设计3、部分代码展示3.1 LCD12864显示字符串3.2 串口初始化实物图1、项目简介 选题指导,项…...

【JavaWeb】数据链路层协议——以太网 + 应用层协议——DNS

以太网 以太网不是一个具体的网络,而是一个技术标准,主要应用于数据链路层和物理层。 以太网数据帧结构 以太网的数据帧结构由三部分构成: 帧头 载荷 帧尾 其中的MAC地址是六位,这样就比IPV4所表示的地址大很多,…...

docker 容器安装 python jre

Dockerfile FROM python:2.7.11-alpine RUN mkdir /usr/local/java WORKDIR /usr/local/java # 5.更改 Alpine 的软件源为阿里云,默认从官方源拉取比较慢 RUN echo http://mirrors.aliyun.com/alpine/v3.10/main/ > /etc/apk/repositories && \ echo…...

Linux下将C++程序打包成动态库静态库方法

之前在这篇文章里介绍过动态库和静态库的理论部分,这篇文章主要介绍下实际的操作步骤: 静态链接库生成 gcc -c main.cpp -o main.o ar -rc libmain.a main.o sudo cp libmain.a /usr/local/lib 调用即可解释一下上面的命令:前两步生成了libmain.a sudo…...

Centos7 服务器基线检查处理汇总

1、服务器超时设置 问题描叙 TMOUT的值大于key2且小于等于{key2}且小于等于key2且小于等于{key1}视为合规 查看命令:export检测结果 超时时间:0处理方式 备份/etc/profile文件 cp /etc/profile /etc/profile_bak编辑profile文件 vim /etc/profile修改/新增 TMO…...

PaddleOCR遇到 lanms-neo问题处理

在window环境中安装PaddleOCR依赖是真的蛋疼,关键官方论坛里也都没有具体的解决方案。吐槽。。。吐槽。。。 我在 “windows安装lanms-neo问题处理”文章中看到lanms-neo问题全过程解决。个人觉得文档说明不是很细致,导致我按步骤执行,还是安…...

避坑指南:CentOS7部署LibreNMS常见错误及解决方案

CentOS7部署LibreNMS避坑实战:从SELinux到数据库权限的深度排错指南 对于网络监控系统的部署,LibreNMS以其开源特性和强大功能成为众多技术团队的首选。但在CentOS7环境下,从系统配置到服务调优的每个环节都可能成为阻碍顺利部署的暗礁。本文…...

OpenClaw安全指南:GLM-4.7-Flash本地化部署权限管理

OpenClaw安全指南:GLM-4.7-Flash本地化部署权限管理 1. 为什么需要关注OpenClaw的安全问题 去年我在尝试用OpenClaw自动整理电脑上的项目文档时,差点酿成一场小灾难。当时我让AI助手帮我"清理重复文件",结果它把我整个开发环境的…...

Fasd终极路线图:2025年项目发展方向与社区规划完全指南

Fasd终极路线图:2025年项目发展方向与社区规划完全指南 【免费下载链接】fasd Command-line productivity booster, offers quick access to files and directories, inspired by autojump, z and v. 项目地址: https://gitcode.com/gh_mirrors/fa/fasd Fasd…...

GlitchTip:开源错误追踪平台完全指南:Sentry替代方案的完整教程

GlitchTip:开源错误追踪平台完全指南:Sentry替代方案的完整教程 背景 在应用开发和运维过程中,错误追踪是保障服务质量的关键环节。Sentry 作为业界领先的错误追踪服务,提供了强大的错误收集和分析能力,但其云服务版…...

Windows 10下Cesium Terrain Builder编译踩坑实录(VS2015+GDAL环境配置)

Windows 10下Cesium Terrain Builder编译实战指南(VS2015GDAL环境配置) 在三维GIS开发领域,Cesium Terrain Builder(CTB)作为生成量化网格地形瓦片的核心工具,其编译过程却常让开发者望而生畏。特别是在Win…...

CCS12.3.0保姆级教程:手把手教你为AWR6843AOP毫米波雷达新建工程(附完整配置参数)

CCS12.3.0零基础实战指南:AWR6843AOP毫米波雷达工程搭建全解析 第一次打开Code Composer Studio 12.3.0时,满屏的选项和参数确实容易让人望而生畏。特别是当你要为TI的AWR6843AOP毫米波雷达创建新工程时,那些关于Cortex R、DSP C67XX、mss/ds…...

SenseVoice-small保姆级教程:Mac/Windows本地快速启动WebUI步骤

SenseVoice-small保姆级教程:Mac/Windows本地快速启动WebUI步骤 你是不是也遇到过这样的场景?开完会想整理录音,发现要上传到云端才能转文字,担心隐私泄露;或者想给视频加字幕,但手动打字太费时间&#xf…...

【笔试真题】- 阿里系列-2026.03.25-研发岗

📌 点击直达笔试专栏 👉《大厂笔试突围》 💻 春秋招笔试突围在线OJ 👉 笔试突围在线刷题 bishipass.com 阿里系列-2026.03.25-研发岗 1. K小姐的仓位配货表 问题描述 说明:阿里系列近期多条业务线笔试题基本共用同一套公开机试,淘天、阿里云等方向都可参考本场。…...

基于FreeSWITCH ESL构建高并发智能客服系统的实战指南

在构建智能客服系统时,通信层的稳定与高效是基石。传统的WebSocket或直接SIP处理在高并发场景下,常常面临连接管理复杂、事件处理混乱、资源消耗大等问题。FreeSWITCH作为成熟的软交换平台,其ESL(Event Socket Library&#xff09…...

ChatGPT公式复制到Word的自动化实践:从手动操作到脚本实现

ChatGPT公式复制到Word的自动化实践:从手动操作到脚本实现 作为一名经常需要整理技术文档的开发者,我过去常常被一个看似简单却异常繁琐的任务困扰:将ChatGPT生成的数学公式或代码片段复制到Microsoft Word中。每次操作都像是一场格式的“灾…...