The strings were concatenated, making it impossible to match the path.
- Vorherrschende Sprache
- CodeQL
- Sterne
- 10.1k
- Forks
- 2.1k
- Ø Merge
- 2 T. 15 Std.
- Gemergte PRs (30 T.)
- 141
Beschreibung
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.


Beitragsleitfaden
Rechercherichtung
Beginne damit, den gemeldeten Datenfluss von fileName über "String filePath = Global.getDownloadPath() + fileName;" bis zu writeBytes nachzuverfolgen und ihn mit dem Pfad zu FileUtils.isValidFilename zu vergleichen. Untersuche, wie die CodeQL-Datenflussabfrage die Verkettung behandelt, und verifiziere anschließend, dass die Abfrage von fileName zu writeBytes ein Ergebnis liefert, während der bestehende Pfad weiterhin abgedeckt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- security
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100