Pwn题中修改程序连接库的方法

”BUUCTF之pwn题解(一些栈题+程序分析) 文章目录前言一、test_your_nc二、rip2.读入数据总结 前言 萌新的总结(包含当时做题的全过程),方便以后查看。有什么不对的望各位大佬指点。 一、test_your_nc 1.直接nc(nc+的ip+端口号)。这里是直接进入了对方的shell命令中(有些题目是直接进入对方的文件并不会进入对方的shell中)。接下来就是和操作自己的shell一样的,ls查看目录,cat查看文件flag。 相互连接 二、rip 1使用IDA打开文件,先找main函数,然后按F5查看伪代码。看wp说fun可疑,点进 阅读详情

做Pwn的时候有时候会遇到题目的环境和本地环境不一致的情况。如果要装和远程环境相同的虚拟机就会比较麻烦,下面可以通过修改binary动态连接库的方法,强行让程序链接到与远程环境相同的库上。

1.首先下载好和远程环境相同的动态库,如libc-2.23.so;然后下载与之相符的链接器ld-2.23.so。有两个项目可以实现自动下载 libc:https://github.com/niklasb/libc-database和https://github.com/matrix1001/glibc-all-in-one。
2.运行下面脚本。这个脚本修改了二进制文件的头部信息,将其连接器位置修改成你想替换的连接器,然后修改环境变量LD_PRELOAD,去加载动态库。

import os
from pwn import *

