IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> BUUCTF PWN-----第1题:test_your_nc -> 正文阅读

[网络协议]BUUCTF PWN-----第1题:test_your_nc

CTF buuoj pwn-----第1题:test_your_nc


记录一下pwn的过程

新手学习日记,流水线记录.

打开题目,连接靶机,下载文件’test’

在这里插入图片描述

1. 首先checkesc ,检测文件的保护机制.

checksec在下载好pwntools后就有
参考链接: link.
参考链接: link.

bing@bing-virtual-machine:~/pwn$ checksec test
[*] '/home/bing/pwn/test'
    Arch:     amd64-64-little
    RELRO:    Partial RELRO
    Stack:    No canary found
    NX:       NX enabled
    PIE:      PIE enabled
bing@bing-virtual-machine:~/pwn$ 

从图上可以看出它是一个64位程序,开了NX防护(堆栈不可执行)

代码中:

  • Relro:Full Relro(重定位表只读)
    Relocation Read Only, 重定位表只读。重定位表即.got 和 .plt 两个表。
  • Stack:No Canary found(能栈溢出)
  • NX: NX enable(不可执行内存)
    Non-Executable Memory,不可执行内存。
  • PIE: PIE enable(开启ASLR 地址随机化)
    Address space layout randomization,地址空间布局随机化。通过将数据随机放置来防止攻击。

2. 接下来用IDA打开ELF文件test.

IIDA pro 打开test ELF文件

  • 按下shift+f12,打开string window,

发现/bin/sh

在这里插入图片描述

双击/bin/sh, 点击command,点击X,发现/bin/sh的address在main函数里

在这里插入图片描述

点击option->general,勾选相应选项可方便看代码,具体如下:

在这里插入图片描述

按下f5,发现main函数就是一个简单的system函数.直接调用了/bin/sh,所以根据题目提示直接nc就行.

在这里插入图片描述

3.回到Linux,直接nc做题

简单查看一下nc的用法: nc -help
nc的全名是netcat,其主要用途是建立和监听任意TCP和UDP连接,支持ipv4和ipv6。因此,它可以用来网络调试、端口扫描等等

在这里插入图片描述

nc ip地址 ip端口
连接靶机后,ls发现flag,cat得到flag
在这里插入图片描述

flag{000a3b78-286a-411f-bc8e-67e4a25ea890}

总结

参考link

checksec

  • 查看程式開了哪些保護機制

  • 安裝:Pwntools 內建

  • 使用:checksec <執行檔>

nc / ncat

  • 遠端連線工具
  • 使? ncat 將程式在靶机连接起來,接著使用 nc 连接
  • 使用:nc

Vim

  • 編輯器
  • 安裝:sudo apt install vim

Pwntools

  • 專用於 CTF Exploit的Python Library

  • 包含本地執行、遠程連接、shellcode 生成、ROP 的建構、ELF 解析等功能

  • 安裝:
    sudo apt install python-pip
    sudo pip install pwntools

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-28 09:42:41  更:2021-08-28 09:44:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 20:52:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计