PDA

Просмотр полной версии : typo3 macina_banners


Star_s
02.09.2010, 01:08
Всем хай.

Наткнулся на уязвимость в аддоне typo3 macina_banners , есть описание:

http://typo3.org/teams/security/security-bulletins/typo3-20070608-1/

Но ни нужных версий аддона (

x3r0x
03.09.2010, 14:44
Баг в файле class.tx_macinabanners_pi1.php, а именно в функции main()

Исправлено в 1.4.1 (кусок кода):


PHP:
if ($record!=false)

{

// update clicks



/* removed SQL injection vulnarable code

$clicksque ry = 'UPDATE tx_macinabanners_banners SET cli cks = clicks+1 WHERE uid = ' . $_GET['uid'];

$clicks = mysql(TYPO3_db, $clicksquery);

if (mysql _error())

t3 lib_div::debug(array (mysql_error(), $clicksquer y ));

*/



// fiexed SQL injection vulnarable code : t hanx to Stefan Geith

$GLOBALS['TYPO3_DB']->exec_UPDATEquery('tx_macinabanners_banners','uid = '.intval($this->piVars['banneruid']),array('clicks'=>$record['clicks']+1));



// get URL

unset ($this->piVars['banneruid']);

header('Location: '.$this->cObj->getTypoLink_URL($record['url']));

exit;

}

Скачать

macina_banners_1.4.1.t3x (http://typo3.org/fileadmin/ter/m/a/macina_banners_1.4.1.t3x)

... странно, но у меня в 1.4.0 код отличается от того, что закомментирован в 1.4.1

а именно...


PHP:
if ($record!=false) {

// update clicks

$clicksquery='UPDATE tx_macinabanners_banners SE T clicks = clicks+1 WHERE uid = '.$this->piVars['banneruid'];

$clicks=mysql(TYPO3_db,$clicksquery);

if (mysql _error())

t3lib_div::debug(array (mysql_error(),$clicksquer y));



// t3lib_div::debug($record);



// get URL

unset ($this->piVars['banneruid']);

header('Location: '.$this->cObj->getTypoLink_URL($record['url']));

exit;

}

Скачать

macina_banners_1.4.0.t3x (http://typo3.org/fileadmin/ter/m/a/macina_banners_1.4.0.t3x)

Скрипт распаковки (http://lamskoy.livejournal.com/2633.html)