当前位置:文档之家› 一个简单的.NET程序的脱壳以及破解

一个简单的.NET程序的脱壳以及破解

一个简单的.NET程序的脱壳以及破解
一个简单的.NET程序的脱壳以及破解

一个简单的.NET程序的脱壳以及破解

前几天有朋友问.NET程序的破解,又鉴于论坛里关于.NET脱壳和破解的文章也不多,于是抽空写一个。由于本人也很少接触.NET的程序,因此文章没什么技术含量,用到的技术也是在网上很早就公开的东西。有什么错误还请多多指教。

本文的目标文件是一个非常简单的CrackMe.

本CrackMe的任务有4个:

1.脱壳

2.去NAG

3.去灰色按钮

4.破解

OK,一个一个来完成任务吧。

一、脱壳

查壳发现为:

按照经验,此程序应该是用.NET Reactor加的壳

下面来脱壳吧

根据前人经验,此壳其实只是在简单的混淆,在运行的同时,在内存中会释放原程序的镜像根据这一特点,我们下断点:BP WriteProcessMemory,然后F9运行,中断下来

中断下来看堆栈

写入的地址为:17B1050

在数据窗口查看,然后拉到最顶端

可以发现,PE头在017B0000

于是可以dump此地址的镜像。

当然,此时dump下来的程序不行,因为还有好多内容没写入。于是,不断SHIFT+F9,直到程序运行。

这时候就可以dump了.

用LordPE,区域转存017B0000这个区段,保存为dumped.exe就OK了.

不过,此时dump后,程序是无法运行的。

我们还得再用CFF修正几个量

(1).选Nt Headers,再File Header,然后选Characteristics,再点旁边的Click here,在出现的对话框中,去掉“File is a DLL”就OK了。

(2)修正MetaData RV A和MetaData Size的值

MetaData RV A值的获得可以用2种方法

第一种:原程序中,下完BP WriteProcessMemory,F9运行,第一次中断的时候就dump这个区段,此时的MetaData RV A是正确的。

在CFF中,选.NET Directory,看MetaData RV A的值,并记录:

记录这个值为A400,然后在dumped.exe中同样修正这个值为A400

第二种:参考老K的文章

CFF中,选Address Converter,然后搜索字符“BSJB”

接着就换算成RV A的值:

换算结果同样为A400

下面接着来计算MetaData Size的值

选Optional Header,接着点Data Directories [x],然后看Import Directory RV A 的值

记下值为BD4C

所以,

MetaData Size=BD4C-A400=194C

故把MetaData Size的值修正为194C

脱壳就到此结束了,再用PEiD查下,已经无壳了

另外一种抓取镜像文件的方法如下(参考老K文章):

首先运行下原程序,继续下标题为:Sample Crackme

OD载入程序,接着F9运行程序,然后ALT+M打开内存镜像,CTRL+B,在搜索UNICODE

字符串“Sample Crackme”

大约搜索2次后,就来到下面的地方:

拉到最上端

然后就选备份,保存数据文件,扩展名改为.exe就行

后续的操作同上

二、去NAG

运行程序可以发现,此程序有个讨厌的NAG,并且作者也要求我们去掉

分析.NET程序常用的工具为:ildasm2.0,Reflector,xenocode fox

我这里就用xenocode fox这个了,因为这个工具可以查看地址

当然,默认的选项可能没显示地址,我们可以自己手动改下设置

在设置中,选DeCompiler这个选项卡,然后勾上“Show method body address”前面的勾就OK了

在语言(Language)选项中,我们先为了分析方便,可以选C#语言,当然你也可以选其他的

OK,下面就找关键地方吧,这个没什么好说的,靠自己去寻找。

很明显了吧,这个地方就是显示NAG窗口的代码。

下面就修改这个代码吧,思路就是,在此代码段的头,直接ret,这样,就可以避免产生NAG 窗口了。

为了看机器码和偏移地址,我们把语言改为中间语言IL Assembly

代码如下:

method private hidebysig instance void uuNkODx(object, [mscorlib]System.EventArgs) cil managed

{

// Method Body Address: 0x00001524

// Code Size: 14 byte(s)

.maxstack 1

.locals init (

SampleCrackme.frmNag nag1)

L_0000: newobj instance void SampleCrackme.frmNag::.ctor()

L_0005: stloc.0

L_0006: ldloc.0

L_0007: callvirt instance [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog()

L_000c: pop

L_000d: ret

}

可以发现,ret的机器码为0x 2A,而开头代码段的机器码为0x 73,偏移地址为0x00001524

接着就用16进制编辑工具打开脱壳后的程序,定位到0x00001524,把起始代码0x 73修改为0x 2A

修改后保存一下,就去掉NAG了

三、去灰色按纽

原程序这个Check按纽是灰色,而用一般的灰色按纽精灵又去不掉,因为,我们就自己手动来去吧。

同样用xenocode fox来进行分析

private void uQZDKK ()

{

// Method Body Address: 0x00001628

uuNkODx = new Container();

uvUSBXHuS = new Label();

ubGakVp2Mu = new Label();

uJUoPB0V4HyITVABlwk = new TextBox();

uQZDKK = new TextBox();

uSIEDr = new Button();

ulcmJh = new Button();

usL7yU = new Button();

u2lcYy2h = new ToolTip(uuNkODx);

base.SuspendLayout();

uvUSBXHuS.AutoSize = true;

uvUSBXHuS.Location = new Point(9, 11);

https://www.doczj.com/doc/1a12231993.html, = "label1";

uvUSBXHuS.Size = new Size(0x23, 13);

uvUSBXHuS.TabIndex = 0;

uvUSBXHuS.Text = "Name";

ubGakVp2Mu.AutoSize = true;

ubGakVp2Mu.Location = new Point(9, 0x28);

https://www.doczj.com/doc/1a12231993.html, = "label2";

ubGakVp2Mu.Size = new Size(0x21, 13);

ubGakVp2Mu.TabIndex = 1;

ubGakVp2Mu.Text = "Serial";

uJUoPB0V4HyITVABlwk.Location = new Point(0x35, 9);

https://www.doczj.com/doc/1a12231993.html, = "txtName";

uJUoPB0V4HyITVABlwk.Size = new Size(0xe3, 0x14);

uJUoPB0V4HyITVABlwk.TabIndex = 2;

uJUoPB0V4HyITVABlwk.TextAlign = HorizontalAlignment.Center;

uQZDKK.Location = new Point(0x35, 0x25);

https://www.doczj.com/doc/1a12231993.html, = "txtSerial";

uQZDKK.Size = new Size(0xe3, 0x14);

uQZDKK.TabIndex = 3;

uQZDKK.TextAlign = HorizontalAlignment.Center;

uSIEDr.Enabled = false;

uSIEDr.FlatStyle = FlatStyle.Flat;

uSIEDr.Location = new Point(12, 0x45);

https://www.doczj.com/doc/1a12231993.html, = "btnCheckIt";

uSIEDr.Size = new Size(0x3f, 0x1a);

uSIEDr.TabIndex = 4;

uSIEDr.Text = "&Check It!";

u2lcYy2h.SetToolTip(uSIEDr, "2. Challenge, please enable this button");

https://www.doczj.com/doc/1a12231993.html,eVisualStyleBackColor = true;

uSIEDr.Click += new EventHandler(this.uJUoPB0V4HyITVABlwk);

ulcmJh.DialogResult = DialogResult.Cancel;

ulcmJh.FlatStyle = FlatStyle.Flat;

ulcmJh.Location = new Point(0x72, 0x45);

https://www.doczj.com/doc/1a12231993.html, = "btnExit";

ulcmJh.Size = new Size(0x3f, 0x1a);

ulcmJh.TabIndex = 5;

ulcmJh.Text = "&Exit";

https://www.doczj.com/doc/1a12231993.html,eVisualStyleBackColor = true;

ulcmJh.Click += new EventHandler(this.uvUSBXHuS);

usL7yU.FlatStyle = FlatStyle.Flat;

usL7yU.Location = new Point(0xd8, 0x45);

https://www.doczj.com/doc/1a12231993.html, = "btnAbout";

usL7yU.Size = new Size(0x3f, 0x1a);

usL7yU.TabIndex = 6;

usL7yU.Text = "&About";

https://www.doczj.com/doc/1a12231993.html,eVisualStyleBackColor = true;

usL7yU.Click += new EventHandler(this.ubGakVp2Mu);

base.AcceptButton = uSIEDr;

base.AutoScaleDimensions = new SizeF(6.00F, 13.00F);

base.AutoScaleMode = AutoScaleMode.Font;

base.CancelButton = ulcmJh;

base.ClientSize = new Size(0x124, 0x65);

base.Controls.Add(usL7yU);

base.Controls.Add(ulcmJh);

base.Controls.Add(uSIEDr);

base.Controls.Add(uQZDKK);

base.Controls.Add(uJUoPB0V4HyITVABlwk);

base.Controls.Add(ubGakVp2Mu);

base.Controls.Add(uvUSBXHuS);

base.FormBorderStyle = FormBorderStyle.FixedToolWindow;

base.Icon=

(Icon)newComponentResourceManager(typeof(Form1)).GetObject("$this.Icon");

https://www.doczj.com/doc/1a12231993.html, = "Form1";

base.StartPosition = FormStartPosition.CenterScreen;

Text = "Sample Crackme";

base.Load += new EventHandler(this.uuNkODx);

base.ResumeLayout(false);

base.PerformLayout();

}

仔细分析可以发现这行代码:

uSIEDr.Enabled = false;

很明显,就这行代码把这个按钮的可用属性设置为了假,也就是变成的灰色按钮

下面,我们就把这个“假”修改为真,让这个按纽可用,把语言修改为中间语言,再分析

代码太多,稍微省略点:

// Method Body Address: 0x00001628

L_01e5: ldarg.0

L_01e6: ldfld [System.Windows.Forms]System.Windows.Forms.Button SampleCrackme.Form1::uSIEDr

L_01eb: ldc.i4.0

L_01ec: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) L_01f1: ldarg.0

