pwn - 零基础ROP之Android ARM 32位篇(新修订)

一、环境搭建

  安装ndk r10e,必须得这个版本,其他版本可能导致  -fno-stack-protector 不生效!

r10e

  • Darwin: https://dl.google.com/android/repository/android-ndk-r10e-darwin-x86_64.zip
  • Linux: https://dl.google.com/android/repository/android-ndk-r10e-linux-x86_64.zip
  • Windows: https://dl.google.com/android/repository/android-ndk-r10e-windows-x86_64.zip

二、Pwn代码编译

VSCode 新建个main.cpp文件,代码如下

#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<string.h>void callsystem()
{write(STDOUT_FILENO, "Flag:XY2024\n", 13);    write(STDOUT_FILENO, "call shell...\n", 13);   system("/system/bin/sh");
}void vulnerable_function() {int i = 128;char buf[i];read(STDIN_FILENO, buf, 256);
}int main(int argc, char** argv) {char buf[128] = {0};if (argc==2&&strcmp("passwd",argv[1])==0)callsystem();snprintf(buf, 128, "vulnerable_function=%p\n", vulnerable_function);    write(STDOUT_FILENO, buf, strlen(buf));        write(STDOUT_FILENO, "Hello, World\n", 13);    vulnerable_function();
}

新建Android.mk,内容如下:

LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := level6
LOCAL_SRC_FILES := main.cpp
LOCAL_LDLIBS := -llog
LOCAL_CFLAGS += -fno-stack-protector
include $(BUILD_EXECUTABLE)

新建Application.mk,内容如下:

APP_ABI := armeabi-v7a
APP_STL := c++_static
APP_CFLAGS += -fno-stack-protector 
APP_PLATFORM := android-21

cd到项目所在目录,执行编译:

d:\android-ndk-r10e\ndk-build NDK_PROJECT_PATH=. NDK_APPLICATION_MK=Application.mk APP_BUIL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/824281.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

51-41 Stable Video Diffusion,高质量视频生成新时代

23年11月&#xff0c;Stability AI公司公开了稳定视频扩散模型Stable Video Diffusion(SVD)的代码和权重&#xff0c;视频生成迎来了新时代。SVD是一种潜在扩散模型&#xff0c;支持文本生成视频、图像生成视频以及物体多视角3D合成。从工程角度来看&#xff0c;本文主要提出了…

Real3DPortrait照片对口型,数字人,音频/视频驱动数字人

先看效果 上传一张图片和一段音频&#xff0c;照片如下&#xff1a; 合成后效果如下&#xff1a; 照片对口型-音频驱动 支持音频驱动和视频驱动&#xff0c;视频可以使照片有参照视频中的口型和和动作。 项目地址 https://github.com/yerfor/Real3DPortrait 我的环境 win…

[网络安全]-059-安全大模型以及训练数据集

Contents Tools IntegratedAuditReconnaissanceOffensiveDetectingPreventingSocial EngineeringReverse EngineeringInvestigationFixAssessmentCases ExperimentalAcademicB

真有立即做出40+BI零售数据分析报表的方案?

有&#xff0c;奥威BI零售数据分析方案是一套标准化的BI方案&#xff0c;预设零售数据分析模型和BI报表&#xff0c;点击应用后&#xff0c;将自动从系统中取数&#xff0c;并根据方案的预设计算分析指标、分析数据&#xff0c;并生成让人快速理解数据情况的BI数据可视化报表。…

Spark/SparkSQL读取Hadoop LZO文件概述

一、前置配置 IDEA Maven安装配置 Scala&#xff08;可选&#xff09; Java Hadoop.dll&#xff08;可能需要&#xff0c;具体看有无相关错误信息&#xff09; hadoop-lzo-0.xx.xx.jar&#xff08;如果你的版本过高&#xff0c;需要到官网下载高版本&#xff0c;mvnrepository仓…

服务器中毒怎么办?企业数据安全需重视

互联网企业&#xff1a; 广义的互联网企业是指以计算机网络技术为基础&#xff0c;利用网络平台提供服务并因此获得收入的企业。广义的互联网企业可以分为:基础层互联网企业、服务层互联网企业、终端层互联网企业。 狭义的互联网企业是指在互联网上注册域名&#xff0c;建立网…

react15升级17问题记录

,当前旧项目主要依赖版本介绍&#xff1a;这里只贴出重要依赖包的旧版本做展示&#xff0c;可以看到版本都相当落后了&#xff0c;升级的话会涉及一些API以及依赖的修改或者弃用 次文章只记录当前项目使用&#xff0c;其他项目不一定通用 {"react": "^15.6.1&q…

Lua语言 备查

开发工具 1.SciTE &#xff08;入门级&#xff09; IDEA lua &#xff08;商业级&#xff09; 基础 注释 --单行注释 a "hello" --a是一个标识符号--多行注释 --[[这是多行注释]]--连接符 -- .. str 123..456变量 变量类型可以随意改变 数字开头会报错 五种基本…

