Exemple #1
0
def jobupdate(taskid='',
              jobport='',
              jobaddress='',
              jobname='',
              priority='',
              jobstatus='',
              starttime='',
              result='',
              username='',
              finishtime='',
              groupid=''):

    request_params = []
    values_params = []
    wset_params = []
    wand_params = []
    if starttime != '':
        request_params.append('starttime')
        values_params.append(SQLTool.formatstring(starttime))
    if finishtime != '':
        request_params.append('endtime')
        values_params.append(SQLTool.formatstring(finishtime))
    if jobaddress != '':
        request_params.append('taskaddress')
        values_params.append(jobaddress)
    if priority != '':
        request_params.append('taskprior')
        values_params.append(priority)
    if jobname != '':
        request_params.append('taskname')
        values_params.append(jobname)
    if jobstatus != '':
        request_params.append('taskstatus')
        values_params.append(jobstatus)
    if jobport != '':
        request_params.append('taskport')
        values_params.append(jobport)
    if result != '':
        request_params.append('result')
        values_params.append(result)
    if username != '':
        wset_params.append('username')
        wand_params.append(SQLTool.formatstring(username))
    if taskid != '':
        wset_params.append('taskid')
        wand_params.append(SQLTool.formatstring(taskid))
    if groupid != '':
        wset_params.append('groupsid')
        wand_params.append(SQLTool.formatstring(str(groupid)))
    table = localconfig.tasktable

    DBhelp = SQLTool.DBmanager()
    DBhelp.connectdb()

    tempresult = DBhelp.updatetableinfo_byparams([table], request_params,
                                                 values_params, wset_params,
                                                 wand_params)
    DBhelp.closedb()

    return tempresult
Exemple #2
0
def taskshow(taskname='',tasktatus='',username='',taskid='',taskport='',result='',page='0'):

    validresult=False
    request_params=[]
    values_params=[]
    if taskname!='':
        request_params.append('tasksname')
        values_params.append(SQLTool.formatstring(taskname))
    if tasktatus!='':
        request_params.append('status')
        values_params.append(SQLTool.formatstring(tasktatus))
    if username!='':
        request_params.append('username')
        values_params.append(SQLTool.formatstring(username))
    if taskid!='':
        request_params.append('tasksid')
        values_params.append(SQLTool.formatstring(taskid))
    if taskport!='':
        request_params.append('taskport')
        values_params.append(SQLTool.formatstring(taskport))

    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()

    table=localconfig.taskstable

    result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['count(*)'], request_params, values_params)
    if count>0:
        count= int(result[0]['count(*)'])
    if count == 0:
        pagecount = 0
    elif count %limitpage> 0:

        pagecount=int((count+limitpage-1)/limitpage)


    else:
        pagecount = count / limitpage

    if pagecount>0:

        limit='    limit  '+str(int(page)*limitpage)+','+str(limitpage)
        result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['username','tasksid','tasksname','status','starttime','tasksaddress','taskport','endtime','createtime','num','completenum'], request_params, values_params,limit,order='createtime desc')

        DBhelp.closedb()
        jobs=[]
        if count>0:
            validresult=True
            for temp in result :
                ajob=tasks.Tasks(username=temp['username'],tasksid=temp['tasksid'],tasksname=temp['tasksname'],taskstatus=temp['status'],starttime=temp['starttime'],taskaddress=temp['tasksaddress'],tasksport=temp['taskport'],endtime=temp['endtime'],createtime=temp['createtime'],num=temp['num'],completenum=temp['completenum'])


                jobs.append(ajob)
        return jobs,count,pagecount
    return [],0,pagecount
