923 pwn学习

news/2024/9/24 0:34:23/文章来源:https://www.cnblogs.com/capoo/p/18428222

9/23 pwn学习

前言

今天参加了NewStart竞赛,一共四道题,通过各种查资料做出了两道题(第一次体会到pwn题给人的无力感),做到第三题的时候发现已经不在我能力范围内了,exp写出来也无法攻击成功,在下午四点时只好作罢

不过让我自豪的是拿到了第二题的三血,也是pwn生涯的第一个高光时刻了(太容易满足了

于是我打算从基础知识入手开始学pwn,参考XMCVE 2020 CTF Pwn入门课程这个视频与书籍《CTF竞赛权威指南-pwn篇》进行学习

我将记录下学习的内容,方便后面进行知识的回顾

少年终将在pwn道路上闯出一番天地


不希望做一个玩也玩不好,学也学不好的人

2024/9/23

pwn的基本流程

pwn就是二进制漏洞挖掘与利用

1. 什么是二进制程序

就是可执行文件,在window的格式是.exe,在Linux中的格式是.elf

主办方出题一般会给出一个二进制文件,并且在远程服务器的某个端口挂上二进制服务

2. pwn的一般攻击流程

在远程服务器挂着一个二进制服务,利用主办方提供的同样的二进制程序,挖掘漏洞,并且编写exp进行攻击远程服务器

  1. 将二进制程序拖进Linux虚拟机
  2. 利用file命令去了解它是怎样一个格式,来决定用什么IDA打开
  3. 用32bit或64bit的IDA Pro反汇编器)来分析二进制的代码中究竟有什么内容,IDA可以将二进制文件的机器码转换为汇编代码、C语言代码(C语言是基础中的基础
  4. 根据IDA还原的C语言源代码(不是和原本编写者写得一模一样的,但是能实现的功能是一样的),寻找结构漏洞,并且利用漏洞
  5. 根据漏洞开始写exp(攻击脚本

这是一个exp示例

这是一个exp的示例
  1. 使用python命令运行该脚本,最终获取服务器控制权
  2. cat flag获得flag拿分

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

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

相关文章

Docker 部署 vue 项目

概述 技术栈:docker + vue + nginx 1、docker下载安装 nginx docker pull nginx2、创建nginx挂载目录 /usr/local/nginx (可根据自己需要存放文件的位置自行创建目录) mkdir -p /usr/local/nginx3、vim 创建default.conf server {listen 80;server_name localhost;#c…

TCP协议三次握手的个人理解

TCP协议的核心是可靠的数据传输,而保证传输是可靠的那就要求客户端和服务端双方都具备正常的收发功能。 基于此,第一次握手的时候,当服务端接收到这个SYN请求时,表明客户端要进行TCP连接,同步序列号seq=x,那么从服务端的角度来看: 1、客户端的发送能力是正常的; 服务端…

[vulnhub]LAMPSecurity: CTF5

https://www.vulnhub.com/entry/lampsecurity-ctf5,84/主机发现端口扫描探测存活主机,139为靶机 nmap -sP 192.168.75.0/24 Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-23 17:27 CST Nmap scan report for 192.168.75.1 Host is up (0.00049s latency). MAC Address…

jni安全利用的简单学习

首先定义一个最简单的类 public class EvilClass {public static native String execCmd(String cmd); } 因为我是MacOs端,在当前目录执行 javac EvilClass.java javac -h . EvilClass.java 生成 EvilClass.h 文件 /* DO NOT EDIT THIS FILE - it is machine generated */ #i…

day6[Llamaindex RAG实践]

"xtuner是什么?"在使用 LlamaIndex 之前InternLM2-Chat-1.8B模型不会回答借助 LlamaIndex 后 InternLM2-Chat-1.8B 模型具备回答的能力

【专题】2024AI智慧生活白皮书:AI智能科技重塑居家体验报告合集PDF分享(附原数据表)

原文链接:https://tecdat.cn/?p=37748 AI 已然成为家电家居市场的创新核心动力,可在个性化识别、预测维护等多方面提升产品价值。家享生活行业智能化展现多元场景,清洁智能崛起超厨房智能居第二,全屋智能潜力巨大。“套装 / 集成智能” 等品类增长快,智能新客多由老客升级…

kettle从入门到精通 第八十七课 ETL之kettle kettle文件上传

1、kettle本身文件上传功能不是很友好,甚至是不能直接使用,需要调整文件上传接口才可以正常接收到文件,本次讲解内容主要是通过自定义插件解决这个问题。 2、通过springboot 编写简单demo,模拟文件上传,接口支持三个参数unitCode、password、和文件dataFile。 java代码如下…

密码学承诺原理与应用 - 概览

作者:@warm3snow https://github.com/warm3snow 微信公众号:密码应用技术实战 博客园首页:https://www.cnblogs.com/informatics/ 标签:技术分享模板目录简介承诺方案原理符号定义方案定义常见承诺方案和原理哈希承诺ElGamal承诺Pedersen承诺零知识证明承诺Sigma承诺Sigma承…

Rhino基础操作1

Rhino的基础操作,包含视图操作、物件选取等非常基础的,本篇未涉及到具体的工具。注:非结构建模专业,纯粹是用Rhino写实用新型专利,所以学了下Rhino的建模。不理解最简面、曲线阶数的影响等,请原谅。--本篇导航--常用命令、鼠标中键菜单 基础设置(修改默认单位尺寸、修改…

arm各个集成开发环境+rvds4.1

ARM 之 各集成开发环境(IDE)说明(Keil、RVDS、ADS、DS-5、MDK) - xiaoheikkkk - 博客园 (cnblogs.com)最近,ARM官网进行了较大的改版,原来很多老工具可以免费下载(付费使用),但是改版后需要有购买凭证才可以下载!部分旧工具(补丁)的具体下载地址为https://silver.a…

python代码

1.求1+2+3+4+5+6+7+8+9+102.

FreeMarker 禁止自动转义标签-noautoesc

💖简介 FreeMarker 是一个用 Java 语言编写的模板引擎,它被设计用来生成文本输出(HTML 网页、电子邮件、配置文件等)。在 FreeMarker 中,默认情况下,当你在模板中输出变量时,如果这些变量包含 HTML 标签,FreeMarker 会自动转义这些标签以防止 XSS(跨站脚本攻击)。 �…