GitLab · Report #216243
CSV injection in gitlab.com via issues export feature.
Validstatus
mediumseverity
20upvotes
21 Jul 2017disclosed
How it was found
Dear GitLab bug bounty team,
Summary
GitLab allows users to export issues as a .csv file. By injecting a payload into an issue title an attacker could exfiltrate data or execute code on the target machine. For instance, by naming an issue =cmd|' /C calc'!A0 I am able to open up calc.exe on Windows.
Steps to reproduce
- Create an issue with
=cmd|' /C calc'!A0as the title; - Export all issues (The file is sent as an email attachment);
- Open the .csv file on a Windows machine.
Result: calc.exe pops up.
Fix
Prefix =, +, - and @ symbols with a ' in issues when exporting them to a .csv file.
If you require any further information, feel free to contact me.
Best regards, Ed