17.第二阶段x86游戏实战2-线程发包和明文包

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

本次游戏没法给

内容参考于:微尘网络安全

本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要盲目相信。

工具下载:

链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3

提取码:6tw3

复制这段内容后打开百度网盘手机App,操作更方便哦

上一个内容:16.第二阶段x86游戏实战2-发包函数和怎么去找改写过的发包函数

上一个内容中写了send、sendto、WSASend、WSPSend发包函数和逆向的时候怎么找它们,本次就开始找此游戏明文发包位置

打开游戏打开OD,OD并附加到游戏

OD附加到游戏之后按CTRL+G,输入下图红框的内容 ws2_32.send,然后点OK跳转到send函数中,OD第一个打开需要CTRL+G两次

然后就跳转到了下图位置,send函数开始的位置

然后在游戏聊天框里输入一段内容

然后单击下图红框位置,也就是send函数的第一行

然后游戏中会有很多数据包,为了避免被干扰,有一个技巧,鼠标移动到游戏中发送消息的按钮上,然后按F2,F2是OD的打断点快捷键,按了F2打了断点之后鼠标快速点击游戏中发送消息按钮,这样可以0失误的通过发送聊天数据断在send函数上,如下图,下图红框是聊天内容数据,31是Unicode编码它表示数字1,可以看到这个游戏给服务器发送的数据没有加密(调用了send函数数据就会通过网络发送出去所以一般加密是在调用send函数之前)

然后使用Send函数一般会配合多线程使用,不要管什么意思记着就行,使用了多线程在send函数中打断点按CTRL+F9是无法找到功能的,比如上方是通过发送聊天数据触发的断点,在send函数中打断点然后按CTRL+F9是无法找到发送聊天数据的这个功能的代码的

然后下图红框位置是send函数要发送的数据,也就是数据包(封包),它是一个内存地址,可以看到不管怎么运行这个内存地址都不会变,这是因为它有两个线程,一个线程用来给这个内存地址里写数据,一个线程用来从这个内存地址里读数据发送数据,所以我们找的应该是给内存地址写数据的那个线程里的代码

然后选择数据窗口跟随

然后下一个硬件写入断点

然后它就会断下来,现在断下来的位置就是给内存地址写数据的地方

然后点击下图红框位置删除断点,如果下了硬件写入断点没有反应那就检查下图绿框里的地址是否正确,如果不正确删除断点重新打硬件写入断点

删除之后按CTRL+F9,如下图第一层

CTRL+F9,如下图第二层

CTRL+F9,如下图第三层

CTRL+F9,如下图第四层

CTRL+F9,如下图第五层

CTRL+F9,如下图第六层,按六层左右或按到CTRL+F9没反应了位置就不要按了

然后来到第三层,按键盘上的-(减号)就可以恢复按CTRL+F9之前的位置,来到第三层

来到第三层之后打断点,打了断点之后回到游戏做一个会发送数据包的事,比如走路、发送聊天数据,然后发现下图断点位置不管走路还是发送聊天数据都会断下来,所以再来到第四层

怎么回到第四层?如下图红框,如果写了内容

选择用户自定义的注释

然后根据注释列选择,找到那一行直接用鼠标双击就可以跳转过去了

在第四层打断点,然后会发现走路、发送聊天数据不会断下来了,所以0x00CA8B90函数是游戏写数据包内容的函数,也就是第三层才是我们要找的游戏发送数据包函数

然后这个游戏重启内存地址会变化,所以这里要计算一下偏移,这个函数在Game模块中

它的偏移,公式 Game模块基址+0x288B90的位置是发送数据包函数


img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/434239.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Feign:服务挂了也不会走fallback

Feign 本质上是一个 HTTP 客户端,用于简化微服务之间的 HTTP 通信。它允许开发者通过定义接口和注解来声明式地编写 HTTP 客户端,而无需手动编写 HTTP 请求和响应处理的代码。 今天在模拟微服务A feign调用微服务B的时候,把微服务B关了&#…

C高级(Day22)

一、学习内容 shell指令 文件相关的指令 重定向 > >> echo :打印字符串 cat: 在终端打印文件的内容 链接文件 硬链接文件:文件的inode号是一样的。 查看文件inode号: ls -i 格式:ln 被链接的文件 创建硬链接文件 1 硬链接的文件…

计算机毕业设计 基于Python的医疗预约与诊断系统 Django+Vue 前后端分离 附源码 讲解 文档

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点…

通用型pdf合并工具,分享7款简单易学的pdf处理软件,日常电脑必备!

日常学习和工作中,我们难免会遇到需要编辑pdf文件的情况。熟悉pdf格式文档的小伙伴都知道,pdf不易于编辑,需要借助专业的pdf编辑软件才能实现。现在pdf编辑、pdf转word、pdf合并、pdf拆分等功能都可以轻松实现。尽管如此,也有不少…

《动手学深度学习》笔记2.1——神经网络从基础→进阶 (层和块 - 自定义块)

目录 0. 前言 原书正文(第五章) 第五章 - 第一节 - 层和块 - 自定义块 1. Sequential() PyTorch高级API 2. MLP() 无传入参数 3. MySequential() 传入任意层(块) 4. FixedHiddenMLP() 无传入参数-固定隐藏层 5. NestMLP() 传入嵌套块-多次嵌套 …

Vue之axios请求

Vue之axios请求 axios请求, 是Vue前端框架非常重要的一部分, 今天我们就讲解axios请求, 到底有什么作用, 以及会告诉大家axios的常见用法。 axios请求, 是网页向后端发起请求, 后端吧数据给我们网页, 这是一个前后端交互的过程。当我们学会了axios, 我们可以实现前端和后端练…

【算法篇】二叉树类(2)(笔记)

