👹VNCTF 2024 复现
2024-3-5
| 2024-10-8
0  |  Read Time 0 min
type
status
date
slug
summary
tags
category
icon
password

shellcodemaster

关于shellcode加上了sandbox限制,需要绕过的情况,这里有一篇博客讲的很好:
他把大多数的sandbox的情况都讲好了,我们只需要根据这篇博客进行利用就行
这个题权限如下:
notion image
NX开启
我们查看源码
notion image
发现就是一个纯考察shellcode的情况,同时我们查看seccomp:
notion image
发现主要是read和execve被禁用了,但是open和write还是可以被利用的
这样就对应到了read禁用情况,可以使用mmap进行替代
sys_mmap是Linux内核中实现内存映射(Memory Mapping)功能的系统调用之一。它主要用于申请内存空间、将磁盘上的文件映射到内存中,函数原型如下:
  • addr :想要写入,或者说是映射的地址,这里甚至可以直接使用0x10000这种地址(可能是因为这题比较简单?wp也是直接用了0x2333000这种地址,很短的地址)
  • len :写入长度
  • prot :权限,7代表rwx,应该也是rwx-> 4:2:1 的结构
  • flags :0x10表示映射文件MAP_FILE,0x2表示私有映射MAP_PRIVATE ,这里用0x12就行
  • fd :就是fd
  • pgoff :偏移量,一般设0
根据这个利用,我们可以直接写出payload
  • CTF-WP
  • Hgame 2024 复现N1CTF junior
    • Giscus
    • Cusdis
    Catalog