Exemple #3
0
def taskshow(taskname='',tasktatus='',username='',taskid='',taskport='',result='',page='0'):

    validresult=False
    request_params=[]
    values_params=[]
    if taskname!='':
        request_params.append('tasksname')
        values_params.append(SQLTool.formatstring(taskname))
    if tasktatus!='':
        request_params.append('status')
        values_params.append(SQLTool.formatstring(tasktatus))
    if username!='':
        request_params.append('username')
        values_params.append(SQLTool.formatstring(username))
    if taskid!='':
        request_params.append('tasksid')
        values_params.append(SQLTool.formatstring(taskid))
    if taskport!='':
        request_params.append('taskport')
        values_params.append(SQLTool.formatstring(taskport))

    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()

    table=localconfig.taskstable

    result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['count(*)'], request_params, values_params)
    if count>0:
        count= int(result[0]['count(*)'])
    if count == 0:
        pagecount = 0
    elif count %limitpage> 0:

        pagecount=int((count+limitpage-1)/limitpage)


    else:
        pagecount = count / limitpage

    if pagecount>0:

        limit='    limit  '+str(int(page)*limitpage)+','+str(limitpage)
        result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['username','tasksid','tasksname','status','starttime','tasksaddress','taskport','endtime','createtime','num','completenum'], request_params, values_params,limit,order='createtime desc')

        DBhelp.closedb()
        jobs=[]
        if count>0:
            validresult=True
            for temp in result :
                ajob=tasks.Tasks(username=temp['username'],tasksid=temp['tasksid'],tasksname=temp['tasksname'],taskstatus=temp['status'],starttime=temp['starttime'],taskaddress=temp['tasksaddress'],tasksport=temp['taskport'],endtime=temp['endtime'],createtime=temp['createtime'],num=temp['num'],completenum=temp['completenum'])


                jobs.append(ajob)
        return jobs,count,pagecount
    return [],0,pagecount
def portadd(port):
    ip=port.getIP()
    port=port.getVendor()
    timesearch=port.getOsfamily()
    state=port.getState()
    name=port.getOsgen()
    product=port.getUpdatetime()
    version=port.getAccurate()
    script=port.getHostname()

    
    
    
    request_params=[]
    values_params=[]
    if ip!='':
        request_params.append('ip')
        values_params.append(SQLTool.formatstring(ip))
    if port!='':
        request_params.append('port')
        values_params.append(SQLTool.formatstring(port))
    if timesearch!='':
        request_params.append('timesearch')
        values_params.append(SQLTool.formatstring(timesearch))
    if state!='':
        request_params.append('state')
        values_params.append(SQLTool.formatstring(state))
    if name!='':
        request_params.append('name')
        values_params.append(SQLTool.formatstring(name))
    if product!='':
        request_params.append('product')
        values_params.append(SQLTool.formatstring(product))
    if version!='':
        request_params.append('version')
        values_params.append(SQLTool.formatstring(version))
    if script!='':
        request_params.append('script')
        values_params.append(SQLTool.formatstring(script))
    if detail!='':
        request_params.append('detail')
        values_params.append(SQLTool.formatstring(detail))  
    if head!='':
        request_params.append('head')
        values_params.append(SQLTool.formatstring(head))      
    table=localconfig.porttable
    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()
    tempresult=None
    try:
        tempresult=DBhelp.replaceinserttableinfo_byparams(table, request_params, [tuple(values_params)])
    except Exception,e:
        print str(e)
Exemple #5
0
def jobupdate(taskid='',jobport='',jobaddress='',jobname='',priority='',jobstatus='',starttime='',result='',username='',finishtime='',groupid=''):


    request_params=[]
    values_params=[]
    wset_params=[]
    wand_params=[]
    if starttime!='':
        request_params.append('starttime')
        values_params.append(SQLTool.formatstring(starttime))
    if finishtime!='':
        request_params.append('endtime')
        values_params.append(SQLTool.formatstring(finishtime))
    if jobaddress!='':
        request_params.append('taskaddress')
        values_params.append(jobaddress)
    if priority!='':
        request_params.append('taskprior')
        values_params.append(priority)
    if jobname!='':
        request_params.append('taskname')
        values_params.append(jobname)
    if jobstatus!='':
        request_params.append('taskstatus')
        values_params.append(jobstatus)
    if jobport!='':
        request_params.append('taskport')
        values_params.append(jobport)
    if result!='':
        request_params.append('result')
        values_params.append(result)
    if username!='':
        wset_params.append('username')
        wand_params.append(SQLTool.formatstring(username))
    if taskid!='':
        wset_params.append('taskid')
        wand_params.append(SQLTool.formatstring(taskid))
    if groupid!='':
        wset_params.append('groupsid')
        wand_params.append(SQLTool.formatstring(str(groupid)))
    table=localconfig.tasktable

    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()

    tempresult=DBhelp.updatetableinfo_byparams([table],request_params,values_params,wset_params,wand_params)
    DBhelp.closedb()

    return tempresult

    
    
    
