杂记

操作数:

立即数:
寄存器:
内存地址:

寄存器:

通用寄存器:CPU在执行期间使用。
段寄存器:用于定位内存节。
状态标志:用于做出决定。
指令指针:用于定位要执行的下一条指令。
寄存器

32位  EAX = _ _ _ _ | _  _  _  _
                   E   AX    H L 

通用寄存器:

-用于存储数据或内存地址,乘法和除法只能用 EAX 和 EDX
-EAX通常存储函数的返回值。 

知识点

[ ]括起来的操作数是对内存中 数据的引用,地址中存的数的值进行操作。
inc 和 dec 将一个寄存器加一和减一
add sub 
mul(乘  --操作:‘值’*EAX放入 EAX和EDX中 EDX存高32位 EAX存低32位) 
div(除 --操作:将EAX 和 EDX 中放的值 除以 ’值‘放到 EAX(商) 和 EDX(余数)中)
imul 和 idiv 是上两个的有符号版本
shr 和 shl 对寄存器的移位运算 填零
ror 和 rol 循环移位  补上来
图片.png

图片.png

知识点

-条件指令
test 和 cmp 作比较的指令
test 与 and 指令功能一样,但它不会修改其使用的操作数,只设置标志位
cmp 与 sub指令功能,但不修改操作数,只设置标志位。
-分支指令

工具

-ltrace ./程序名  查看程序执行过程
-cat /proc/程序pid/maps   查看程序执行中的栈的情况
-查看pid pidof + 程序名
-nact(nmap) -v(信息)-c(程序) -l(监听那个端口)-k(keep)
-nc 连接 
灌入程序.png

-./程序名 运行 +& 显示程序的pid
-vim 
    - /+字符  搜索字符  n 下一个匹配
    - tabe + 文件名 新建一个文件  gt 命令切换标签
    - %!xxd 打开xxd 在 vim 中  - %!xxd -r 保存之前得修改
-连接器  编译器  分配器
-perl 
-gcc
    -o 输出文件
    -m32 32位程序
    -zexecstack 关闭NX
    -fno-stack-protector  关闭canary
-nasm 
   -o 指定输出文件名
   -f  指定文件类型
-objdump 
    -d  反汇编
    -M  
-objcopy
    -O (binary)指定文件 
-xxd
    -i  生成一段code
-vim
    :tabe + 文件名 新开一个文件
-nact 
    -v 调试信息
    -c 运行程序
    -l  监听端口主机
    -k  保持
-strace 
    -i 显示运行地址 
-(cat shell;cat) | nc ip 端口
-cat /proc/`pidof test3`/maps
-dmesg  查看程序坏在哪
-cyclic + num  [pwntools 工具] 生成 num 个字符
    -l + 字符串 查找偏移长度
1.打remote 会直接结束按 回车 2.按回车会一直可以回车
-which  查看程序位置
-hexedit
    -
- 0A 机器码为换行 eb 是跳转
- ROPgadget 
    --binary
pwntools 错误解法
-



-视频
  ais3
    -(1)
    -工具
    -shellcode
    -ret to shellcode(无保护)
    -rop(+NX  增加了 NX难度)
rop用途

    -syscall
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • cookie和缓存 Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器时,会由服务器生成一...
    纵我不往矣阅读 3,122评论 0 1
  • javascript功能插件大集合,写前端的亲们记得收藏 包管理器管理着 javascript 库,并提供读取和打...
    狗狗嗖阅读 4,196评论 0 1
  • 1.地址线的寻址能力不是指它能传多少位的数据,而是它传递的数据范围能找到多少个存储单位的地址,存储单元的单位又是1...
    一村之里正阅读 1,729评论 0 0
  • 文档对象模型DOM提供访问和操作页面内容的方法和接口 浏览器对象模型BOM提供与浏览器交互的方法和接口 ECMAS...
    洁芬阅读 1,852评论 0 0
  • 问答题 iOS的开发和发布签名证书有何异同?开发签名证书绑定App ID、开发者证书、以及测试设备,用于真机测试。...
    Sparkle_S阅读 4,671评论 0 1