def cmspoc_check(oldurl, cmsurl): poc_class = pocdb_pocs(cmsurl) poc_dict = poc_class.cmspocdict cprint( ">>>CMS漏洞扫描URL: " + cmsurl + "\t可用POC个数[" + str(len(poc_dict)) + "]", "magenta") cmspool.map(cmsprint, poc_dict.keys()) print("\r") results = cmspool.map(cmscheck, poc_dict.values()) cmspool.close() cmspool.join() try: with app.app_context(): for result in results: vulnerable, bugurl, bugname, payload, bugdetail = result if vulnerable: bug = BugList(oldurl=oldurl, bugurl=bugurl, bugname=bugname, buggrade=redispool.hget('bugtype', bugname), payload=payload, bugdetail=bugdetail) db.session.add(bug) redispool.pfadd(redispool.hget('bugtype', bugname), bugurl) redispool.pfadd(bugname, bugurl) db.session.commit() except Exception as e: print(e) pass
def industrial_check(oldurl, industrialurl): poc_class = pocdb_pocs(industrialurl) poc_dict = poc_class.industrialpocdict cprint( ">>>工控漏洞扫描URL: " + industrialurl + "\t可用POC个数[" + str(len(poc_dict)) + "]", "magenta") print("\r") results = [] for value in poc_dict.values(): results.append(value.run()) with app.app_context(): for result in results: try: vulnerable, bugurl, bugname, payload, bugdetail = result if vulnerable: bug = BugList(oldurl=oldurl, bugurl=bugurl, bugname=bugname, buggrade=redispool.hget('bugtype', bugname), payload=payload, bugdetail=bugdetail) redispool.pfadd(redispool.hget('bugtype', bugname), bugurl) redispool.pfadd(bugname, bugurl) db.session.add(bug) db.session.commit() except Exception as e: print(e) pass
def cmspoc_check(cmsurl): poc_class = pocdb_pocs(cmsurl) poc_dict = poc_class.cmspocdict cprint( ">>>CMS漏洞扫描URL: " + cmsurl + "\t可用POC个数[" + str(len(poc_dict)) + "]", "magenta") cmspool.map(cmsprint, poc_dict.keys()) print("\r") results = cmspool.map(cmscheck, poc_dict.values()) cmspool.close() cmspool.join()
def hardware_check(hardwareurl): poc_class = pocdb_pocs(hardwareurl) poc_dict = poc_class.hardwarepocdict cprint( ">>>Hardware漏洞扫描URL: " + hardwareurl + "\t可用POC个数[" + str(len(poc_dict)) + "]", "magenta") hardwarepool.map(hardwareprint, poc_dict.keys()) print("\r") results = hardwarepool.map(hardwarecheck, poc_dict.values()) hardwarepool.close() hardwarepool.join()
def system_check(systemurl): poc_class = pocdb_pocs(systemurl) poc_dict = poc_class.systempocdict cprint( ">>>System漏洞扫描URL: " + systemurl + "\t可用POC个数[" + str(len(poc_dict)) + "]", "magenta") systempool.map(systemprint, poc_dict.keys()) print("\r") results = systempool.map(systemcheck, poc_dict.values()) systempool.close() systempool.join()
def industrial_check(industrialurl): poc_class = pocdb_pocs(industrialurl) poc_dict = poc_class.industrialpocdict cprint( ">>>工控漏洞扫描URL: " + industrialurl + "\t可用POC个数[" + str(len(poc_dict)) + "]", "magenta") industrialpool.map(industrialprint, poc_dict.keys()) print("\r") results = industrialpool.map(industrialcheck, poc_dict.values()) industrialpool.close() industrialpool.join()
def informationpoc_check(oldurl, informationurl): poc_class = pocdb_pocs(informationurl) poc_dict = poc_class.informationpocdict cprint( ">>>Information漏洞扫描URL: " + informationurl + "\t可用POC个数[" + str(len(poc_dict)) + "]", "magenta") informationpool.map(informationprint, poc_dict.keys()) print("\r") results = informationpool.map(informationcheck, poc_dict.values()) informationpool.close() informationpool.join() with app.app_context(): for result in results: vulnerable, bugurl, bugname, payload, bugdetail = result if vulnerable: bug = BugList(oldurl=oldurl, bugurl=bugurl, bugname=bugname, buggrade=redispool.hget('bugtype', bugname), payload=payload, bugdetail=bugdetail) db.session.add(bug) db.session.commit()