Exemple #6
0
def ipshow(ip='',vendor='',osfamily='',osgen='',accurate='',updatetime='',hostname='',state='',page='0'):
    validresult=False
    request_params=[]
    values_params=[]
    if ip!='':
        request_params.append('ip')
        values_params.append(SQLTool.formatstring(ip))
    if vendor!='':
        request_params.append('vendor')
        values_params.append(SQLTool.formatstring(vendor))
    if osfamily!='':
        request_params.append('osfamily')
        values_params.append(SQLTool.formatstring(osfamily))
    if osgen!='':
        request_params.append('osgen')
        values_params.append(SQLTool.formatstring(osgen))
    if accurate!='':
        request_params.append('accurate')
        values_params.append(SQLTool.formatstring(accurate))
    if updatetime!='':
        request_params.append('updatetime')
        values_params.append(SQLTool.formatstring(updatetime))
    if hostname!='':
        request_params.append('hostname')
        values_params.append(SQLTool.formatstring(hostname))
    if state!='':
        request_params.append('state')
        values_params.append(SQLTool.formatstring(state))
    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()
    table=localconfig.iptable
    result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['ip','vendor','osfamily','osgen','accurate','updatetime','hostname','state'], request_params, values_params)

    if count == 0:
        pagecount = 0;
    elif count %limitpage> 0:
#         pagecount = math.ceil(count / limitpage)
        pagecount=int((count+limitpage-1)/limitpage) 


    else:
        pagecount = count / limitpage

#     print pagecount
    if pagecount>0:
    
        limit='    limit  '+str(int(page)*limitpage)+','+str(limitpage)
        result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['ip','vendor','osfamily','osgen','accurate','updatetime','hostname','state'], request_params, values_params,limit,order='updatetime desc')
    
        DBhelp.closedb()
        ips=[]
        if count>0:
            validresult=True
            for temp in result :
                aip=ipmain.Ip(ip=temp['ip'],vendor=temp['vendor'],osfamily=temp['osfamily'],osgen=temp['osgen'],accurate=temp['accurate'],updatetime=temp['updatetime'],hostname=temp['hostname'],state=temp['state'])
#                 aip=ipmain.Ip(ip=temp[0],vendor=temp[1],osfamily=temp[2],osgen=temp[3],accurate=temp[4],updatetime=temp[5],hostname=temp[6],state=temp[7])
                ips.append(aip)
        return ips,count,pagecount
    return [],0,pagecount
Exemple #7
0
def jobshow(jobname='',jobstatus='',username='',taskid='',jobport='',result='',page='0',groupid='',jobaddress=''):
    validresult=False
    request_params=[]
    values_params=[]
    if groupid!='':
        request_params.append('groupsid')
        values_params.append(SQLTool.formatstring(groupid))
    if jobname!='':
        request_params.append('taskname')
        values_params.append(SQLTool.formatstring(jobname))
    if jobstatus!='':
        request_params.append('taskstatus')
        values_params.append(SQLTool.formatstring(jobstatus))
    if username!='':
        request_params.append('username')
        values_params.append(SQLTool.formatstring(username))
    if taskid!='':
        request_params.append('taskid')
        values_params.append(SQLTool.formatstring(taskid))
    if jobport!='':
        request_params.append('taskport')
        values_params.append(SQLTool.formatstring(jobport))

    if jobaddress!='':
        request_params.append('taskaddress')
        values_params.append(SQLTool.formatstring(jobaddress))
    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()
    table=localconfig.tasktable
    result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['count(*)'], request_params, values_params)
    if count>0:
        count= int(result[0]['count(*)'])
    if count == 0:
        pagecount = 0;
    elif count %limitpage> 0:
#         pagecount = math.ceil(count / limitpage)
        pagecount=int((count+limitpage-1)/limitpage) 


    else:
        pagecount = count / limitpage

#     print pagecount
    if pagecount>0:
    
        limit='    limit  '+str(int(page)*limitpage)+','+str(limitpage)
        result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['username','taskid','taskname','taskprior','taskstatus','starttime','taskaddress','taskport','result','endtime','createtime','forcesearch','groupsid'], request_params, values_params,limit,order='createtime desc')
    
        DBhelp.closedb()
        jobs=[]
        if count>0:
            validresult=True
            for temp in result :
                ajob=job.Job(username=temp['username'],jobid=temp['taskid'],jobname=temp['taskname'],priority=temp['taskprior'],jobstatus=temp['taskstatus'],starttime=temp['starttime'],jobaddress=temp['taskaddress'],jobport=temp['taskport'],result=temp['result'],endtime=temp['endtime'],createtime=temp['createtime'],forcesearch=temp['forcesearch'],groupsid=temp['groupsid'])

