|
autocat
Зарегистрирован: 2015-04-12
Сообщений: 15
|
Потенциальная дыра в netcat?
файл netcat/admin/mailer.php
Код:<?
// Parameters (GET): number (default: 20)
$NETCAT_FOLDER = join(strstr(__FILE__, "/") ? "/" : "\\", array_slice(preg_split("/[\/\\\]+/", __FILE__), 0, -3)).( strstr(__FILE__, "/") ? "/" : "\\" );
include_once ($NETCAT_FOLDER."vars.inc.php");
require_once ($ROOT_FOLDER."connect_io.php");
require_once ($INCLUDE_FOLDER."lib/Mail/Queue.php");
$number = $_GET['number'] ? $_GET['number'] : 20;
$db_options = array('type' => 'ezsql', 'mail_table' => 'Mail_Queue');
$mail_options = array('driver' => 'mail');
$mail_queue = new Mail_Queue($db_options, $mail_options);
$mail_queue->sendMailsInQueue($number);
?>
Передача парметра идет в эту функцию:
Код:
function sendMailsInQueue($limit = MAILQUEUE_ALL, $offset = MAILQUEUE_START,
$try = MAILQUEUE_TRY)
{
$this->container->setOption($limit, $offset, $try);
while ($mail = $this->get()) {
$this->container->countSend($mail);
$result = $this->sendMail($mail);
if (!PEAR::isError($result)) {
$this->container->setAsSent($mail);
if($mail->isDeleteAfterSend()) {
$this->deleteMail($mail->getId());
}
} else {
PEAR::raiseError(
'Error in sending mail: '.$result->getMessage(),
MAILQUEUE_ERROR_CANNOT_SEND_MAIL, PEAR_ERROR_TRIGGER,
E_USER_NOTICE);
}
}
return true;
}
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
Вы имеете в виду, что злоумышленник может раньше расписания разослать письма в очереди или отправить их слишком много чтобы сайт-жертва попал в спамлисты?
В общем-то, действительно, нехорошо, можно насолить. Передам разработчикам.
|