- 博客(81)
- 资源 (2)
- 收藏
- 关注
原创 tsgctf-2021-lkgit-无锁竞争-userfaultfd
类似,但是这个的【2】提供了一个往占位结构体写数据的功能,但这里略微复杂一点。结合异步并行调用+userfaultfd,再尝试看看没有没有问题。单看,ioctl中的三个方法,好像都没有问题。用户态传递过来的参数。用户态传递过来的参数。
2024-02-09 01:18:35
1588
1
原创 SECCON-2020-kstack:userfaultfd + setxattr + double free
启动脚本#!/bin/shqemu-system-x86_64 \ -m 128M \ -kernel ./bzImage \ -initrd ./rootfs.cpio \ -append "root=/dev/ram rw console=ttyS0 oops=panic panic=1 kaslr quiet" \ -cpu kvm64,+smep \ -net user -net nic -device e1000 \ -no-reboot
2024-02-08 19:39:07
1614
原创 midnightsun-2018-flitbip:任意地址写
题目提供了一个新的系统调用号,调用号为333addr和bit。作用:对addr地址存储数据的第bit位与1进行异或(起始下标是第0位)限制:使用全局变量限制异或功能的次数,进入系统调用检查flit_count是否大于等于1如果等于1,则直接退出小于1,则对数据进行异或,并增加flit_count的值也就是正常情况下,该系统调用的异或功能只能起作用一次题目问题:系统调用未对传递的addr参数做检查,可以传入内核空间的地址。由于未开启。
2024-02-08 15:33:47
955
原创 attack demo - USMA
允许普通用户进程可以映射内核态内存并且修改内核代码段,通过这个方法,我们可以绕过Linux内核中的CFI缓解措施,在内核态中执行任意代码。
2024-02-06 03:37:48
616
原创 tee漏洞学习-翻译-2:探索 Qualcomm TrustZone的实现
该地址指向由内核分配的“scm_response”缓冲区,但也由 TrustZone 内核验证以确保它实际上是“允许”范围内的物理地址 - 即对应于 Linux 内核内存的物理地址,而不是 TrustZone 二进制文件中的内存位置。现在我们了解了 SCM 调用的工作原理,并且已经在 TrustZone 内核中找到了用于处理这些 SCM 调用的处理函数,我们可以开始反汇编 SCM 调用以尝试查找其中之一的漏洞。正如您在上图中看到的,引导加载程序映像包含一个名为“tz”的映像,这就是我们要查找的映像。
2024-02-05 12:48:24
1805
1
原创 tee-pwn-00-HITCON 2018-Super Hexagon-biso.bin包含的内容
尝试IDA64-arm大端-aarch64,有内容了(amie插件识别不了大端的系统寄存器)操作了TTBR0_EL1,TTBR1_EL1,这个应该是EL1的kernel了。没有出来,通过ida分别指定架构arm,armv8,看起来不是字符串的就用。识别出来,能处理EL3,大概就是EL3相关的处理程序了。放到IDA64-armv8里面试试,不像字符串的就按。发现有调用EL3,EL2的指令,但是插件出了些问题。通过binwalk分析各段的内容,啥都没分析出来。好像还少一个S-EL0,之后再分析。
2024-02-02 10:23:47
929
原创 tee漏洞学习-翻译-1:从任何上下文中获取 TrustZone 内核中的任意代码执行
根据 ARM Ltd. 的说法,TrustZone 是:“…针对各种客户端和服务器计算平台(包括手机、平板电脑、可穿戴设备和企业系统)的全系统安全方法。该技术支持的应用程序极其多样化,但包括支付保护技术、数字版权管理、BYOD 以及一系列安全的企业解决方案。简而言之,这意味着 TrustZone 是一个旨在在目标设备上启用“安全执行”的系统。为了执行安全的 TrustZone 代码,需要指定一个特定的处理器。该处理器可以执行非安全代码(在“正常世界”中)和安全代码(在“安全世界”中)。
2024-01-25 12:44:24
1257
原创 制作基于ubuntu-base的文件系统,用于sudo,网络内核cve调试
新增和修改的内容大部分是在内存缓存中的,还没有写进rootfs.img中需要执行sync将文件缓存写入磁盘效果^C。
2024-01-17 20:14:27
1655
原创 Memory Deduplication Attacks
Memory Deduplication 是一种减少系统上使用的内存量的优化。这个想法是,相似的进程可能具有相似的内存内容,因此通过将具有相同内容的内存页指向相同的物理地址并将它们标记为写时复制,可以节省大量内存。Linux 通过(KSM)来实现这一点,顾名思义,它通过将具有相同内容的页面指向相同的物理内存来“合并”它们。KSM 将以可配置的时间间隔定期运行,每次扫描多个页面以查找要合并的相同内容。请注意,默认情况下可能未启用 KSM。
2024-01-15 21:16:33
1102
原创 how2heap-2.23-05-unsorted_bin_attack
从unsorted bin的bk中,获取最旧的chunk,之后再根据chunk->bk,从最旧到最新开始遍历,尝试在unsorted bin链表中找到合适的chunk。然后chunk a就脱链(怎么脱链,放到哪里的逻辑,在修正的代码之后),unsorted bin和chunk b开始修正其fd,bk,修正的代码就是上面的。unsorted bin attack的效果就是在指定的位置,写入unsorted bin头结点的首地址,就是那个所谓的较大的值。就发生在chunk脱链,
2024-01-04 18:55:37
1179
2
原创 how2heap-2.23-02-fastbin_dup_into_stack
fastbin_dup_into_stack和fastbin_dup没啥区别 https://blog.youkuaiyun.com/u014679440/article/details/135383465。仅仅是欲修改的位置,在栈中。
2024-01-04 13:28:07
429
原创 arm汇编-补充-画图记忆 LDM/STM系列指令
原始文章系列翻译-进作者的专栏可以翻到所有翻译系列:https://zhuanlan.zhihu.com/p/109057983系列:https://www.anquanke.com/post/id/86383。
2023-12-23 18:21:52
661
转载 aosp 模拟器 kernel编译
如下链接可以正常编译使用编译Android 的 linux内核,并用emulator命令启动编译好的linux内核_乌托拉的技术博客_51CTO博客如下链接可以配置kernel调试使用Android模拟器调试linux内核_昨夜星辰_zhangjg的博客-优快云博客_模拟器内核...
2022-05-15 00:56:39
543
原创 android10.0新增系统服务
添加系统服务 showme0x00 环境aosp源码:android-10.0.0_r40x01 添加aidlframeworks/base/core/java/android/os/IShowmeManager.aidlpackage android.os;/** @hide */interface IShowmeManager{ String getVal(); }0x02 aidl 添加到 android.bpframeworks/base/Android.b
2022-05-12 20:24:18
965
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