PDA

View Full Version : Уязвимость в Coppermine Photo Gallery 1.3.*


Soniks
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
Найдите:

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;
}
}
Ниже добавьте:

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';

sat90
27.02.2006, 16:53
Привет, вот не смотрел на этот топик, пока не случилось...

такое сообщение - While executing query "SELECT count(*) FROM admy_cpg_pictures, admy_cpg_albums WHERE admy_cpg_pictures.aid = admy_cpg_albums.aid AND category >= 10000" on 0

mySQL error:

и явно кто то обиделся на меня.

Извечный вопрос - что делать?

Coppermine v1.3.0-Nuke