pwn常用函数

本文详细介绍了在PWN(网络安全)领域中常用的C/C++函数,包括输入输出类的write(), read(), scanf(), fputs(), fgets(), puts()和gets(),转换类的atoi(), strtoul(),过滤类的seccomp(),以及执行类的execve()和system()。这些函数在编写exploit代码时起着关键作用,涉及文件描述符、格式化输入/输出、字符串处理和程序执行等方面。" 113614235,10547663,MySQL统计查询:一条SQL获取多状态订单数量,"['MySQL查询', 'SQL统计', '数据操作']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pwn常用函数

1.输入输出类

1.1 write()函数

**函数原型:**ssize_t write(int fd, const void *buf, size_t count)

**函数功能:**由fd指定输出的位置,将buf的内容进行输出,输出的长度为n

函数参数:

  • fd:文件描述符;write一般为1,由屏幕输出显示
  • buf:指定的缓冲区,即指针,指向一段内存单元;比如GOT表项
  • count:要写入文件指定的字节数,64位一般指针8字节,32位是4字节。

**使用示例:**write(1,GOT地址,8|4):显示GOT对应函数的实际地址

备注:

x64传参:

  • rsi=p64(0x1)
  • rdi=p64(GOT)
  • rdx=p64(0x8)

1.2 read()函数

**函数原型:**ssize_t read (int fd, void *buf, size_t count)

**函数功能:**由fd指定写入内容的来源,将待写入的内容写入到buf,写入的长度为count

函数参数:

  • fd:文件描述符;read 为0,由键盘写入
  • buf:指定的缓冲区,即指针,指向一段内存单元;比如向.bss段写入’/bin/sh\x00’
  • count:要写入文件指定的字节数

**使用示例:**read(0, buf, t):向buf所指的地址写入t字节长度的内容,写入的内容由键盘输入

1.3 scanf()函数

函数原型: int scanf(const char *format, …)

函数功能: 格式化输入

**函数参数: **

  • format:格式字符串,指定了输入的格式,并按照格式说明符解析输入对应位置的信息并存储于可变参数列表中对应的指针所指位置。每一个指针要
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值