破解入门 如何编辑一个Linux 64位软件注册机
发布时间:2022-05-13 08:53:19 所属栏目:安全 来源:互联网
导读:本文仅供安全学习与教学用途,禁止任何非法利用 相信大家对注册机这词一定不陌生,由于一些软件涉及版权问题,要完全使用的话需要注册,或者有试用期限限制,或者只有注册之后才可以享受全功能。目前大部分有关于破解的资料都是基于X86架构的,而对于X64架构
本文仅供安全学习与教学用途,禁止任何非法利用 相信大家对注册机这词一定不陌生,由于一些软件涉及版权问题,要完全使用的话需要注册,或者有试用期限限制,或者只有注册之后才可以享受全功能。目前大部分有关于破解的资料都是基于X86架构的,而对于X64架构的破解资料却是比较少。 在本文中,我将向大家展示如何在Liunx机器上编写一个Linux 64位应用的注册机。 复制 ~/Desktop $ nm r5 0000000000601109 B __bss_start 00000000006010e0 D buf 000000000040069d T check_password 0000000000601109 b completed.6972 0000000000601060 D __data_start 0000000000601060 W data_start 00000000006010a0 D delta 00000000004005e0 t deregister_tm_clones 0000000000400650 t __do_global_dtors_aux 0000000000600e18 t __do_global_dtors_aux_fini_array_entry 0000000000601068 D __dso_handle 0000000000600e28 d _DYNAMIC 0000000000601109 D _edata 0000000000601110 B _end 0000000000400894 T _fini 0000000000400670 t frame_dummy 0000000000600e10 t __frame_dummy_init_array_entry 0000000000400a80 r __FRAME_END__ 0000000000601000 d _GLOBAL_OFFSET_TABLE_ w __gmon_start__ 0000000000400500 T _init 0000000000600e18 t __init_array_end 0000000000600e10 t __init_array_start 00000000004008a0 R _IO_stdin_used w _ITM_deregisterTMCloneTable 64位程序集基础 相对于X86架构,X64架构增加了扩展寄存器设置和一些额外的指令。 以下为X64增加的寄存器列表 复制 r8, r9 , r10, r11, r12, r13, r14, r15 1. 可以通过r8d访问r8寄存器中的低32位,通过r8w访问r8寄存器中的低16位,通过rb8访问r8寄存器中的低8位。 这样更多的RIP(指令指针)就可以直接进行访问了。 X64架构中所有的寄存器都是64位的,RIP同样也是64位,但是目前的实现方法仅是支持48位线性地址(线性地址:逻辑地址到物理地址变换之间的中间层) 除了普通的寄存器它还增加了SSE寄存器,命名为xmm8~xmm15。 如果在EAX寄存器上进行数据移动操作,他将从0一直连续到RAX寄存器的高32位。 为了达到调试程序的目的,我们将使用EDB debugger,这个调试程序类似于Windows平台下的ollydbg,上手十分容易,下面就是默认的EDB窗口。 (编辑:宁德站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