17775713579 发表于 2025-9-2 21:33

创维盒子随机生成3码SN+STBID+MAC地址的SHELL小脚本

本帖最后由 八云红 于 2025-9-3 10:04 编辑

前言


因为想要修改电视盒子mac地址,所以制作了这个小脚本,POSIX规范编写


预览





使用方法

将此文章里面的代码,复制后保存到 stb_gen.sh,或者下载附件里面的代码


将脚本复制到 盒子的 /system/bin/ 路径 或 /data/local/tmp/ 路径


cd 定位到相应路径

授予可执行权限
chmod +x stb_gen.sh
切换到Root
su
执行脚本,重启之后 SN STB ID和MAC地址都会变成随机的
busybox sh stb_gen.sh

代码如下:
#!/system/bin/sh
mac_index=0
macid_hex=""
while true; do
      tmp=""
      if [ $mac_index -gt 1 ] && [ $mac_index -lt 17 ]; then
                tmp="\x3$(grep -m1 -ao '' /dev/urandom | head -n1)"
      elif [ $mac_index = 66 ]; then
                for it in $(head -n1 /dev/urandom | sha256sum | head -c32 | awk '{print toupper($0)}' | fold -w1); do
                        tmp="$tmp\x"$(printf "%s" "$it" | od -tx1 -An | tr -d " " | tr -d "\n")
                done
      elif [ $mac_index -gt 98 ] && [ $mac_index -lt 105 ]; then
                tmp="\x$(head -c 6 /dev/urandom | md5sum | head -c2)"
      elif [ $mac_index -gt 142 ]; then
                tmp="\x70\x61\x73\x73\0\0\0\0\0\0\0\0\0\0\0\0"
                macid_hex=$macid_hex$tmp
                break
      else
                tmp="\0"
      fi
      macid_hex=$macid_hex$tmp
      mac_index=$((mac_index + 1))
done
hexsum=0
for it in $(printf "%b" "$macid_hex" | od -tx1 -An -v -w1); do
      tmp=$(printf "%d" "0x$it")
      hexsum=$((hexsum + tmp))
done
for it in $(printf "%04x" $hexsum | fold -w2); do
      macid_hex="\x$it$macid_hex"
done
if [ ${#macid_hex} = 502 ]; then
      macdev=$(readlink "$(find /dev/block/platform/ -name macid)")
      if [ -e "$macdev" ]; then
                printf "%b" "$macid_hex" | dd of="$macdev" bs=64k
      fi
fi
printf "\n"


脚本下载

柠檬和少年 发表于 2025-9-3 13:12

感谢分享

duheng511 发表于 2025-10-26 20:38

ddddddddddddddddddddddddddddddddd

slb116763814 发表于 2026-3-4 16:10

别的盒子能用吗?

PASFPASF 发表于 2026-4-6 06:09

1111

llongfox 发表于 2026-7-10 16:29

{:117:}
页: [1]
查看完整版本: 创维盒子随机生成3码SN+STBID+MAC地址的SHELL小脚本