初试路由器漏洞挖掘

初探路由器漏洞挖掘

参考文献
Exploiting Embedded Systems – Part 1
本次尝试完全是参照上文进行 , 作为初次的学习和了解 , 受益匪浅

So far our tutorials have focused on extracting file systems, kernels and code from firmware images. Once we have a firmware image dissected(解剖) into something we can work with, the next step is to analyze it for vulnerabilities.
这样援引原文的的一句话

效仿其过程对路由固件进行初步探索
这里选用的 NETGEAR 的固件
虽然最后没有成功 , 但是学习的是一种方法和思路!

part1

解包固件

固件 即firmware , 就是储存在路由陈flash的所有数据的总称
一般来说完整的录用固件有一下几个部分

  • Uboot (也就是我们的引导程序 , 用于硬件初始化 , 和内核加载 之于win就是 grub )
  • Kernel (这里就是我们的内核 大多是 linux 内核)
  • Filesyste (文件系统 , 这里装载着所有的应用 , 文件)

大多路由器的固件都是可以从官网直接下载到的 , 如果下载不到
还有 硬件dump 的方法 , 和网络流量截取的方法

这次是直接从 NETGEAR 官网下载固件

    wnr2000v3-v1.1.2.14.img

这个img 文件就是更新所需的固件 , 这里使用神器
binwalk

binwalk -v wnr2000v3-v1.1.2.14.img

这里将会自动的分析固件所包含的内容
初试路由器漏洞挖掘_第1张图片

这里得到分析结果 , 可以见到这个 img 文件,只是包含了一个文件系统
(因为这个是用于固件升级的, 所以 uboot 和 kernel 是不变的)
可以见到使用的是 squashfs 这个文件系统

SquashFS[1] 是一套基于Linux内核使用的压缩只读文件系统。该文件系统能够压缩系统内的文档,inode以及目录,文件最大支持2^64字节。
在linux嵌入式设备中很常见


得到结果后 , 这里将其解包 使用命令

binwalk -eM wnr2000v3-v1.1.2.14.img

之后在目录下得到 固件的 解包文件夹
初试路由器漏洞挖掘_第2张图片

这里可以见到 得到了文件系统

分析

脚本分析

With the file system extracted, one of the first things to look for are any configuration files or start up scripts in the etc directory:

所以第一步就是在 目录下 寻找 配置文件和启动脚本
这里有个小技巧,因为要切换目录 ,
这里我们定义一个shell 变量
这里写图片描述
尝试列出 conf 的文件

初试路由器漏洞挖掘_第3张图片
好像没看到什么有用的内容
找到 rc.d 目录 其中
是一些初始化的脚本
整齐的分类链接

初试路由器漏洞挖掘_第4张图片

part2

参考文献
exploiting-embedded-systems-part-2

在这篇里面 , 是如何发掘一个 SQL 注入漏洞
具体思路是 , 先通过 burpsuit 进行抓包 , 看其 请求的文件 对其进行字符串出分析
从而找到 sql 注入点

抓包

初试路由器漏洞挖掘_第5张图片

这里是一个 GET 请求, 不过请求的是 / 也就是网页的index.html
不像 链接中一样 请求的是一个cgi 文件
这里密码是作为 http请求头中 发送的 是 base64 的加密
(结尾的 = ) 很明显
解码之后得到的是 admin:password

你可能感兴趣的:(逆向工程,信息安全大类)