示例#1
0
 def onCVEAction(self, cve, action, **args):
   if   action == "filter":
     try:
       filters = {x.split("=")[0]: x.split("=")[1] for x in args["fields"]['filter'][0].split("&")}
       filters = {x: urllib.parse.unquote(y) for x,y in filters.items()}
       fields  = json.loads(args["fields"]["fields"][0])
       limit = 0
       skip = 0
       cves = self.filter_logic(filters, limit, skip, args["plugin_manager"], **args)
       return {'status': 'plugin_action_complete', 'data': self.generateCSV(cves, fields)}
     except Exception as e:
       traceback.print_exc()
       return False
   elif action == "textsearch":
     try:
       text   = args["fields"]["text"][0]
       fields = json.loads(args["fields"]["fields"][0])
       dbResults = db.getSearchResults(text)
       plugResults = args["plugin_manager"].getSearchResults(text, **args)
       result = mergeSearchResults(dbResults, plugResults)
       cves=result['data']
       fields["reason"] = True
       return {'status': 'plugin_action_complete', 'data': self.generateCSV(cves, fields)}
     except Exception as e:
       traceback.print_exc()
       return False
示例#2
0
def searchText():
    search = request.form.get('search')
    dbResults = db.getSearchResults(search)
    plugResults = plugManager.getSearchResults(search, **pluginArgs())
    result = mergeSearchResults(dbResults, plugResults)
    cve = result['data']
    errors = result['errors'] if 'errors' in result else []
    return render_template('search.html', cve=cve, errors=errors)
示例#3
0
 def freetext_search(self):
   search = request.form.get('search')
   if search == '':
      return self.index()
   result = db.getSearchResults(search)
   cve={'results': result['data'], 'total': len(result['data'])}
   errors=result['errors'] if 'errors' in result else []
   return render_template('search.html', cve=cve, errors=errors, freetextsearch=search, minimal=self.minimal)
示例#4
0
def searchText():
    search = request.form.get('search')
    dbResults = db.getSearchResults(search)
    plugResults = plugManager.getSearchResults(search)
    result = mergeSearchResults(dbResults, plugResults)
    cve=result['data']
    errors=result['errors'] if 'errors' in result else []
    return render_template('search.html', cve=cve, errors=errors)
示例#5
0
 def freetext_search(self):
     search = request.form.get('search')
     result = db.getSearchResults(search)
     cve = result['data']
     errors = result['errors'] if 'errors' in result else []
     return render_template('search.html',
                            cve=cve,
                            errors=errors,
                            minimal=self.minimal)
示例#6
0
 def api_text_limitday_search(self, days=None, search=None):
     if not (search or days): return {}
     cve_d = []
     date_n_days_ago = datetime.datetime.now() - timedelta(int(days))
     result = db.getSearchResults(search)
     cve = result['data']
     for item in cve:
         if item['Modified'] > date_n_days_ago:
             cve_d.append(item)
     return cve_d
示例#7
0
def searchText():
    search = request.form.get('search')
    result = dbLayer.getSearchResults(search)
    cve = result['data']
    errors = result['errors'] if 'errors' in result else []
    return render_template('search.html', cve=cve, errors=errors, minimal=True)
示例#8
0
 def freetext_search(self):
   search = request.form.get('search')
   result = db.getSearchResults(search)
   cve=result['data']
   errors=result['errors'] if 'errors' in result else []
   return render_template('search.html', cve=cve, errors=errors, minimal=self.minimal)
示例#9
0
 def api_text_search(self, search=None):
     return db.getSearchResults(search)
示例#10
0
def searchText():
    search = request.form.get('search')
    result = db.getSearchResults(search)
    cve=result['data']
    errors=result['errors'] if 'errors' in result else []
    return render_template('search.html', cve=cve, errors=errors)
示例#11
0
文件: api.py 项目: adulau/cve-search
 def api_text_search(self, search=None):
   return db.getSearchResults(search)