#                 ajob=job.Job(username=temp[0],jobid=temp[1],jobname=temp[2],priority=temp[3],jobstatus=temp[4],starttime=temp[5],jobaddress=temp[6],jobport=temp[7],result=temp[8],endtime=temp[9],createtime=temp[10],forcesearch=temp[11])
                jobs.append(ajob)
        return jobs,count,pagecount
    return [],0,pagecount
Exemple #8
0
def validuser(username, password):
    validresult = False
    DBhelp = SQLTool.DBmanager()
    DBhelp.connectdb()
    result, content, count, col = DBhelp.searchtableinfo_byparams(
        [localconfig.usertable], ['username', 'role', 'userpower'],
        ['username', 'password'],
        [SQLTool.formatstring(username),
         SQLTool.formatstring(password)])
    DBhelp.closedb()
    role = ''
    userpower = ''
    if col > 0:

        validresult = True
        role = result[0]['role']
        userpower = result[0]['userpower']
#         role=result[0][1]
#         userpower=result[0][2]
    return validresult, username, role, userpower
def portshow(ip='',port='',timesearch='',state='',name='',product='',version='',script='',detail='',page='0',extra='',command='and'):
    validresult=False
    request_params=[]
    values_params=[]
    if ip!='':
        request_params.append('ip')
        values_params.append(SQLTool.formatstring(ip))
    if port!='':
        request_params.append('port')
        values_params.append(SQLTool.formatstring(port))
    if timesearch!='':
        request_params.append('timesearch')
        values_params.append(SQLTool.formatstring(timesearch))
    if state!='':
        request_params.append('state')
        values_params.append(SQLTool.formatstring(state))
    if name!='':
        request_params.append('name')
        values_params.append(SQLTool.formatstring(name))
    if product!='':
        request_params.append('product')
        values_params.append(SQLTool.formatstring(product))
    if version!='':
        request_params.append('version')
        values_params.append(SQLTool.formatstring(version))
    if script!='':
        request_params.append('script')
        values_params.append(SQLTool.formatstring(script))
    if detail!='':
        request_params.append('detail')
        values_params.append(SQLTool.formatstring(detail))
    global DBhelp
    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()
    localconfig=config.Config()
    table=localconfig.porttable
    content=None
    result=None
    try:
        result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['ip','port','timesearch','state','name','product','version','script','detail'], request_params, values_params,extra=extra,command=command)
    except Exception,e:
        print str(e)+'portcontrol 50'
        if DBhelp is not None:
            DBhelp.closedb()
            DBhelp=None
        return [],0,0
Exemple #10
0
def divided(ports, params='port'):
    if ports == '':
        return ''
    sql = '   and  ( '
    array = ports.split(',')

    for i in range(len(array) - 1):
        resulto = re.match(r"^(\d*)\-(\d*)$", array[i])
        if resulto:
            p = re.compile(r'\d+')
            list = p.findall(array[i])
            sql += params + '  between ' + SQLTool.formatstring(
                list[0]) + ' and  ' + SQLTool.formatstring(list[1]) + ' or '

        else:
            p = re.compile(r'\d+$')
            list = p.findall(array[i])
            sql += params + '  =' + SQLTool.formatstring(list[0]) + ' or '
    temp = array[len(array) - 1]
    resulto = re.match(r"^(\d*)\-(\d*)$", temp)
    if resulto:
        p = re.compile(r'\d+')
        list = p.findall(temp)
        sql += params + '  between ' + SQLTool.formatstring(
            list[0]) + ' and  ' + SQLTool.formatstring(list[1]) + ')   '

    else:
        p = re.compile(r'\d+$')
        list = p.findall(temp)
        sql += params + '  =' + SQLTool.formatstring(list[0]) + ' )    '
    return sql
def divided(ports,params='port'):
    if ports=='':
        return ''
    sql='   and  ( '
    array=ports.split(',')
    
    for i in range(len(array)-1):
        resulto=re.match(r"^(\d*)\-(\d*)$",array[i]) 
        if resulto:  
            p = re.compile(r'\d+')
            list= p.findall(array[i])
            sql+=params+'  between '+SQLTool.formatstring(list[0])+' and  '+ SQLTool.formatstring(list[1])+' or '
                
        else:
            p = re.compile(r'\d+$')
            list= p.findall(array[i])
            sql+=params+'  ='+SQLTool.formatstring(list[0])+' or '
    temp=array[len(array)-1]
    resulto=re.match(r"^(\d*)\-(\d*)$",temp) 
    if resulto:  
        p = re.compile(r'\d+')
        list= p.findall(temp)
        sql+=params+'  between '+SQLTool.formatstring(list[0])+' and  '+ SQLTool.formatstring(list[1])+')   '
                
    else:
        p = re.compile(r'\d+$')
        list= p.findall(temp)
        sql+=params+'  ='+SQLTool.formatstring(list[0])+' )    '
    return sql
