Android inline hook一般基于这个函数,使用ptrace函数attach一个目标进程,注入定制的so库进入目标进程的地址空间,然后用so里边的函数地址替换目标进程地址空间里原有的函数地址,目标进程运行到原有函数地址时,就会进入你的so库中的函数,而你的函数一般需要将当时目标进程现场保存起来(原函数
转载
2024-03-21 10:51:30
106阅读
手潮了,长时间不做逆向水平就会下降。再次记录一次逆向手段。这次争取写的更全面一些。之前的CSGO只是在windows上的一次简单实践,只是完成了glow esp。这次在Mac OS上进行实践。目标:血量、子弹、弹夹数的修改。TODO:透视、auto aim手段:找到血量、子弹等属性的内存地址,通过这些内存地址反向推理player对象或者结构体的base address和属性的offset。知识:内
转载
2024-04-25 16:55:19
197阅读
2017-05-20聚会回来一如既往的看了会羽毛球比赛,然后想到前几天和朋友讨论的逆向映射的问题,还是简要总结下,免得以后再忘记了!可是当我添加时间……这就有点尴尬了……520还在写技术博客…… 闲话不多说,之前一个问题是想要根据物理页框号得到映射的虚拟地址,一时间不知道如何下手了,在群里和一个朋友讨论了一番,记得之前看swap机制的交换缓存时,记载说系统当要换出一个页面时,可以很容易找
cocos2d-x先clonegit clone地址 https://github.com/cocos2d/cocos2d-x.gitlua虚拟机相关代码在cocos2d-x\cocos\scripting\lua-bindings\manual里CCLuaEngine.h 引擎CCLuaStack.h 栈进入虚
转载
2024-07-31 20:42:55
243阅读
题目是新手笔记,大佬别看了.最重要的第一点,一定要懂正向,了解数据结构,脑中构思功能间的调用关系.比如打怪功能.,点击怪物之后触发的功能调用可能如下鼠标点击CALL { ..判断点的什么东西call { ....选中怪物call { ......走路call { ..........攻击call { 技能CALL { ... ... } } } } } } 这是调用关系的构思,同时还要捋
该文章配合参考里面的链接使用哦~一、正文DES对称加密,是一种比较传统的加密方式,其加密运算、解密运算使用的是同样的密钥,信息的发送者和信息的接受者在进行信息的传输和处理时,必须共同持有该密码,称为对称密码,是一种对称加密算法,全称是Des Symmetric Encryption。下面展示一个比较简单的加解密的例子。import java.util.Base64;
import javax.c
转载
2024-01-17 09:50:29
64阅读
前言 上一篇,聊到逆向分析是找偏移,有依据地找,效率会快。这一篇聊下找偏移方法。只说概念,具体的细节,后续会配合实战再展开细说。 找偏移的方法1、内存 逆向的目的,是找功能或者数据在内存的地址。最直接的方法,就是在内存里面搜索。 对于数据:可以直接在内存搜索。 对于功能:如果知道代码的特征码,也可以直接在内存寻找。 (所谓代码的特征码,具体是一串字符串,在内存是唯一
一些公用类: @interface ClassCustomClass :NSObject{
NSString *varTest1;
NSString *varTest2;
NSString *varTest3;
}
@property (nonatomic,assign)NSString *varTest1
lua 中,我们可以用 userdata 保存一个 C 结构。当我们为 lua 写扩展时,C 函数中可以利用 lua_touserdata 将 userdata 转换为一个 C 结构指针。 但是,有时候我们却需要把一个指针转换回 lua 中的 userdata 对象。用到它的最常见的地方是封装 GUI ,通常 GUI 的底层是用 C 编码的。当 engine 把鼠标位置或是别的消息拦
转载
2024-05-09 10:26:06
96阅读
单向散列算法之——MD5算法MD5算法(Message-Digest Algorithm 5)属于单向散列算法的一种。它的功能是将任意长度的消息在经过处理后输出一个128位的信息,从而实现加密,此加密不可逆,即无法通过密文反推出输入的信息。1、算法原理(1)数据填充填充待加密的消息使其长度与448模512同余(即消息长度=448mod512,byte=56mod64)。因此,消息的长度被拓展至N*
转载
2024-03-15 05:34:29
204阅读
C语言的循环结构有for循环、while循环、do循环和goto循环。本文介绍前3种循环方式。1. for循环结构for循环也可以称为步进循环,它的特点是常用于已经明确了循环的范围。看一个简单的C语言代码,具体如下:#include
int main()
{
int nNum=0,nSum=0;
for ( nNum=1; nNum<= 100; nNum ++ )
{
nSum += nN
转载
2024-04-28 19:37:39
73阅读
Modern Binary Exploitation是教授二进制漏洞和逆向工程方面的实战攻击技巧的课程,课程安排结合课程教授和动手实践提供学生探索快速发展的安全领域中常用思路和技巧的机会。这里记录笔者根据课程网站学习的 lecure 1 关于逆向以及其常用工具的知识,以供参考和查阅。 lecure 1:逆向及常用工具 主要思路:(1)静态 + 动态调试结合
转载
2024-05-04 17:10:08
38阅读
最近想要逆向一个Unity游戏,游戏使用的Unity版本是2020.3.17 无奈dnSpy官方仓库提供的版本直到2019.2.1,想要2020的dll只能自己生成,踩了非常多的坑,特地记录一下首先进入dnSpy-Unity-mono官方仓库,然后跟着它的README一步步走。第一步Pull in the latest Unity mono.dll source code (either git
转载
2024-04-15 23:26:23
267阅读
除此以外,还需要:PETools:查看exe基本信息,在GitHub上开源。UPX.exe:exe加壳工具,也可以用来去UPX壳(但连变种的UPX壳都没法去~),在GitHub上开源。JEB:参考h鶸的文章安装即可?
uncompyle6:把pyc转为python。pip install uncompyle6
Linux的file命令可以帮助我们分析一个未知文件的基本信息。 文章目录buu-eas
转载
2024-05-10 13:54:39
67阅读
前言NSA开源的逆向工具Ghidra,使用Java开发,可作为IDA的替补。下面以bugku逆向模块第一题为例,使用Ghidra分析可执行文件。使用过程首先新建项目,并导入这道题的文件baby.exe。下图是导入的文件的摘要: 导入后,要分析的文件已在项目中显示,如下图所示。双击baby.exe,Ghidra将对其分析,然后进入代码浏览器。分析前弹出一个方框,勾选分析选项:在此先将这些选项的含义记
转载
2024-04-24 07:11:43
252阅读
对 Lua 字节码进行加密由于 luajit 不支持 64 位,quick 新的版本默认使用 lua 5.1.5 版本,并提供将 lua 源码打包成通用字节码的工具 luac 。为了增强安全性, quick 提供了一个基本加密方案,使开发者可以对字节码作自定义的加密,防止对字节码的简单反编译工作。此方案配合原有的XXTEA加密方案,已经能够满足普通的加密需要。如果开发者需要更高强度的加密,可以与我
转载
2024-03-08 20:30:48
159阅读
1. usage: cocos luacompile [-h] [-v] [-s SRC_DIR_ARR] [-d DST_DIR] [-e]
2. [-k ENCRYPTKEY] [-b ENCRYPTSIGN] [--disable-compile]
3.
4. 对 lua 文件进行加密和编译为字节码的处理。
5.
6.
转载
2024-04-30 17:05:09
457阅读
加密方式lua 代码加密方式很很多种,这里只讲最简单的一种,就是把代码编译成二进制字节码。lua 是一门脚本语言,不需要经过编译就可以使用 lua 解释器来执行;但我们也可以把 lua 代码事先编译成二进制文件,这样就达到了加密的方式。使用 lua 编译器最简单也最直接的方式就是使用 lua 编译器来编译 lua 代码,编译的方式很简单,打开命令行,输入下面的命令lucac -o dest.lua
转载
2024-02-21 14:54:51
254阅读
如果开发者不想让游戏中的资源或脚本文件轻易的暴露给其他人,一般会采用对文件进行加密的方式来保护文件或资源被盗用。Quick-Cocos2d-x 为开发者提供了xxtea加密算法,用来对脚本文件及资源进行加密,加密对象大体分为如下几种:1. 对脚本/资源文件本身加密2. 将脚本/资源文件压缩成zip,对zip进行加密3. 对脚本/资源文件加密后,再将其压缩后的zip再次加密首先来演示对脚本文件的加密
转载
2024-03-07 13:53:06
355阅读
一、所需工具一台已Root的手机(不建议安卓版本高于8.1,IOS不会)xposed、xposed Install(XAppDebug、Build PropEnhancer、JustTrystMe…)charles(或其他抓包http工具)、Wireshark(socket、tcp、ip、tcp/ip 等)非http请求需要它Android Studio(我使用的是Smail打桩进行动态调试,需要
转载
2024-05-27 12:39:27
172阅读