def parse_cl(self): options = FuzzSessionOptions() # Usage and command line help try: opts, args = getopt.getopt(self.argv[1:], "hAZIXvcb:e:R:d:z:r:f:t:w:V:H:m:o:s:p:w:",['sc=','sh=','sl=','sw=','ss=','hc=','hh=','hl=','hw=','hs=','ntlm=','basic=','digest=','follow','script-help=','script=','script-args=','filter=','interact','help','version']) optsd = defaultdict(list) for i,j in opts: optsd[i].append(j) self._parse_help_opt(optsd) if len(args) == 0: raise FuzzException(FuzzException.FATAL, "You must specify a payload and a URL") url = args[0] self._check_options(optsd) self._parse_options(optsd, options) options.set("filter_params", self._parse_filters(optsd)) options.set("genreq", requestGenerator(self._parse_seed(url, optsd), self._parse_payload(optsd))) return options except FuzzException, e: self.show_brief_usage() #self.show_usage() raise e
def parse_cl(self): options = FuzzSessionOptions() # Usage and command line help try: opts, args = getopt.getopt(self.argv[1:], "hAZIXvcb:e:R:d:z:r:f:t:w:V:H:m:o:s:p:w:", ['sc=', 'sh=', 'sl=', 'sw=', 'ss=', 'hc=', 'hh=', 'hl=', 'hw=', 'hs=', 'ntlm=', 'basic=', 'digest=', 'follow', 'script-help=', 'script=', 'script-args=', 'filter=', 'interact', 'help', 'version', 'url-file=']) optsd = defaultdict(list) for i, j in opts: optsd[i].append(j) self._parse_help_opt(optsd) if not "--url-file" in optsd.keys(): if len(args) == 0: raise FuzzException(FuzzException.FATAL, "You must specify either filename with list of URLS's and payloads or a payload and a URL") else: url = [args[0]] else: try: with open(optsd["--url-file"][0], "r") as f: url = f.readlines() url = map(str.strip, url) except IOError: raise FuzzException(FuzzException.FATAL, "Incorrect URL file") self._check_options(optsd) self._parse_options(optsd, options) options.set("filter_params", self._parse_filters(optsd)) options.set("genreq", [requestGenerator(self._parse_seed(u, optsd), self._parse_payload(optsd)) for u in url]) return options except FuzzException, e: self.show_brief_usage() # self.show_usage() raise e
def parse_cl(self): options = FuzzSessionOptions() # Usage and command line help try: opts, args = getopt.getopt( self.argv[1:], "hAZIXvcb:e:R:d:z:r:f:t:w:V:H:m:o:s:p:w:", [ 'sc=', 'sh=', 'sl=', 'sw=', 'ss=', 'hc=', 'hh=', 'hl=', 'hw=', 'hs=', 'ntlm=', 'basic=', 'digest=', 'follow', 'script-help=', 'script=', 'script-args=', 'filter=', 'interact', 'help', 'version' ]) optsd = defaultdict(list) for i, j in opts: optsd[i].append(j) self._parse_help_opt(optsd) if len(args) == 0: raise FuzzException(FuzzException.FATAL, "You must specify a payload and a URL") url = args[0] self._check_options(optsd) self._parse_options(optsd, options) options.set("filter_params", self._parse_filters(optsd)) options.set( "genreq", requestGenerator(self._parse_seed(url, optsd), self._parse_payload(optsd))) return options except FuzzException, e: self.show_brief_usage() #self.show_usage() raise e