目录

​一、简介:​

​二、作用:​

​三、使用方法:​

​ 3.1、第一步:查看可用的模块​

​ 3.2、第二步:直接使用​


一、简介:

空指令不会对程序运行状态造成任何实质影响的空操作或者无关操作指令

eg:x86 CPU---->0x90



二、作用:

(1)填充:(nop指令一个字节),使指令按字对齐,减少取指令时的内存访问次数

eg:偶数对齐,若一条指令占3字节,使用nop指令,cpu 就可从第四个字节处读取指令了

(2)延迟:nop指令会产生一定的延迟(效果取决于CPU性能),使用rep前缀,多占用几个时钟脉冲

(3)等待:使用 nop,等待缓冲区清空,总线恢复(i/o传输)

(4)清除:清除上一个算术逻辑指令设置的flag位

(5)破解:将程序验证部分用nop填充,致使验证失效



三、使用方法:

 3.1、第一步:查看可用的模块

#查看支持的空指令

show nops

【MSFconsole进阶】Nops(空指令模块):作用、使用方法_取指令

NOP Generators
==============

   #  Name                 Disclosure Date  Rank    Check  Description
   -  ----                 ---------------  ----    -----  -----------
   0  nop/aarch64/simple                    normal  No     Simple
   1  nop/armle/simple                      normal  No     Simple
   2  nop/mipsbe/better                     normal  No     Better
   3  nop/php/generic                       normal  No     PHP Nop Generator
   4  nop/ppc/simple                        normal  No     Simple
   5  nop/sparc/random                      normal  No     SPARC NOP Generator
   6  nop/tty/generic                       normal  No     TTY Nop Generator
   7  nop/x64/simple                        normal  No     Simple
   8  nop/x86/opty2                         normal  No     Opty2
   9  nop/x86/single_byte                   normal  No     Single Byte

 3.2、第二步:直接使用

use nop/aarch64/simple 

【MSFconsole进阶】Nops(空指令模块):作用、使用方法_系统安全_02