|
19.04.2005, 05:30
Продукт: Coppermine Photo Gallery
Версия: 1.3.x (и ниже)
URL: http://coppermine.sourceforge.net/
Описание:
Пользователи Галереи Coppermine могут отправить комментарии, содержащие IP адрес в переменной x-forwarded-for доступная только для глаз админа. Переменная X-Forwarded-for не проверяется и сразу записывается базу данных. Пользователь может определить / переопределить эту переменную. Тем самым применить XSS атаку или IP-спуфинг.
Устраняем уязвимость:
Откройте modules/coppermine/include/init.inc.php
Найдите:
PHP код:
if (isset($HTTP_SERVER_VARS['HTTP_CLIENT_IP'])) { $hdr_ip = stripslashes($HTTP_SERVER_VARS['HTTP_CLIENT_IP']); } else { if (isset($HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR'])) { $hdr_ip = stripslashes($HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR']); } else { $hdr_ip = $raw_ip; } }
Ниже добавьте:
PHP код:
if (!preg_match('/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/', $raw_ip)) $raw_ip = '0.0.0.0'; if (!preg_match('/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/', $hdr_ip)) $hdr_ip = '0.0.0.0';
|
|