Exemple #12
0
def mapshow(ip='',port='',state='',name='',product='',version='',searchcontent='',isdic=1):
    localconfig=config.Config()
    table=localconfig.porttable
    iptable=localconfig.iptable
    validresult=False
    request_params=[]
    values_params=[]

    if ip!='':
        request_params.append(table+'.'+'ip')
        values_params.append(SQLTool.formatstring(ip))
    if port!='':
        request_params.append('port')
        values_params.append(SQLTool.formatstring(port))

    if state!='':
        request_params.append(table+'.'+'state')
        values_params.append(SQLTool.formatstring(state))
    if name!='':
        request_params.append('name')
        values_params.append(SQLTool.formatstring(name))
    if product!='':
        request_params.append('product')
        values_params.append(SQLTool.formatstring(product))
    if version!='':
        request_params.append('version')
        values_params.append(SQLTool.formatstring(version))

    global DBhelp

    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()
    size = 0
    content=None
    result=None
    sql=""""""
    if isdic==0:
        if searchcontent =='':
            sql="""SELECT city, COUNT(*) FROM ip_maindata  GROUP BY city"""
        else:
            sql="""SELECT city, COUNT(*) FROM (SELECT ip AS ipitem FROM snifferdata WHERE MATCH (version , product , head , detail , script , hackinfo , disclosure , keywords) AGAINST ('%s' IN BOOLEAN MODE)
    GROUP BY ip) AS iptable LEFT JOIN ip_maindata ON ipitem = ip_maindata.ip GROUP BY city""" %(searchcontent)
    else:
        sql="""SELECT city, COUNT(*) FROM (SELECT ip AS ipitem FROM snifferdata WHERE  """
        request_params_length=len(request_params)
        for k in range(0, request_params_length - 1):
            sql = sql + request_params[k] + ' = ' + values_params[k] +' and '
        sql = sql + request_params[request_params_length - 1] + ' = ' + values_params[request_params_length - 1] + '  '

        sql = sql + """ GROUP BY ip) AS iptable LEFT JOIN ip_maindata ON ipitem = ip_maindata.ip GROUP BY city """
    try:
         result,content,count,col=DBhelp.searchtableinfo_byparams(table=sql,usesql=1)
    except Exception,e:
         print str(e)+'portcontrol 69'
         if DBhelp is not None:
             DBhelp.closedb()
         return [],0,0
Exemple #13
0
def jobshow(jobname='',jobstatus='',username='',taskid='',jobport='',result='',page='0'):
    validresult=False
    request_params=[]
    values_params=[]
    if jobname!='':
        request_params.append('taskname')
        values_params.append(SQLTool.formatstring(jobname))
    if jobstatus!='':
        request_params.append('taskstatus')
        values_params.append(SQLTool.formatstring(jobstatus))
    if username!='':
        request_params.append('username')
        values_params.append(SQLTool.formatstring(username))
    if taskid!='':
        request_params.append('taskid')
        values_params.append(SQLTool.formatstring(taskid))
    if jobport!='':
        request_params.append('taskport')
        values_params.append(SQLTool.formatstring(jobport))
    if result!='':
        request_params.append('result')
        values_params.append(SQLTool.formatstring(result))
    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()
    table=localconfig.tasktable
    result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['count(*)'], request_params, values_params)
    if count>0:
        count= int(result[0]['count(*)'])
    if count == 0:
        pagecount = 0;
    elif count %limitpage> 0:
#         pagecount = math.ceil(count / limitpage)
        pagecount=int((count+limitpage-1)/limitpage) 


    else:
        pagecount = count / limitpage

