首页 > 系统相关 >pwn学习-ret2shellcode

pwn学习-ret2shellcode

时间:2024-05-30 16:57:02浏览次数:50  
标签:代码 写入 学习 ret2shellcode pwn shellcode 溢出

今天学习了pwn中的ret2shellcode,在之前学习的ret2text中,程序给我们留下了后门函数,可以直接溢出执行,而ret2shellcode是最经典的栈溢出漏洞利用方法,简单原理如下:

在栈溢出漏洞利用成功后,我们可以控制返回地址代码执行,但是这些代码在程序中默认没有,需要我们自己添加,这段代码被称为shellcode,写入shellcode,我们需要满足可以在程序中写入并且被写入的shellcode拥有被执行的权限

shellcode

shellcode其实就是一段汇编代码,常见的功能是获取目标系统的shell

shellcode有以下三种常见的获取方法

  1. 自己编写汇编代码,使用objdump等工具dump出来
  2. 使用pwntools中带的shellcraft功能
  3. 网站上公开的shellcode(别人已经编译好的)例如: shellcode database

具体生成流程可以参考之前写的博客: 手动生成shellcode

标签:代码,写入,学习,ret2shellcode,pwn,shellcode,溢出
From: https://www.cnblogs.com/Junglezt/p/18222698

相关文章

  • 深入探索汇编语言的顶尖级应用领域,包括多核并行处理、物联网和嵌入式系统、高性能计算
    汇编语言初级应用的大纲:1.汇编语言概述介绍汇编语言的基本概念和作用。解释汇编语言与高级语言的区别。简要说明汇编语言的历史和发展。2.汇编语言基础讲解汇编语言的基本语法和结构。介绍汇编语言中的指令、寄存器、内存等概念。解释汇编语言程序的组成部分,如数据段......
  • 【网络安全】萌新学习零信任
    前言面对日益增加的内网攻击威胁,一些模糊了边界,窃取信任的攻击层出不穷;又加上云原生的威胁,导致以防火墙,路由,网关等传统的边界划分手段,已经是力不从心;最后今些年的新技术,弥补了零信任的一大短板。使得国外的零信任发展越来越趋于完善,从而获得很多产出,使得我们去借鉴。为了将要......
  • OpenStack学习笔记之四:Cinder流程介绍及GlusterFS存储对接
    4、Cinder详解及存储对接4.1Cinder流程介绍4.1.1流程结构Cinder服务由四个进程组成:①cinder-api是一个WSGI应用程序,它接受并验证来自客户端的REST(JSON或XML)请求,并通过AMQP将它们路由到适当的其他Cinder进程。②cinder-scheduler确定哪个后端应作为卷创建或移动请求......
  • OpenStack学习笔记之五:Neutron介绍
    Neutron理论详解1引入OpenStack网络服务提供了一个API接口,允许用户在云上设置和定义网络连接和地址。这个网络服务的项目代码名称是Neutron。OpenStack网络处理虚拟设备的创建和管理网络基础设施,包括网络、交换机、子网以及由计算服务(nova)管理的设备路由器。高级服务,如防......
  • newlib 库介绍和学习
    介绍官网https://sourceware.org/newlib/github代码https://github.com/mirror/newlib-cygwin官网简介Newlib是一个用于嵌入式系统的C库。它是几个库部分的集合,所有这些部分都在免费软件许可证下,使它们可以在嵌入式产品上轻松使用。Newlib仅以源代码形式提供。它可以为广......
  • 矩阵 学习笔记
    引入矩阵的引入来自线性方程组,将其左边每一项的系数和右边的常数抽象出来就是矩阵。\[\left\{ \begin{array}{} x_1+2x_2=4\\ 2x_1+3x_2=5 \end{array}\right.\Leftrightarrow\left[ \begin{array}{} 1&2\\ 2&3 \end{array}\right]\left[ \b......
  • uni-app学习完结
    昨天空余一天,并未写记录,是昨天属于项目完结,这里把最后的打包上线等这里说下。打包成微信小程序打包成微信小程序,这需要再微信公众平台里面,进行登陆和设置。这里说下,注册的后,选择需要开发的功能,然后进入后根据提示,会有需要设定小程序的名称、类型等,然后认证这些,但是认证需......
  • AXI4+DDR学习
    我用的小梅哥的7010的开发板,这个板子无法直接在PL这边使用DDR存储,必须通过AXI4总线。HighPerformamcePORTS就是HP接口,为AXI接口,通常用于大量数据的高速传输。AXI总线介绍  AXI是基于burst的传输,burst传输是一种适用于AMBA协议的规则形式,通过这种规则,我们可以控制AMBA进行......
  • 锁相环学习---CD4046
    介绍​ cd4046主要用于调频(FM)信号的调制与解调,频率的合成,各种音频产生的领域。本博文主要介绍一下CD4046的一些基础配置还有基础用法,用2023年电赛H题为例子搭建(其实我也只会这个了QAQ),第一次学这个东西,如果有讲不到的东西,请见谅......
  • AnyCAD中的Editor示例代码学习1
    AnyCADRapidSDK(ARS)是一个包含三维几何造型、图形显示、数据管理等模块综合三维图形平台,支持Windows、Linux、MacOS多操作系统,支持.NET、Python、Java多开发语言,可以用于开发CAD/CAE/CAM/SIM应用程序,用于机械、建筑、电力、教育、机器人、科学计算等领域。目前计划基于Anyc......