目录 一、Leetcode 题目 1. 左叶子之和 (1)迭代法 (2)递归法 2. 找树左下角的值 (1)广度优先算法 (2)递归法 3. 路径总和 (1)递归法 (2…

H. Sakurako‘s Test

H. Sakurakos Test 原题 本题通过前缀和和二分可以解决, 原理并不是很困难, 但是比较难想到 我们只需要对每一个 x, 二分求出中位数, 预处理好即可, 二分的检查通过求k倍的x可以在调和级数的时间内实现 代码 #include <bits/stdc.h> #define int long longusing name…

mysql索引 -- 聚簇索引,非聚簇索引,如何查看linux下的数据库文件,普通/辅助索引(回表查询)

目录 聚簇索引和非聚簇索引 聚簇索引 介绍 示例 查看当前的数据库数据目录 表文件 非聚簇索引 介绍 myisam 示例 普通(辅助)索引 引入(回表查询) mysql索引结构详细介绍 -- mysql索引 -- 索引的硬件理解(磁盘,磁盘与系统),软件理解(mysql,与系统io,buffer pool),索…

基于SpringBoot的新冠检测信息管理系统的设计与实现

文未可获取一份本项目的java源码和数据库参考。 国内外在该方向的研究现状及分析 新型冠状病毒肺炎疫情发生以来&#xff0c;中国政府采取积极的防控策略和措施&#xff0c;经过两个多月的不懈努力&#xff0c;有效控制了新发病例的増长&#xff0c;本地传播已经趋于完全控制…

【Java】六大设计原则和23种设计模式

目录 一、JAVA六大设计原则 二、JAVA23种设计模式 1. 创建型模式 2. 结构型模式 3. 行为型模式 三、设计原则与设计模式 1. 设计原则 2. 设计模式 四、单例模式 1. 饿汉式 2. 懒汉式 四、代理模式 1. 什么是代理模式 2. 为什么要用代理模式 3. 有哪几种代理模式 …

并发面试合集

1.创建线程的方式 区分线程和线程体的概念&#xff0c;线程体通俗点说就是任务。创建线程体的方式&#xff1a;像实现Runnable、Callable接口、继承Thread类、创建线程池等等&#xff0c;这些方式并没有真正创建出线程&#xff0c;严格来说&#xff0c;Java就只有一种方式可以…

MySQl查询分析工具 EXPLAIN ANALYZE

文章目录 EXPLAIN ANALYZE是什么Iterator 输出内容解读EXPLAIN ANALYZE和EXPLAIN FORMATTREE的区别单个 Iterator 内容解读 案例分析案例1 文件排序案例2 简单的JOIN查询 参考资料&#xff1a;https://hackmysql.com/book-2/ EXPLAIN ANALYZE是什么 EXPLAIN ANALYZE是MySQL8.…

有问题未解决(9.28)

#include <stdio.h> int main() {int a 1;int b 2;int c 3;int arr[] { a,b,c };arr[0] 10;printf("%d\n", a);//打印结果为1&#xff1b;return 0; } 颠覆认知了&#xff0c;或许也没有颠覆 arr是一个int类型的数组&#xff0c;他存的就是一个数&…

Arch - 架构安全性_保密(Confidentiality)

文章目录 OverView导图保密保密强度与成本客户端加密密码存储与验证 Code总结 OverView 即使只限定在“软件架构设计”这个语境下&#xff0c;系统安全仍然是一个很大的话题。 接下来我们将对系统安全架构的各个方面进行详细分析&#xff0c;包括认证、授权、凭证、保密、传输…

JSP(Java Server Pages)基础使用二

简单练习在jsp页面上输出出乘法口诀表 既然大家都是来看这种代码的人了&#xff0c;那么这种输出乘法口诀表的这种简单算法肯定是难不住大家了&#xff0c;所以这次主要是来说jsp的使用格式问题。 <%--Created by IntelliJ IDEA.User: ***Date: 2024/7/18Time: 11:26To ch…

大厂AI必备数据结构与算法——链表(三)详细文档

冲冲冲&#xff01;开干 神马&#xff01;神马&#xff01;神马&#xff0c;一向让我们学习起来抓耳挠腮的数据结构课程竟然也有教程&#xff1f;还那么详细&#xff1f;&#xff1f;真的假的&#xff1f; 那么好&#xff0c;胡广告诉你是假的&#xff0c;哈哈哈哈哈哈哈哈哈…

走进上海郭培高定会馆:以冠珠华脉、华珍筑就至臻至性的艺术空间

“我热爱高级时装&#xff0c;因为她是一种生命的停驻。我希望我的高级时装成为馆藏级的精品&#xff0c;殿堂级的珍宝&#xff0c;成为传世杰作。” ——郭培 中国唯一一位法国高定公会受邀会员&#xff0c;曾荣登《TIME》时代周刊全球100位最具影响力人物榜单。纽约时报评价…

opencv学习:通过图像透视进行发票识别完整代码流程

概念&#xff1a; 使用OpenCV库实现图像的透视变换处理&#xff0c;以矫正图像中的透视失真。通过本实验&#xff0c;学习者将掌握图像处理的基本操作&#xff0c;包括图像的读取、显示、大小调整、灰度转换、二值化、轮廓检测、轮廓近似以及透视变换。 步骤&#xff1a; 1. …

vue3 通过 axios + jsonp 实现根据公网 ip, 查询天气信息

前提 安装 axios 的 jsonp 适配器。 pnpm install pingtou/axios-jsonp 简单使用说明&#xff1a;当与后端约定的请求 callback 参数名称不为为 callback 时&#xff0c;可修改。一般无需添加。 1. 获取当前电脑 ip 和城市信息 请求地址&#xff1a; https://whois.pconl…