前言

该漏洞的利用是通过发送 POST 报文在正常字段 SERVICES=DEVICE.ACCOUNT 后紧跟了一个 AUTHORIZED_GROUP=1 (二者用 %0a 连接),导致 cgibin 文件解析时先识别到了第一个 = ,认为 SERVICES 是键,DEVICE.ACCOUNT%0aAUTHORIZED_GROUP=1 是值。随后又对字符串进行解码,%0a 处理为 \n,此时内存中字符串为 _POST_SERVICES=DEVICE.ACCOUNT\nAUTHORIZED_GROUP=1 ,后续在 cgibin 中认证失败,在此基础上添加了 AUTHORIZED_GROUP=-1

image-20231027191647900

之后把整个数据发送给 php 文件进行处理, getcfg.php 文件中if($AUTHORIZED_GROUP < 0) 获取字段值时,首先解析到的是 AUTHORIZED_GROUP=1 从而通过了验证。又因为可以加载 htdocs/webinc/getcfg 目录下的任意文件,最终造成敏感文件的信息泄露

阅读全文 »

前言

本文对 CVE-2017-17215 的复现过程进行了记录,该漏洞位于华为 HG532 路由器,在 UPnP 服务中存在 NewStatusURLNewDownloadURL 标签中的命令注入。通过向端口 37215 ,地址为 /ctrlt/DeviceUpgrade_1 发送 POST 报文进行漏洞的触发。整体而言,这个漏洞确实是目前复现过最简单的了,但自己在做的时候依然踩了一些坑…😅

阅读全文 »

前言

最近浅玩了一下树莓派,本以为要焊接电路板,搞硬件。也算是为之后拆路由器读芯片练练手,接触后发现给树莓派烧录完系统,基本还是玩的软件层(也可能是境界不够🤔)。本文记录了我用树莓派 zero w 配合 P4wnP1 ALOA 做了一个 badusb ,最终配合 Cobalt Strike 生成的木马以及红队大哥做的免杀,可以达到插谁,谁成肉鸡的效果😎

阅读全文 »

LD_PRELOAD

LD_PRELOADLinux 系统的一个环境变量,它允许运行程序时优先强制加载指定的动态链接库,并且由于 全局符号介入机制 的影响,LD_PRELOAD 指定的动态链接库中的函数会覆盖之后其他动态链接库中的同名函数。对于调试程序或者向程序中注入自定义的代码都是很方便的,本文记录了如何通过 LD_PRELOAD 环境变量来 hook 程序,达到植入后门和调试的目的

阅读全文 »

前言

winmt 师傅之前挖到了一个锐捷的未授权 RCE 漏洞,影响了该厂商下的众多路由器、交换机、中继器等设备。winmt 师傅已经发布了 相关的挖掘经历,对仿真的搭建和漏洞分析已经写的比较详细。本篇文章主要是自己对该漏洞调用链进行一个完整的梳理,以及在 winmt 师傅文章中未提到的部分我会进行记录。

阅读全文 »

前言

这算第二次复现 IOT 漏洞,第一次是很老的 DIR-815 ,第二次直接复现的是 winmt 师傅今年挖到的一个思科漏洞 CVE-2023-20073 。年份上跨越不算小,就导致了复现过程中屡屡遇到问题而没什么解决的办法,而网上除了 winmt 师傅本人做了漏洞的分析之外,也没有找到其他资料。这里发自内心的感谢 winmt 师傅给予我提供的指导和帮助,否则可能要走更多的弯路甚至会对很多地方一知半解的就完成了所谓的 “复现” ,写这篇文章的一个重要目的就是想帮助之后复现这个漏洞的师傅提供一些参考,毕竟不是每个人都能遇见一个万能的 winmt QAQ。本文对于 CVE-2023-20073 复现过程做了详尽的记录,其中包括了遇见过的各种坑和解决问题的方法及思路。再次对 winmt 师傅表示感谢!

漏洞介绍

Cisco RV340RV340WRV345RV345P 四款型号的路由器中最新固件均存在一个未授权任意文件上传漏洞 (且目前尚未修复),攻击者可以在未授权的情况下将文件上传到 /tmp/upload 目录中,然后利用 upload.cgi 程序中存在的漏洞,最终造成存储型 XSS 攻击。

阅读全文 »

网上关于 D-Link DIR-815 路由器漏洞复现的文章还是蛮多的,因此第一次的复现选择了这个软柿子🤔。因为相关文章很多的缘故,所以我尽可能来写一些大多文章没有提到的点。

漏洞描述 :DIR-815 固件中的 Hedwig.cgi 脚本中,在处理 HTTP 头时,如果 Cookie 字段中含 uid= 的值则存在栈溢出漏洞,从而获得路由器远程控制权限

影响版本 :DIR-815/300/600/645等

阅读全文 »

写在前面

说下学习 MIPS 汇编基础的思路,作为一个接触新知识面的小白,我首先去查了一下如何编译 MIPS 架构的程序,然后自己写了一个简单的代码,放入 IDA 后开始进行汇编代码的学习,遇见一条指令就学习一条指令,为了观察更细致的内存变化同时还要学习如何用 gdb 来进行 MIPS 架构程序的调试。在这个过程中记录见到的汇编指令和寄存器等等,接着是函数调用约定的学习,参考着网上的文章再结合 gdb 调试基本就能理解透彻。感觉对 MIPS 汇编基础和函数调用约定已经得心应手,就可以做一些 PWN 题以此来稳固打下的基础,最后尝试来手写各种的 shellcode。希望这个思路能给之后自学者一点借鉴。

阅读全文 »