
软件安全
文章平均质量分 50
学习记录
岁余十二.
欲买桂花同载酒
展开
-
PE文件结构学习
PE文件Ⅰ PE文件的结构1.概论DOS系统中的COM文件:仅仅包含可执行代码,没有附加数据来指定文件入口,因此第一行执行指令必须在文件头部。没有重定位信息,因此代码中不能有跨段操作数据的指令。EXE文件:在代码前加了一个文件头,包含各种说明数据,操作系统根据文件头中的信息将代码部分装入内存,根据重定位表修正代码,从文件头中指定的入口开始执行。PE文件:代码、已初始化的数据、资源和重定位信息按照属性分类到不同的节中,每个节的属性和位置信息用一个IMAGE_SECTION_HEADER结构来描述,原创 2022-05-19 16:28:40 · 493 阅读 · 0 评论 -
软件安全实验 查找kernel32.dll的首地址并显示
内容利用win32汇编弹窗显示kernel32.dll的首地址和GetKernelBase函数的地址在win7下编译通过,需要masm安装目录为c:\masm32代码.586.model flat,stdcalloption casemap:noneinclude c:\masm32\include\windows.inc include c:\masm32\include\comctl32.inc includelib c:\masm32\lib\comctl32.lib inclu原创 2022-05-25 19:19:38 · 371 阅读 · 2 评论 -
软件安全实验 通过导入表查找关键函数地址并显示
内容根据函数名字和kernel32的导出表获得更多函数的地址并弹窗显示在win7下成功编译运行,masm32安装目录需为c:\masm32代码.586.model flat,stdcalloption casemap:noneinclude c:\masm32\include\windows.inc include c:\masm32\include\comctl32.inc includelib c:\masm32\lib\comctl32.lib include c:\masm32原创 2022-05-25 19:30:08 · 445 阅读 · 1 评论 -
Win32漏洞分析与利用 栈缓冲区溢出实验总结
栈溢出如果程序在处理用户数据时,未能对其大小进行恰当的限制,在进行复制、填充时没对这些数据限定边界,攻击者就可以通过精心设计的数据进行溢出覆盖,修改内存中数据、改变程序的执行流程。在栈溢出漏洞中,最经典的是借助跳板的栈溢出方式。左图是一个正常的栈,从高到低依次是:父函数的栈空间、作为返回地址的EIP、保存下来的栈指针EBP、若干局部变量和用于被攻击的缓冲区。现有的C语言中许多标准函数(如strcpy)在现在看来已经不再是安全的了,利用strcpy讲数据复制到局部数组缓冲区时可以超过缓冲区区域,覆盖原创 2022-05-30 17:31:40 · 1565 阅读 · 0 评论 -
windows端口被不存在的进程占用
描述在做软件安全实验时遇到的问题:nc连接6666端口一直没有反应重启可以解决问题,但是重启之后地址会变化,所以就极其不想重启。猜测是因为6666端口被占用,查看后发现果然被占用,但是尝试结束进程失败。在任务管理器中查看PID,确实没有找到PID为3676的进程。原因在另一个程序A中调用了system(‘calc.exeddd’),system()函数会打开一个cmd来等待命令,当A被异常结束时(比如说ollydbg结束?其实我按ctrl c好像它也是异常结束)A的进程已经被释放,但是A的原创 2022-05-29 16:52:15 · 1040 阅读 · 0 评论 -
win7下寻找不到jmp esp的地址
描述在做栈溢出时需要用到jmp esp指令,但是在kernel32和user32.dll中均未找到jmp esp的地址解决自己推测有可能是windows把jmp esp这条指令在几个重要的dll中隐藏起来了。可以去别的不知名dll中寻找。按alt+E查看所有模块双击打开其中一个,按ctrl+F查找命令如果未找到条目的话就换一个,总会找到的 = =欢迎指正...原创 2022-05-30 14:57:54 · 543 阅读 · 0 评论