Symbian塞班软件破解入门教程.docx

上传人:小飞机 文档编号:1665027 上传时间:2022-12-13 格式:DOCX 页数:20 大小:321.74KB
返回 下载 相关 举报
Symbian塞班软件破解入门教程.docx_第1页
第1页 / 共20页
Symbian塞班软件破解入门教程.docx_第2页
第2页 / 共20页
Symbian塞班软件破解入门教程.docx_第3页
第3页 / 共20页
Symbian塞班软件破解入门教程.docx_第4页
第4页 / 共20页
Symbian塞班软件破解入门教程.docx_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《Symbian塞班软件破解入门教程.docx》由会员分享,可在线阅读,更多相关《Symbian塞班软件破解入门教程.docx(20页珍藏版)》请在三一办公上搜索。

1、基础知识Symbain OSSymbian OS(中文译音“塞班系统”)由诺基亚、索尼爱立信、摩托罗拉、西门子等几家大型移动通讯设备商共同出资组建的一个合资公司,专门研发智能手机操作系统,现在已经被诺基亚收购。Symbian OS硬件CPU采用的是ARM系列,使用的是ARM 32位指令而非THUMB。EPCOSymbian操作系统的前身是EPOC,EPOC”这个词起源于世界将会进入“a new epoch of personal convenience”。EPOC是一个开放的操作系统,一开始的时候EPOC就加上了无线通信和一个外加应用程序的体系,因此在无线通信方面与其他操作系统相比具备先天的优

2、势。Symbian S60Nokia S60 系列手机是市面上智能机里流行最广的手机。Symbian Series 60 是Symbian S60 的全称S60可以细化分为第一版、第二版、第三版、第四版、第五版第一版和第二版差别不大,笼统概括为S60 2nd 、S60二版。(包含OS6、OS7、OS8 三个系列)第三版第四版第五版核心是 OS9系列的,笼统概括为S60 3rd 、S60三版2nd And 3rdS60 3rd 和 S60 2nd从操作系统上看有很大的区别:1、三版引入了权限签名这一安全机制,可通过对程序安装包进行签名授权。2、S60 2nd是EPOC6,S60 3rd 是EPO

3、C9,这也意味着其ELF (Executable and Linking Format)是可执行连接格式也发生了改变在 S60 2nd 版本中,可执行体是 EPOC6 格式的 .APP 文件和 .DLL 文件在 S60 3rd 版本中,可执行体是 EPOC9 格式的 .EXE 文件和 .DLL 文件3、三版和二版的程序安装包,格式是不一样的,尽管都是.sis 结尾的文件 EPOC9 格式的可执行文件是可以压缩的,三版签名后的安装包一般是.sisxARM CPUARM 公司是专门从事基于 RISC(reduced instruction set computer,精简指令集计算机) 微处理芯片制

4、造的企业。设计出的产品性能高、成本低和能耗省的特点,适用于多种领域,例如嵌入式系统、DSP、和手机。ARM处理器本身是32位设计,但也配备Thumb 16位指令集准备工作IDA Pro 5.2鬼斧神工逆向分析利器下载地址:IDS files for EPOC6 and EPOC9Symbian EPOC格式标示符文件,配合IDA5.2使用,解压置IDA相关目录即可下载地址:http:/arteam.biz.hr/downloads/Symbian_EPOC6_EPOC9_Unleashed_IDS_Files_for_IDA_Pro_by_argv.rarWinHex强大的磁盘编辑工具,也是非

5、常棒的十六进制编辑器。SisContentsS60 三版程序(Sis,Sisx) 打包、解包、签名工具。CeleASM用于查看ARM OPCODE宇宙杰出青年Yonsm(郭春杨) 之作 主页:WWW.Yonsm.NETSymbian_OS_9.x-ELF_Toolz用于解压和压缩3rd EXE和DLL工具当然我不是宇宙杰出青年,博客还是有的Blog: WwW.CaterQiu.CnRESEdit.exeS60 三版程序RSC资源修改工具,主要用作汉化这四款小工具我的博客有文件打包,详情参阅WwW.CaterQiu.Cn/Article/Symbian_S60_3rd_Reverse_CrAcK

6、iNg_Tutorial_By_CaterQiu.html实战操作Example:DVDPlayer 1.26.SISx (http:/www.viking.tm)Setp 1:Unpack Sis/Sisx FileUse_SisContents_Unpack_S60_3rd_Target_Sis_FileSetp 2:UnComPress ELF FileUse_Symbian_OS_9.x_ELF_Toolz_UnComPress_Target_ELF_FileCompare File Size Between Original(BAK_dvdplayer.exe) And NoComp

