如何做视频网站流程图,如何选择做网站,png图片可以做网站图标吗,wordpress首页显示文章列表漏洞简介
TOTOLINK NR1800X最近报了一些cve#xff0c;现主要对其命令注入进行具体分析#xff0c;以及对其登录绕过进行分析。
固件下载地址#xff1a;https://www.totolink.net/home/menu/detail/menu_listtpl/download/id/225/ids/36.html
环境搭建
固件提取
binwa…漏洞简介
TOTOLINK NR1800X最近报了一些cve现主要对其命令注入进行具体分析以及对其登录绕过进行分析。
固件下载地址https://www.totolink.net/home/menu/detail/menu_listtpl/download/id/225/ids/36.html
环境搭建
固件提取
binwalk提取固件 binwalk -Me TOTOLINK_C834FR-1C_NR1800X_IP04469_MT7621A_SPI_16M256M_V9.1.0u.6279_B20210910_ALL.web
查看文件相关信息mips架构小端序使用mipsel来进行模拟。 readelf -h ./bin/busybox
固件模拟
有两种模拟方式user模式和system模式感觉根据后面的模拟结果来看好像差别不是很大。
user模式模拟
尝试用qemu模拟
cp $(which qemu-mipsel-static) .
sudo chroot . ./qemu-mipsel-static ./usr/sbin/lighttpd会报错显示No configuration available. Try using -f option. 这个报错是需要-f指定已有的配置文件。
运行sudo chroot . ./qemu-mipsel-static ./usr/sbin/lighttpd -f ./lighttp/lighttpd.conf即可接着又会报错说缺少一个文件创建在对应目录创建一个即可。
cd ./var
mkdir run
cd run
touch touch lighttpd.pid然后运行可以看到服务启动成功。 但是这个路由器登录是需要密码的并且由于是模拟的关系大部分功能无法正常使用登录不进去但是还好经过搜索发现看雪上有一篇文章讲述了如何进行绕过登录登录过后能观察到里面的一些设置通过bp抓包能分析出一些有效的请求头内容其数据传输通过json实现。 system模拟
user模拟中创建的文件都要有后面会一起传到quem模拟的虚拟机中。
下载qemu启动虚拟机所需要的“镜像”这是小端序所以去下载mipsel的镜像。
wget https://people.debian.org/~aurel32/qemu/mipsel/debian_wheezy_mipsel_standard.qcow2
wget https://people.debian.org/~aurel32/qemu/mipsel/vmlinux-3.2.0-4-4kc-malta创建虚拟网桥实现虚拟机内部和Ubuntu的连接并且启动虚拟机创建一个shell文件。
#set network
sudo brctl addbr virbr0
sudo ifconfig virbr0 192.168.5.1/24 up
sudo tunctl -t tap0
sudo ifconfig tap0 192.168.5.11/24 up
sudo brctl addif virbr0 tap0qemu-system-mipsel -M malta -kernel vmlinux-3.2.0-4-4kc-malta -hda debian_wheezy_mipsel_standard.qcow2 -append root/dev/sda1 -netdev tap,idtapnet,ifnametap0,scriptno -device rtl8139,netdevtapnet -nographic然后sudo ./test.sh执行。
最后会让登陆和输入密码都写root就行然后就能成功进入qemu虚拟机。
在启动的虚拟机里面添加一个IP是在上面图片中的qemu虚拟机中执行命令。
ifconfig eth0 192.168.5.12 up然后则是将提取出的固件的文件系统上传到qemu虚拟机中在Ubuntu主机中执行命令。
scp -r squashfs-root/ root192.168.5.12:/root/然后到qemu虚拟机中进行挂载和启动。
chroot ./squashfs-root/ /bin/sh./usr/sbin/lighttpd -f ./lighttp/lighttpd.conf成功启动
界面这些和user模式都是差不多一样的。
漏洞分析
报了很多个漏洞大部分是堆栈溢出然后一些是命令注入这里主要分析命令注入的相关漏洞。
登录验证绕过
这两个命令执行都是是需要登录验证的这里先来分析如何进行登录验证绕过。
无论输入什么密码都会返回错误错误码为302。
先随便输入一个密码看看发的包可以看到主要的包有两个先看第一个包。
可以看到处理http post请求的是cstecgi.cgi传入了username和password对应action是login我们到相关位置去查看对应的代码。 可以看到这里主要就是用sprinf初始一段语句我们需要注意的是其中的topicurl这个后面跟的就是对应接口的字符串所以我们要去寻找loginAuth对应的处理函数。
这里再说一下cstecgi.cgi处理不同的函数接口就是通过topicurl的值实现的也就是后面goto LABEL_16的代码部分。
所以这些函数名称和函数地址也是那种常见的结构体的形式我们要寻找loginAuth对应的处理函数找到字符串的交叉引用然后在周围找找d键一下就能找到对应的处理函数函数地址在sub_42AEEC下面来具体分析这个函数。
前面还是会获取一些参数的值比如username还有password这些然后还对password进行了urldecode。
然后中间会有段比较password和http_passwd的代码其会修改v18的值。
v17 strcmp(v6, v30); // username http_username
if ( !strcmp(v35, v32) ) // passwd http_passwdv18 v17 ! 0;
elsev18 1;这里不知道是否是因为模拟环境的原因无论使用什么密码都无法正常登陆但是这里的v18需要注意下这是第二个包的参数之一而且这个值在最后会为0。
这段代码会snprintf一个重定向一个url然后进行访问其流程由flag参数的值决定我们随便输入密码就会进入第3个redirectURL需要注意其authCode参数授权码也就是之前v18的值现在它的值为0。
接下来我们看第二个包可以看到和我们前面分析的一样get访问了这个url。
这个http get请求的处理在web服务进程lighttpd中也就是我们quem启动的那个进程我们通过authCode字符串能交叉引用到其对应的函数为Form_Login。
开始分析Form_Login开始还是先获取参数的值然后根据goURL参数是否为空来判断是否进入if里面。
接着向下看。
所以这里我们可以了解到goURL就是接下来要访问的html文件authCode则是验证是否正确登录的一个值并且经过后面的测试访问home.html就可以进入到后台界面。 所以我们可以构造下面的url来绕过登录进入后台并且可以获取到cookie的SESSION_ID。
http://xxx.xxx.xxx.xxx/formLoginAuth.htm?authCode1userNameadmingoURLhome.htmlactionlogin
http://xxx.xxx.xxx.xxx/formLoginAuth.htm?authCode1userNameadmingoURLactionlogingoURL可有可无因为goURL无值时自动会strcpy “home.html”效果如下。 OpModeCfg 命令注入
第一个是 /cgi-bin/cstecgi.cgi 中的 OpModeCfg 函数的命令注入漏洞其漏洞原因是传入的hostName参数可执行到doSystem函数通过简单的构造即可导致命令执行。 但是想要执行到doSystem函数需要绕过一些判断语句proto不能为0346hostName不能为空。
UploadFirmwareFile 命令注入
第二个是 /cgi-bin/cstecgi.cgi 的 UploadFirmwareFile 函数其参数FileName参数可控并且将作为doSystem的参数被执行。
这个命令注入不需要绕过什么东西代码位置比较靠前。
攻击测试
先尝试bp发一下包可以看到攻击成功并且带有回显
编写个poc进行攻击先进行登录绕过获取cookie然后进行攻击攻击效果如下
对于另一个命令注入攻击方式也差不多只是没有回显简单修改下poc在tmp目录创建一个hack文件攻击效果如下
最后
分享一个快速学习【网络安全】的方法「也许是」最全面的学习方法 1、网络安全理论知识2天 ①了解行业相关背景前景确定发展方向。 ②学习网络安全相关法律法规。 ③网络安全运营的概念。 ④等保简介、等保规定、流程和规范。非常重要
2、渗透测试基础一周 ①渗透测试的流程、分类、标准 ②信息收集技术主动/被动信息搜集、Nmap工具、Google Hacking ③漏洞扫描、漏洞利用、原理利用方法、工具MSF、绕过IDS和反病毒侦察 ④主机攻防演练MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础一周 ①Windows系统常见功能和命令 ②Kali Linux系统常见功能和命令 ③操作系统安全系统入侵排查/系统加固基础
4、计算机网络基础一周 ①计算机网络基础、协议和架构 ②网络通信原理、OSI模型、数据转发流程 ③常见协议解析HTTP、TCP/IP、ARP等 ④网络攻击技术与网络安全防御技术 ⑤Web漏洞原理与防御主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作2天 ①数据库基础 ②SQL语言基础 ③数据库安全加固
6、Web渗透1周 ①HTML、CSS和JavaScript简介 ②OWASP Top10 ③Web漏洞扫描工具 ④Web渗透工具Nmap、BurpSuite、SQLMap、其他菜刀、漏扫等 恭喜你如果学到这里你基本可以从事一份网络安全相关的工作比如渗透测试、Web 渗透、安全服务、安全分析等岗位如果等保模块学的好还可以从事等保工程师。薪资区间6k-15k。
到此为止大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗
想要入坑黑客网络安全的朋友给大家准备了一份282G全网最全的网络安全资料包免费领取 扫下方二维码免费领取
有了这些基础如果你要深入学习可以参考下方这个超详细学习路线图按照这个路线学习完全够支撑你成为一名优秀的中高级网络安全工程师
高清学习路线图或XMIND文件点击下载原文件
还有一些学习中收集的视频、文档资源有需要的可以自取 每个成长路线对应板块的配套视频 当然除了有配套的视频同时也为大家整理了各种文档和书籍资料工具并且已经帮大家分好类了。 因篇幅有限仅展示部分资料需要的可以【扫下方二维码免费领取】