Exemple #1
0
def printCVE(item):
    if not namelookup and not rankinglookup:
        print(json.dumps(item, sort_keys=True, default=json_util.default))
    else:
        if "vulnerable_configuration" in item:
            vulconf = []
            ranking = []
            for conf in item['vulnerable_configuration']:
                if namelookup:
                    vulconf.append(cves.getcpe(cpeid=conf))
                if rankinglookup:
                    rank = cves.getranking(cpeid=conf)
                    if rank and rank not in ranking:
                        ranking.append(rank)
            if namelookup:
                item['vulnerable_configuration'] = vulconf
            if rankinglookup:
                item['ranking'] = ranking
        print(json.dumps(item, sort_keys=True, default=json_util.default))
Exemple #2
0
 def printCVE(item):
     if not namelookup and not rankinglookup:
         print(json.dumps(item, sort_keys=True, default=json_util.default))
     else:
         if "vulnerable_configuration" in item:
             vulconf = []
             ranking = []
             for conf in item['vulnerable_configuration']:
                 if namelookup:
                     vulconf.append(cves.getcpe(cpeid=conf))
                 if rankinglookup:
                     rank = cves.getranking(cpeid=conf)
                     if rank and rank not in ranking:
                         ranking.append(rank)
             if namelookup:
                 item['vulnerable_configuration'] = vulconf
             if rankinglookup:
                 item['ranking'] = ranking
         print(json.dumps(item, sort_keys=True, default=json_util.default))
Exemple #3
0
if sLatest:sorttype=-1

if cveSearch:
    for cveid in cveSearch:
        for item in collection.find({'id': cveid}).sort("Modified",sorttype):
            if not namelookup and not rankinglookup:
                print(json.dumps(item, sort_keys=True, default=json_util.default))
            else:
                if "vulnerable_configuration" in item:
                    vulconf = []
                    ranking = []
                    for conf in item['vulnerable_configuration']:
                        if namelookup:
                            vulconf.append(cves.getcpe(cpeid=conf))
                        if rankinglookup:
                            rank = cves.getranking(cpeid=conf)
                            if rank and rank not in ranking:
                                ranking.append(rank)
                    if namelookup:
                        item['vulnerable_configuration'] = vulconf
                    if rankinglookup:
                        item['ranking'] = ranking
                print(json.dumps(item, sort_keys=True, default=json_util.default))

# Basic freetext search (in vulnerability summary).
# Full-text indexing is more efficient to search across all CVEs.
if vFreeSearch:
    for item in collection.find({'summary': {'$regex' :  re.compile(vFreeSearch, re.IGNORECASE)}}).sort("Modified",sorttype):
        print(item)
# Search Product (best to use CPE notation, e.g. cisco:ios:12.2
if vSearch:
Exemple #4
0
if cveSearch:
    for cveid in cveSearch:
        for item in collection.find({'id': cveid}).sort("Modified", sorttype):
            if not namelookup and not rankinglookup:
                print(
                    json.dumps(item, sort_keys=True,
                               default=json_util.default))
            else:
                if "vulnerable_configuration" in item:
                    vulconf = []
                    ranking = []
                    for conf in item['vulnerable_configuration']:
                        if namelookup:
                            vulconf.append(cves.getcpe(cpeid=conf))
                        if rankinglookup:
                            rank = cves.getranking(cpeid=conf)
                            if rank and rank not in ranking:
                                ranking.append(rank)
                    if namelookup:
                        item['vulnerable_configuration'] = vulconf
                    if rankinglookup:
                        item['ranking'] = ranking
                print(
                    json.dumps(item, sort_keys=True,
                               default=json_util.default))

# Basic freetext search (in vulnerability summary).
# Full-text indexing is more efficient to search across all CVEs.
if vFreeSearch:
    for item in collection.find({
            'summary': {