def independent(url, value): #单个组件扫描接口 OutFileName = None Values = None ProxyIp = None if value.find('nmap') != -1: NmapScan(url) elif value.find('struts') != -1: Struts2Main.Main(url, OutFileName, Values, ProxyIp) # 调用Struts2主函数 elif value.find('confluence') != -1: ConfluenceMain.Main(url, OutFileName, Values, ProxyIp) # 调用 Confluence主函数 elif value.find('nginx') != -1: NginxMain.Main(url, OutFileName, Values, ProxyIp) #调用Nginx主函数 elif value.find('apache') != -1: ApacheMain.Main(url, OutFileName, Values, ProxyIp) # 调用Apache主函数 elif value.find('php') != -1: PhpMain.Main(url, OutFileName, Values, ProxyIp) # 调用Php主函数 elif value.find('cms') != -1: CmsMain.Main(url, OutFileName, Values, ProxyIp) # 调用Cms主函数 elif value.find('OA') != -1: OaMian.Main(url, OutFileName, Values, ProxyIp) # 调用OA主函数 elif value.find('information') != -1: InformationDisclosureMain.Main(url, OutFileName, Values, ProxyIp) # 调用信息泄露主函数 elif value.find('jenkins') != -1: JenkinsMain.Main(url, OutFileName, Values, ProxyIp) # 调用Jenkins主函数 elif value.find('solr') != -1: SolrMain.Main(url, OutFileName, Values, ProxyIp) # 调用Solr主函数 elif value.find('js') != -1: JSCrawling(url)
def San(OutFileName, Url, Values, ProxyIp): # try: # Weblogic.WeblogicMain.Main(Url)#调用weblogic主函数 # except: # print("WeblogicSanExcept") try: Struts2Main.Main(Url, OutFileName, Values, ProxyIp) # 调用Struts2主函数 except: pass try: ConfluenceMain.Main(Url, OutFileName, Values, ProxyIp) # 调用 Confluence主函数 except: pass try: NginxMain.Main(Url, OutFileName, Values, ProxyIp) # 调用 Confluence主函数 except: pass try: ApacheMian.Main(Url, OutFileName, Values, ProxyIp) # 调用Apache主函数 except: pass try: PhpMain.Main(Url, OutFileName, Values, ProxyIp) # 调用Php主函数 except: pass try: CmsMian.Main(Url, OutFileName, Values, ProxyIp) # 调用Cms主函数 except: pass try: OaMian.Main(Url, OutFileName, Values, ProxyIp) # 调用OA主函数 except: pass
def San(ThreadPool,Url,Values,ProxyIp): #POC模块存进多线程池,这样如果批量扫描会变快很多 Struts2Main.Main(ThreadPool,Url,Values,ProxyIp)# 调用Struts2主函数 ConfluenceMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用 Confluence主函数 NginxMain.Main(ThreadPool,Url,Values,ProxyIp)#调用Nginx主函数 ApacheMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用Apache主函数 PhpMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用Php主函数 CmsMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用Cms主函数 OaMian.Main(ThreadPool,Url,Values,ProxyIp)# 调用OA主函数 JenkinsMain.Main(ThreadPool,Url,Values,ProxyIp) # 调用Jenkins主函数 SolrMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用Solr主函数 RailsMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用RailsMain主函数 KibanaMain.Main(ThreadPool,Url,Values,ProxyIp) # 调用KibanaMain主函数 CitrixMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用CitrixMain主函数 MongoMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用MongoMain主函数 SpringMain.Main(ThreadPool,Url,Values,ProxyIp)# 调用SpringMain主函数
def San(ThreadPool, Url, Values, ProxyIp): #POC模块存进多线程池,这样如果批量扫描会变快很多 Struts2Main.Main(ThreadPool, Url, Values, ProxyIp) # 调用Struts2主函数 ConfluenceMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用 Confluence主函数 NginxMain.Main(ThreadPool, Url, Values, ProxyIp) #调用Nginx主函数 ApacheMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用Apache主函数 PhpMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用Php主函数 CmsMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用Cms主函数 OaMian.Main(ThreadPool, Url, Values, ProxyIp) # 调用OA主函数 JenkinsMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用Jenkins主函数 Harbor.Main(ThreadPool, Url, Values, ProxyIp) # 调用Harbor主函数 RailsMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用RailsMain主函数 KibanaMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用KibanaMain主函数 CitrixMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用CitrixMain主函数 MongoMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用MongoMain主函数 SpringMain.Main(ThreadPool, Url, Values, ProxyIp) # 调用SpringMain主函数 FastJson.Main(ThreadPool, Url, Values, ProxyIp) # 调用FastJson主函数 ThreadPool.Start(ThreadNumber) #启动多线程