!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)

/usr/share/doc/pygtk2-2.10.1/examples/ide/   drwxr-xr-x
Free 50.88 GB of 127.8 GB (39.81%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     gtkprof.py (3.82 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/env python

import profile, pstats, fpformat

import pygtk
pygtk.require('2.0')
import gtk

class PStatWindow(gtk.Window):
    def __init__(self, stats):
        gtk.Window.__init__(self)
        self.connect("destroy", self.quit)
        self.connect("delete_event", self.quit)
        self.set_title("Profile Statistics")

        self.stats = stats

        box1 = gtk.VBox()
        self.add(box1)
        box1.show()

        text = `stats.total_calls` + " function calls "
        if stats.total_calls != stats.prim_calls:
            text = text + "( " + `stats.prim_calls` + " primitive calls) "
        text = text + "in " + fpformat.fix(stats.total_tt, 3) + " CPU seconds"
        label = gtk.Label(text)
        label.set_padding(2, 2)
        box1.pack_start(label, expand=False)
        label.show()

        swin = gtk.ScrolledWindow()
        swin.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
        box1.pack_start(swin)
        swin.show()

        titles = [('ncalls', 40), ('tottime', 50), ('percall', 50),
                  ('cumtime', 50), ('percall', 50),
                  ('filename:lineno(function)', 10)]
        ls = gtk.ListStore(*((str,)*len(titles)))
        list = gtk.TreeView(ls)
        for n in range(len(titles)):
            cell = gtk.CellRendererText()
            cell.set_property('xalign', 1.0)
            tvc = gtk.TreeViewColumn(titles[n][0], cell, text=n)
            tvc.set_min_width(titles[n][1])
            list.append_column(tvc)
        list.set_size_request(500, 200)
        self.list = list
        list.set_border_width(10)
        swin.add(list)
        list.show()

        self.insert_stats()

        separator = gtk.HSeparator()
        box1.pack_start(separator, expand=False)
        separator.show()

        box2 = gtk.VBox(spacing=10)
        box2.set_border_width(10)
        box1.pack_start(box2, expand=False)
        box2.show()

        button = gtk.Button("close")
        button.connect("clicked", self.quit)
        self.close_button = button
        box2.pack_start(button)
        button.set_flags(gtk.CAN_DEFAULT)
        button.grab_default()
        button.show()

    def quit(self, *args):
        self.hide()
        self.destroy()
        gtk.main_quit()

    def get_stats_list(self):
        if self.stats.fcn_list:
            return self.stats.fcn_list[:]
        else:
            return self.stats.stats.keys()

    def insert_stats(self):
        list = self.get_stats_list()
        if list:
            row = [None] * 6
            model = self.list.get_model()
            for func in list:
                cc,nc,tt,ct,callers = self.stats.stats[func]
                row[0] = `nc`
                if nc != cc:
                    row[0] = row[0] + '/' + `cc`
                row[1] = fpformat.fix(tt, 3)
                if nc == 0:
                    row[2] = ''
                else:
                    row[2] = fpformat.fix(tt/nc, 3)
                row[3] = fpformat.fix(ct, 3)
                if cc == 0:
                    row[4] = ''
                else:
                    row[4] = fpformat.fix(ct/cc, 3)
                file,line,name = func
                row[5] = file + ":" + `line` + "(" + name + \
                         ")"
                self.list.get_model().append(row)
        return

def run(cmd):
    prof = profile.Profile()
    try:
        stats = pstats.Stats(prof.run(cmd))
    except SystemExit:
        pass
    stats.strip_dirs().sort_stats("time", "module", "name")
    win = PStatWindow(stats)
    win.show()
    gtk.main()

def run_file(file):
    return run('execfile("' + file + '")')


if __name__ == '__main__':
    import sys, os
    if not sys.argv[1:]:
        print "usage: gtkprof.py scriptfile [args ...]"
        sys.exit(2)
    filename = sys.argv[1]
    del sys.argv[0]
    sys.path.insert(0, os.path.dirname(filename))

    run_file(filename)

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