#     print pagecount
    if pagecount>0:
    
        limit='    limit  '+str(int(page)*limitpage)+','+str(limitpage)
        result,content,count,col=DBhelp.searchtableinfo_byparams([table], ['username','taskid','taskname','taskprior','taskstatus','starttime','taskaddress','taskport','result','endtime','createtime','forcesearch'], request_params, values_params,limit,order='createtime desc')
    
        DBhelp.closedb()
        jobs=[]
        if count>0:
            validresult=True
            for temp in result :
                ajob=job.Job(username=temp['username'],jobid=temp['taskid'],jobname=temp['taskname'],priority=temp['taskprior'],jobstatus=temp['taskstatus'],starttime=temp['starttime'],jobaddress=temp['taskaddress'],jobport=temp['taskport'],result=temp['result'],endtime=temp['endtime'],createtime=temp['createtime'],forcesearch=temp['forcesearch'])

#                 ajob=job.Job(username=temp[0],jobid=temp[1],jobname=temp[2],priority=temp[3],jobstatus=temp[4],starttime=temp[5],jobaddress=temp[6],jobport=temp[7],result=temp[8],endtime=temp[9],createtime=temp[10],forcesearch=temp[11])
                jobs.append(ajob)
        return jobs,count,pagecount
    return [],0,pagecount
Exemple #14
0
def portshow(ip='',
             port='',
             timesearch='',
             state='',
             name='',
             product='',
             version='',
             script='',
             detail='',
             page='0',
             extra='',
             command='and',
             head='',
             city=''):
    validresult = False
    request_params = []
    values_params = []
    if ip != '':
        request_params.append('ip')
        values_params.append(SQLTool.formatstring(ip))
    if port != '':
        request_params.append('port')
        values_params.append(SQLTool.formatstring(port))
    if timesearch != '':
        request_params.append('timesearch')
        values_params.append(SQLTool.formatstring(timesearch))
    if state != '':
        request_params.append('state')
        values_params.append(SQLTool.formatstring(state))
    if name != '':
        request_params.append('name')
        values_params.append(SQLTool.formatstring(name))
    if product != '':
        request_params.append('product')
        values_params.append(SQLTool.formatstring(product))
    if version != '':
        request_params.append('version')
        values_params.append(SQLTool.formatstring(version))
    if script != '':
        request_params.append('script')
        values_params.append(SQLTool.formatstring(script))
    if detail != '':
        request_params.append('detail')
        values_params.append(SQLTool.formatstring(detail))
    if head != '':
        request_params.append('head')
        values_params.append(SQLTool.formatstring(head))
    if city != '':
        request_params.append('city')
        values_params.append(SQLTool.formatstring(city))
    global DBhelp
    DBhelp = SQLTool.DBmanager()
    DBhelp.connectdb()
    localconfig = config.Config()
    table = localconfig.porttable
    content = None
    result = None
    try:
        result, content, count, col = DBhelp.searchtableinfo_byparams(
            [table], ['count(*)'],
            request_params,
            values_params,
            extra=extra,
            command=command)
    except Exception, e:
        print str(e) + 'portcontrol 50'
        if DBhelp is not None:
            DBhelp.closedb()
            DBhelp = None
        return [], 0, 0
Exemple #15
0
def ipshow(ip='',
           vendor='',
           osfamily='',
           osgen='',
           accurate='',
           updatetime='',
           hostname='',
           state='',
           page='0',
           city=''):
    validresult = False
    request_params = []
    values_params = []
    if ip != '':
        request_params.append('ip')
        values_params.append(SQLTool.formatstring(ip))
    if vendor != '':
        request_params.append('vendor')
        values_params.append(SQLTool.formatstring(vendor))
    if osfamily != '':
        request_params.append('osfamily')
        values_params.append(SQLTool.formatstring(osfamily))
    if osgen != '':
        request_params.append('osgen')
        values_params.append(SQLTool.formatstring(osgen))
    if accurate != '':
        request_params.append('accurate')
        values_params.append(SQLTool.formatstring(accurate))
    if updatetime != '':
        request_params.append('updatetime')
        values_params.append(SQLTool.formatstring(updatetime))
    if hostname != '':
        request_params.append('hostname')
        values_params.append(SQLTool.formatstring(hostname))
    if state != '':
        request_params.append('state')
        values_params.append(SQLTool.formatstring(state))
    if city != '':
        request_params.append('city')
        values_params.append(SQLTool.formatstring(city))
    DBhelp = SQLTool.DBmanager()
    DBhelp.connectdb()
    table = localconfig.iptable
    result, content, count, col = DBhelp.searchtableinfo_byparams([table], [
        'ip', 'vendor', 'osfamily', 'osgen', 'accurate', 'updatetime',
        'hostname', 'state', 'city'
    ], request_params, values_params)

    if count == 0:
        pagecount = 0
    elif count % limitpage > 0:
        #         pagecount = math.ceil(count / limitpage)
        pagecount = int((count + limitpage - 1) / limitpage)

    else:
        pagecount = count / limitpage

