Welcome To Our Shell

Mister Spy & Souheyl Bypass Shell

Current Path : /home/cgabriel/20_dev/12_procpy/dataninja/

Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
Upload File :
Current File : //home/cgabriel/20_dev/12_procpy/dataninja/objstore.py

#  coding: utf8

import re
import time
import json
import base64
import hashlib
import procpy


def insert_obj (self,entry):

        placeholders = [self.standard_placeholder,self.standard_placeholder]
        
        field_list   = []
        entry_values = []
        md5new       = []

        for field in entry:   #  transfer the entry into the database
            if field == 'MD5KEY':
                md5key = entry[field]
            else:
                if type(entry[field]).__name__ in ["str","int","unicode","float","long"]:
                    dumpdata = unicode(entry[field])
                else:
                    dumpdata = json.dumps(entry[field],sort_keys=True,indent=4,ensure_ascii=False)
                field_list.append(self.mask(field))
                entry_values.append(dumpdata)
                placeholders.append(self.standard_placeholder)
                if not field[0] == "_":
                    md5new.append(field+": "+dumpdata)

        md5new.sort()
        md5new = "".join(md5new)
        md5new = re.sub(r"\n","",md5new,99999999)
        md5new = re.sub(r"\f","",md5new,99999999)
        md5new = re.sub(r"\r","",md5new,99999999)
        md5new = re.sub(r"\t","",md5new,99999999)
        md5new = re.sub(r" +"," ",md5new,99999999)
        md5new = md5new.strip()

        field_list.append('OBJDATA')
        entry_values.append(md5new)
        md5new = bytearray(md5new,'utf-8')
        md5new = base64.b64encode(md5new)
        md5new = hashlib.md5(md5new).digest()
        md5new = base64.b64encode(md5new)
        md5new = re.sub(r"^(.*)\=\=$","\\1",md5new)
        field_list.append('MD5KEY')
        entry_values.append(md5new)
        
        cursor = self.dbh.cursor()
        if 'md5key' in vars():     #  if there is a former MD5KEY
            if md5new == md5key:   #  which is identical to the new one
                return(md5key)     #  the entry is exactly yet in the database
            nr = cursor.execute("delete from entries where MD5KEY like '" + md5key + "%'")

        if delete_mode > 0:
            return(None)

        text   = "insert into entries (" + ",".join(field_list) + ") values (" + ",".join(placeholders) + ")"

        while (0 == 0):  #  add columns as log as there are some missing
            try:
                if cursor.execute(text,entry_values):
#                    print "# change " + md5new
                    pass
                break
            except Exception as e:
#                print str(e)
                m = re.search(r"(Unknown +column .*?|no +column +named +)([A-Z0-9\_]+)",str(e))
                if m:
                    o = m.group(2)   #  column extension
#                    print("# alter table entries add column " + o + " TEXT")
                    cursor.execute("alter table entries add column " + o + " TEXT")
                    if self.mask(o) == o:
                        cursor.execute("create index " + o + "idx on entries (" + o + self.index_length + ")")
                else:
                    return(False)  # if there is another error by touching the unique constraints in MD5KEY or OBJID

        return(md5new)

#*************************************************************************

    def query_data (self,md5key="",datafield="",fields="*"):
    
        """
        Creates a database cursor which represents
        a certain query against the table  entries .
        """
        cursor = self.dbh.cursor()

        if md5key == "":   #  first mode, without any parameters. Select entries whose WAKETIME is reached.
            cursor.execute("select " + fields + " from entries where " +     
                           "WAKETIME < " + str(time.time()) + " and WAKETIME >= 0")  
        elif md5key == '___dryrun___':   #  ___dryrun___ mode, Select entries whithout respect of waketime
            cursor.execute("select " + fields + " from entries where not JUMP == ''")  
        elif not datafield == "":  #  search against a special value in a given column
            cursor.execute("select " + fields + " from entries where " + datafield + " ='" + md5key + "'")
#            print("select " + fields + " from entries where " + datafield + " ='" + md5key + "'")
        else:         
            sqlclause = "select " + fields + " from entries where " + md5key   # proper SQL query clause
            if not re.search(r"\=",sqlclause) and not re.search(r"like",sqlclause):
                sqlclause = "xxxx"
            try:      
               cursor.execute(sqlclause)
            except Exception as e:                                              #  a special form of query:  searching for
                md5key = re.sub(r",","%' ) and ( OBJDATA like '%",md5key,9999)  #  <a1>,<a2>,<a3>~<b1>,<b2>  means:
                md5key = re.sub(r"~","%' ) or ( OBJDATA like '%",md5key,9999)   #  search for entries where the patterns
                md5key = "( ( OBJDATA like '%" + md5key + "%' ) )"              #  <a1>, <a2> and <a3> OR the patterns
#                print("select * from entries where " + md5key)     
                try:                                                            #  <b1> and <b2> are contained in OBJDATA
                    cursor.execute("select * from entries where " + md5key)     
                except Exception as (e):
                    print md5key
                    print str(e)
                    return ( "\nNo valid sql expression:\n\n" + sqlclause + "\n" +
                            str(e) + "\n\nand also not valid short expression:"
                            "\n\n" + str(md5key) + "\n")
        return(cursor)

#*************************************************************************

    def mask (self,field):
    
        field1 = ""
        for o in field:
            if o == "_" or not o == o.upper():
                field1 = field1 + "_" + o.upper()
            else:
                field1 = field1 + o
        return(field1)
        

#*************************************************************************

    def demask (self,field):
    
        field1     = ""
        make_lower = False
        for o in field:
            if make_lower:
                field1 = field1 + o.lower()
                make_lower = False
            else:
                if o == "_":
                    make_lower = True
                else:
                    field1 = field1 + o
        return(field1)
        
#*************************************************************************

bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped)
Email: contact@elmoujehidin.net bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped) Email: contact@elmoujehidin.net