Bug 23998

Summary: CVE-2010-2253: lwp-download does not reject downloads to filenames that begin with a . (dot) character
Product: Sisyphus Reporter: Vladimir Lettiev <crux>
Component: perl-libwwwAssignee: viy <viy>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: blocker    
Priority: P3 CC: at, cas, crux, ender, lav, ldv, mike, php-coder, qa_viy, shaba, viy
Version: unstable   
Hardware: all   
OS: Linux   
URL: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-2253

Description Vladimir Lettiev 2010-09-01 06:41:40 MSD

    
Comment 1 Vladimir Lettiev 2010-09-01 07:16:43 MSD
lwp-download in libwww-perl before 5.835 does not reject downloads to filenames that begin with a . (dot) character, which allows remote servers to create or overwrite files via (1) a 3xx redirect to a URL with a crafted filename or (2) a Content-Disposition header that suggests a crafted filename, and possibly execute arbitrary code as a consequence of writing to a dotfile in a home directory.

lwp-download честно предупредит если файл уже существует, что несколько снижает опасность. Но некоторые файлы, например ~/.popt редко существуют у пользователя и воспользовавшись данной уязвимостью можно тихо создать такой файл, например такого вида:

rpm exec -q         ../../../../../bin/rm -f .bash_history --

Что приведёт к тому, что запуск rpm -q приведёт к удалению файла. Более того этот ~/.popt будет читаться и при выполнении sudo rpm, что может привести к более тяжёлым деструктивным последствиям.
Comment 2 Vladimir Lettiev 2012-10-06 11:05:31 MSK
исправлено