def _setHTTPUserAgent(): """ @function Set the HTTP User-Agent header. """ if conf.agent: debugMsg = "setting the HTTP User-Agent header" logger.debug(debugMsg) conf.httpHeaders[HTTP_HEADER.USER_AGENT] = conf.agent if conf.randomAgent: infoMsg = "loading random HTTP User-Agent header(s) from " infoMsg += "file '%s'" % paths.USER_AGENTS logger.log(CUSTOM_LOGGING.SYSINFO, infoMsg) try: userAgents = getFileItems(paths.USER_AGENTS) except IOError: warnMsg = "unable to read HTTP User-Agent header " warnMsg += "file '%s'" % paths.USER_AGENTS logger.log(CUSTOM_LOGGING.WARNING, warnMsg) return userAgent = random.sample(userAgents, 1) infoMsg = "fetched random HTTP User-Agent header from " infoMsg += "file '%s': '%s'" % (paths.USER_AGENTS, userAgent) logger.log(CUSTOM_LOGGING.SYSINFO, infoMsg) conf.httpHeaders[HTTP_HEADER.USER_AGENT] = userAgent
def _setHTTPUserAgent(): """ @function Set the HTTP User-Agent header. """ if conf.agent: debugMsg = "setting the HTTP User-Agent header" logger.debug(debugMsg) conf.httpHeaders[HTTP_HEADER.USER_AGENT] = conf.agent if conf.randomAgent: infoMsg = "loading random HTTP User-Agent header(s) from " infoMsg += "file '%s'" % paths.USER_AGENTS logger.log(CUSTOM_LOGGING.SYSINFO, infoMsg) try: userAgents = getFileItems(paths.USER_AGENTS) except IOError: warnMsg = "unable to read HTTP User-Agent header " warnMsg += "file '%s'" % paths.USER_AGENTS logger.log(CUSTOM_LOGGING.WARNING, warnMsg) return userAgent = random.sample(userAgents, 1)[0] infoMsg = "fetched random HTTP User-Agent header from " infoMsg += "file '%s': '%s'" % (paths.USER_AGENTS, userAgent) logger.log(CUSTOM_LOGGING.SYSINFO, infoMsg) conf.httpHeaders[HTTP_HEADER.USER_AGENT] = userAgent
def setMultipleTarget(): if conf.requires or conf.requiresFreeze: return if not conf.urlFile: for pocname, pocInstance in kb.registeredPocs.items(): target_urls = [] if conf.url: if conf.url.endswith('/24'): try: socket.inet_aton(conf.url.split('/')[0]) base_addr = conf.url[:conf.url.rfind('.') + 1] target_urls = [ '{}{}'.format(base_addr, i) for i in xrange(1, 255 + 1) ] except socket.error: errMsg = 'only id address acceptable' logger.log(CUSTOM_LOGGING.ERROR, errMsg) else: target_urls = conf.url.split(',') for url in target_urls: if url: kb.targets.put((url, pocInstance, pocname)) else: errMsg = 'the url needs to be set' logger.log(CUSTOM_LOGGING.ERROR, errMsg) break return conf.urlFile = safeExpandUser(conf.urlFile) infoMsg = "parsing multiple targets list from '%s'" % conf.urlFile logger.log(CUSTOM_LOGGING.SYSINFO, infoMsg) if not os.path.isfile(conf.urlFile): errMsg = "the specified file does not exist" raise PocsuiteFilePathException(errMsg) for line in getFileItems(conf.urlFile): for pocname, poc in kb.registeredPocs.items(): if not isinstance(poc, dict): kb.targets.put((line.strip(), copy.copy(poc), pocname)) else: kb.targets.put((line.strip(), poc, pocname))
def setMultipleTarget(): if conf.requires or conf.requiresFreeze: return if not conf.urlFile: for pocname, pocInstance in kb.registeredPocs.items(): target_urls = [] if conf.url.endswith('/24'): try: socket.inet_aton(conf.url.split('/')[0]) base_addr = conf.url[:conf.url.rfind('.') + 1] target_urls = ['{}{}'.format(base_addr, i) for i in xrange(1, 255 + 1)] except socket.error: errMsg = 'only id address acceptable' logger.log(CUSTOM_LOGGING.ERROR, errMsg) else: target_urls = conf.url.split(',') for url in target_urls: if url: kb.targets.put((url, pocInstance, pocname)) return conf.urlFile = safeExpandUser(conf.urlFile) infoMsg = "parsing multiple targets list from '%s'" % conf.urlFile logger.log(CUSTOM_LOGGING.SYSINFO, infoMsg) if not os.path.isfile(conf.urlFile): errMsg = "the specified file does not exist" raise PocsuiteFilePathException(errMsg) for line in getFileItems(conf.urlFile): for pocname, poc in kb.registeredPocs.items(): if not isinstance(poc, dict): kb.targets.put((line.strip(), copy.copy(poc), pocname)) else: kb.targets.put((line.strip(), poc, pocname))
def getLargeWeakPassword(): return getFileItems(paths.LARGE_WEAK_PASS)
def getWeakPassword(): return getFileItems(paths.WEAK_PASS)