2025强网拟态-win_致敬mt
2025强网拟态-win_致敬mt参考文章:第八届“强网”拟态防御国际精英挑战赛 - WIN!致敬mt 复现 - Hexo 本地启动123456789sudo qemu-system-arm \ -M versatilepb \ -m 256 \ -kernel vmlinuz-3.2.0-4-versatile \ -initrd initrd.img-3.2.0-4-versatile \ -hda debian_wheezy_armel_standard.qcow2 \ -append "root=/dev/sda1 console=ttyAMA0" \ -net nic -net user,hostfwd=tcp::80-:80,hostfwd=tcp::4444-:22,hostfwd=tcp::1234-:1234 \ -nographic 其实直接运行 1./boot.sh 就可以了,但是为了调试和使用ssh传输文件,所以多映射了两个端口出来 分析固件扫描一下端口 12345678910111213141516171819202...
小米AX9000路由器CVE-2023-26315复现
小米AX9000路由器CVE-2023-26315复现注意,不建议按照本文的环境搭建教程来配置ARM64环境,作者在最后执行poc的时候出现了问题,建议按照ZIKH26师傅的文章来配置环境 点击这里 准备工作这里直接引用winmt师傅的原话了 首先,可以从官网下载对应版本的固件:小米路由器AX9000 稳定版 1.0.168 小米的固件最外面用的是UBIFS文件系统,固件本身没有加密,先用binwalk解出一个.ubi文件,然后用ubireader_extract_images xxx.ubi,可以在ubifs-root内解出三个.ubifs文件,对其中的xxx-ubi_rootfs.ubifs用binwalk再解开,即可得到里面的SquashFS文件系统,也就是核心部分。 小米的前端也是用的Lua编写的,但是其中的Lua文件不是源码,而是编译后的二进制文件,所以我们需要对其进行反编译。目前,对Lua反编译的常用工具有unluac和luadec。但是小米对Lua的解释器做了魔改,就不能直接用这两个工具进行反编译了,所幸已有师傅对此做了研究,并给出了专门针对小米固件的反编译工具u...
CNVD-2013-11625
CNVD-2013-11625复现前言本来是不太想复现太老的漏洞的,但是这个漏洞在网上可以找到的文章非常多,复现了一下,确实很经典,可以学到很多东西,像我这样的新手拿来入门真的非常友好,也有很多大佬的文章可以参考,这里就放一下自己的一些感悟以及自己的exp,不再做太多分析了) 参考文章: 文章一 文章二 漏洞分析漏洞分析这方面winmt大佬已经分析的很透彻了,这里就不再多说了,大家可以看大佬的文章 好吧其实是因为我懒得写了(bushi mips架构两个很有意思的特性是 在调用叶子函数和非叶子函数时对于寄存器的处理问题 流水线指令集的相关特性,主要体现在“分支延迟效应”和“缓存不一致性” 大家在调试过程中自己可以体会的到的 在qemu用户模式下复现先放exp: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838...
IOT环境搭建
IOT安全环境搭建实验环境ubuntu22.04,之前使用的最新版的ubuntu,每次配环境总是一堆环境依赖问题,所以,直接新配了一个ubuntu22.04,兼容性更强,但是随之而来也遇到了一些问题,配环境是一个很痛苦的事情》》 参考文章请点击这里 binwalk注意 很多文章都说要提前安装sasquatch工具,binwalk才能正常使用,但是我并没有安装,我猜测可能是现在binwalk里自带了,如果最后binwalk不成功的话,大家可以试着安装一下这个 安装rust编译器123sudo apt install curlcurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y. $HOME/.cargo/env 安装并编译binwalk12345git clone https://github.com/ReFirmLabs/binwalksudo ./binwalk/dependencies/ubuntu.shsudo apt install build-essenti...
chrome v8 CVE-2021-30632
chrome v8 CVE-2021-30632参考文章: [原创]chrome v8漏洞CVE-2021-30632浅析-二进制漏洞-看雪-安全社区|安全招聘|kanxue.com v8漏洞CVE-2021-30632复现CVE-2021-30632复现 securitylab/SecurityExp - 掘金 CVE-2021-30632 V8引擎漏洞分析 | CN-SEC 中文网 CVE-2021-30632 V8引擎漏洞分析 个人见解,有不对的地方,欢迎各位师傅批评指正 版本回退1234567cd v8git checkout 632e6e71c5fgclient synctools/dev/v8gen.py x64.debugninja -C out.gn/x64.debug d8tools/dev/v8gen.py x64.releaseninja -C out.gn/x64.release d8 前置知识 PropertyCell Ignition IR Turbofan JIT PropertyCell12345678910// A PropertyCel...
v8-学习-练习题
2019-数字经济大赛决赛-Browserdiff分析123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384diff --git a/src/builtins/builtins-array.cc b/src/builtins/builtins-array.ccindex e6ab965a7e..9e5eb73c34 100644--- a/src/builtins/builtins-array.cc+++ b/src/builtins/builtins-array.cc@@ -362,6 +362,36 @@ V8_WARN_UNUSED_RESULT Object GenericArrayPush(Isolate* isolate, } } // namespace +// Vulnerabili...
xnuca2020-babyV8
xnuca2020-babyV8参考文章v8 pwn入门篇利用合集-CSDN博客 题目分析可以看参考文章,这里主要分析exp 准备函数12345678910111213141516171819function hexx(str, value){ print("\033[32m[+]"+str+": \033[0m0x"+value.toString(16));}var buf=new ArrayBuffer(0x8);var fbuf=new Float64Array(buf);var ibuf=new BigInt64Array(buf);function ftoi(val){ fbuf[0]=val; return ibuf[0];}function itof(val){ ibuf[0]=val; return fbuf[0];} 溢出12345678var arr=[];arr[0]=1.1;arr.pus...
LilCTF-pwn
前言前不久打了一下Lilctf,全全爆零了,自己还是太菜了,但赛后复现,真的可以学到很多,收获满满 heap_Pivoting题目分析静态编译的glibc2.23的堆题,去除了符号表,建议先恢复一下符号表再做题,会方便很多(将sig文件放在ida的sig文件夹里,然后恢复一下就好了,很方便) 大体攻击流程:unstorebin_attack劫持chunk_list,修改main_arena中的topchunk,劫持stdout,flush泄露environ,修改栈ret劫持控制流,orw 之前的main_arena一直都是用来泄露libc的,也没细了解过,卡在这里一直没有进一步的进展,赛后才知晓可以修改topchunk中的内容,来劫持topchunk,实现任意申请,又学到新知识了~~ 劫持stdout就是劫持flag标志位和_IO_write_base,ptr,end,就可以利用flush刷新缓冲区泄露了,flush,openat,read,write函数的地址,在恢复符号表后都可以找到,至于environ,是在调试的过程中全局搜索得到的,大家有其他搜索办法的话欢迎留言噢~~,...
NSSCTF4th-pwn
how_to_fmt?这次的比赛pwn题只有一个,很可惜白天有点事情,下午回来时间不是很够,赛后一个小时勉勉强强做了出来,很可惜 小声哭,超小声 题目漏洞很明显的fmt,不再多说了,类型和之前LItCTF2025的fmt非常相似,只是当时直接ogg就可以getshell,而这个需要执行 system("/bin/sh")劫持printf函数自身的返回地址,尝试执行过pop rdi;binsh;system,但结果是rsp未对齐16字节导致失败,然后尝试加入ret使rsp对齐16字节,结果多出一个位置会导致输入的内容覆盖掉call system的地址,故失败,所以考虑在其他地方写入pop rdi;binsh;system,然后通过pop rsp;target_addr来劫持rsp,最后即可getshell 哦对,最一开始需要爆破一下栈地址,16分之一的概率,很容易 我exp中用来向目标地址写内容的脚本可以封装成一个函数,看起来会更加简便,我这里就不封装了,大家感兴趣可以自己尝试一下 这个自动化爆破脚本有些不太稳定,多试几次就好了QAQ~~ 噢对,写exp的时候...
初探V8
初探 V8参考文章Chrome-v8-入门 | iyheart的博客 chrome v8 pwn 学习 (2) | CoLin’s BLOG V8 Pwn Basics 1: JSObject - Wings 的博客 通过StarCTF oob题目学习V8 PWN 入门 | 长亭百川云 注意本文下图显示的内容都是基于v8 7.5版本的实验结果,该版本暂未使用指针压缩技术,对于高版本的v8的实验结果并不如下图所示 环境搭建1.需要下载两个编译v8源码的工具depot_tools、ninja (下载depot_tools需要挂代理) 12git clone https://chromium.googlesource.com/chromium/tools/depot_tools.gitgit clone https://github.com/ninja-build/ninja.git 2.然后将这两个工具添加进环境变量 123456echo 'export PATH=$PATH:"/path/to/your/depot_tools"' >...
