Lua游戏逆向及破解方法介绍 背景介绍随着手游的发展,越来越多的Cocos-lua端游开发者转移到手游平台。Lua脚本编写逻辑的手游也是越来越多,如梦幻西游、刀塔传奇、开心消消乐、游龙英雄、奇迹暖暖、疾风猎人、万万没想到等手游。随着Lua手游的增加,其安全性更值得关注,在此归纳一些常用的分析方法,同时介绍一些辅助工具。识别Lua游戏Android平台的apk包可以直接解压,找到./lib
转载 2024-01-14 19:57:14
177阅读
apktool 解包,jdgui查看jar发现代码非常少。查看代码发现它动态加载了一个he.jar。这个jar实际上是一个dex文件。这个dex文件用dex2jar反编译后发现里面代码仍然非常的少。重新打包后打manifest.xml里面设置成debug标志为true。  重新打包后发现一直出现签名校验错误。提示到官网下载apk。于是采用ida调试so文件。最重要的so文件是libhegame.s
转载 2024-03-12 09:38:36
706阅读
概述今天群里有人传了个apk文件,名字叫送给最好的TA。这是一个整人app,安装并打开会播放一段音频,并循环调节媒体音量,维持最大值。从后台划掉/卸载/关机都可以停止该程序。网传所谓的截图、获取设备信息并上传等行为均不存在。反编译后看到的截图相关代码实际上并没有被调用,只是打包apk时封装进去的类,关键逻辑位于main.lua中。apk分析拿到样本之后,别急着安装运行,先看看它的目录结构。 打开a
转载 2024-03-15 15:33:09
1172阅读
主要用到的工具和环境: 1 win7系统一枚 2 quick-cocos2d-x的开发环境(弄一个开发环境方便学习,而且大部分lua手游都是用的cocos2d-x框架,还有一个好处,可以查看源码关键函数中的特征字符串,然后在IDA定位到关键函数,非常方便) 3 IDA6.8(分析so文件+动态调试so) 4 vs2015(编写解密代码)这里建议用vs2013来编译运行cocos2d-x,vs201
转载 2024-06-27 18:12:17
2510阅读
背景   在很多时候我们代码中的一些逻辑操作并不能够硬编码到代码中,我们可能希望通过配置来完成这个操作,所以这个时候我们就需要有一些脚本语言能够处理这些操作,在C#语言中比较常见的就是通过引入NLua这个动态库来引入lua脚本语言从而达到灵活配置的目的,这篇文章主要是通过具体的实例来说明在C#中如何通过引入NLua并调用配置的脚本。步骤1 引入NLua.dll   这个dll是一个很轻量级的库,1
转载 2024-04-08 16:08:37
176阅读
lua基础Lua是什么Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 Lua 可以很方便的和其他程序进行集成(c++,c#,java等)Lua应用场景游戏开发 独立应用脚本 Web 应用脚本 扩展和数据库插件如:MySQL Proxy 和 MySQL WorkBench 安全系统,如入侵检测系统Lua
      非常多使用cocos2dx+lua做游戏的同学,都会想到一个问题,我的游戏一旦公布,如何才干保证的我脚本代码不被破解,不泄露代码。尽管这和开源、共享的原则不合,可是代码也是coder的劳动成果,理应得到保护。特别是商业游戏更是如此,不希望被别人破解掉源代码而且进行改动。      今天的话题就是怎样实现lua脚本文件的加密和解
转载 2024-03-17 16:12:27
134阅读
录制脚本设备设置功能脚本录制以录制设备中设置菜单功能为例,详细的介绍一下录制设备脚本的过程。● 创建脚本根据前面的【项目与脚本操作】一节所述方法创建一个名为test.bsh的脚本(脚本名可任取),双击脚本打开。● 录制脚本点击菜单【设备】→【云设备】,或者是直接点击工具栏上的录制按钮,弹出咨询窗口。您可以通过筛选状态和品牌来选择想要测试的设备,设备的状态分为三种:空闲、维护和占用中,您
本博主不擅于进行文字创作,所以,相当一部分文字皆复制于其他博文。还希望能够得到谅解。 一、Lua语言简介         Lua是一个免费的开源软件,可以免费用于科研及商业。Lua具有一个专家团队在维护和升级,其设计旨在项目中扩展功能,因此其内核小而稳定。在游戏开发中,Lua在用户界面、游戏数据管理、实时游戏事件管理、游戏人工智能、创建功
转载 2023-08-26 23:45:12
414阅读
Lua是一种轻量级脚本语言,它是用C语言编写的,跟数据的存储过程有点类似。使用Lua脚本来执行Redis命令的好处: 1、 一次发送多个命令,减少网络开销。 2、 Redis会将整个脚本作为一个整体执行,不会被其他请求打断,保持原子性。 3、 对于复杂的组合命令,我们可以放在文件中,可以实现命令复用。在Redis中调用Lua脚本使用eval方法,语法格式: redis> eval lua-s
转载 2024-04-18 10:56:20
55阅读
样本样本来自悬赏问答区 下载了一个鼠标宏文件,但是显示time is out 怎么办,改系统时间没用,34# 层 也有一个样本,62# 层 还有另外一个样本。附件中的 xml 中内嵌了 lua 脚本脚本中只把必要的数值留出来了,其他部分都加密了,加密的代码中有时间限制。解密方法下载 Lua 执行器首先到官网下载一个 Lua 的执行器,解压出来。http://www.
转载 2月前
0阅读
项目要求对lua脚本进行加密,查了一下相关的资料 ,得知lua本身可以使用luac将脚本编译为字节码(bytecode)从而实现加密,试了一下,确实可行。下面是使用原生的lua解释器编译字节码:1、新建一个名为1.lua的文件,里面只有一句话print("Hello Lua"),新建一个空的out.lua脚本文件2、开始--运行--cmd3、luac -o out.lua 1.lua注:&nbsp
转载 2024-02-20 13:25:21
2541阅读
SuperScript是C#脚本引擎,它为您的WinForms和WPF应用程序带来了高效的代码编辑功能。它提供了代码编辑功能,如语法高亮显示、智能代码提示和代码完成、语法错误,它支持类库引用,编译及导出等等,使用它好比您在Visual Studio中编码一样,速度和便利性相媲美。使用它,可以极大的发挥您的应用程序扩展和开放性,使得您的程序在发布后,也可支持用户自定义编辑和运行脚本。下载地址:htt
转载 2024-04-11 19:16:02
104阅读
ToLua SimpleFramework NGUI/UGUI基础知识[1] 这个基础帖子比较难写,不是因为多么难,而是因为大家的水平参差不齐,基础线难以恒定。有的人已经是Unity大牛,看下框架的使用方式即可,有的人用U3D一两年了,它不需要知道怎么生成包,而有的是第一天才开始学U3D,甚至连Unity导入插件包不能有中文路径都不知道。 我们不可能从头教你怎么去学Unity,
# 如何在Android开发中运行Lua脚本 在Android应用开发中,Lua是一种轻量级、高效的脚本语言,常用于游戏开发和嵌入式系统。本文将带你逐步实现“在Android应用中运行Lua脚本”,并提供详细的代码示例和解释。 ## 流程概述 下面是实现这一目标的基本步骤: | 步骤 | 描述 | |------|--------------
原创 7月前
546阅读
    最近接手一个移动端应用,要为其android版本扩展支持调用lua脚本解析,而且最好同时能支持luasocket。如果只是希望在android下支持lua标准库的使用,那么androLua这个开源项目就可以解决这个问题。然而在为其扩展支持三方库,如luasocket时,遇到了一些问题,经过一翻折腾,最终解决了这个问题,把折腾的过程记录下来,方便有其他相同需求的
转载 2023-06-30 16:32:55
1549阅读
        今天来了解下Redis的脚本,Redis是使用 Lua 解释器来执行脚本。Redis是从2.6.0版本开始使用内置的 Lua 解释器,执行脚本的常用命令为 EVAL。        接下来,就先说下Redis脚本相关的几个命令。1、EVAL script numk
转载 2024-04-10 10:51:13
250阅读
在android 上运行lua脚本,但是想用lua脚本的方式去实现自动按键的效果的话就得拓展lua关键字;我是直接在 AndroLua的基础上拓展的。很多人说为什么不用adb,adb只能实现简单的指令,不能实现取色找图效果,因此要实现高级指令的话,必须用C/C++实现,直接操作底层的设备驱动文件,而且adb指令也不能做到远程下发实现集控效果,因此要想自己的项目在移动端自动化里面起点站的更高一点的话
  这种加密方式简单实用是唯一不可破解的安全加密,下面看看它为什么能做到这一点。  大家都知道一次方程里面要是有两个未知数是无法求解的。无法求得确切的解,也就是无解。“一次一密”加密方式与此类似,它用一个密钥加密一个明文,也就是        加密    明文(运算)密钥=密文    (一)        解密    密文(逆运算)密钥=明文   (二)  在(一)式里只知道密文是不能求解密钥或明
转载 2024-02-29 18:50:26
51阅读
#include <map> using namespace std; /***********************************************************************************************************************************************************
  • 1
  • 2
  • 3
  • 4
  • 5