The strings were concatenated, making it impossible to match the path.
- 主要語言
- CodeQL
- 星號
- 10.1k
- 分支
- 2.1k
- 平均合併
- 2 天 15 小時
- 30 天內合併 PR
- 141
描述
Source can query the fileName.

Sink can also query data.

Logic can be connected.

But no results were found.

The test from fileName to FileUtils.isValidFilename can retrieve results.

However, when querying from fileName to writeBytes, no results are returned. The data passes through the line "String filePath = Global.getDownloadPath() + fileName;" in the middle.


貢獻指南
研究方向
Start by tracing the reported flow from fileName through "String filePath = Global.getDownloadPath() + fileName;" to writeBytes, and compare it with the path to FileUtils.isValidFilename. Inspect how the CodeQL data-flow query handles the concatenation, then verify that the fileName-to-writeBytes query returns a result while the existing path remains covered.
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- java
- 領域
- security
- Issue 類型
- 缺陷
- 難度
- 3/5
- 預估耗時
- 1-2 天
- 活躍度
- 停滯
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100