- 博客(10)
- 资源 (7)
- 收藏
- 关注
原创 汇编程序多个数据段的使用
assume cs:codea segment db 1,2,3,3a endsb segment db 1,2,3,3b endsc1 segment db 1,2,3,3c1 endscode segmentstart:mov bx,0mov cx,4xor dx,dxAcumite:;设置a段为数据段mov ax,amov ds,axadd dl,ds:
2013-08-31 16:59:41 3119
原创 汇编学习-在代码段使用数据以及多段的使用
shl和shr是逻辑移位指令。shl是逻辑左移指令,它的功能为:(1)将一个寄存器或内存单元中的数据向左移位;(2)将最后移出的一位写入CF中;(3)最低位用0补充。 指令:mov al,01001000bshl al,1 ;将al中数据左移一位 执行后(al)=10010000b,CF=0。 注意:如果移动位数大于1时,必须将移动位数放在cl中。比如,指令:mov al,01010001bmov
2013-08-31 15:39:06 1645
转载 获取加载Kernel32.dll的地址
一、几个重要的数据结构,可以通过windbg的dt命令查看其详细信息_PEB、_PEB_LDR_DATA、_LDR_DATA_TABLE_ENTRY二、技术原理1、通过fs:[30h]获取当前进程的_PEB结构2、通过_PEB的Ldr成员获取_PEB_LDR_DATA结构3、通过_PEB_LDR_DATA的InMemoryOrderModuleList成员获取_LIST_ENT
2013-08-30 19:15:29 2438
原创 汇编学习-输出正方形
;输出一个正方形边框;输出一个正方形边框CODES SEGMENT ASSUME CS:CODES;输出10个‘_’Out_ proc mov cx,10OutInstruction:;真正的输出指令 mov dx,2dh mov ah,02h int 21h dec cx cmp cx,0 jnz OutInstructi
2013-08-30 16:06:15 2211
原创 win32汇编学习之三
今天学习的是常用指令的解释.databTest db 12h;wTest dw 1234hdwTest dd 12345678h.codestart:mov al, byte ptr bTestmov ax, word ptr bTestmov eax,dword ptr bTestend start先说下结果吧:第一条
2013-08-28 10:06:39 87
原创 汇编语言:一维数组的动态访问
笔者使用的是win7 和Masm for Windows集成环境共享版2012.5对于一维数组的访问,或许听上去简单的不得了,但是笔者也是用了将近两个小时才做到的,说来惭愧啊,怕以后忘记了,所以在这儿做个记录如果对于一维数组特定位置的访问,用我们的话说,就是索引是以立即数的方式给出,还是以变量的方式给出,现在我们说的是变量方式的动态访问.386.model flat,stdcall
2013-08-27 21:14:26 3687
原创 win32汇编语言学习之二
对于汇编语言来说win32环境中只有一种类型,那就是32位整数,例如MessageBoxA的四个参数 HWND,LPCTSTR,LPCTSTR,UINT之所以定义成不同的摸样主要是为了说明其用途,我们在汇编环境下调用MessageBoxA时,DOS状态下会是这样的: push uType push lpCaption push lpText push hWnd
2013-08-27 09:10:15 671
原创 win32汇编程序的学习之一
首先说明笔者的学习环境:win7,Masm for Windows 集成实验环境 2012.5 任何种类的语言,总是有基本的源程序结构规范,同样win32 汇编程序也有,现在写下一个HelloWorld的汇编程序 .386.model flat,stdcalloption casemap:noneinclude windows.incinclude user32.
2013-08-26 19:29:27 785
原创 通过添加新的节来感染PE文件
所谓感染PE文件,其实就是修改PE文件,在不改变其原有功能的基础上,添加我们自己的代码,在这里我们将PE文件看作是一般的文件,只是在修改时,要根据PE文件结构来进行update,否则的话就会破坏原有程序。这里我们不再对PE文件结构进行解释说明,请读者自行百度哈 现在我们说下添加区段的一般步骤 一.修改PE文件头部信息,需要修改的有IMAGE_FILE_HEADER的Nu
2013-08-26 10:26:29 1971
原创 关于PE文件新区段的创建
对于为已有的EXE文件加壳,一般我们会创建一个新的区段,在该区段中写入的是外壳代码。 新加一个区段,通常会有三个步骤 1.首先修改PE文件头部信息,NT头部的区段数目,修改OPTIONAL头部的镜像大小 2.向内存中申请一个IMAGE_SECTION_HEADER的内存模型,并修改其各个变量(区块的偏移位置和大小,文件相对虚拟地址和大小) 3.写入文件 现在说下IMA
2013-08-25 09:56:02 1638 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人