C杰来给大家讲讲软件破解的原理(1)
本帖最后由 Crack杰 于 2015-10-6 15:59 编辑本文仍然再编辑中,请大家不要购买,等写完了我就取消售价 本篇文章包含大量:刮刮乐,错误,失误,装逼内容!!请谨慎观看!!!
各位认为什么是逆向(Crack)?我们将软件的逆向定为狭义上的逆向,也就是我们常说的软件逆向(Software Cracking)但什么是是软件逆向呢?
维基百科上给出的定义是:Software crackingFrom Wikipedia, the free encyclopediaSoftware cracking is the modification of software to remove or disable features which are considered undesirable by the person cracking the software, usually related to protection methods: (copy protection, protection against the manipulation of software), trial/demo version, serial number, hardware key, date checks, CD check or software annoyances like nag screens and adware.
The distribution and use of cracked copies is illegal in most countries. There have been lawsuits over cracking software. 大概的意思就是:修改(爆破,山寨)或删除软件(push变种)的某些功能。我们可以给软件逆向妄下定义:
通过一种手段来修改程序原来的样子。
那如何做到修改呢?这要从软件的编译来说起:编译便是IDE调用编译器(编译器直接编译)将一个源代码文件编译成为一个二进制运行文件的过程(In the field of computer software, the term build is similar to that of any other field. That is, the construction of something that has an observable and tangible result.Historically, build has often referred either to the process of converting source code files into standalone software artifact(s) that can be run on a computer, or the result of doing so. However, this is not the case with technologies such as Perl, Ruby or Python which are examples of interpreted language. Therefore, it is better to define build management as the facilitation of the build process.)最早的程序员都是这么来编程的:1.打开记事本
2.输入连接性文本
3.101111100000101011
4.保存成EXE
很快大家就发现了这文件的弊端:没人看得懂啊!于是汇编语言就出现了:data segment ;这里定义一个数据段
tab db 'hello world
;这里用内存存放字节数据 'hellow world!',$用来判断字符串是否输出完毕
data ends ;数据段的结束标志
code segment ;这里定义了一个代码段
assume cs:code, ds:data;这里把程序中定义的段与对应的段寄存器关联起来
start: ;这里是一个标号,根据end后面的标号判断这里是程序的开始位置
mov ax,data
mov ds,ax ;这里把数据段的地址放到数据段寄存器ds中
lea dx,tab ;dx中放将要显示数据的偏移地址
mov ah,9h
int 21h ;调用21号中断的9号功能来显示字符串
mov ah,4ch
int 21h ;程序返回
codeends ;代码段的结束语
end start ; 人们为了让编程语言和CPU都能理解,便创造了汇编语言,直到现在,软件最终仍是汇编语言组成的。那么我们回到一开始:编译器成功的将源代码编译成二进制可执行文件,这个过程叫做:编译(汇编)。那逆向要改变程序的功能,按道理要源码,修改后再次编译,但是我们没有源码,于是反编译就产生了。
咱们论坛这编辑咋老出错啊,刚写完的文保存一下就没了,我还是一期写少些,多写几期好了。
前排啊,我的,火钳刘明 还要买主题,也真是醉了 火钳刘明...
我来凑个热闹
希望迅速写完.. 更新速度要快点了啊楼主 分析了半天 一点没看懂 还在编辑吗??? 新手学习中。。。。。 顶一个,大牛