首页 > 其他分享 >逆向 —— JCC

逆向 —— JCC

时间:2023-02-17 20:23:36浏览次数:31  
标签:EIP 逆向 寄存器 MOV EAX 指令 JCC CMP

JMP指令:修改EIP的值

MOV EIP,寄存器/立即数   简写为   JMP 寄存器/立即数

CALL指令:

PUSH 地址B

MOV EIP,地址A/寄存器

简写为:CALL 地址A/寄存器

RET指令:

LEA ESP,[ESP+4]

MOV EIP,[ESP-4]

简写为:RET

CMP指令:

指令格式:CMP  R/M,R/M/IMM

该指令是比较两个操作数,实际上,它相当于SUB指令,但是相减的结构并不保存到第一个操作数中。只是根据相减的结果来改变零标志位的,当两个操作数相等的时候,零标志位置1。

MOV EAX,100

MOV ECX,100

CMP EAX,ECX

观察Z位

MOV EAX,100

MOV ECX,200

CMP EAX,ECX

观察S位

CMP AX,WORD PTR DS:[405000]

CMP AL,BYTE PTR DS:[405000]

CMP EAX,DWORD PTR DS:[405000]

TEST指令:

指令格式:TEST  R/M,R/M/IMM

该指令在一定程序上和CMP指令时类似的,两个数值进行与操作,结果不保存,但是会改变相应标志位.

与的操作表项如下:

1 and 1 = 1

1 and 0 = 0

0 and 1 = 0

0 and 0 = 0

常见用法:用这个指令,可以确定某寄存器是否等于0。

TEST EAX,EAX

观察Z位

但是如果EAX的二进制某些位为1的话,那么运算的结果就不为零。

 

 有符号无符号的区别:

CMP AL,CL

JG 0x12345678

JA 0x12345678

1、CALL执行时堆栈有什么变化?EIP有变化吗?

堆栈PUSH当前地址,EIP变为所跳的地址

2、RET执行时堆栈有什么变化?EIP有变化吗?

堆栈POP地址,EIP变为所POP得地址

3、使用汇编指令修改标志寄存器中的某个位的值,实现JCC的十六种跳转.

不允许在OD中通过双击的形式修改标志寄存器.

要通过汇编指令的执行去影响标志位,能用CMP和TEST实现的优先考虑.

标签:EIP,逆向,寄存器,MOV,EAX,指令,JCC,CMP
From: https://www.cnblogs.com/BDAMBXA/p/17131414.html

相关文章

  • 【Android逆向】滚动的天空中插入smali日志
    1.编写一个MyLog.java放到一个android工程下,编译打包,然后反编译拿到MyLog的smali代码packagecom.example.logapplication;importandroid.util.Log;publicclassM......
  • 黑猫web端signature参数逆向分析
    适合小白练手一、断点调试1.查找关键字2.分析nn是一个随机数16位u是固定参数u="$d6eb7ff91ee257475%"时间戳vard=(newDate).getTime()3.随机数生成o......
  • js逆向中常见加密/解密算法实现(js、python)
    常见加密、解密算法实现(JS、python)base64NodejsconstCryptoJS=require('crypto-js')//加密letpwd='密码'letb64_pwd=Buffer.from(pwd).toString('b......
  • Mybatis逆向工程
    Mybatis逆向工程Mybatis框架需要:实体类,自定义Mapper接口,Mapper.xml传统的开发中上述的三个组件都需要开发者手动创建,逆向工程可以帮助开发者自动创建三个组件,提高效率......
  • Mybatis17 - 逆向工程
    概念正向工程:先创建Java实体类,由框架负责根据实体类生成数据库表。Hibernate是支持正向工程的。逆向工程:先创建数据库表,由框架负责根据数据库表,反向生成如下资源:Java......
  • Python爬虫:从js逆向了解西瓜视频的下载链接的生成
    文章内容在csdn上,链接为:Python爬虫:从js逆向了解西瓜视频的下载链接的生成参考代码为:importrequestsfromcrawlers.userAgentimportuseragentfromlxmlimportetre......
  • Python爬虫之Js逆向案例(16)-京东商品评论&店铺详情案例
    <center>声明:京东商品评论&店铺详情获取分析仅用于研究和学习,如有侵权,可联系删除</center>一次运行程序,同时获取一下内容:1.获取商店详情;2.获取当前商品评论;3.获取商品的......
  • mybatis逆向工程用法
    官网所在的地址:http://mybatis.org/generator/quickstart.html#MyBatis3DynamicSql第一件事,导入相关的包(注意版本,下面仅供参考)<!--代码生成器--><!--......
  • 安卓逆向工具的使用(二)
    AndroidKiller逆向工具特别提醒:本文仅供学习交流之用,如用于其他用途概不负责!!!​AndroidKiller是一款为用户提供图形化界面的反编译工具,它集成了APK反编译、APK签名、......
  • 简单的逆向工程
    简单的逆向二进制文件解法 先file文件名 然后看结果,谷歌搜结果,对着结果修改文件头hexeditor文件名 修改完后可以用r2-d./文件名aaaaflsmainpdf来......