def change_ld(binary, ld):
    """
    Force to use assigned new ld.so by changing the binary
    """
    if not os.access(ld, os.R_OK): 
        log.failure("Invalid path {} to ld".format(ld))
        return None
 
         
    if not isinstance(
CTF(Pwn) 当题目为我们提供Libc版本.so文件, 与 不提供的区别 做了一道题目,它提供了 libc文件; 这道题 可以使用 libc-2.23.so文件 来 解出来, 也可以不使用; 当使用 libc2.23.so文件时 EXp为 from pwn import * p = remote("node3.buuoj.cn",29829) libc=ELF('libc-2.23.so') elf = ELF('./pwn1') write_plt = elf.plt['write'] write_got = elf.got['write'] main = 0x0804 阅读详情

相关推荐

Linux开发板运行程序报错:No such file or directory

问题: 在ubuntu上使用交叉编译工具链编译的程序文件,拷贝到ARM开发板中,执行时,报以下错误: -sh: ./hello: No such file or directory 但是hello可执行文件是确实存在的 解决方法: (1)在ARM开发板的远程登录界面中,进入到/lib/目录下,发现ld-linux-armhf.so.3为链接文件,链接到了ld-2.23.so (...

菜菜哥的杂货铺 3264

pwn题一把梭工具源代码part1

这个工具说实话不是很好用,之前在某🐟上看到还要卖10块钱,现在公众号发了开源了,一开始尝试了几个签到题都没有跑出来,拿原本的测试文件发现没问题,找了五六题才发现一个可以用的,确实可以一把梭,但是没那么全面吧,就想着看看那个源码分析一下,说不定后期可以自己改改,搞一个更好的工具,由于这个代码太长了2400行之多,这里就分段理解一下前面的检查机制,后续还会看看攻击阶段能不能改一下。的 gadget,说明副作用多,需要额外控制寄存器,用other_rdi_registers标记副作用。

cyy001128的博客 1786

新手打pwn题

攻击者可以使用格式化字符串的特性,将一个特定的值写入到可以修改canary的位置上,从而绕过检测。它是C语言中的标准函数库,提供了各种基础函数和数据类型的定义,以及多个常用功能的实现。弹出时的数据顺序:由于栈的"先进后出"原则,"pop"指令弹出的数据顺序与它们被"push"到栈中的顺序相反。当使用"pop"指令弹出数据时,栈指针会自动向下移动,指向新的栈顶位置。x86架构(如Intel和AMD处理器)中的"pop"指令:在x86汇编语言中,"pop"指令用于将栈顶的数据弹出并存储到目标操作数中。

m0_74736832的博客 2058

基于zio编写PWN代码

目录预备知识一、CTF PWN基础知识二、zio简介1.导入zio库2.与远程服务器建立网络连接3.从远程服务器读取数据4.向远程服务器发送数据5.与服务器建立shell交互三、pip四、checksec脚本实验目的实验环境实验步骤一实验步骤二实验步骤三 预备知识 一、CTF PWN基础知识 《CTF PWN进阶训练》系列实验要求实验者已经了解如下相关的基础知识,包括: 1.理解基本的汇编指令及语句; 2.掌握IDA Pro的基本用法; 3.熟悉网络编程(socket)基本原理; 4.编写简单的Python

ChuMeng1999的博客 2275

[BUUCTF]PWN11——get_started_3dsctf_2016

[BUUCTF]PWN11——get_started_3dsctf_2016 题目网址:https://buuoj.cn/challenges#get_started_3dsctf_2016 步骤: 第一个方法,本地打通,要自己创建一个flag.txt 例行检查,32位,开启了nx保护 nc一下,看看程序大概的执行情况 32位ida载入,shift+f12查看程序里的字符串,看到了flag.txt 双击跟进,ctrl+x查看哪个函数调用了它,发现了一个函数,当a1=0x308cd64f,a2=0x19

mcmuyanga的博客 4994

pwn入门之栈溢出练习

本文原创作者:W1ngs,本文属i春秋原创奖励计划,未经许可禁止转载!前言:最近在入门pwn的栈溢出,做了一下jarvisoj里的一些ctf pwn题,感觉质量都很不错,难度循序渐进,把自己做题的思路和心得记录了一下,希望能给入门pwn的朋友带来点帮助和启发,大牛轻喷题目链接:https://www.jarvisoj.com/challenges1、level0(64位) 代码  也就是输出Hel...

xiaoi123的博客 4803

linux libc-2.3.2.so

LINUX上的文件,最高到GLIBC_2.3.3 #strings libc-2.3.2.so |grep GLIBC_ GLIBC_2.0 GLIBC_2.1 GLIBC_2.1.1 GLIBC_2.1.2 GLIBC_2.1.3 GLIBC_2.2 GLIBC_2.2.1 GLIBC_2.2.2 GLIBC_2.2.3 GLIBC_2.2.4 GLIBC_2.2.6 GLIBC_2.3 GLIBC_2.3.2 GLIBC_2.3.3 GLIBC_PRIVATE

深入解析NPN与PNP传感器驱动电路的设计逻辑与实战应用

本文深入解析NPN与PNP传感器驱动电路的设计逻辑与实战应用,详细对比两者的电流路径差异和电平变化特性。通过实际案例分享电路设计要点,包括上拉电阻选择、保护二极管配置等,并提供工业应用中的选型策略和常见故障排查指南,帮助工程师优化传感器系统集成。

weixin_42561476的博客 470

机场数据治理系列介绍(1):机场行业数据中台中的数据管理顶层设计方案

民航机场行业的数据中台中,有关数据管理顶层设计方案需要结合机场行业的业务特点和技术需求进行具体的设计,今日我们简要考量设计提供一个参考方案:

机场信息系统研究员的专栏 1604

来自工业界的知识库 RAG 服务(二),RagFlow 源码全流程深度解析

前面介绍过有道 QAnything 源码解析,通过深入了解工业界的知识库 RAG 服务,得到了不少调优 RAG 服务的新想法。因此本次趁热打铁,额外花费一点时间,深入研究了另一个火热的开源 RAG 服务RagFlow的完整实现流程,希望同样有所收获。首先依旧可以先从框架图入手,与常规的 RAG 架构进行一些比较可以看到右侧知识库被明显放大,同时最右侧详细介绍了文件解析的各种手段,比如OCR等,这些在常规的 RAG 中可能会作为一个不起眼的。

易迟的专栏 2万+

Mac上Office合法安装与激活全指南:2021/2024/M365区别解析

Office是微软办公套件的核心产品,其在macOS平台的部署逻辑与Windows截然不同——不依赖传统密钥激活,而是基于Microsoft账户与设备标识的云端绑定机制。理解这一原理,是解决‘无法验证开发者’‘打不开’‘功能受限’等常见问题的前提。Office 2021代表永久许可模型,Office 2024 LTSC面向企业离线场景,Microsoft 365则是持续订阅服务,三者在授权验证方式、更新策略与系统兼容性上存在本质差异。实际应用中,需结合macOS版本、芯片架构(Intel/Apple Sil

weixin_33491377的博客 1258

ESP-SPARKBOT AI 智能机器人:v1.2 全流程复刻指南

本文介绍 ESP-SPARKBOT AI 智能机器人 v1.2 版本的全流程复刻,包含 PCB 、3D 打印、固件烧录、常见问题解决、参考资料等

举世誉之而不加劝,举世非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。 9255

YOLOv8独家原创改进:原创自研 | 创新自研CPMS注意力,多尺度通道注意力具+多尺度深度可分离卷积空间注意力,全面升级CBAM

自研CPMS,多尺度通道注意力具+多尺度深度可分离卷积空间注意力,全面升级CBAM

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 3797

《手把手教你修复过期K8s集群证书:记一次K8s集群起死回生实录》

今天本想打开半年前部署的K8s测试集群跑个Demo,结果`kubectl`直接报错`certificate has expired`!作为一名云原生老司机,我决定把这次'抢救'过程记录下来,手把手带大家解决这个运维常见问题。

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 3778

制作一个完整的Shopify主题

Liquid是Shopify的模板语言,用于动态渲染页面内容。Liquid是Shopify的模板语言,用于动态渲染页面内容。Shopify主题包含多个文件和文件夹,包括布局、模板、部分、配置和资产文件夹。Shopify主题包含多个文件和文件夹,包括布局、模板、部分、配置和资产文件夹。准备好你的主题后,可以将其提交到Shopify主题商店。确保你的主题符合Shopify的质量标准和指南。准备好你的主题后,可以将其提交到Shopify主题商店。确保你的主题符合Shopify的质量标准和指南。

luckucu的博客 175

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

上一篇: 【Re】 HomuraVM
下一篇: 【Pwn】NCTF2019 pwn me 100 years! (Ⅲ)
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值