L_01f2: ldfld [System.Windows.Forms]System.Windows.Forms.Button SampleCrackme.Form1::uSIEDr

L_01f7: ldc.i4.0

L_01f8:

callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_FlatStyle([System.Win dows.Forms]System.Windows.Forms.FlatStyle)

L_01fd: ldarg.0

L_01fe: ldfld [System.Windows.Forms]System.Windows.Forms.Button SampleCrackme.Form1::uSIEDr

L_0203: ldc.i4.s 12

L_0205: ldc.i4.s 69

L_0207: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, int32)

L_020c:

callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location([System.Drawing ]System.Drawing.Point)

L_0211: ldarg.0

L_0212: ldfld [System.Windows.Forms]System.Windows.Forms.Button SampleCrackme.Form1::uSIEDr

L_0217: ldstr "btnCheckIt"

简单分析结果为:

L_01eb: ldc.i4.0 的代码修改为相反的,也就是原来的机器码0x16修改为0x17

现在来计算下偏移地址:

0x1628+0x1eb=0x1813

同样用16进制工具修改:

修改完后保存,看下效果

哈,灰色按钮去掉了。下面就进行最后1个步骤了:破解!

四、破解

继续用那工具分析吧

private void uJUoPB0V4HyITV ABlwk (object , EventArgs )

{

// Method Body Address: 0x00001564

new MD5CryptoServiceProvider();

byte[] inArray = new UTF8Encoding().GetBytes(uJUoPB0V4HyITV ABlwk.Text);

string text1 = Convert.ToBase64String(inArray);

if ((uQZDKK.Text == "") || (uJUoPB0V4HyITVABlwk.Text == ""))

{

MessageBox.Show("Please enter your name and serial", "Reverse Engineering Association");

}

else if (text1 == uQZDKK.Text)

{

MessageBox.Show("Congratulation! You are very good", "Reverse Engineering Association");

}

else

{

MessageBox.Show("No,no try it again", "Reverse Engineering Association");

}

}

汗,源代码几乎都出来了,应该是很明显了吧

算法已经一目了然了吧:

RegCode=base64(RegName)

验证一下:

RegName=ximo

RegCode=eGltbw==

看,注册成功了吧

下面再看下爆破的,分析下中间代码:

省略点代码:

// Method Body Address: 0x00001564

L_0069: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text()

L_006e: call bool string::op_Equality(string, string)

L_0073: brfalse.s L_0086

L_0075: ldstr "Congratulation! You are very good"

L_007a: ldstr "Reverse Engineering Association"

L_007f:

call [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows. Forms.MessageBox::Show(string, string)

L_0084: pop

L_0085: ret

L_0086: ldstr "No,no try it again"

L_008b: ldstr "Reverse Engineering Association"

L_0090:

call [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows. Forms.MessageBox::Show(string, string)

L_0095: pop

L_0096: ret

也是很明显吧

L_0073: brfalse.s L_0086

把此代码的fale改为true就行了,换成机器码就是

0x2C改0x2D

偏移地址为:

0x1564+0x73=0x15D7

保存看效果:

看到没,随便输什么都正确了。

整个CM的分析到此全部结束了。

总结一下:

其实.NET程序的分析也没想象中的那么难,上手也是比较容易的。新手朋友也不要怕.NET 程序,其实.NET程序有点类似VB的P-CODE的分析。不过分析也是需要很大的耐心,并掌握写常用的机器代码。附上张Squm提供的机器码对照表,方便大家:

其实我也是刚刚才接触.NET程序,文章中难免有很多错误,请大家多多包涵,并提出错误的意见,谢谢。

作者:ximo[LCG]

软件破解入门教程

先教大家一些基础知识,学习破解其实是要和程序打交道的,汇编是破解程序的必备知识,但有可能部分朋友都没有学习过汇编语言,所以我就在这里叫大家一些简单实用的破解语句吧! ---------------------------------------------------------------------------------------------------------------- 语句:cmp a,b //cmp是比较的意思!在这里假如a=1,b=2 那么就是a与b比较大小. mov a,b //mov是赋值语句,把b的值赋给a. je/jz //就是相等就到指定位置(也叫跳转). jne/jnz //不相等就到指定位置. jmp //无条件跳转. jl/jb //若小于就跳. ja/jg //若大于就跳. jge //若大于等于就跳. 这里以一款LRC傻瓜编辑器为例,讲解一下软件的初步破解过程。大家只要认真看我的操作一定会!假如还是不明白的话提出难点帮你解决,还不行的话直接找我!有时间给你补节课!呵呵! 目标:LRC傻瓜编辑器杀杀杀~~~~~~~~~ 简介:本软件可以让你听完一首MP3歌曲,便可编辑完成一首LRC歌词。并且本软件自身还带有MP3音乐播放和LRC歌词播放功能,没注册的软件只能使用15天。 工具/原料 我们破解或给软件脱壳最常用的软件就是OD全名叫Ollydbg,界面如图: 它是一个功能很强大的工具,左上角是cpu窗口,分别是地址,机器码,汇编代码,注释;注释添加方便,而且还能即时显示函数的调用结果,返回值. 右上角是寄存器窗口,但不仅仅反映寄存器的状况,还有好多东东;双击即可改变Eflag的值,对于寄存器,指令执行后发生改变的寄存器会用红色突出显示. cpu窗口下面还有一个小窗口,显示当前操作改变的寄存器状态. 左下角是内存窗口.可以ascii或者unicode两种方式显示内存信息. 右下角的是当前堆栈情况,还有注释啊. 步骤/方法 1. 我们要想破解一个软件就是修改它的代码,我们要想在这代码的海洋里找到我们破解关键的代码确实很棘 手,所以我们必须找到一定的线索,一便我们顺藤摸瓜的找到我们想要的东东,现在的关键问题就是什么

新手入门学习——脱壳破解练习第一期

新手入门学习——脱壳破解练习第一期拿到一个软件,先看看是加的什么壳。用PEiD查得【Upack V0.37-V0.39 -> Dwing *】 接着拿出破解第一要物OD进行脱壳(注意选好点的版本,由于Upack壳做了变形,有些版本的OD打开时会出错,最好是用英文版的) OD载入…… 我使用简单一点的ESP定律。 00401018 > BE B0114000 MOV ESI,脱壳破解.004011B0 0040101D AD LODS DWORD PTR DS:[ESI] 0040101E 50 PUSH EAX 0040101F FF76 34 PUSH DWORD PTR DS:[ESI+34] 00401022 EB 7C JMP SHORT 脱壳破解.004010A0 F8前进到【0040101F】,在寄存器窗口ESP处点右键,在数据窗口跟随【0012FFC0】 如下图:

//数据窗口点右键,下硬件断点。shift+F9运行 0012FFC0 004011B8 脱壳破解.004011B8 0012FFC4 7C82F23B 返回到 kernel32.7C82F23B 0012FFC8 00000000 //来到OEP,通过观察可以发现,这是一个典型的VB入口。这里记得要删除硬件断点!004011B8 68 24184000 PUSH 脱壳破解.00401824 //OEP 004011BD E8 EEFFFFFF CALL 脱壳破解.004011B0 004011C2 0000 ADD BYTE PTR DS:[EAX],AL 004011C4 0000 ADD BYTE PTR DS:[EAX],AL 004011C6 0000 ADD BYTE PTR DS:[EAX],AL 004011C8 3000 XOR BYTE PTR DS:[EAX],AL 记录新入口地址【11B8】

一个简单的.NET程序的脱壳以及破解

一个简单的.NET程序的脱壳以及破解 前几天有朋友问.NET程序的破解,又鉴于论坛里关于.NET脱壳和破解的文章也不多,于是抽空写一个。由于本人也很少接触.NET的程序,因此文章没什么技术含量,用到的技术也是在网上很早就公开的东西。有什么错误还请多多指教。 本文的目标文件是一个非常简单的CrackMe. 本CrackMe的任务有4个: 1.脱壳 2.去NAG 3.去灰色按钮 4.破解 OK,一个一个来完成任务吧。 一、脱壳 查壳发现为: 按照经验,此程序应该是用.NET Reactor加的壳 下面来脱壳吧 根据前人经验,此壳其实只是在简单的混淆,在运行的同时,在内存中会释放原程序的镜像根据这一特点,我们下断点:BP WriteProcessMemory,然后F9运行,中断下来 中断下来看堆栈

写入的地址为:17B1050 在数据窗口查看,然后拉到最顶端 可以发现,PE头在017B0000 于是可以dump此地址的镜像。 当然,此时dump下来的程序不行,因为还有好多内容没写入。于是,不断SHIFT+F9,直到程序运行。 这时候就可以dump了. 用LordPE,区域转存017B0000这个区段,保存为dumped.exe就OK了.

不过,此时dump后,程序是无法运行的。 我们还得再用CFF修正几个量 (1).选Nt Headers,再File Header,然后选Characteristics,再点旁边的Click here,在出现的对话框中,去掉“File is a DLL”就OK了。 (2)修正MetaData RV A和MetaData Size的值

OD 新人入门基础教材

OD 新人入门基础教材 OD 是个好工具但很多新哥们不懂用可惜咯 首先我介绍下 OD正个界面: 各个窗口的功能如上图。简单解释一下各个窗口的功能,更详细的内容可以参考 TT 小组翻译的中文帮助: 反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX 数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。用鼠标左键点击注释标签可以切换注释显示的方式。 寄存器窗口:显示当前所选线程的 CPU 寄存器内容。同样点击标签寄存器 (FPU) 可以切换显示寄存器的方式。 信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。 数据窗口:显示内存或文件的内容。右键菜单可用于切换显示方式。 堆栈窗口:显示当前线程的堆栈。

要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下 OllyDBG 就可以生效了。 启动后我们要把插件及 UDD 的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们点击其中的目录标签: 因为我这里是把 OllyDBG 解压在 F:\OllyDBG 目录下,所以相应的 UDD 目录及插件目录按图上配置。还有一个常用到的标签就是上图后面那个字体,在这里你可以更改 OllyDBG 中显示的字体。上图中其它的选项可以保留为默认,若有需要也可以自己修改。修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动 OllyDBG。在这个对话框上点确定,重新启动一下 OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。有人可能知道插件的作用,但对那个 UDD 目录不清楚。我这简单解释一下:这个 UDD 目录的作用是保存你调试的工作。比如你调试一个软件,设置了断点,添加了注释,一次没做完,这时 OllyDBG 就会把你所做的工作保存到这个 UDD 目录,以便你下次调试时可以继续以前的工作。如果不设置这个 UDD 目录,OllyDBG 默认是在其安装目录下保存这些后缀名为 udd 的文件,时间长了就会显的很乱,所以还是建议专门设置一个目录来保存这些文件。 另外一个重要的选项就是调试选项,可通过菜单选项->调试设置来配置:

脱壳基础知识入门

脱壳基础知识入门 现在加解密发展己形成2个分支了,一个就是传统的算法,另一个就是加密壳。越来越多的软件采用了密码学相关算法,现在要做出一个软件注册机己不象前几年那么容易,这就要求解密者必须要有一定的数学功底和密码学知识,而这些在短时间内是不容易掌握的。除了密码学的应用,越来越多的软件加壳了,因此要求解密者必须掌握一些脱壳技术,这就使得壳成了解密必须迈过的一个门槛。壳发展到今天,强度越来越高了,将许多人挡在门外,使得大家望壳兴叹。另外,论坛现在两极分化比较严重,高手讨论的脱壳技术新手看不懂,很多人想学脱壳,但看到壳这么难,只好放弃了,造成新手与高手间一个断档,为了鼓励更多新人加入脱壳的行列,很有必要将壳有关知识总结一下。https://www.doczj.com/doc/1a12231993.html,主页提供的教学确实有点过时了,己到非更新不可了。相对于密码学算法,脱壳并不难,只要肯花时间,短期内还是比较容易取得成绩的。 第一课PE格式 要想学脱壳,第一步就得掌握PE格式,PE是Portable Executable File Format(可移植的执行体)简写,它是目前Windows平台上的主流可执行文件格式。 Microsoft Visual C++提供的WINNT.H里有PE数据结构的完整定义。 推荐文档: ah007翻译的“PE文件格式”1.9版 qduwg翻译的PE文件格式 Iczelion's的PE文件格式 PE结构各字段偏移参考 学习PE格式的方法是自己先准备一个十六进制工具,如HexWorkshop,WinHex,用这些工具打开一个EXE文件对照着学。强烈推荐你用Stud_PE v.2.2.0.5这款工具辅助学习PE格式。PE格式学习的重点是在输入表(Import Table)这块。Stud_PE工具界面: PE结构图: 第二课SEH技术 结构化异常处理(Structured Exception Handling,SEH)是Windows操作系统处理程序错误或异常的技术。SEH是Windows操作系统的一种系统机制,与特定的程序设计语言无关。 外壳程序里大量地使用了SEH,如果不了解SEH,将会使你跟踪十分困难。 SEH in ASM研究(一)by hume SEH in ASM研究(二)by hume Structured Exception Handling 加密与解密二版菜鸟学习笔记(2)-SEH结构化异常处理by ytcswb 由于Ollydbg对SEH处理异常灵活,因此脱壳用Ollydbg会大大提高效率。 附CONTEXT结构环境: 代码: typedef struct_CONTEXT{ /*000*/DWORD ContextFlags; /*004*/DWORD Dr0; /*008*/DWORD Dr1; /*00C*/DWORD Dr2; /*010*/DWORD Dr3; /*014*/DWORD Dr6; /*018*/DWORD Dr7; /*01C*/FLOATING_SAVE_AREA FloatSave; /*08C*/DWORD SegGs; /*090*/DWORD SegFs; /*094*/DWORD SegEs;

第一部分 基础知识及运用 知识点1 语音 教案

第一部分基础知识及运用 知识点1 语音 【教学目标】 1.依据教学大纲,了解《考试说明》对此项考查的要求。 2.通过分析高考试题,寻求规律,掌握考查的重点。 3.加强备考方法的指导,强化基础训练。 【教学方法】 讲练结合,注重积累。 【教学重点难点】 重点:复习方法指导; 强化语音识记。 难点:学习态度; 习惯性误读字和生僻字的识记。 【课时安排】 六课时。其中知识点1语音以及知识点精练的讲解需要二课时;知识清单“容易读错的字”讲解需要二个课时;同步检测语音部分考试及讲解二课时。 【教学过程和步骤】 一、导入 对口高考语文复习方法 (一)分析学生现状 语文基础不是很好;要做好打持久战的准备。 (二)语文复习方法 1.语文复习要注重教材,重点是教材中的字词和应用文写作; 2.语文知识要及时去记、去背;及时扫除知识障碍; 3.语文知识重在积累,重在坚持不懈,持之以恒; 4.多做题目,特别是阅读题,要勤于动笔; 5.提纲挈领,总体把握每一个知识点的内容。 二、讲解新课 (一)本知识点包括以下几方面的内容 考纲解读;知识点精讲(例题解析——高考真题;方法指导);知识点精练。 (二)讲析新课 1.复习定向 所谓“识记”,就是识别和记忆。识记的对象是“现代汉语普通话的字音”。普通话是中华民族的母语,正确“识记现代汉语普通话的字音”,是考生必须具备的能力。 我国自1977年恢复高考以来,语音题一直是高考必考题型。1996年后语音题所考内容及题型开始趋于稳定,要求相当明确,即只考“识记现代汉语普通话的字音”。 2.指导学生阅读“知识点1语音”(复习用书P1——4页) (1)学生看并做高考语音题。 (2)寻找高考总趋向:近年来高考对语音的考查,难度有所降低,据统计,1996年语音题考12字,超出常用字的5个,1997年超出4个,1998年和2001年、2002年全部是常

软件脱壳破解精典实例教程

软件脱壳、破解精典实例教程 我要破解的软件:网络填表终结者破解需要的软件(点击下载): 侦壳language.exe 脱壳AspackDie.exe 反编译W32Dasm黄金中文版 16进制编辑器UltraEdit.rar 在破解之前先复习一下基础知识: 一.破解的等级 初级,修改程序,用ultraedit修改exe文件,称暴力破解,简称爆破 中级,追出软件的注册码 高级,写出注册机 二.用w32dasm破解的一般步骤: 1.看软件的说明书,软件注册与不注册在功能上有什么区别,如何注册 2.运行此软件,试着输入你的姓名和任意注册码去注册,有什麽错误提示信息,将错误提示信息记下来 3.侦测有无加壳(第一课).若加壳,脱壳(第二课) 4.pw32dasmgold反汇编 5.串式参考中找到错误提示信息或可能是正确的提示信息双击鼠标左键 6.pw32dasmgold主窗口中分析相应汇编,找出关键跳转和关键call 7.绿色光条停在关键跳转,在pw32dasmgold主窗口底部找到关键跳转的偏移地址(实际修改地址) 8.用ultraedit找到偏移地址(实际修改地址)修改机器码,保存 壳的概念:版权信息需要保护起来,不想让别人随便改动,exe可执行文件压缩,最常见的加壳软件ASPACK ,UPX,PEcompact 脱壳:拿到一个软件,侦测它的壳,然后我们要把它的壳脱去,还原它的本来面目.若它没有加壳,就省事不用脱壳了.脱壳软件unaspack,caspr,upx,unpecompact,procdump 实际修改地址(偏移地址)和行地址(虚拟地址)pw32dasmgold反汇编出来的代码由三列组成 第一列行地址(虚拟地址) 第二列机器码(最终修改时用ultraedit修改)

教你如何破解exe软件

教你如何破解软件 要破解的软件:网络填表终结者 破解需要的软件(点击下载): 侦壳 language.exe 脱壳AspackDie.exe 反编译 W32Dasm黄金中文版 16进制编辑器 UltraEdit.rar 在破解之前先复习一下基础知识: 一.破解的等级 初级,修改程序,用ultraedit修改exe文件,称暴力破解,简称爆破 中级,追出软件的注册码 高级,写出注册机 二.用w32dasm破解的一般步骤: 1.看软件的说明书,软件注册与不注册在功能上有什么区别,如何注册 2.运行此软件,试着输入你的姓名和任意注册码去注册,有什麽错误提示信息,将错误提示信息记下来 3.侦测有无加壳(第一课).若加壳,脱壳(第二课) 4.pw32dasmgold反汇编 5.串式参考中找到错误提示信息或可能是正确的提示信息双击鼠标左键 6.pw32dasmgold主窗口中分析相应汇编,找出关键跳转和关键call 7.绿色光条停在关键跳转,在pw32dasmgold主窗口底部找到关键跳转的偏移地址(实际修改地址) 8.用ultraedit找到偏移地址(实际修改地址)修改机器码,保存 壳的概念:版权信息需要保护起来,不想让别人随便改动,exe可执行文件压缩,最常见的加壳软件ASPACK ,UPX,PEcompact 脱壳:拿到一个软件,侦测它的壳,然后我们要把它的壳脱去,还原它的本来面目.若它没有加壳,就省事不用脱壳了.脱壳软件unaspack,caspr,upx,unpecompact,procdump 实际修改地址(偏移地址)和行地址(虚拟地址)pw32dasmgold反汇编出来的代码由三列组成 第一列行地址(虚拟地址) 第二列机器码(最终修改时用ultraedit修改) 第三列汇编指令

小学六年级语文基础知识总复习练习(答案)

小学六年级语文基础知识总复习练习(答案)(一)字、词一.改正下列成语中的错别字。 直接了当(截)焕然一新(焕)道貌暗然(岸)既往不究(咎) 别出心栽(裁)礼上往来(尚)难以名壮(状)色厉内茬(荏) 如火如茶(荼)因地治宜(制)推心至腹(置)纷至踏来(沓) 原形必露(毕)谈笑风声(生)委屈求全(曲)金壁辉煌(碧) 二.直写出下面代称的含义 “杏林”指医生“桃李”指学生(指自己所教的学生)“手足”指弟兄 “汗青”指史册“杜康”指美酒“红豆”指相思 三.巧填成语。 1.填叠词。 威风凛凛忠心耿耿风尘仆仆千里迢迢衣冠楚楚大名鼎鼎文质彬彬人才济济 2.填恰当的字。 一贫如洗视死如归对答如流倒背如流巧舌如簧度日如年心急如焚守口如瓶胆小如鼠心细如尘 3.填上表示动物名称的字,组成成语。 亡(羊)补牢飞(蛾)扑火(牛)刀小试童颜(鹤)发 金(蝉)脱壳门可罗(雀)(马)到成功浑水摸(鱼) 4.填上与人体有关的字,组成成语。 尖(嘴)猴(腮)(皮)开(肉)绽(唇)枪(舌)剑劈(头)盖(脸) (肝)(胆)相照扬(眉)吐气(趾)高气扬千钧一(发) 5.填颜色,组成语。 (银)装素裹(绿)树成荫万古长(青)(紫)气东来灯(红)酒(绿)半(青)半(黄) 面(红)耳(赤)姹(紫)嫣(红)(青)山(绿)水(白)纸(黑)字(青)(黄)不接 (黑)(白)分明 6.“然"字组合。 (潸)然泪下(勃)然大怒(油)然而生(轩)然大波(庞)然大物(泰)然处之 (寂)然无声(愤)然不顾(截)然不同(蔚)然成风 7.在下面括号内填上一个数,组成成语,并使各等式成立。 (一)步登天+(八)面玲珑﹦(九)霄云外(一)触即发+(六)亲不认﹦(七)窍生烟 (五)体投地-(一)毛不拔﹦(四)通八达(五)花(八)门-(两)面(三)刀﹦(三)令(五)申四.补充句子 失之毫厘,谬之千里得道多助,失道寡助前人栽树,后人乘凉兼听则明,偏听则暗 人无远虑,必有近忧近朱者赤,近墨者黑乘兴而来,败兴而归远在天边,近在眼前 不鸣则已,一鸣惊人一着不慎,满盘皆输不以为耻,反以为荣己所不欲,勿施于人五.下面是广告中运用的成语,你能写出正确的成语吗? 百衣百顺(百依百顺)闲妻良母(贤妻良母)默默无蚊(默默无闻)乐在骑中(乐在其中) 语过添情(雨过天晴)牙口无炎(哑口无言)无胃不至(无微不至)食全食美(十全十美) 天尝地酒(天长地久)饮以为荣(引以为荣)触幕惊新(触目惊心)诗情花艺(诗情画意) 六.成语对对子。(注意对仗要工整,意思要相对)。 例:粗茶淡饭(山珍海味)流芳百世(遗臭万年)井然有序(杂乱无章)指鹿为马(循名责实)固若金汤(危如累卵)精雕细刻(粗制滥造)雪中送炭(锦上添花)伶牙俐齿(笨嘴拙舌)七.下面人名各取自什么成语? 杜鹏程(鹏程万里)魏建功(建功立业)王任重(任重道远)刘海粟(沧海一粟)丁慧中(秀外慧中)陶成章(出口成章)焦若愚(大智若愚)刘青云(青云直上)沈致远(宁静致远) 八.成语之最。 1.最贵重的东西(价值连城) 2.最近的距离(近在咫尺) 3.最激烈的竞争(龙争虎斗) 4.最快的阅读(一目十行) 5.最高超的医术(妙手回春) 6.最快的速度(一日千里) 7.最紧急的情况(十万火急)8.最好的记忆(过目成诵)9.最深刻的见解(入木三分) 10最大的嘴巴(气吞山河)11.最诚恳的道歉(负荆请罪)12.最小的地方(方寸之地)

OllyDBG破解工具入门教程

OllyDBG破解工具入门教程 一、OllyDBG 的安装与配置 OllyDBG 1.10 版的发布版本是个 ZIP 压缩包,只要解压到一个目录下,运行 OllyDBG.exe 就可以了。汉化版的发布版本是个 RAR 压缩包,同样只需解压到一个目录下运行 OllyDBG.exe 即可: OllyDBG 中各个窗口的功能如上图。简单解释一下各个窗口的功能,更详细的内容可以参 考 TT 小组翻译的中文帮助: 反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX 数据、反汇编、注释可以通过在窗口中右击出现的菜单 界面选项->隐藏标或显示标题 来进行切换是否显示。用鼠标左键点击注释标签可以切换注释显示的方式。 寄存器窗口:显示当前所选线程的 CPU 寄存器内容。同样点击标签 寄存器 (FPU) 可以切换显示寄存器的方式。 信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。 数据窗口:显示内存或文件的内容。右键菜单可用于切换显示方式。 堆栈窗口:显示当前线程的堆栈。 要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一 下 OllyDBG 就可以生效了。

启动后我们要把插件及 UDD 的目录配置为绝对路径,点击菜单上的 选项->界面,将会出来一个界面选项的对话框,我们点击其中的目录标签: 因为我这里是把 OllyDBG 解压在 F:\OllyDBG 目录下,所以相应的 UDD 目录及插件目录按图上配置。还有一个常用到的标签就是上图后面那个字体,在这里你可以更改 OllyDBG 中显示的字体。上图中其它的选项可以保留为默认,若有需要也可以自己修改。修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动 OllyDBG。 在这个对话框上点确定,重新启动一下 OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。有人可能知道插件的作用,但对那个 UDD 目录不清楚。我这简单解释一下:这个 UDD 目录的作用是保存你调试的工作。比如你调试一个软件,设置了断点,添加了注释,一次没做完,这时 OllyDBG 就会把你所做的工作保存到这个 UDD 目录,以便你下次调试时可以继续以前的工作。 如果不设置这个 UDD 目录,OllyDBG 默认是在其安装目录下保存这些后缀名为 udd 的文件,时间长了就会显的很乱,所以还是建议专门设置一个目录来保存这些文件。 另外一个重要的选项就是调试选项,可通过菜单 选项->调试设置 来配置:

咖啡基础知识

咖啡交流 一.咖啡的栽培传播历史 自古以来,咖啡多产于南北回归线之间,巴西,哥伦比亚和印尼咖啡产量高居全球第一,第二,第三。而两百年前这三个国家一棵咖啡树也没有。那咖啡树栽培是如何传播开的呢? 咖啡树原产于非洲东岸的衣索比亚高地。西元525年,衣索比亚人攻占叶门并统治了50年,因此把咖啡豆引进叶门,回教徒发觉咖啡豆具提神妙用,想尽办法垄断市场,严禁生咖啡豆出口。 垄断两百年后,1600年,印度一名虔诚的回教徒巴巴布丹前往麦加朝圣,迷上咖啡,偷偷把叶门的七颗生咖啡豆贴在肚皮上,走私生豆出境成功,种植于印度的甘卓吉力山。 1616年,荷兰人从叶门移植一株咖啡树到阿姆斯特丹试种失败。因为气候寒冷,经此教训,荷兰人1658年把树苗移往较温暖的锡兰,1699年又在爪哇试种成功。 法国人看到荷兰人试种咖啡成功,分外眼红,首先移植印度咖啡树苗到法国南部试种,下霜冻死。1714年,阿姆斯特丹市长赠送给法王路易十四一株咖啡树,路易十四如获至宝,为这株小树盖了一座暖房。1718年,法国人将巴黎暖房培育的树苗移植到非洲东部的波旁岛结出的咖啡豆更小,因此被取名为波旁种,再移回巴黎暖房。法国爱国军官狄克鲁认为法国也可拥有自己的咖啡农庄,请当局送他一棵树苗由他护送到加勒比海的属地栽培,遭到王室拒绝。狄克鲁不死心,趁着夜黑风高,潜进暖房偷走一棵树苗,狄克鲁费尽千辛万苦,终将咖啡树苗栽培成功,种咖啡的厚利也传遍加勒比海和中南美洲地区,海地,古巴,牙买加的地马拉,哥伦比亚和巴西相继投入咖啡树栽培业。 值得一提的是,法国在东非外海波旁岛试种的咖啡辗转传到肯亚,坦桑尼亚,巴西和夏威夷康纳岛,有趣的是肯亚就位于阿拉比卡咖啡原产地衣索比亚的南粼。一直到1900年才由英国传教士从波旁岛引进,也就是说咖啡绕地球一大圈,又回到非洲。

OD入门系列图文详细教程-破解做辅助起步(一)

OllyDBG的安装与配置 OllyDBG1.10版的发布版本是个ZIP压缩包,只要解压到一个目录下,运行OllyDBG.exe就可以了。汉化版的发布版本是个RAR压缩包,同样只需解压到一个目录下运行OllyDBG.exe即可: 学习各种外挂制作技术,马上去百度搜索"魔鬼作坊"点击第一个站进入、快速成为做挂达人。 OllyDBG中各个窗口的功能如上图。简单解释一下各个窗口的功能,更详细的内容可以参考TT小组翻译的中文帮助:

反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。用鼠标左键点击注释标签可以切换注释显示的方式。 寄存器窗口:显示当前所选线程的CPU寄存器内容。同样点击标签寄存器(FPU)可以切换显示寄存器的方式。 信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。 数据窗口:显示内存或文件的内容。右键菜单可用于切换显示方式。 堆栈窗口:显示当前线程的堆栈。 要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下OllyDBG就可以生效了。 启动后我们要把插件及UDD的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们 点击其中的目录标签: 因为我这里是把OllyDBG解压在F:\OllyDBG目录下,所以相应的UDD目录及插件目录按图上配置。还有一个常用到的标签就是上图后面那个字体,在这里你可以更改OllyDBG中显示的字体。上图中其它的选项可以保留为默认,若有需要也可以自己修改。修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动OllyDBG。在这个对话框上点确定,重新启动一下OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。有人可能知道插件的作用,但对那个UDD目录不清楚。我这简单解释一下:这个UDD目录的作用是保存你调试的工作。比如你调试一个软件,设置了断点,添加了注释,一次没做完,这时OllyDBG就会把你所做的工作保存到这个UDD目录,以便你下次调试时可以继续以前的工作。如果不设置这个UDD目录,OllyDBG默认是在其安装目录下保存这些后缀名为udd的文件,时间长了就会显的很乱,所以还是建议专门设置一个目录来保存这些文件。

语文基础知识大全

修改病句复习指导 1、掌握一些常见的病句的类型; 2、能指出句子中的毛病,并加以改正; 3、能正确地使用修改符号修改句子。 常见的病句种类有:(l)成分残缺词序颠倒;(2)前后矛盾;(3);(4)指代不明;(5)标点误用;(6)关联词用错;(7)重复啰嗦;(8)搭配不当;(9)归类有误;(10)不符合事实一、成分残缺 例:⑴我们要用实际行动贯彻推广普通话的号召。 ⑵在文娱晚会上表演了精彩的节目。 ⑶这道题最后终于被解答出来了。 ⑷数学作业他都做完了,只剩下最后一道题还没算出得数来。 ⑸星期天,我穿上洁净的衣服,把脏衣服脱下来。 ⑹既然有天大的本领,也不能骄傲。 ⑺大家的眼睛都集中到主席台上。 一、成分缺少这类病句主要有2种类型。 1、句子缺少了主要成份。 [例1:正在仔细地批改学生的作业。] [例2:我们从小讲卫生的好习惯。] [例3:校园里到处洋溢着欢乐。] 2、句子中多了一些词语造成成份残缺。 [例:经过这次活动,使我受到了深刻的教育。] 二、用词不当这类病句主要有2种类型。 1、用错了近义词。 [例:红军长征时期的生活非常艰巨。] 2、用错了关联词。[例:虽然我们是为人民服务的,但是我们有缺点,就不怕别人批评指出。] 三、搭配不当这类病句主要有3种类型。 1、句中主要成份不搭配。 [例:他的写作水平明显改进了。] 2、修饰限制的词语与中心词不搭配。

[例:农民伯伯在山坡上种了许多欣欣向荣的果树。] 3、一个词语和两个词语搭配,其中一个搭配,另一个不搭配。 [例:星期天,我在家里写了一篇文章和一幅图画。] 四、词序颠倒这类病句主要有3种类型。 1、主动者和被动者颠倒。 [例:集邮对我特别感兴趣。] 2、先后发生的几件事颠倒。 [例:气象小组的同学记录并收听了天气预报。] 3、修饰限制的词语用错了对象。 [例:在回家的路上,他唱起心情舒畅的歌。] 五、重复累赘这类病句主要有3种类型。 1、句子中用了相同意思的几个词语。 [例:那个房间非常宽敞得很。] 2、修饰限制的词语与中心词中的字意思重复。 [例:松树屹立在陡峭的险峰上。] 3、句子中用了没有必要用的词语。 [例:那个三条边的三角形画好了。] 六、指代不明代词分为人称代词[我、你、他(她、它)、我们……],指示代词[这、那、这里、那儿……]和疑问代词[谁、哪里]三种,指代不明的病句指的是代词使用错误。这类病句主要有2种类型。 1、一个代词同时代替几个人或物,造成指代混乱。 [例:刘明和陈庆是好朋友,他经常约他去打球。] 2、指示代词和疑问代词误用。 [例:哪里有困难,他就出现在那里。] 七、前后矛盾这类病句主要有2 种类型。 1 、句子的主要意思前后矛盾。 [例:这个养猪场养的猪不少于500 头左右。]

基础知识步骤8J

基础知识步骤八【J】 一、多音字: 几其奇 ①jī茶几、窗明几净、几率①jī郦食其[Lì Yìjī人名] ①jī奇数 ②jǐ几时②qí其间②qí奇装异服 稽诘亟 ①jī稽考、稽查、有案可稽①jí诘屈聱牙①jí亟待 ②qǐ稽首②jié诘难.[nàn] ②qì亟[屡次]来问讯.[xùn]革荠济假 ①jí病危急①jì荠菜①jǐ人才济济①jiǎ假意 ②gé革命②qí荸.[bí]荠②jì无济于事、缓不济急②jià假日 间浅监 ①jiān间冰期、间不容发、间距①jiān浅浅流水①jiān监视 ②jiàn亲密无间、间隔、反间计、间断②qiǎn浅陋②jiàn监生 渐犍见 ①jiān渐染、东渐于海①jiān犍牛①jiàn见笑 ②jiàn渐次②qián犍为[地名] ②xiàn图穷匕首见强将嚼 ①jiàng 倔强、强嘴①jiāng将息①jiáo嚼舌 ②qiáng强弩之末、强横.[hèng] ②jiàng将士②jiào倒嚼[反刍] ③qiǎng勉强、强词夺理、强求③qiāng将进酒③jué咀嚼、过屠门而大嚼浆教角槛 ①jiāng浆果①jiāo教书①jiǎo角度①jiàn栏杆或槛车 ②jiàng浆糊②jiào 教诲.[huì] ②jué角斗、口角、角逐②kǎn门槛 缴校节 ①jiǎo缴获①jiào校场、校订①jiē节骨眼 ②zhuó系在箭上的丝绳,射鸟用②xiào校舍②jié节奏 结桔解禁 ①jiē结了果、结巴①jié桔梗①jiě解嘲、解甲归田①jīn情不自禁 ②jié结果、结账②jú桔子②jiè押解、解差、解元②jìn禁止 ③xiè浑身解数

仅尽劲 ①jǐn不仅、仅仅①jǐn尽早、尽快①jìn劲头、干劲 ②jìn [将近] ②jìn尽力、尽如人意②jìng劲爆、劲歌、劲舞、劲射 靓据趄 ①jìng靓妆①jū拮据①jū趑趄[行走困难或犹豫] ②liàng靓丽②jù据说②qiè趔.[liè]趄 圈卷隽 ①juān把鸡圈起来①juǎn卷曲①juàn隽永、隽语 ②juàn圈养、猪圈②juàn手不释卷②jùn隽秀[同“俊”] ③quān圈子 噱倔龟 ①jué可发一噱①jué倔强①jūn龟裂[皲裂] ②xué噱头②juè倔头倔脑②guī乌龟 ③qiū龟兹 期 ①jī期年 ②qī期颐[100岁] 二、重点字音: 解[jiě]甲归田 解[jiè]元[明清两代乡试第一名] 浑身解[xiè]数 解铃还须系[xì]铃人 感慨系[xì]之 可发一噱[jué] 噱[xué]头 戏谑[xuè] 龟[jūn]裂 皲[jūn]裂 皴[cūn]裂 讥诮[qiào] 积重[zhòng]难返 及笄[jíjī] 赍[jī]志而没 犄[jī]角 通缉[jī] 缉[jī]拿 编辑[jí] 辑[jí]录 畸[jī]形 跻[jī]身 箕踞[jījù] 齑[jī]粉 京畿[jī] 岌岌[jí]可危 诘[jí]屈聱[áo]牙 荆棘[jí] 舟楫[jí] 挤轧[yà] 脊[jǐ]梁 脊髓[jǐsuǐ] 掎[jǐ]角之势 刀戟[jǐ] 伎俩[jìliǎng] 觊觎[jìyú] 偈[jì]语 寄寓[yù] 雪霁[jì] 鲫[jì]鱼 发髻[jì] 后稷[jì] 文件夹[jiā] 夹[jiā]层 夹[jiā]带 夹[jiā]克 汗流浃[jiā]背 家给[jǐ]人足 豆荚[jiá] 戛[jiá]然而止 脸颊[jiá] 甲胄[zhòu] 岬[jiǎ]角 肩胛[jiǎ] 驾驭[yù] 稼穑[jiàsè] 奸宄[guǐ坏人] 奸佞[nìng] 信笺[jiān]

小学六年级语文基础知识总复习练习(一)(答案)

小学六年级语文基础知识总复习练习(一)(答案)(一)字、词一.改正下列成语中的错别字。 直接了当(截)焕然一新(焕)道貌暗然(岸)既往不究(咎) 别出心栽(裁)礼上往来(尚)难以名壮(状)色厉内茬(荏) 如火如茶(荼)因地治宜(制)推心至腹(置)纷至踏来(沓) 原形必露(毕)谈笑风声(生)委屈求全(曲)金壁辉煌(碧) 二.直写出下面代称的含义 “杏林”指医生“桃李”指学生(指自己所教的学生)“手足”指弟兄 “汗青”指史册“杜康”指美酒“红豆”指相思 三.巧填成语。 1.填叠词。 威风凛凛忠心耿耿风尘仆仆千里迢迢衣冠楚楚大名鼎鼎文质彬彬人才济济 2.填恰当的字。 一贫如洗视死如归对答如流倒背如流巧舌如簧度日如年心急如焚守口如瓶胆小如鼠心细如尘 3.填上表示动物名称的字,组成成语。 亡(羊)补牢飞(蛾)扑火(牛)刀小试童颜(鹤)发

金(蝉)脱壳门可罗(雀)(马)到成功浑水摸(鱼) 4.填上与人体有关的字,组成成语。 尖(嘴)猴(腮)(皮)开(肉)绽(唇)枪(舌)剑劈(头)盖(脸) (肝)(胆)相照扬(眉)吐气(趾)高气扬千钧一(发)5.填颜色,组成语。 (银)装素裹(绿)树成荫万古长(青)(紫)气东来灯(红)酒(绿)半(青)半(黄) 面(红)耳(赤)姹(紫)嫣(红)(青)山(绿)水(白)纸(黑)字(青)(黄)不接 (黑)(白)分明 6.“然"字组合。 (潸)然泪下(勃)然大怒(油)然而生(轩)然大波(庞)然大物(泰)然处之 (寂)然无声(愤)然不顾(截)然不同(蔚)然成风 7.在下面括号内填上一个数,组成成语,并使各等式成立。 (一)步登天+(八)面玲珑﹦(九)霄云外(一)触即发+(六)亲不认﹦(七)窍生烟 (五)体投地-(一)毛不拔﹦(四)通八达(五)花(八)门-(两)面(三)刀﹦(三)令(五)申

小学语文知识大全必备常识

小学语文常识 1、中国历史朝代顺序:夏商、西周、东周、春秋、战国、秦、汉、三国、晋、南北朝、隋、唐、宋、元、明、清 三十六计:2、 第一计瞒天过海第二计围魏救赵第三计借刀杀人 第四计以逸待劳 第五计趁火打劫第六计声东击西第七计无中生有 第八计暗渡陈仓 第九计隔岸观火第十计笑里藏刀第十一计李代桃僵 第十二计顺手牵羊 第十三计打草惊蛇第十四计借尸还魂第十五计调虎离山第十六计欲擒故纵 第十七计抛砖引玉第十八计擒贼擒王第十九计釜底抽薪 第二十计混水摸鱼 第廿一计金蝉脱壳第廿二计关门捉贼第廿三计远交近攻 第廿四计假道代虢 第廿五计偷梁换柱第廿六计指桑骂槐第廿七计假痴不癫 第廿八计上屋抽梯 第廿九计树上开花第三十计反客为主第三十一计美人计第三十二计空城计 第三十三计反间计第三十四计苦肉计第三十五计连环计

第三十六计走为上 3、紧急求助电话电话号码: 火警——119 医疗急救——120 治安报警——110 交通事故——122 查号台——114 3、节日大全: 一月节日元旦[01/01] 二月节日情人节[02/14] 除夕[农历十二月三十] 春节[农历正月初一] 元宵节[农历正月十五] [03/28] 中小学生安全教育日[03/15] 国际消费者日[03/12] 植树节[03/08] 妇女节三月节日. 四月节日愚人节[04/01] 清明节[04/05] 世界卫生日[04/07] 五月节日 5.1劳动节[05/01] 中国青年节[05/04] 国际护士节[05/12] 母亲节[第2个星期天] 六月节日儿童节[06/01] 父亲节[第三个星期日] 端午节(五月初五) 七月节日建党节[07/01] 八月节日“八一”建军节[08/01] 七夕节[七月初七] 九月节日教师节[09/10] 中秋节[农历八月十五] 十月节日国庆节[10/01] 重阳节[农历九月九日] 十一月节日感恩节[11月第4个星期四] 十二月节日冬至节[12月21日] 圣诞节[12/25] 毛泽东诞辰

破解基础—判断你到底有没有壳

首先说明一下,这篇文章是转自 https://www.doczj.com/doc/1a12231993.html,/read.php?tid=1667455 这个教程主要是讲判断程序是否加壳,所以老鸟飞过。很多人一看到这里,就会说用PEID查壳就行了呀,其实不然。现在一些商用的软件为了加密来保护知识产权,已不满足于ASProtect、ACProtect 等这些有名的强壳,这些壳虽加密强度高,对新手来说遥不可及,但因为很多人研究,已经很容易手动脱壳。所以这些商家就想到了自行加壳(这在看雪的加密与解密中有提到)和修改程序入口的特征(搞黑客,做木马免杀的都知道),这样查壳工具就会显示无壳,但其实还是加了壳的,有时还不止一层壳。 那怎么准确的判断是否加壳呢?这就是今天的主要内容。 首先按照常规给软件查壳 看上去没有壳,那我们再深入看看,点击PEID右下角的扩展信息试试 判断1: 你有没有压缩呀? 天骄无双小说:https://www.doczj.com/doc/1a12231993.html,

虽然壳有压缩壳和加密壳,但现在大多数的壳都有压缩功能,而现在PEID提示压缩的可能非常大,也就是说加壳的可能性很大,当然Ollydbg在载入时也有类似的提示。但这些还不能完全准确地判断,还是OD载入试试 判断2: 好多命令有问题哦! 看见了吗,很多是未知命令或错误命令,一般程序不会是这样的吧!再看看

判断3: 我知道你有多少 一般加壳程序为了不让人破解,就会加密一些重要的信息,比如文本字串,这个软件查找文本字串时会出现错误,显然作者有东西不让我们知道 到这里,同学们都知道这软件八成就是加壳的,那还有什么其他特征呢

判断4: 跳转和循环 一般来说,加壳的软件一般都有很多的跳转,而且没有规律,大多是JMP,循环出现在算注册码的时候,但有时用在加壳程序在内存中解码的时候,所以可以作为脱壳的突破口

OD入门系列图文详细教程、破解做辅助起步

一、OllyDBG 的安装与配置 OllyDBG 1.10 版的发布版本是个ZIP 压缩包,只要解压到一个目录下,运行OllyDBG.exe 就可以了。汉化版的发布版本是个RAR 压缩包,同样只需解压到一个目录下运行OllyDBG.exe 即可: OllyDBG 中各个窗口的功能如上图。简单解释一下各个窗口的功能,更详细的内容可以参考TT 小组翻译的中文帮助: 反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX 数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。用鼠标左键点击注释标签可以切换注释显示的方式。 寄存器窗口:显示当前所选线程的CPU 寄存器内容。同样点击标签寄存器(FPU) 可以切换显示寄存器的方式。 信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。 数据窗口:显示内存或文件的内容。右键菜单可用于切换显示方式。

堆栈窗口:显示当前线程的堆栈。 要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下OllyDBG 就可以生效了。 启动后我们要把插件及UDD 的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们点击其中的目录标签: 因为我这里是把OllyDBG 解压在F:\OllyDBG 目录下,所以相应的UDD 目录及插件目录按图上配置。还有一个常用到的标签就是上图后面那个字体,在这里你可以更改OllyDBG 中显示的字体。上图中其它的选项可以保留为默认,若有需要也可以自己修改。修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动OllyDBG。在这个对话框上点确定,重新启动一下OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。有人可能知道插件的作用,但对那个UDD 目录不清楚。我这简单解释一下:这个UDD 目录的作用是保存你调试的工作。比如你调试一个软件,设置了断点,添加了注释,一次没做完,这时OllyDBG 就会把你所做的工作保存到这个UDD 目录,以便你下次调试时可以继续以前的工作。如果不设置这个UDD 目录,OllyDBG 默认是在其安装目录下保存这些后缀名为udd 的文件,时间长了就会显的很乱,所以还是建议专门设置一个目录来保存这些文件。 另外一个重要的选项就是调试选项,可通过菜单选项->调试设置来配置:

软件破解基础知识

1.断点 指程序被中断执行的地方.程序产生中断就是由于有特殊事件发生,计算机暂停当前的程序运行,转而去执行别的程序,当执行完毕后再返回执行被中断的程序. 解密的过程就是当程序去获取输入的注册码,并准备和正确的注册码相比较时将其中断,通过分析找到正确的注册码.这就需要为被解密的程序设置断点,在适当的时候切入程序内部,追踪到程序的注册码,以达到破解该程序的目的. 2.领空 指要破解程序的程序码所处的位置. Windows下的软件破解其断点设置是以API函数为基础的,即当程序调用某个API函数时中断其正常运行,然后进行解密. 3.API API(Application Programming Interface,应用程序编程接口)是一个系统定义函数的大集合,它提供了访问操作系统特征的方法. 现在破解中常用到的是Win32单字节API函数。Win32API函数包含在动态链接库(Dynamic Link Libraries,简称DLLs)中,即包含在kernel32.dll,user32.dll,gdi32.dll和comctl32.dll中。 4.注册码的存在方式 有两种形态:显式的和隐式的。对于显式存在的注册码,可以直接在程序所处的内存中看到它。 5.软件的破解方式

分为两种:完全破解和暴力破解。完全破解主要是针对那些需要输入注册码或密码等的软件来说的,如果能通过对程序的跟踪找到正确的注册码,通过软件本身的注册功能正常注册软件,这样的破解称为完全破解。如果有些软件本身没有提供注册功能,只是提供试用(DEMO)或注册不能通过软件本身进行(例如需要获取另外一个专用的注册程序,通过INTERNET的注册等),或软件本身的加密技术比较复杂,软件破解者的能力、精力、时间有限,不能直接得到正确的注册码,此时需要去修改软件本身的程序码,即人为改变软件的运行方向,这样的破解称为暴力破解。 6.设置断点 正确恰当的设置断点对于快速有效的解密非常重要,好的断点设置可以迅速找到关键的程序段。Bpx Hmemcpy这个万能断点对大多数注册码式的软件都有用。对于那些需要暴力破解的非注册码式的软件,通常应该拦截对话框(如Bpx DialogBox)和消息框(如Bpx MessageBox(A))等。不论对于那一类软件,当设置的断点均没有效果时,可以试一下BPX Lockmytask,该段点的作用是拦截任何一个按键的动作。 7.软件解密方式 3种常用解密方式:爆破方式、跟踪注册过程及写出注册机。 爆破方式就是通过修改程序流程来达到解密注册保护方式的目的,即通过静态分析的过程。常见的软件如W32SAS等静态反汇编或者反编译软件。

相关主题
文本预览
相关文档 最新文档