7、ress(dvdplayer.exe),You Have Found dvdplayer.exe Was Unpacked.Setp 3:Analysis Program Flow把脱壳后的程序拖入IDA中勾上 堆栈指针和机器码字节数为8.Shift+F12设置下字符串类型,Unicode 要的字符串窗口中 357062008960014类似IMEI的串号,双击过来继续向上回溯字符串被调用的地方回溯到到sub_8A2C注意:MOV R12,SPSTMFD SP!,R4,R5,R7,R11,R12,LR,PC这两句类似Win32程序汇编代码中PUSH EBPMOV EBP,ESPADD ESP,

8、XXX意味着什么呢?意味着这个是子功能函数的函数入口既然这个已经是子函数的入口了我大致猜测刚才显示的那个串号是作者自己用来做的手机串号我估计写入这个串号是为了检测当串号为 357062008960014就不需要启动软件注册功能暂时这么猜测吧按下X按键看看有哪些地方调用还好只有一处返回到这里分析代码详细过程我就不在这里细说了Loc _8280 这里与解密有关的部分,我们进入分析进来后,再进入 sub_9114 分析看看很显然 sub_9114 也是一个子函数这里这号是图形化的,看看整个分支流程CompareF 比较函数再猜测下咯刚才是作者手机串号的代码这里的比较很大何能是判断是不是作者的手机R0

9、寄存器和8x86 EAX寄存器一样常用语函数返回值没查SDK了,和Windows比较函数一样一般返回0 说明两参数比较相等加个注解解释下吧LDRR0, R6,#0x98 ; 相当于MOV R0,R6+0x98MOV R1, R10 ; 相当于MOV R1,R10BL TDesC16:CompareF(TDesC16 const&) ;相当于 Comparf(R0,R1)CMP R0, #0 ; R0为函数的返回值,为0,说明参数 R0和参数 R1 相等MOVEQ R8, #1 ; IF R0=0 Then R8=1STREQ R8, R6,#0x90 ; IF R0=0 Then Storag

10、e R8 To R6+0x90 MemoryBEQ loc_922C ; IF R0=0 Then Call Loc_922C Function很明显要改变程序流程需要patch下代码修改CMP R0,#0变成CMP R0,R0可以一直作用下列的流程自然而然我们的补丁代码也就是这个了Setp 4:Make ARM OPCODEUse_CeleASM_Make_OPCODE生成的OPCODE是 5 00000004 e3500000 CMP R0,#0 6 00000008 e1500000 CMP R0,R0看看 CMP R0,#0 的OPCODE和我们途中的 OPCODE是否相同不难看出5

11、00000004 e3500000 CMP R0,#0是对应Little-Endianl数据存储类型的ARM CPU也就是低位字节排在内存较低地址Patch_OPCODE: 00 00 50 E1 (CMP R0,R0)Setp 5:Patch Data先从IDA中查看需要修改代码对应的文件偏移0x000012AC原来的修改后就这样了最后存盘即可。Setp 6:Compress ELF FileUse_Symbian_OS_9.x_ELF_Toolz_ComPress_Target_ELF_FileSetp 7:Pack S60 3rd File1、把之前破解好,加压缩的dvdplayer.e

12、xe 复制一份到别处2、删除之前解包出来的文件夹D:Symbian_Reverse_ToolzToolzSisContents121DVDPlayer 1.263、再次用SisContents打开原版的.sis文件,点击 Extract Files 图标4、拷贝之前破解好,加压缩的dvdplayer.exe,复制到D:Symbian_Reverse_ToolzToolzSisContents121DVDPlayer 1.26sysbin替换掉解包出来的5、删除原来的签名:回到SisContents中, Tools-Delete Signatures6、File-Save As-另存文件即可。S

13、etp 8:Run Patched .Sis File With Mobile在手机上测试我们修改后的程序,破解成功。说明那个串号是一个作者留下的小路吧,当然如果替换作者原来测试机的串号357062008960014 成自己的串号,那么程序也是一路绿灯通行的。学习小结ARM指令集需要掌握遇到B当CALL指令用即可BL是调用系统函数Bxx是条件调用类似条件跳转Jxx指令R0-R3可以用作参数传递R0和Win32汇编中EAX作用一样常用语存放函数返回值解密思路和Windows上的解密思路是一样的可以通过字符串来定位关键代码,也可以通过相关API找关键代码Symbian解密注意事项解包后记得先解压EXE或者DLL文件修改后的EXE、DLL程序不可以直接替换到手机中使用,需要做成安装包打包前一定要给EXE、DLL压缩下打包时要注意签名,最好先删除所有的签名WwW.CaterQiu.Cn/Article/Symbian_S60_3rd_Reverse_CrAcKiNg_Tutorial_By_CaterQiu.htmlSymbian S60 3rd Reverse CrAcKiNg_TutorialBy CaterQiuBlog Mail Cater.QiuG2009-5-1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号