!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/manage/class/   drwxr-xr-x
Free 52.6 GB of 127.8 GB (41.16%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     clsFileUpdate.php (7.96 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
status = 1;
}

function Edit(){
//--ใช้เมธอดนี้เมื่อต้องการปรับปรุงข้อมูล
//--โดยจะกำหนดสถานะของข้อมูลของอ๊อบเจ๊กให้เป็น 2
	$this->status = 2;
}

function Save(){
//--ใช้เมธอดนี้เมื่อต้องการบันทึกข้อมูลในอ๊อบเจ๊กเข้าสู่ฐานข้อมูล
//--โดยจะตรวจสอบสถานะของข้อมูลว่าข้อมูลในอ๊อบเจ๊กเป็นข้อมูลใหม่หรือข้อมูลเดิม
//--1 เป็นข้อมูลใหม่  2 เป็นข้อมูลเดิม
	if ($this->status==1){
		$sql = "insert into FileUpdate values(
			'$this->fileId',
 			'$this->updateDate',
 			'$this->filename1',
 			'$this->filename2',
 			'$this->flagfile',
 			'$this->flagupdate',
 			'$this->path',
 			'$this->detail',
			'$this->sysId',
			'$this->updatetime',
			'$this->flagselect',
			'$this->flagrestore',
			'$this->flaguse'
			)";
	}else {
		$sql = "update FileUpdate set 
			updateDate='$this->updateDate', 
			filename1='$this->filename1', 
			filename2='$this->filename2', 
			flagfile='$this->flagfile', 
			flagupdate='$this->flagupdate', 
			path='$this->path', 
			detail='$this->detail',
			sysId='$this->sysId',
			updatetime='$this->updatetime',
			flagselect='$this->flagselect',
			flagrestore='$this->flagrestore',
			flaguse='$this->flaguse'
			where fileId='$this->fileId'";
	}
	$this->SetQuery($sql);
}

function Delete(){
//--ใช้เมธอดนี้เพื่อลบข้อมูลเดิมในอ๊อบเจ๊ก
//--เป็นการลบข้อมูลทีละ 1 เรคอร์ด
//--ต้องเรียกเมธอดตามลำดับดังนี้ SearchByKey()-->GetRecord()-->Delete()
	$this->SetQuery("delete from FileUpdate where fileId='$this->fileId'");
}

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

function RSFileUpdate(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("select * from FileUpdate order by fileId desc,updateDate desc,updatetime desc");
}
function RSFileUpdatenotuse(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("select * from FileUpdate where flaguse='N' order by fileId desc,updateDate desc,updatetime desc");
}
function RSFileUpdatenotuseordertext(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("select * from FileUpdate where flaguse='N' order by filename1");
}
function RSFileUpdate2(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("select * from FileUpdate where (flaguse='Y' and (flagupdate='U' or flagupdate='D')) order by fileId desc,updateDate desc,updatetime desc");
}
function RSFileUpdate2path($xKey){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("select * from FileUpdate where (flaguse='Y' and (flagupdate='U' or flagupdate='D')) and path='$xKey'order by fileId desc,updateDate desc,updatetime desc");
}
function RSFileUpdate2pathordertext($xKey){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("select * from FileUpdate where (flaguse='Y' and (flagupdate='U' or flagupdate='D')) and path='$xKey'order by filename1");
}
function RSFileUpdatepath(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("select * from FileUpdate where flaguse='Y' group by path");
}
function RSFileUpdategroupname(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("SELECT * FROM `FileUpdate`   group by filename1,path order by updatetime desc,updateDate desc");
}
function RSFileUpdategroupnameordertext(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
	$this->SetQuery("SELECT * FROM `FileUpdate`  group by filename1,path order by filename1");
}
function GetRecord(){
//--นำข้อมูลจาก ResultSet มากำหนดให้กับแอตทริบิวต์ของอ๊อบเจ็ก
//--เรียก GetRecord() หนึ่งครั้ง จะเลื่อนตัวชี้เรคอร์ดไปอีกหนึ่งเรคอร์ด
	if ($this->result = $this->GetResult()) {
		$this->fileId = $this->result['fileId'];
		$this->updateDate = $this->result['updateDate'];
		$this->filename1 = $this->result['filename1'];
		$this->filename2 = $this->result['filename2'];
		$this->flagfile = $this->result['flagfile'];
		$this->flagupdate = $this->result['flagupdate'];
		$this->path = $this->result['path'];
		$this->detail = $this->result['detail'];
		$this->sysId = $this->result['sysId'];
		$this->updatetime = $this->result['updatetime'];
		$this->flagselect = $this->result['flagselect'];
		$this->flagrestore = $this->result['flagrestore'];
		$this->flaguse = $this->result['flaguse'];
		return 1;
	}else {
		return 0;
	}
}

function SearchByKey($xKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
	if ($this->SetQuery("select * from FileUpdate where fileId= '$xKey'")){ 
		return 1;
	}else {
		return 0;
	}
}

function SearchByfileId($xKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
	if ($this->SetQuery("select * from FileUpdate where fileId= '$xKey'")){ 
		return 1;
	}else {
		return 0;
	}
}
function SearchBynotfileId($xKey,$yKey,$zKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
	if ($this->SetQuery("select * from FileUpdate where fileId!= '$xKey' and path='$zKey' and filename1='$yKey' order by updatetime desc,updateDate desc")){ 
		return 1;
	}else {
		return 0;
	}
}
function SearchByfilename1anduse($xKey,$zKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
	if ($this->SetQuery("select * from FileUpdate where filename1= '$xKey' and flaguse='Y' and path='$zKey'")){ 
		return 1;
	}else {
		return 0;
	}
}
function countnodir(){
	$this->SetQuery("select count(flagupdate) as num from FileUpdate where flagupdate ='D'");
	$result = $this->GetResult();
	return $result['num'];
}

function NumRow(){
//--เป็นเมธอดที่คืนค่าจำนวนข้อมูลจากการ select โดยเมธอด RSxxxx
	return $this->GetRowSelected();
}

function Destroy(){
//--เป็นเมธอดสำหรับปิดการติดต่อจากฐานข้อมูล
	return $this->DestroyDb();
}

//****************** You can add new functions below **********************//


} //--End class base_Room--

?>

bool(false)

:: 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 ::
 
[ ok ]

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

:: 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.0056 ]--