前言

以前搞过这游戏。自从某版本的签名验证加强之后基本很难搞了。今天看了下,
lua采用加密方式 EVP_aes_128_cbc()+gzip压缩,用openssl-android的静态库,
(导出函数全没了)不过不影响分析。

正文

关键库libhegame.so。IDA载入。查看j_j_AAssetManager_open 交叉引用

上述代码assets目录下读取文件到内存。并返回内存指针
接着向上层层追踪,最终来到这方法。

f5查看伪代码,分析


查看方法sub_6EE84:

经过整理关键代码:

void aesDecrypt(unsigned char* data,const char*path)
{unsigned char keyData[16] = { 0xE9, 0x74, 0x7D, 0x92, 0xCC, 0x32, 0x2E, 0x7D, 0x11, 0x2E, 0x7C, 0x34, 0x51, 0xD7, 0xB3, 0x6A };EVP_CIPHER_CTX ctx;const   EVP_CIPHER *cipher;cipher = EVP_aes_128_cbc();unsigned char iv[EVP_MAX_IV_LENGTH];memcpy_s(iv, 16, data, 16);EVP_CIPHER_CTX_init(&ctx);int ret = EVP_DecryptInit_ex(&ctx, cipher, nullptr, keyData, iv);assert(ret == 1);unsigned char* result = new unsigned char[datasize - 16];memset(result, 0, datasize);int len1 = 0;ret = EVP_EncryptUpdate(&ctx, result, &len1, (data + 16), datasize - 16);assert(ret == 1);int len2 = 0;if (datasize % 16 != 0){int isSuccess = EVP_DecryptFinal_ex(&ctx, result + len1, &len2);if (!isSuccess){printf("EVP_DecryptFinal_ex() failed\n");EVP_CIPHER_CTX_cleanup(&ctx);}result += len1;assert(ret == 1);return;}Byte* undata = new Byte[BUF_SIZE];uLong nodata = BUF_SIZE;zdecompress(result, datasize - 16, undata, &nodata);remove(path);FILE* file = fopen(path, "wb");fwrite(undata, nodata, 1, file);fclose(file);delete[] undata;delete[] data;printf("解密成功:%s\n",path);return;
}

测试结果:

结束语

由于采用aes对称加密算法,加密解密密匙一样的,修改完加密回去应该没问题,需要注意的是是否存在lua文件校检。

转载于:https://www.cnblogs.com/xiaobaiyey/p/5940557.html

