计算机系统学习笔记及pwn做题心得(1)

计算机系统1
编译系统分四个阶段完成,预处理器、编译器、汇编器、链接器一起构成了编译系统
操作系统的基本功能:1 防止硬件被失控的应用程序滥用 2 向应用程序提供一些简单一致的机制来控制复杂而又通常大不相同的低级硬件设备
计算机执行.c文件的过程 :.c >>.i >>.s >>.o >>执行
系统硬件:总线(传输字) I/O设备 主存(临时存储设备) 处理器(寄存器)

操作系统的内核是应用程序和硬件之间的媒介,它提供三个基本的抽象1)文件是对I/O设备的抽象 2)虚拟内存是对主存和硬盘的抽象 3)进程是处理器,主存和I/O设备的抽象

逻辑运算符||,&&,! 分别与or ,and ,not 运算对应**但是逻辑运算认为所有非零的参数都表示true而参数0表示false
移位运算: 1)左移运算x<<k:x向左移动k位丢弃最高的k位 x:01100011 k:4 00110000
2)右移运算分为逻辑右移和算术右移: 逻辑右移在左端补k个0 (00000110) 算术右移在左端补k个最高有效位的值 (00000110) 对于无符号数 右移必须是逻辑右移
补码中将字的最高有效位解释为负权
给定0<=x<=UMaxw范围的一个整数x,函数U2Bw(x)会给出x的唯一的w位无符号表示。
当x满足TMinw<=x<=TMaxw,函数T2Bw(x)会给出x的唯一一个w位的补码表示。
1+UMaxw=2^w例:T2U32(-1)=4294967295 U2T32(4294967295)=-1
B2Tw(T2Bw(x))=T2Uw(x)=x+x(w-1)*2^w
%x 以16进制格式输出整数

pwn
由于远端服务器中gets函数没有正常退出,此时使用exit函数使gets函数强制退出,可以获取flag
LibcSearcher的用法及其格式:查找libc中函数地址:libc.dump[‘函数’] libc.dump[‘str_bin_sh’]
ROPgadget指令的用法: ROPgadget --binary file --string “/bin/sh”
ROPgadget --binary rop --only ‘pop|ret’ | grep rdi
系统函数的参数不一定是/bin/sh还可以是/sh!
整数溢出:有符号数字到unsigned number可以通过输入负数来使其溢出

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值