20155325 Exp1 PC平台逆向破解(5)M
Exp1 PC平台逆向破解(5)M
阶段性截图




基础知识
掌握NOP, JNE, JE, JMP, CMP汇编指令的机器码
| 汇编指令 | 作用 | 机器码 | 
|---|---|---|
| NOP | “空指令”。执行到NOP指令时,CPU什么也不做,仅仅当做一个指令执行过去并继续执行NOP后面的一条指令。 | 90 | 
| JNE | 条件转移指令,如果不相等则跳转。 | 75 | 
| JE | 条件转移指令,如果相等则跳转。 | 74 | 
| JMP | 无条件转移指令。段内直接短转Jmp short;段内直接近转移Jmp near;段内间接转移Jmp word;段间直接(远)转移Jmp far | EB;E9;FF;EA | 
| CMP | 比较指令,功能相当于减法指令,只是对操作数之间运算比较,不保存结果。cmp指令执行后,将对标志寄存器产生影响。其他相关指令通过识别这些被影响的标志寄存器位来得知比较结果。 | 
掌握反汇编与十六进制编程器
objdump -d
从objfile中反汇编那些特定指令机器码的section。xxd - 做一次十六进制的输出或者反操作
在vi命令状态下:
:%!xxd :%!od 将当前文本转化为16进制格式
参考链接: objdump命令;linux 命令 xxd linux下查看二进制文件


- 47d-4ba = c3ffffff
所以 修改d7为c3 
vi 程序名
1.按ESC键
2.输入如下,将显示模式切换为16进制模式
:%!xxd
3.查找要修改的内容
/e8 d7
(里面这个空格必须输,否则找不到)
4.找到后前后的内容和反汇编的对比下,确认是地方是正确的
5.修改d7为c3
6.转换16进制为原格式
:%!xxd -r
7.存盘退出vi
:wq
能正确修改机器指令改变程序执行流程

能正确构造payload进行bof攻击


break *address
在程式运行的内存地址处停住。








遇到的问题及解决
- 在配置Kali和实验的过程中有时会遇到以下这种问题,当然是选择安装它啦
 

- 安装中文输入法
 
搜狗输入法安装失败后,选择安装google的,参考: [分享] kali linux 中文输入法(弄了一晚综合各种帖子终于弄好了)
无法运行pwn1
解决请参考: 64位Kali无法顺利执行pwn1问题的解决方案
参考链接
- [分享] kali linux 中文输入法(弄了一晚综合各种帖子终于弄好了)
 - objdump命令
 - linux 命令 xxd linux下查看二进制文件
 - 64位Kali无法顺利执行pwn1问题的解决方案
 - 2017-2018-2 『网络对抗技术』Exp1:PC平台逆向破解
 - 20155312张竞予 Exp1 PC平台逆向破解(5)M
 
20155325 Exp1 PC平台逆向破解(5)M的更多相关文章
- 20155324《网络对抗》Exp1 PC平台逆向破解(5)M
		
20155324<网络对抗>Exp1 PC平台逆向破解(5)M 实验目标 本次实践的对象是一个名为~pwn1~的~linux~可执行文件. 该程序正常执行流程是:~main~调用~foo~ ...
 - 2018-2019-2 20165237《网络攻防技术》Exp1 PC平台逆向破解
		
2018-2019-2 20165237<网络攻防技术>Exp1 PC平台逆向破解 一.实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调 ...
 - 20165221 《网络对抗技术》EXP1 PC平台逆向破解
		
20165221 <网络对抗技术>EXP1 PC平台逆向破解 一.实验内容 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函 ...
 - 2018-2019-2 网络对抗技术 20165325 Exp1 PC平台逆向破解
		
2018-2019-2 网络对抗技术 20165325 Exp1 PC平台逆向破解(BOF实验) 实验有三个模块: (一)直接修改程序机器指令,改变程序执行流程: (二)通过构造输入参数,造成BOF攻 ...
 - 2018-2019-2 20165206《网络对抗技术》Exp1 PC平台逆向破解
		
- 2018-2019-2 20165206<网络对抗技术>Exp1 PC平台逆向破解 - 实验任务 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:mai ...
 - Exp1 PC平台逆向破解  20165235 祁瑛
		
Exp1 PC平台逆向破解 20165235 祁瑛 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件.该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字 ...
 - 2018-2019-2 20165317《网络对抗技术》Exp1 PC平台逆向破解
		
2018-2019-2 20165317<网络对抗技术>Exp1 PC平台逆向破解 实验目的 掌握NOP, JNE, JE, JMP, CMP汇编指令的机器码 NOP:无作用,英文&quo ...
 - 2018-2019-2 网络对抗技术 20165336 Exp1 PC平台逆向破解
		
2018-2019-2 网络对抗技术 20165336 Exp1 PC平台逆向破解 1. 逆向及Bof基础实践说明 1.1 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件.该程序正常 ...
 - 2018-2019-2 20165236郭金涛《网络对抗》Exp1 PC平台逆向破解
		
2018-2019-2 20165236郭金涛<网络对抗>Exp1 PC平台逆向破解 一.实验内容 1.掌握NOP, JNE, JE, JMP, CMP汇编指令的机器码(0.5分) 2.掌 ...
 
随机推荐
- Django之自定义权限
			
官方解释 Custom permissions¶ To create custom permissions for a given model object, use the permissions ...
 - Linux系统重要的开机自启动的服务
			
重要的开机自启动的服务 1.sshd 连接Linux服务器是需要用到的服务程序 2.rsyslog 操作日志的一种机制 系统日志:/var/log/message ...
 - symfony学习笔记1—简介
			
1.symfony快速入门还是先看代码结构把,这个是拿到代码的第一印象,app/:整个应用的配置,模版,translations,这个可能是多语言文件什么,src/:项目php文件,vendor/:第 ...
 - Yii安装使用教程(转)
			
Yii 是一个基于组件的高性能 PHP 框架,用于快速开发大型 Web 应用.它使Web开发中的 可复用度最大化,可以显著提高你的Web应用开发速度.Yii 这个名字(读作易(Yee) 或 [ji:] ...
 - 搭建高可用mysql系列(1)-- Percona XtraDB Cluster介绍
			
Percona XtraDB Cluster (下文简称PXC)是一个开源的mysql 高可用解决方案.它将Percona Server和Percona XtraBackup与Galera库集成在一起 ...
 - Python学习之路 (一)开发环境搭建
			
前言 python3应该是Python的趋势所在,当然目前争议也比较大,这篇随笔的主要目的是记录在centos6.7下搭建python3环境的过程 以及碰到的问题和解决过程. 另外,如果本机安装了py ...
 - 20145203 实验五 Java网络编程及安全
			
20145203 实验五 Java网络编程及安全 实验内容 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.设计安全传输系统. 实验要求 1.基于Java Socket实现安全传输 2 ...
 - virtualbox+vagrant学习-2(command cli)-21-vagrant up命令
			
Up 格式: vagrant up [options] [name|id] 这个命令根据你的Vagrantfile文件创建和配置客户机. 这是“vagrant”中最重要的一个命令,因为它是创建任何va ...
 - error info: boost not variable 问题解决
			
错误信息:error info: boost not variable 解决办法:sudo apt-get install libboost-dev 出现这个问题的原因是我在搭建DOMJudgeOJ平 ...
 - Node.js框架之Egg.js
			
Node.js是我前段时间接触的一个JavaScript的服务端语言,感觉还是挺有意思的. 也许有人说,你学这么多,学的过来吗?或者说学的太多,专而不精,有必要这样吗? 其实,我个人认为,自从我进入I ...