!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.65 GB of 127.8 GB (39.63%)
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_fee.php (8.4 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
include_once("da_rg_Fee.php");
class 
Mo_rg_fee extends Da_rg_Fee {
    
/**
     * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลค่าใช้จ่ายตามเงื่อนไข
     *
     * @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_Fee.*
     * @todo    use
     */
    
public function qryFee($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_Fee
                    $c1
                    $c3
                    $c2"
;
        
$query $this->db->query($sql);
        return 
$query;
    }

    
/**
     * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลค่าใช้จ่าย หมวดค่าใช้จ่าย ประเภทการจ่าย และระดับการศึกษาตามเงื่อนไข
     *
     * @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_Fee.*
     * @todo    use
     */
    
public function qryFeeJoinFgPytElv($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_Fee
                    LEFT JOIN $this->rg_dbname.rg_FeeGroup ON feeFgId=fgId
                    LEFT JOIN $this->rg_dbname.rg_PayType ON feePytId=pytId
                    LEFT JOIN $this->ppc_dbname.Level ON feeElvId=levelId
                    $c1
                    $c3
                    $c2"
;
        
$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('feeId=> feeName)
     */
    
public function get_options($condition="",$order="",$group=""$optional='y') {
        
$query $this->qryFee($condition,$order,$group);
        if(
$optional$opt[''] = $optional;
        foreach(
$query->result() as $row) {
            
$opt[$row->feeId] = $row->feeName;
        }
        return 
$opt;
    }


     
/**
     * หน้าที่ของฟังก์ชั่น คือ หาข้อมูลค่าใช้จ่ายที่มี id ไม่เท่ากับค่าที่กำหนด
     *
     * @access    public
     * @param    array condition โดยรูปแบบของ array จะอยู่ในรูป condition('key' => value) ไว้สำหรับระบุเงื่อนไขของคำสั่ง SELECT
     * @param    $hpId คือ รหัสข้อมูลหมวดค่าใช้จ่าย
     * @return    query >= 1 rows : rg_FeeGroup.*
     * @todo    use
     */
    
public function qryFeeNotId($condition="",$feeId) {
        
$where $this->checkCondition($condition);

        
$c1 substr($where0, -3);

        
$sql "SELECT *
                    FROM $this->rg_dbname.rg_Fee
                    $c1
                    AND feeId<>?"
;
        
$query $this->db->query($sql,array($feeId));
        return 
$query;
    }

    function 
qryFeeByStdIdAcYTmIdGroupFgId($stdId$acY$tmId) {
        
$sql "SELECT * FROM (
                        SELECT feeFgId 
                            FROM $this->rg_dbname.rg_CommonFee 
                            INNER JOIN $this->rg_dbname.rg_Fee ON cmfFeeId = feeId 
                            WHERE cmfStdId = ? 
                            AND cmfAcY = ? 
                            AND cmfTmId = ? 
                            AND feeOutBudget = 'N' 
                            GROUP BY feeFgId 
                        UNION 
                        SELECT feeFgId 
                            FROM $this->rg_dbname.rg_CurriculumFee 
                            INNER JOIN rg_Fee ON cfFeeId = feeId 
                            WHERE cfStdId = ? 
                            AND cfAcY = ? 
                            AND cfTmId = ? 
                            AND feeOutBudget = 'N' 
                            GROUP BY feeFgId
                    ) AS tb 
                    INNER JOIN $this->rg_dbname.rg_FeeGroup ON tb.feeFgId = fgId 
                    ORDER BY fgSeq"
;
        
$query $this->db->query($sql, array($stdId$acY$tmId$stdId$acY$tmId));
        return 
$query;
    }

    function 
qryFeeForSendToReceipt($stdId$acY$tmId$kssFee$domFee) {
        
$sql "SELECT T1.*, SUM(T1.amt) AS amt, prefixName , rfTotalAmt, curName, curAbbr, sdtCanRefund, fg.fgName FROM (
                    SELECT rg_Student.*, feeId, fgId, cmfAmt AS amt
                    FROM $this->rg_dbname.rg_Student
                    INNER JOIN $this->rg_dbname.rg_CommonFee ON stdId = cmfStdId
                    INNER JOIN $this->rg_dbname.rg_Fee ON cmfFeeId = feeId
                    INNER JOIN $this->rg_dbname.rg_FeeGroup ON fgId = feeFgId
                    WHERE cmfAcY = ?
                    AND cmfTmId = ?
                    AND stdId = ?
                    UNION 
                    SELECT rg_Student.*, feeId, fgId, cfAmt AS amt
                    FROM $this->rg_dbname.rg_Student
                    INNER JOIN $this->rg_dbname.rg_CurriculumFee ON stdId = cfStdId
                    INNER JOIN $this->rg_dbname.rg_Fee ON cfFeeId = feeId
                    INNER JOIN $this->rg_dbname.rg_FeeGroup ON fgId = feeFgId
                    WHERE cfAcY = ?
                    AND cfTmId = ?
                    AND stdId= ?
                    UNION 
                    SELECT rg_Student.*, '' AS feeId,  ? AS fgId, crfKssFeeAmt AS amt
                    FROM $this->rg_dbname.rg_Student
                    INNER JOIN $this->rg_dbname.rg_CourseFee ON stdId = crfStdId
                    WHERE crfAcY = ?
                    AND crfTmId = ?
                    AND stdId= ?
                    UNION
                    SELECT rg_Student.*, '' AS feeId, ? AS fgId, (dftAmt*sdmNumMonth) AS amt
                    FROM $this->rg_dbname.rg_Student
                    INNER JOIN $this->rg_dbname.rg_StudentDomitory ON stdId = sdmStdId
                    INNER JOIN $this->rg_dbname.rg_DomitoryFeeTp ON sdmDmId = dftDmId AND sdmTmId = dftTmId AND sdmAcY = dftAcY
                    WHERE sdmAcY = ?
                    AND sdmTmId = ?
                    AND stdId=?
                    ) AS T1 
                INNER JOIN $this->ppc_dbname.Prefix ON T1.stdPfId=prefixId
                INNER JOIN $this->rg_dbname.rg_Curriculum ON T1.stdCurId=curId
                INNER JOIN $this->rg_dbname.rg_StudentDetails ON T1.stdId=sdtStdId
                INNER JOIN $this->rg_dbname.rg_RegistFee ON T1.stdId=rfStdId AND rfAcY=? AND rfTmId=? AND rfTotalAmt != rfBalance AND rfBalance=0
                INNER JOIN $this->rg_dbname.rg_FeeGroup fg ON T1.fgId=fg.fgId
                INNER JOIN $this->rg_dbname.rg_Payment ON rfId=pmRfId
                GROUP BY T1.stdId, T1.fgId"
;
        
$query $this->db->query($sql,array($acY$tmId$stdId$acY$tmId$stdId$kssFee$acY$tmId$stdId$domFee$acY$tmId$stdId$acY$tmId));

        
//echo $this->db->last_query();
        
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.006 ]--