某热门单击手游lua解密.md相关推荐

  1. 浅析android手游lua脚本的加密与解密

    2018.05.02更新 这段时间在翻备份的硬盘,突然发现了以前的分析项目和代码,从里面提取了之前附件的内容,现在上传给大家,真是柳暗花明又一村啊.附件包括201703版本的梦幻手游里面提取的so文件 ...

  2. 血族手游Lua脚本及资源文件解密

    之前一直和朋友在玩手游血族.有一天朋友问我能不能把里面某个角色的立绘拿下来.当时没多想就答应了,以为只要解压找到图片就行了.但是万万没想到,图片竟然打不开(被加密了). 快速分析 下载最新的血族apk ...

  3. 浅析android手游lua脚本的加密与解密(番外篇之反编译的对抗)

    前言   去年在看雪论坛写了一篇<浅析android手游lua脚本的加密与解密>的精华文章,今年写一篇番外篇,将一些lua反编译对抗的内容整合一起,并以3个实例作为说明(包括2018腾讯游 ...

  4. 热门传奇手游下载地址

    复古传奇多版本(1.76/1.80/1.85)客户端 https://44050.youxin75.com/qudao.php?s=/home/down/down_file333/f/WzE1Nywx ...

  5. 【放置江湖】弱联网手游,网络协议分析修改。每天签到可获得35元宝

    [放置江湖]弱联网手游,网络协议分析修改教程. 每天签到可获得35元宝,开启方法,WLAN ->已连接的wifi (>)小图标 -> 代{过}{滤}理 ->代{过}{滤}理自动 ...

  6. 懒人精灵手游内存技术分析

    第一部分:内存基础篇(0基础内存小白入门,针对没接触过过内存的懒人脚本学习者) 1.1.内存计量单位.数据类型 1.2有符号和无符号整数转换 ------ 第二部分:手游网游实战启航篇 内存数据+懒人 ...

  7. 情怀java手机网游_经典端游移植手游 “情怀”赋予老IP全新活力

    原标题:经典端游移植手游 "情怀"赋予老IP全新活力 腾讯旗下<天涯明月刀>手游在近日开始了封测,这款经典的国产网游也正式加入了手游的大家庭中,事实上很多知名的网络游戏 ...

  8. 关服了的手游怎么进去_如果手游彻底停服了的话,我的二次元“老婆”们怎么办?...

    4月4日,国务院发令全国进入哀悼日,所有的娱乐活动停止一天,全民进入了悼念在这次瘟疫中遇难的同胞:国内的企业也响应了号召,将在4月4号这一天暂停各种游戏业务.娱乐活动的服务提供: 于是我们阿宅也会在这 ...

  9. 4月手游行业买量市场洞察:网易新游《第五人格》强势抢量

    App Growing以2018年4月1日-4月30日期间所追踪到的iOS手游广告投放数据为依据,发布4月手游行业买量市场洞察. 一.整体手游买量市场概览 1)iOS端 APP买量市场中,71.3%的 ...

  10. 游戏系列教程之让手游场景3转2制作技巧解析

    要问最近什么平台的游戏最热门,手游当仁不让 .而卡通风格的手游,更是人见人爱,花见花开!细数近年大受欢迎的卡通风格手游,会发现如<部落战争>.< 植物大战僵尸 2>的游戏画面把 ...

最新文章

  1. 华为公有云架构解决方案
  2. 5.fork和vfork
  3. 【数据竞赛】2020年11月国内大数据竞赛信息-奖池5000万
  4. java 判断一个数是正整数_【Java】P1075 质因数分解—关于数学方法在解题中的运用—(OJ:洛谷)...
  5. nssl1186-字串数量【前缀和】
  6. 从微软一站式代码库中学到的--跨域之间的session共享
  7. python多继承_Python多继承,__init__
  8. 20190917:(leetcode习题)将有序数组转换为二叉搜索树
  9. 3.手动搭建Maven项目
  10. R语言安装ccgarch_R语言ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测
  11. java获取本机外网ip
  12. 图片质量与ISO 光圈 快门 测光 曝光与曝光补偿 焦距和焦距转换系数 景深与光圈优先 白平衡与RAW
  13. Linux中的bin文件夹
  14. 第120章 SQL函数 ROUND
  15. unity游戏模型获取- AssertStudio(原GuiStudio)(以第二银河为例)
  16. qiankun前端微服务框架-同一服务器同一端口
  17. html文字旋转以后变形,CSS3中的变形处理——transform功能(旋转、缩放、倾斜、移动)...
  18. 角频率Ω和数字频率w的物理含义
  19. 2019年大学生智能车大赛室外光电组+在ROS下搭建仿真模拟环境,编程控制小车完成定位导航仿真
  20. 分享一段工具型代码:印章抠图

热门文章

  1. 如何利用insightface同时计算多个人脸相似度
  2. 实战制作U盘工具去除XP系统管理员密码
  3. 111-GAMP处理流程
  4. Volatility3 windows插件详解
  5. 【从零开始学架构-李运华】05|复杂度来源:高可用
  6. tcp 三次握手和四次断连深入分析:连接状态和socket API的关系----BAT 李运华
  7. 无标度网络(scale-free network)
  8. 随机网络与无标度网络详解
  9. 对话机器人技术简介:问答系统、对话系统与聊天机器人
  10. Aspose.PDF使用教程:使用 C# 创建多列 PDF 文档