コード例 #1
0
ファイル: dirbrute.py プロジェクト: vogt420/Osmedeus
    def parsing_ouput(self):
        utils.print_good('Parsing result found to a file')
        final_result = utils.replace_argument(
            self.options, '$WORKSPACE/directory/$OUTPUT-summary.txt')

        # dirsearch part
        dirsearch_files = utils.list_files(self.options['WORKSPACE'] +
                                           '/directory/quick',
                                           pattern='*-dirsearch.txt')
        for file in dirsearch_files:
            data = utils.just_read(file)
            if data:
                utils.just_append(final_result, data)

        # wfuzz part
        wfuzz_files = utils.list_files(self.options['WORKSPACE'] +
                                       '/directory/quick',
                                       pattern='*-wfuzz.json')
        for file in wfuzz_files:
            data_json = utils.reading_json(file)
            if data_json:
                data = "\n".join([x.get("url") for x in data_json])
                utils.just_append(final_result, data)

        # final_result
        utils.clean_up(final_result)
        utils.check_output(final_result)
コード例 #2
0
ファイル: vulnscan.py プロジェクト: zzhsec/Osmedeus
    def parsing_to_csv(self):
        nmap_detail_path = utils.replace_argument(
            self.options, '$WORKSPACE/vulnscan/details')

        # create all csv based on xml file
        for file in utils.list_files(nmap_detail_path, ext='xml'):
            # print(file)
            cmd = "python3 $PLUGINS_PATH/nmap-stuff/nmap_xml_parser.py -f {0} -csv $WORKSPACE/vulnscan/details/$OUTPUT-nmap.csv".format(
                file)

            cmd = utils.replace_argument(self.options, cmd)
            csv_output = utils.replace_argument(
                self.options, '$WORKSPACE/vulnscan/details/$OUTPUT-nmap.csv')

            # just return if this was done without checking anything
            if utils.not_empty_file(csv_output):
                return

            execute.send_cmd(self.options, cmd, csv_output, '',
                             self.module_name)

        time.sleep(5)
        # looping through all csv file
        all_csv = "IP,Host,OS,Proto,Port,Service,Product,Service FP,NSE Script ID,NSE Script Output,Notes\n"

        for file in utils.list_files(nmap_detail_path, ext='csv'):
            all_csv += "\n".join(utils.just_read(file).splitlines()[1:])

        csv_summary_path = utils.replace_argument(
            self.options, '$WORKSPACE/vulnscan/summary-$OUTPUT.csv')
        utils.just_write(csv_summary_path, all_csv)
        utils.print_line()
        # beautiful csv look
        cmd = "csvcut -c 1-7 $WORKSPACE/vulnscan/summary-$OUTPUT.csv | csvlook  --no-inference | tee $WORKSPACE/vulnscan/std-$OUTPUT-summary.std"

        cmd = utils.replace_argument(self.options, cmd)
        output_path = utils.replace_argument(
            self.options, '$WORKSPACE/vulnscan/std-$OUTPUT-summary.std')
        execute.send_cmd(self.options, cmd, output_path, '', self.module_name)

        self.screenshots(all_csv)