!C99Shell v. 1.0 pre-release build #13!

Software: Apache. PHP/5.5.15 

uname -a: Windows NT SVR-DMZ 6.1 build 7600 (Windows Server 2008 R2 Enterprise Edition) i586 

SYSTEM 

Safe-mode: OFF (not secure)

E:\xampp\xampp\htdocs\monitor\ajaxMyTop\   drwxrwxrwx
Free 7.97 GB of 239.26 GB (3.33%)
Detected drives: [ a ] [ c ] [ d ] [ e ] [ f ]
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     showthreads.php (3.59 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
// written by brett pierce 
// brett@brettvile.com 
// subsequently butchered by Luke Crouch

require_once("config.php");
require_once(
"lib/DBTopFactory.php");
   
// go to DB (via factory) to get array of threads
$dbTopFactory = new DBTopFactory($dbServer);
$dbTop $dbTopFactory->getDBTop($dbHost$dbUser$dbPass);
$processList $dbTop->getThreads();
$threadArray $processList->threads;

// *** new filter section
$filteredArray = array();
for (
$i=0$i<count($threadArray); $i++){
    
//format Host.
    
$threadArray[$i]['Host'] = chopHost($threadArray[$i]['Host']);
    
$insertFlag 1;
    foreach(
$filters as $currentFilter) {
        
$filterVal = ($_GET[$currentFilter]) ? ($_GET[$currentFilter]) : "ALL";
        if(
$insertFlag != 0) {
            
$insertFlag filter($threadArray[$i][$currentFilter],$filterVal,$currentFilter);
        }
    }
    if (
$insertFlag == 1) {
        
$filteredArray[] = $threadArray[$i];
    }
}

// *** sorting section (should wrap into function)
$sortByCol $_GET['sortByCol'];
$sortByOrder $_GET['sortByOrder'];
$sortArr = array();
foreach(
$filteredArray as $key=>$row){
    
$sortArr[$key] = $row[$sortByCol];
}
if (
$sortByOrder == "ASC"){
    
array_multisort($sortArrSORT_ASC$filteredArray);       
} else if (
$sortByOrder == "DESC"){
    
array_multisort($sortArrSORT_DESC$filteredArray);
}
   
// *** xml output section (should wrap into function as well)
// setup the initial root element of the xml document.
$xml = new DomDocument();   
$rootElement $xml->createElement('response');
$rootElement $xml->appendChild($rootElement);

foreach(
$filteredArray as $row) {
           
        
//create a new thread element.
        
$thread $xml->createElement('div');
        
$thread->setAttribute('class','Columns dataRow');
        
$thread->setAttribute('id''threadRow' $row['Id']);
        
$thread->setAttribute('title''Click to explain SELECT.');
        
$thread->setAttribute('onmouseover','highlight(this);');
        
$thread->setAttribute('onmouseout','deHighlight(this);');
        
$thread->setAttribute('onclick''new Explanation(' $row['Id'] .');');
        
        
//insert thread into DOM object.
        
$thread $rootElement->appendChild($thread);
        
        
// add each column into thread
        
foreach($row as $fieldname => $fieldvalue) {                        
            
$child $xml->createElement('div');
            
$child->setAttribute('class','Column dataDetail');
            
$child $thread->appendChild($child);
                
            
$value $xml->createTextNode($fieldvalue);
            
$value $child->appendChild($value);
        }         
}
   
   
$xml_string $xml->saveXML();
   
   
header("Content-Type: text/xml"); 
   echo 
$xml_string;
 
   
   
// ** helper functions filter and chopHost
   
function filter($fieldValue,$filterValue,$currentFilter) {
       
      if(
$currentFilter == "Command" && $filterValue == "awake") {
         if(
$fieldValue != "Sleep") {
            return 
1;
         }
      }
         
      if(
$filterValue == "ALL") {
         return 
1
      }
      
      if(
$fieldValue == $filterValue) {
         return 
1;
      }
      
      return 
0;
   }

   
   function 
chopHost($host) {
      
//this function will return the appropriate hostname
      //or IP address without the port specifications.
          
      //strip the port.
      
$chopped_fieldvalue explode(":",$host);
      
$chopped_fieldvalueNoPort $chopped_fieldvalue[0];
         
$chopped_array explode(".",$chopped_fieldvalueNoPort);
         
         
//now determine what to return.
         
if(count($chopped_array) == 4) {
           
//this is an IP address.
           
return($chopped_fieldvalueNoPort);
         } else {
             
//return the host name without domain(s).
             
return($chopped_array[0]); //return first element in explode list.
         
}//end if/else.
         
   
}//end chopHost.
   
?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0312 ]--