#     print str(pagecount)+'当前页数'
    if pagecount > 0:

        limit = '    limit  ' + str(
            int(page) * limitpage) + ',' + str(limitpage)
        result, content, count, col = DBhelp.searchtableinfo_byparams(
            [table], [
                'ip', 'vendor', 'osfamily', 'osgen', 'accurate', 'updatetime',
                'hostname', 'state', 'city'
            ],
            request_params,
            values_params,
            limit,
            order='updatetime desc')

        DBhelp.closedb()
        ips = []
        if count > 0:
            validresult = True
            for temp in result:
                aip = ipmain.Ip(ip=temp['ip'],
                                vendor=temp['vendor'],
                                osfamily=temp['osfamily'],
                                osgen=temp['osgen'],
                                accurate=temp['accurate'],
                                updatetime=temp['updatetime'],
                                hostname=temp['hostname'],
                                state=temp['state'],
                                city=temp['city'])
                #                 aip=ipmain.Ip(ip=temp[0],vendor=temp[1],osfamily=temp[2],osgen=temp[3],accurate=temp[4],updatetime=temp[5],hostname=temp[6],state=temp[7])
                ips.append(aip)
        return ips, count, pagecount
    return [], 0, pagecount
def validuser(username,password):
    validresult=False
    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()
	# result = sql's result; ({'username': '******', 'role': '3', 'userpower': '3'},) 
	# content = sql's some content, don't know what it is to use
	# conunt = result's count; col = 第二个参数的个数
    result, content, count, col=DBhelp.searchtableinfo_byparams([localconfig.usertable], ['username','role','userpower'], ['username','password'], [SQLTool.formatstring(username),SQLTool.formatstring(password)], order='username desc')
    DBhelp.closedb()
    role = ''
    userpower = ''
    if col > 0:
        validresult = True
        role = result[0]['role']
        userpower = result[0]['userpower']
#         role=result[0][1]
#         userpower=result[0][2]
    return validresult, username, role, userpower
Exemple #17
0
def mapshow(ip='',
            port='',
            state='',
            name='',
            product='',
            version='',
            searchcontent='',
            isdic=1):
    localconfig = config.Config()
    table = localconfig.porttable
    iptable = localconfig.iptable
    validresult = False
    request_params = []
    values_params = []

    if ip != '':
        request_params.append(table + '.' + 'ip')
        values_params.append(SQLTool.formatstring(ip))
    if port != '':
        request_params.append('port')
        values_params.append(SQLTool.formatstring(port))

    if state != '':
        request_params.append(table + '.' + 'state')
        values_params.append(SQLTool.formatstring(state))
    if name != '':
        request_params.append('name')
        values_params.append(SQLTool.formatstring(name))
    if product != '':
        request_params.append('product')
        values_params.append(SQLTool.formatstring(product))
    if version != '':
        request_params.append('version')
        values_params.append(SQLTool.formatstring(version))

    global DBhelp

    DBhelp = SQLTool.DBmanager()
    DBhelp.connectdb()
    size = 0
    content = None
    result = None
    sql = """"""
    if isdic == 0:
        if searchcontent == '':
            sql = """SELECT city, COUNT(*) FROM ip_maindata  GROUP BY city"""
        else:
            sql = """SELECT city, COUNT(*) FROM (SELECT ip AS ipitem FROM snifferdata WHERE MATCH (version , product , head , detail , script , hackinfo , disclosure , keywords) AGAINST ('%s' IN BOOLEAN MODE)
    GROUP BY ip) AS iptable LEFT JOIN ip_maindata ON ipitem = ip_maindata.ip GROUP BY city""" % (
                searchcontent)
    else:
        sql = """SELECT city, COUNT(*) FROM (SELECT ip AS ipitem FROM snifferdata WHERE  """
        request_params_length = len(request_params)
        for k in range(0, request_params_length - 1):
            sql = sql + request_params[k] + ' = ' + values_params[k] + ' and '
        sql = sql + request_params[request_params_length -
                                   1] + ' = ' + values_params[
                                       request_params_length - 1] + '  '

        sql = sql + """ GROUP BY ip) AS iptable LEFT JOIN ip_maindata ON ipitem = ip_maindata.ip GROUP BY city """
    try:
        result, content, count, col = DBhelp.searchtableinfo_byparams(
            table=sql, usesql=1)
    except Exception, e:
        print str(e) + 'portcontrol 69'
        if DBhelp is not None:
            DBhelp.closedb()
        return [], 0, 0