postman 调试 传base64字符串 原来选xml

上个图 工具类 package org.springblade.common.utils;import com.alibaba.fastjson.JSONObject; import org.springblade.modules.tc.mas.Submit;import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStrea…

【FreeRTOS】使用CubeMX快速移植FreeRTOS工程到蓝桥杯开发板(STM32G431RBT6)

使用CubeMX快速创建FreeRTOS工程到蓝桥杯开发板&#xff08;STM32G431RBT6&#xff09; CubeMX配置CubeMX基础工程的配置☆FreeRTOS相关配置FreeRTOS配置选项卡的解释 软件工程架构与程序设计小综合&#xff1a;任务的创建删除、挂起与恢复设计cubexMX配置创建任务软件程序设计…

python怎么连接oracle

一&#xff1a;弄清版本&#xff0c;最重要&#xff01;&#xff01;&#xff01; 首先安装配置时&#xff0c;必须把握一个点&#xff0c;就是版本一致&#xff01;包括&#xff1a;系统版本&#xff0c;python版本&#xff0c;oracle客户端的版本&#xff0c;cx_Oracle的版本…

基于go+vue的多人在线聊天的im系统

基于govue的多人在线聊天的im系统 文章目录 基于govue的多人在线聊天的im系统一、前端部分二、后端部分1、中间件middleware设计jwt和cors2、配置文件设计3、Mysql和Redis连接4、路由设计5、核心功能设计 一、前端部分 打算优化一下界面&#xff0c;正在开发中。。。 二、后端…

OpenHarmony实战开发-如何使用Navigation实现多设备适配。

介绍 在应用开发时&#xff0c;一个应用需要适配多终端的设备&#xff0c;使用Navigation的mode属性来实现一套代码&#xff0c;多终端适配。 效果图预览 使用说明 将程序运行在折叠屏手机或者平板上观看适配效果。 实现思路 本例涉及的关键特性和实现方案如下&#xff1a…

【WebLogic】Oracle发布2024年第二季度中间件安全公告

Oracle于美国时间2024年4月16日发布了 WebLogic 中间件2024年第二季度的安全公告&#xff0c;涉及漏洞共计 10 个&#xff0c;涉及示例程序的高危漏洞 1 个&#xff0c;中危漏洞中有3个涉及到核心组件&#xff08;Core&#xff09;。 此外&#xff0c;Oracle JDK1.8 的小版本号…

整理Meta GDC 2024 上关于XR、空间计算相关的分享

Meta 在 GDC 2024 上的全面覆盖,涵盖了如何利用 Meta Quest 构建全息游戏以及如何利用平台为开发者创造成功的会议。 视频分为 11 个部分,每个部分都是一场独特的会议,涵盖了从构建下一代 XR 体验到如何利用 Meta Quest 建立业务等话题 比如: 1、利用 Meta Quest 构建全息…

二分法在有序数组中的应用(JavaC)

文章目录 在有序数组中确定num是否存在Java实现C语言实现 在有序数组中找>num的最左位置Java实现C语言实现 在有序数组中找<num的最右位置Java实现C语言实现 在有序数组中确定num是否存在 Java实现 public static boolean exist(int[] arr, int num) {if (arr null ||…

IAttachService

目录 1、 IAttachService 1.1、 * 分页查询附件 1.2、 * 保存附件 2、 ILogService 2.1、 * 保存操作日志 2.2、 * 获取日志分页

【C++题解】1345. 玫瑰花圃

问题&#xff1a;1345. 玫瑰花圃 类型&#xff1a;基本运算、小数运算 题目描述&#xff1a; 有一块nn&#xff08;n≥5&#xff0c;且 n 是奇数&#xff09;的红玫瑰花圃&#xff0c;由 nn 个小正方形花圃组成&#xff0c;现要求在花圃中最中间的一行、最中间的一列以及 4 个…

每天一个数据分析题(二百七十七)

检索销量表中销量最好的商品id和销量&#xff0c;下列SQL语句正确的是&#xff08;&#xff09; A. SELECT 商品id,销量 FROM 销量表 WHERE 销量MAX(销量) B. SELECT 商品id,MAX(销量) FROM 销量表 GROUP BY 销量 C. SELECT 商品id,MAX(销量) FROM 销量表 GROUP BY 商品id …

设计模式学习笔记 - 设计模式与范式 -总结:2.实际开发中如何避免过度设计,如何避免设计不足?

概述 设计模式的理论部分已经学完了。我想你一定蠢蠢欲动&#xff0c;想要赶紧实践一下&#xff0c;把这些理论知识应用到自己的项目中。不过&#xff0c;要注意下面两点&#xff1a; 一种是过度设计。在开始编写代码之前&#xff0c;花很长的时间做代码设计&#xff0c;在开…