自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xuenixiang.com

代码逆向学习探讨

  • 博客(14)
  • 资源 (2)
  • 收藏
  • 关注

原创 第一课 记事本的WriteFile API HOOK

前面一直在写dll hook技术的学习心得,但是现在又来写API hook的体会,很多人都不理解,为什么要学习API hook,dll hook已经那么强大,为什么还要把API hook单独拿出来学习?在我学习完这些内容之后,我深刻的认识到二者的差别,请听我说。使用dll注入技术可以驱使目标进程强制加载用户指定的dll文件,使用该技术时,先在要注入的dll中创建hook代码和设置代码,然后在D...

2018-11-01 22:03:24 3279 2

原创 第十课.列表常用操作符

比较操作符可以看到,只要a中第一个元素比b中第一个元素大,后面的都不比较,直接告诉你a>b,这点和C语言的字符串比较是一样的(字符串比较ASCII) 逻辑操作符连接操作符 +这个运算符只能用于两个列表元素类型都相同的情况,如果要给列表添加元素,最好用前面讲到的三种方法 重复操作符*3不会改变原有的列表内容,只有*=才会改变 成员...

2018-11-29 22:07:57 460

原创 第九课.列表

创建一个普通列表创建一个混合列表创建一个空列表 向列表中添加元素属于对象的函数叫做方法,append这个bif是一个方法,所以要用“.”来引用  先创建一个空列表,然后向空列表里面添加字符串,但是只能有一个参数,如果要加入多个元素,要用extend如果你这样用,那就错了,extend也只有一个参数,但是怎么用它来给列表添加多个元素呢?只要...

2018-11-23 10:48:23 177

原创 第八课.强大的分支与循环

Python是面向对象的编程语言,是由C语言编写而来的玩一个输出分数的小游戏(判断分数的等级)有3种实现方法这里的第三种方法是第二种方法的改进,因为第二种方法靠缩进来实现,但是如果条件语句过多,缩进非常不美观,第三种里的elif相当于C语言中的else if Python可以有效避免“悬挂else” 什么叫“悬挂else”?我们举个例子,初学C语言的朋友...

2018-11-16 23:29:00 118

原创 第七课.常用操作符

基本操作符加减乘除就不说了,浅谈一些值得注意的地方 首先可以看到a+=1(a=a+1)这些基本的简写,这些c语言支持的python一样支持,但是除法就不一样了,d/=8 按照c语言的思路,10/8是整数之间的除法,结果也应该是整数(地板(float)除法),但是python更人性化,可以直接得出小数结果。如果偏要用地板除法,那就用//来表示,例如:但是和C语言不同的是,浮点...

2018-11-13 20:21:17 175

原创 第6课.数据类型及其转换

浅谈Python数据类型(只说值得注意的地方,没有C基础的朋友可能会看不明白)整形:Python3中长度不受限制(能算多少取决于计算机的虚拟内存),Python2要加L表示才能表示长整型浮点型:python区分整形和浮点型就看有没有小数点科学计数法:用e\E表示,输出都会以浮点型输出!!布尔类型:布尔类型是特殊的整形,他们可以做基本运算数据类型之间的类型转换(要记住是整...

2018-11-12 22:45:19 202

原创 第五课.逻辑表达式和循环

这节课的任务是改进第三课的小游戏猜错的时候程序应该给点提示,例如告诉用户输入的值是大了还是小了。每运行一次程序只能猜一次,应该提供多次机会给用户猜测。每次运行程序,答案可以是随机的。因为程序答案固定,容易导致答案外泄。 条件分支第一个改进要求:猜错的时候程序提示用户当前的输入比答案大了还是小了。可以在idle中尝试一些基本的判断在使用逻辑表达式and 和or...

2018-11-11 23:23:11 476

原创 第四课.变量和字符串

变量名就像我们现实社会的名字,把一个值赋值给一个名字时,Ta会存储在内存中,称之为变量(variable),在大多数语言中,都把这种行为称为“给变量赋值”或“把值存储在变量中”。不过Python与大多数其他计算机语言的做法稍有不同,Ta并不是把值存储在变量中,而更像是把名字贴在值的上边。所以有些Python程序员会说“Python”没有“变量”,只有“名字”。例如:前面赋值过的...

2018-11-10 23:26:25 123

原创 第三课.介绍BIF与if语句

打开idle,然后新建文本文档(ctrl+N) 这个是个小游戏,在新建的文件中写入代码,print前面的空白是缩进,也就是TAB键      TAB键是缩进,在输入关键字的时候按下tab可以联想!!  写完之后,按Ctrl+S是保存,也可以在file中选择save保存之后,接下来运行程序可以按F5运行,也可以在Run中选择Ru...

2018-11-09 22:31:59 368

原创 第二课.IDA入门

这一课基本以截图的形式来展现IDA的一些基本常识直接看图即可启动界面 不知道文件是什么类型,就选择binary载入(二进制文件加载) 如果选择二进制文件,就要手动完成很多加载的过程,手动完成PE装载器的很多工作选择是16位文件还是32位的文件  文件载入IDA之后,IDA在文件所在目录生成的文件:Id0:二叉树形式的数...

2018-11-07 20:44:20 847

原创 第二课.Python的安装与初使用

www.python.org可以在官网选择自己要下载的版本安装过程一路next下一步就可以  从IDLE启动Python在运行界面IDLE是一个Python Shell,shell的意思就是“外壳”,基本上来说,就是一个通过键入文本与程序交互的途径!(CMD命令窗口)看到>>>这个提示符,Ta的含义是告诉你,Python已经准备好了,在等你...

2018-11-06 21:59:59 214

原创 第一课.IDA简介与初使用

IDA的反汇编有2种方式 :线性扫描(linear sweep)和递归下降(recursive descent)两种主要的反汇编算法。线性扫描:反汇编从第一个代码段的第一个字节开始,以线性模式扫描整个代码段,逐条反汇编每条指令,直到遍历全部字节。此方法对于长度固定的指令集(MIPS)反汇编会更加容易,因为可以方便的的定位到随后的指令。缺点就是无法正确的将嵌在代码中的数据分离出。递归下降:根...

2018-11-05 21:32:31 846

原创 第一课.Python的介绍

Python是蟒蛇的意思Python编写的程序可以跨平台运行英文原文:Why every programmer should learn Python or Ruby 每个程序员都应该学习使用Python或Ruby  如果你是个学生,你应该会C,C++和Java。还会一些VB,或C#/.NET。多少你还可能开发过一些Web网页,你知道一些HTML,CSS和JavaScript知...

2018-11-05 17:32:54 253

转载 vs2010发布时去除msvcp100.dll和msvcr100.dll图解说明

什么是 msvcr100.dll MS = Microsoft V = Visual C = C program language R = Run-time 100 = Version什么是 msvcp100.dllMS = Microsoft V = Visual CP = C++ 100 = version解决的办法Release版本Visual Studio 201...

2018-11-01 21:15:06 212

DLL注入示例课件源码

解压密码www.xuenixiang.com

2018-09-13

手写PE教程全套课件

解压密码www.xuenixiang.com

2018-09-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除