Exemple #18
0
def portabstractshow(ip='',port='',timesearch='',state='',name='',product='',version='',script='',detail='',page='0',extra='',command='and',head='',city='',hackinfo='',disclosure=''):
    localconfig=config.Config()
    table=localconfig.porttable
    iptable=localconfig.iptable
    validresult=False
    request_params=[]
    values_params=[]

    if ip!='':
        request_params.append(table+'.'+'ip')
        values_params.append(SQLTool.formatstring(ip))
    if port!='':
        request_params.append('port')
        values_params.append(SQLTool.formatstring(port))
    if timesearch!='':
        request_params.append('timesearch')
        values_params.append(SQLTool.formatstring(timesearch))
    if state!='':
        request_params.append(table+'.'+'state')
        values_params.append(SQLTool.formatstring(state))
    if name!='':
        request_params.append('name')
        values_params.append(SQLTool.formatstring(name))
    if product!='':
        request_params.append('product')
        values_params.append(SQLTool.formatstring(product))
    if version!='':
        request_params.append('version')
        values_params.append(SQLTool.formatstring(version))
    if script!='':
        request_params.append('script')
        values_params.append(SQLTool.formatstring(script))
    if detail!='':
        request_params.append('detail')
        values_params.append(SQLTool.formatstring(detail))
    if head!='':
        request_params.append('head')
        values_params.append(SQLTool.formatstring(head))
    if city!='':
        request_params.append('city')
        values_params.append(SQLTool.formatstring(city))
    global DBhelp

    DBhelp=SQLTool.DBmanager()
    DBhelp.connectdb()
    
    content=None
    result=None
    try:
        result,content,count,col=DBhelp.searchtableinfo_byparams([table+' left join ip_maindata on snifferdata.ip=ip_maindata.ip'], ['count(*)'], request_params, values_params,extra=extra,command=command)
    except Exception,e:
        print str(e)+'portcontrol 58'
        if DBhelp is not None:
            DBhelp.closedb()
            DBhelp=None
        return [],0,0
def portabstractshow(ip='',
                     port='',
                     timesearch='',
                     state='',
                     name='',
                     product='',
                     version='',
                     script='',
                     detail='',
                     page='0',
                     extra='',
                     command='and',
                     head='',
                     city='',
                     hackresults='',
                     disclosure=''):
    localconfig = config.Config()
    port_table = localconfig.porttable  #snifferdata
    ip_table = localconfig.iptable  #ip_maindata
    validresult = False
    request_params = []
    values_params = []

    if ip != '':
        request_params.append(port_table + '.' + 'ip')
        values_params.append(SQLTool.formatstring(ip))
    if port != '':
        request_params.append('port')
        values_params.append(SQLTool.formatstring(port))
    if timesearch != '':
        request_params.append('timesearch')
        values_params.append(SQLTool.formatstring(timesearch))
    if state != '':
        request_params.append(port_table + '.' + 'state')
        values_params.append(SQLTool.formatstring(state))
    if name != '':
        request_params.append('name')
        values_params.append(SQLTool.formatstring(name))
    if product != '':
        request_params.append('product')
        values_params.append(SQLTool.formatstring(product))
    if version != '':
        request_params.append('version')
        values_params.append(SQLTool.formatstring(version))
    if script != '':
        request_params.append('script')
        values_params.append(SQLTool.formatstring(script))
    if detail != '':
        request_params.append('detail')
        values_params.append(SQLTool.formatstring(detail))
    if head != '':
        request_params.append('head')
        values_params.append(SQLTool.formatstring(head))
    if city != '':
        request_params.append('city')
        values_params.append(SQLTool.formatstring(city))
    global DBhelp

    DBhelp = SQLTool.DBmanager()
    DBhelp.connectdb()

    content = None
    result = None
    try:
        result, content, count, col = DBhelp.searchtableinfo_byparams(
            [
                port_table + ' left join ' + ip_table + ' on ' + port_table +
                '.ip=' + ip_table + '.ip'
            ], ['count(*)'],
            request_params,
            values_params,
            extra=extra,
            command=command)
    except Exception, e:
        print "portcontrol::portabstractshow() 62::", str(e)
        if DBhelp is not None:
            DBhelp.closedb()
            DBhelp = None
        return [], 0, 0