-
缺乏安全更新机制
-
使用不安全或过时的组件
-
配置不当的加密方式
-
缺乏设备管理
1.2 更新系统上的固件不安全
① 固件可否被修改
#!/bin/sh
sudo echo "Starting..."
MKSQSHFS4='./bin/mksquashfs4'
PADJFFS2='./bin/padjffs2'
case "$1" in
'extract'|'e')
offset1=`grep -oba hsqs $2 | grep -oP '[0-9]*(?=:hsqs)'`
offset2=`wc -c $2 | grep -oP '[0-9]*(?= )'`
size2=`expr $offset2 - $offset1`
#echo $offset1 " " $offset2 " " $size2
dd if=$2 of=kernel.bin bs=1 ibs=1 count=$offset1
dd if=$2 of=secondchunk.bin bs=1 ibs=1 count=$size2 skip=$offset1
sudo rm -rf squashfs-root 2>&1
sudo unsquashfs -d squashfs-root secondchunk.bin
rm secondchunk.bin
;;
'create'|'c')
sudo $MKSQSHFS4 ./squashfs-root ./newsecondchunk.bin -nopad -noappend -root-owned -comp xz -Xpreset 9 -Xe -Xlc 0 -Xlp 2 -Xpb2 -b 256k -processors 1
sudo chown $USER ./newsecondchunk.bin
cat kernel.bin newsecondchunk.bin > $2
$PADJFFS2 $2
rm newsecondchunk.bin
;;
*)
echo 'run
"modify-firmware.sh extract firmware.bin"
You will find file "kernel.bin" and folder "squashfs-root".
Modify "squashfs-root" as you like,after everything is done,run
"modify-firmware.sh create newfirmware.bin"
And you will get a modified firmware named newfirmware.bin.
'
;;
esac
-
Dnsmasq
-
pppd
-
kernel
-
busybox
-
Dnsmasq(2.73) 缓冲区溢出漏洞
-
pppd(2.4.7) CVE-2020-8597~ppp 2.4.2 到 2.4.8 中 pppd 中的 eap.c 在 eap_request 和 eap_response 函数中存在 rhostname 缓冲区溢出
-
Linux kernel(4.14.95) CVE-2018-7566、CVE-2018-9858、CVE-2018-9865等漏洞
-
Busybox(1.28.4) CVE-2018-1000500 wget缺少 SSL 证书验证漏洞,该漏洞可导致任意代码执行
3.1 网络流量隐私
$ opkg install tcpdump
ssh root@192.168.72.132 "tcpdump -i br-lan -s 0 -w -" | wireshark.exe -k -i -
3.2 数据库隐私
本文始发于微信公众号(山石网科安全技术研究院):系列|OWASP IoTGoat固件漏洞挖掘 04
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论