皮皮网

【php源码本地安装】【老司机聚合源码】【html源码获取软件】安卓软件源码剖析_安卓软件源码剖析图

时间:2024-11-23 07:57:29 分类:探索 来源:唯思棋牌源码

1.逆向入门cocos2d游戏逆向分析
2.安卓开发需要学习什么

安卓软件源码剖析_安卓软件源码剖析图

逆向入门cocos2d游戏逆向分析

       深入剖析cocos2d-x游戏逆向分析

       cocos2d-x是安卓安卓一个开源的移动2D游戏框架,它底层支持各种平台,软件软件核心用c++封装了各种库,源码源码外部则提供了lua和c++接口。剖析剖析关键代码可能隐藏在lua脚本中,安卓安卓许多安卓游戏的软件软件php源码本地安装逻辑也主要在lua脚本里运行。通过官网示意图了解从c++进入lua世界的源码源码路径。

       探索cocos2d-x的剖析剖析lua虚拟机相关代码,包括CCLuaEngine.h和CCLuaStack.h。安卓安卓在应用结束加载中进入lua虚拟机,软件软件具体由applicationDidFinishLaunching函数调用engine->executeScriptFile("main.lua")实现。源码源码

       在luaLoadBuffer函数中,剖析剖析使用xxtea_decrypt解密了lua脚本,安卓安卓并通过luaL_loadbuffer加载解密后的软件软件老司机聚合源码脚本内容。因此,源码源码通过hook这个函数,可以将(char*)content字符dump出来,获取解密后的lua脚本。

       然而,luaL_loadbuffer的源码无法直接获取,它位于编译过的库cocos2d-x\external\lua\luajit\prebuilt\android\armeabi-v7a\libluajit.a中。要找到实现细节,需要下载luajit源代码进行深入分析。

       总结关键点:

       1. 从c++进入lua世界的调用逻辑。

       2. 使用xxtea加密算法,sign和key为XXTEA和2dxlua。

       3. 无论是html源码获取软件否加密,都会调用luaL_loadbuffer函数,通过hook这个函数获取解密后的lua脚本,但需运行游戏一次。

       4. cocos2d-x\external\xxtea\xxtea.cpp中有加密解密算法,逻辑清晰,可使用python脚本本地解密或hook获取key、sign或解密后脚本。

       实战案例:

       以某捕鱼游戏为例,下载apk后内部集成十余款小游戏。通过分析游戏源码,找到luac加密文件,解密key和sign。使用ida打开libqpry_lua.so,搜搜iapp源码定位到AppDelegate::applicationDidFinishLaunching函数,找到加密调用。对比源码,解密后可直接运行游戏。

       深入lua脚本分析,如子弹击中鱼的逻辑,直接查找src\views\layer\BulletLayer.luac文件。通过修改相关函数参数,实现特定功能。其他功能逻辑获取源码后易于理解,修改代码后重新加密,实现游戏破解。

       思考如何实现cocos2d-x反逆向,提取整个网站源码从浅至深可采用以下方法:

       1. 修改xxtea的key和sign,需分析so文件。

       2. 直接修改xxtea算法,增加逆向难度。

       3. 更改luajit源码,调整字节码指令顺序或数据读取顺序。

       4. 将关键代码封装到其他cpp或so文件,增加解密步骤。

       5. 使用ollvm混淆代码,需分析混淆或vm。

安卓开发需要学习什么

       学习分三个阶段:

       1,Android基础阶段:平台架构特性(JAVA/C) Market/应用程序组件 环境搭建与部署/打包与发布 AVD/DDMS/AAPT 调试与测试 相关资源访问/资源制作 Activity/Service/Broadcast Receiver/Content Provider/原理(生命周期)及深层实现

       2,Android进阶初级:组件Widget/ 菜单Menu/ 布局Layout 详解 Xml解析(Pull/Dom/Sax)/JNI 解析SQL数据库原理,。

       SQLite /SharedPreferences/File详解 多媒体Audio/Video/Camera 详解

       3,Android进阶高级:蓝牙/WIFI SMS/MMS 应用实现 深层次解析GPS原理。

       实现LocationManager/LocationProvider 进行定位/跟踪/查找/趋近警告以及Geocoder正逆向编解码等技术细节 2D图形库(Graphics/View)详解 SDCARD/传感器/手势 应用实现 

扩展资料:

       知识体系

       1、Unix/Linux平台技术:基本命令,Linux下的开发环境

       2、企业级数据库技术:SQL语言、SQL语句调优、Oracle数据库技术

       3、Java 语言核心技术:Java语言基础、Java面向对象编程、JDK核心API、Java集合框架、Java网络编 程、JavaI/O编程、Java多线程编程、Java异常机制、Java安全、JDBC、XML

       4、软件工程和设计模式:软件工程概述、配置管理及SVN、UML、基本设计模式

       5、Android应用开发基础:Android开发平台、Eclipse+ADT开发环境、AVD及传感模拟器调试、Android核心组件、Android常用组件、Android高级组件、文件及网络访问、SQLite数据库编程、后台服务编程

       6、互联网核心技术: HTML、CSS、JavaScript、JQuery、Ajax应用

       7、Android高级应用开发:音频\视频\摄像头、互联网应用、GPS和位置服务、Google Map、2D\3D绘制、传感器开发、游戏开发、电话及SMS服务、网络\Bluetooth\Wi-Fi等。

       8、Android系统级开发:移植、驱动、NDK(C方向)。

       9、JavaEE核心技术:Servlet核心技术、JSP核心技术、Struts、Spring、Hibernate框架。

参考资料:

百度百科---android开发

       

copyright © 2016 powered by 皮皮网   sitemap