CVE-2022-27778: curl removes wrong file on error
Medium
Vulnerability Details
## Summary:
Curl command has a logic flaw that results in removal of a wrong file when combining `--no-clobber` and `--remove-on-error` if the target file name exists and an error occurs.
## Steps To Reproduce:
1. `echo "important file" > foo`
2. `echo -ne "HTTP/1.1 200 OK\r\nContent-Length: 666\r\n\r\nHello\n" | nc -l -p 9999`
3. `curl -m 3 --no-clobber --remove-on-error --output foo http://testserver.tld:9999/`
4. `ls -l foo*`
5. `cat foo.1`
`-m 3` is used here to simulate a denial of service of the connection performed by the attacker.
## Impact
Removal of a file that was supposed not to be overwritten (data loss). Incomplete file left of disk when it should have been removed. This can lead to potential loss of integrity or availability.
Actions
View on HackerOneReport Stats
- Report ID: 1565623
- State: Closed
- Substate: resolved
- Upvotes: 8