예제 #1
0
파일: portscan.py 프로젝트: qsdj/Osmedeus
    def __init__(self, options):
        utils.print_banner("Port Scanning")
        utils.make_directory(options['WORKSPACE'] + '/portscan')
        utils.make_directory(options['WORKSPACE'] + '/subdomain')
        self.module_name = self.__class__.__name__
        self.options = options

        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "It's already done. use '-f' options to force rerun the module")
            return
        self.is_direct = utils.is_direct_mode(options, require_input=True)

        slack.slack_noti('status', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Port Scanning for {0}'.format(self.options['TARGET'])
        })
        self.initial()

        utils.just_waiting(self.options, self.module_name, seconds=60)
        # self.create_ip_result()
        self.conclude()
        slack.slack_noti('good', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Port Scanning for {0}'.format(self.options['TARGET'])
        })
예제 #2
0
    def __init__(self, options):
        utils.print_banner("Scanning Subdomain")
        utils.make_directory(options['WORKSPACE'] + '/subdomain')
        self.module_name = self.__class__.__name__
        self.options = options
        self.options['CURRENT_MODULE'] = self.module_name
        self.options['SPEED'] = utils.custom_speed(self.options)
        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "It's already done. use '-f' options to force rerun the module")
            return
        slack.slack_noti('status', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Scanning Subdomain for {0}'.format(self.options['TARGET'])
        })
        self.initial()
        utils.just_waiting(self.options, self.module_name, seconds=60)
        self.conclude()

        # this gonna run after module is done to update the main json
        slack.slack_noti('good', self.options, mess={
            'title':  "{0} | {1} ".format(self.options['TARGET'], self.module_name),
            'content': 'Done Scanning Subdomain for {0}'.format(self.options['TARGET'])
        })
        utils.print_line()
예제 #3
0
    def __init__(self, options):
        utils.print_banner("AssetFinding")
        utils.make_directory(options['WORKSPACE'] + '/assets')
        self.module_name = self.__class__.__name__
        self.options = options
        self.options['CURRENT_MODULE'] = self.module_name
        self.options['SPEED'] = utils.custom_speed(self.options)
        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "It's already done. use '-f' options to force rerun the module"
            )
            return

        self.is_direct = utils.is_direct_mode(options, require_input=True)
        slack.slack_noti(
            'status',
            self.options,
            mess={
                'title':
                "{0} | {1}".format(self.options['TARGET'], self.module_name),
                'content':
                'Start AssetFinding for {0}'.format(self.options['TARGET'])
            })
        self.initial()
        utils.just_waiting(self.options, self.module_name)
        slack.slack_noti(
            'good',
            self.options,
            mess={
                'title':
                "{0} | {1} ".format(self.options['TARGET'], self.module_name),
                'content':
                'Done AssetFinding for {0}'.format(self.options['TARGET'])
            })
        utils.print_line()
예제 #4
0
    def __init__(self, options):
        utils.print_banner("Port Scanning")
        utils.make_directory(options['WORKSPACE'] + '/portscan')
        utils.make_directory(options['WORKSPACE'] + '/subdomain')
        self.module_name = self.__class__.__name__
        self.options = options

        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "It's already done. use '-f' options to force rerun the module")
            return
        
        self.is_direct = utils.is_direct_mode(options, require_input=True)

        slack.slack_noti('status', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Port Scanning for {0}'.format(self.options['TARGET'])
        })

        self.initial()

        utils.just_waiting(self.options, self.module_name, seconds=60)
        self.conclude()

        slack.slack_noti('good', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Port Scanning for {0}'.format(self.options['TARGET'])
        })
예제 #5
0
파일: cors.py 프로젝트: vohzd/Osmedeus
 def __init__(self, options):
     utils.print_banner("CORS Scanning")
     utils.make_directory(options['WORKSPACE'] + '/cors')
     self.module_name = self.__class__.__name__
     self.options = options
     slack.slack_noti(
         'status',
         self.options,
         mess={
             'title':
             "{0} | {1}".format(self.options['TARGET'], self.module_name),
             'content':
             'Start Scanning CORS for {0}'.format(self.options['TARGET'])
         })
     self.initial()
     utils.just_waiting(self.options, self.module_name)
     slack.slack_noti(
         'good',
         self.options,
         mess={
             'title':
             "{0} | {1} ".format(self.options['TARGET'], self.module_name),
             'content':
             'Done Scanning CORS for {0}'.format(self.options['TARGET'])
         })
예제 #6
0
    def __init__(self, options):
        utils.print_banner("Github Repo Scanning")
        utils.make_directory(options['WORKSPACE'] + '/gitscan/')
        self.module_name = self.__class__.__name__
        self.options = options
        slack.slack_noti('status',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Start Github Repo Scanning for {0}'.format(
                                 self.options['TARGET'])
                         })
        self.initial()

        slack.slack_noti('good',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Start Github Repo Scanning for {0}'.format(
                                 self.options['TARGET'])
                         })
예제 #7
0
    def __init__(self, options):
        utils.print_banner("ScreenShot the target")
        utils.make_directory(options['WORKSPACE'] + '/screenshot')
        self.module_name = self.__class__.__name__
        self.options = options
        self.options['CURRENT_MODULE'] = self.module_name
        self.options['SPEED'] = utils.custom_speed(self.options)
        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "It's already done. use '-f' options to force rerun the module"
            )
            return
        slack.slack_noti(
            'status',
            self.options,
            mess={
                'title':
                "{0} | {1}".format(self.options['TARGET'], self.module_name),
                'content':
                'Start ScreenShot for {0}'.format(self.options['TARGET'])
            })

        self.initial()

        slack.slack_noti(
            'good',
            self.options,
            mess={
                'title':
                "{0} | {1} ".format(self.options['TARGET'], self.module_name),
                'content':
                'Done ScreenShot for {0}'.format(self.options['TARGET'])
            })
        utils.print_line()
예제 #8
0
파일: ipspace.py 프로젝트: qsdj/Osmedeus
    def __init__(self, options):
        utils.print_banner("IP Discovery")
        utils.make_directory(options['WORKSPACE'] + '/ipspace')
        self.module_name = self.__class__.__name__
        self.options = options

        if utils.resume(self.options, self.module_name):
            utils.print_info("It's already done. use '-f' options to force rerun the module")
            return

        slack.slack_noti('status', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start IP Discovery for {0}'.format(self.options['TARGET'])
        })
        self.initial()
        utils.just_waiting(self.options, self.module_name)
        try:
            self.conclude()
        except:
            utils.print_bad("Something wrong with conclude for {0}".format(self.module_name))

        slack.slack_noti('good', self.options, mess={
            'title':  "{0} | {1} ".format(self.options['TARGET'], self.module_name),
            'content': 'Done IP Discovery for {0}'.format(self.options['TARGET'])
        })
예제 #9
0
    def create_skeleton_json(self):
        outout = utils.replace_argument(self.options,
                                        '$WORKSPACE/$COMPANY.json')

        if utils.not_empty_file(outout):
            utils.print_info("Modules is already done")
            return

        main_json = {
            "Company": utils.replace_argument(self.options, '$COMPANY'),
            "Main_domain": utils.replace_argument(self.options, '$TARGET'),
            "Info": {},
            "Subdomains": [],
            "Modules": {},
            "IP Space": []
        }

        utils.just_write(outout, main_json, is_json=True)
        utils.check_output(outout)
        slack.slack_noti('status',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Create skeleton json'
                         })
예제 #10
0
    def __init__(self, options):
        utils.print_banner("Reconnaisance")
        utils.make_directory(options['WORKSPACE'] + '/recon')
        self.module_name = self.__class__.__name__
        self.options = options
        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "It's already done. use '-f' options to force rerun the module"
            )
            return
        slack.slack_noti('status',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Start Scanning Subdomain for {0}'.format(
                                 self.options['TARGET'])
                         })

        self.initial()
        self.conclude()

        # this gonna run after module is done to update the main json
        slack.slack_noti('good',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1} ".format(self.options['TARGET'],
                                                 self.module_name),
                             'content':
                             'Done Scanning Subdomain for {0}'.format(
                                 self.options['TARGET'])
                         })
예제 #11
0
    def __init__(self, options):
        utils.print_banner("Scanning Directory")
        utils.make_directory(options['WORKSPACE'] + '/directory')
        self.module_name = self.__class__.__name__
        self.options = options
        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "Detect is already done. use '-f' options to force rerun the module"
            )
            return

        self.is_direct = utils.is_direct_mode(options, require_input=True)

        slack.slack_noti('status',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Start Scanning Directory for {0}'.format(
                                 self.options['TARGET'])
                         })
        self.initial()
        slack.slack_noti('good',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Start Scanning Directory for {0}'.format(
                                 self.options['TARGET'])
                         })
예제 #12
0
    def __init__(self, options):
        utils.print_banner("Scanning for Subdomain TakeOver")
        self.module_name = self.__class__.__name__
        self.options = options
        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "Detect is already done. use '-f' options to force rerun the module"
            )
            return
        slack.slack_noti('status',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Start Scanning TakeOver for {0}'.format(
                                 self.options['TARGET'])
                         })
        self.initial()

        slack.slack_noti(
            'good',
            self.options,
            mess={
                'title':
                "{0} | {1} ".format(self.options['TARGET'], self.module_name),
                'content':
                'Done Scanning TakeOver for {0}'.format(self.options['TARGET'])
            })

        utils.print_banner("{0} Done".format(self.module_name))
예제 #13
0
    def __init__(self, options):
        utils.print_banner("Scanning Subdomain")
        utils.make_directory(options['WORKSPACE'] + '/subdomain')
        self.module_name = self.__class__.__name__
        self.options = options

        slack.slack_noti('status',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Start Scanning Subdomain for {0}'.format(
                                 self.options['TARGET'])
                         })

        self.initial()

        utils.just_waiting(self.module_name, seconds=10)
        self.conclude()

        #this gonna run after module is done to update the main json
        slack.slack_noti('good',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1} ".format(self.options['TARGET'],
                                                 self.module_name),
                             'content':
                             'Done Scanning Subdomain for {0}'.format(
                                 self.options['TARGET'])
                         })
예제 #14
0
 def __init__(self, options):
     utils.print_banner("Scanning through BurpState")
     utils.make_directory(options['WORKSPACE'] + '/burpstate/')
     self.module_name = self.__class__.__name__
     self.options = options
     slack.slack_noti('status',
                      self.options,
                      mess={
                          'title':
                          "{0} | {1}".format(self.options['TARGET'],
                                             self.module_name),
                          'content':
                          'Start Scanning BurpState for {0}'.format(
                              self.options['TARGET'])
                      })
     self.initial()
     slack.slack_noti('good',
                      self.options,
                      mess={
                          'title':
                          "{0} | {1}".format(self.options['TARGET'],
                                             self.module_name),
                          'content':
                          'Start Scanning BurpState for {0}'.format(
                              self.options['TARGET'])
                      })
     self.conclude()
예제 #15
0
 def __init__(self, options):
     utils.print_banner("Scanning through BurpState")
     utils.make_directory(options['WORKSPACE'] + '/burpstate/')
     self.module_name = self.__class__.__name__
     self.options = options
     if utils.resume(self.options, self.module_name):
         utils.print_info(
             "It's already done. use '-f' options to force rerun the module"
         )
         return
     slack.slack_noti('status',
                      self.options,
                      mess={
                          'title':
                          "{0} | {1}".format(self.options['TARGET'],
                                             self.module_name),
                          'content':
                          'Start Scanning BurpState for {0}'.format(
                              self.options['TARGET'])
                      })
     self.initial()
     slack.slack_noti('good',
                      self.options,
                      mess={
                          'title':
                          "{0} | {1}".format(self.options['TARGET'],
                                             self.module_name),
                          'content':
                          'Start Scanning BurpState for {0}'.format(
                              self.options['TARGET'])
                      })
     self.conclude()
예제 #16
0
    def __init__(self, options):
        utils.print_banner("Scanning for Subdomain TakeOver")
        self.module_name = self.__class__.__name__
        self.options = options
        slack.slack_noti('status',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Start Scanning TakeOver for {0}'.format(
                                 self.options['TARGET'])
                         })
        self.initial()

        slack.slack_noti(
            'good',
            self.options,
            mess={
                'title':
                "{0} | {1} ".format(self.options['TARGET'], self.module_name),
                'content':
                'Done Scanning TakeOver for {0}'.format(self.options['TARGET'])
            })

        utils.print_banner("{0} Done".format(self.module_name))
예제 #17
0
    def __init__(self, options):
        utils.print_banner("Port Scanning")
        utils.make_directory(options['WORKSPACE'] + '/portscan')
        self.module_name = self.__class__.__name__
        self.options = options
        slack.slack_noti(
            'status',
            self.options,
            mess={
                'title':
                "{0} | {1}".format(self.options['TARGET'], self.module_name),
                'content':
                'Start Port Scanning for {0}'.format(self.options['TARGET'])
            })
        # self.initial()

        utils.just_waiting(self.module_name, seconds=60)
        # self.create_ip_result()
        self.conclude()
        slack.slack_noti(
            'good',
            self.options,
            mess={
                'title':
                "{0} | {1}".format(self.options['TARGET'], self.module_name),
                'content':
                'Start Port Scanning for {0}'.format(self.options['TARGET'])
            })
예제 #18
0
 def __init__(self, options):
     utils.print_banner("CORS Scanning")
     utils.make_directory(options['WORKSPACE'] + '/cors')
     self.module_name = self.__class__.__name__
     self.options = options
     if utils.resume(self.options, self.module_name):
         utils.print_info(
             "It's already done. use '-f' options to force rerun the module"
         )
         return
     slack.slack_noti(
         'status',
         self.options,
         mess={
             'title':
             "{0} | {1}".format(self.options['TARGET'], self.module_name),
             'content':
             'Start Scanning CORS for {0}'.format(self.options['TARGET'])
         })
     self.initial()
     utils.just_waiting(self.options, self.module_name)
     slack.slack_noti(
         'good',
         self.options,
         mess={
             'title':
             "{0} | {1} ".format(self.options['TARGET'], self.module_name),
             'content':
             'Done Scanning CORS for {0}'.format(self.options['TARGET'])
         })
예제 #19
0
    def create_skeleton_json(self):
        main_json = {
            "Company": utils.replace_argument(self.options, '$COMPANY'),
            "Main_domain": utils.replace_argument(self.options, '$TARGET'),
            "Whois": {
                "path":
                utils.replace_argument(self.options,
                                       '$WORKSPACE/info/$OUTPUT-whois.txt')
            },
            "Subdomains": [],
            "Modules": {},
            "IP Space": []
        }

        outout = utils.replace_argument(self.options,
                                        '$WORKSPACE/$COMPANY.json')

        utils.just_write(outout, main_json, is_json=True)
        utils.check_output(outout)
        slack.slack_noti('status',
                         self.options,
                         mess={
                             'title':
                             "{0} | {1}".format(self.options['TARGET'],
                                                self.module_name),
                             'content':
                             'Create skeleton json'
                         })
예제 #20
0
    def __init__(self, options):
        utils.print_banner("IP Discovery")
        utils.make_directory(options['WORKSPACE'] + '/ipspace')
        self.module_name = self.__class__.__name__
        self.options = options
        slack.slack_noti(
            'status',
            self.options,
            mess={
                'title':
                "{0} | {1}".format(self.options['TARGET'], self.module_name),
                'content':
                'Start IP Discovery for {0}'.format(self.options['TARGET'])
            })
        self.initial()
        utils.just_waiting(self.module_name)
        try:
            self.conclude()
        except:
            utils.print_bad("Something wrong with conclude for {0}".format(
                self.module_name))

        slack.slack_noti(
            'good',
            self.options,
            mess={
                'title':
                "{0} | {1} ".format(self.options['TARGET'], self.module_name),
                'content':
                'Done IP Discovery for {0}'.format(self.options['TARGET'])
            })
예제 #21
0
 def __init__(self, options):
     utils.print_banner("ScreenShot the target")
     utils.make_directory(options['WORKSPACE'] + '/screenshot')
     self.module_name = self.__class__.__name__
     self.options = options
     slack.slack_noti('status', self.options, mess={
         'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
         'content': 'Start ScreenShot for {0}'.format(self.options['TARGET'])
     })
     self.initial()
     slack.slack_noti('good', self.options, mess={
         'title':  "{0} | {1} ".format(self.options['TARGET'], self.module_name),
         'content': 'Done ScreenShot for {0}'.format(self.options['TARGET'])
     })
예제 #22
0
파일: sslscan.py 프로젝트: qsdj/Osmedeus
 def __init__(self, options):
     utils.print_banner("SSL Scanning")
     utils.make_directory(options['WORKSPACE'] + '/ssl/')
     self.module_name = self.__class__.__name__
     self.options = options
     if utils.resume(self.options, self.module_name):
         utils.print_info("It's already done. use '-f' options to force rerun the module")
         return
     slack.slack_noti('status', self.options, mess={
         'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
         'content': 'Start SSL Scanning for {0}'.format(self.options['TARGET'])
     })
     self.initial()
     utils.just_waiting(self.options, self.module_name)
예제 #23
0
파일: screenshot.py 프로젝트: qsdj/Osmedeus
 def __init__(self, options):
     utils.print_banner("ScreenShot the target")
     utils.make_directory(options['WORKSPACE'] + '/screenshot')
     self.module_name = self.__class__.__name__
     self.options = options
     if utils.resume(self.options, self.module_name):
         utils.print_info("It's already done. use '-f' options to force rerun the module")
         return
     slack.slack_noti('status', self.options, mess={
         'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
         'content': 'Start ScreenShot for {0}'.format(self.options['TARGET'])
     })
     self.initial()
     slack.slack_noti('good', self.options, mess={
         'title':  "{0} | {1} ".format(self.options['TARGET'], self.module_name),
         'content': 'Done ScreenShot for {0}'.format(self.options['TARGET'])
     })
예제 #24
0
파일: takeover.py 프로젝트: qsdj/Osmedeus
    def __init__(self, options):
        utils.print_banner("Scanning for Subdomain TakeOver")
        self.module_name = self.__class__.__name__
        self.options = options
        if utils.resume(self.options, self.module_name):
            utils.print_info("It's already done. use '-f' options to force rerun the module")
            return
        slack.slack_noti('status', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Scanning TakeOver for {0}'.format(self.options['TARGET'])
        })
        self.initial()

        slack.slack_noti('good', self.options, mess={
            'title':  "{0} | {1} ".format(self.options['TARGET'], self.module_name),
            'content': 'Done Scanning TakeOver for {0}'.format(self.options['TARGET'])
        })

        utils.print_banner("{0} Done".format(self.module_name))
예제 #25
0
파일: headers.py 프로젝트: qsdj/Osmedeus
    def __init__(self, options):
        utils.print_banner("Headers Scanning")
        utils.make_directory(options['WORKSPACE'] + '/headers')
        utils.make_directory(options['WORKSPACE'] + '/headers/details')
        self.module_name = self.__class__.__name__
        self.options = options
        if utils.resume(self.options, self.module_name):
            utils.print_info("It's already done. use '-f' options to force rerun the module")
            return
        
        self.is_direct = utils.is_direct_mode(options, require_input=True)

        slack.slack_noti('status', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Headers Scanning for {0}'.format(self.options['TARGET'])
        })
        self.initial()
        slack.slack_noti('good', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Headers Scanning for {0}'.format(self.options['TARGET'])
        })
예제 #26
0
파일: recon.py 프로젝트: qsdj/Osmedeus
    def __init__(self, options):
        utils.print_banner("Reconnaisance")
        utils.make_directory(options['WORKSPACE'] + '/recon')
        self.module_name = self.__class__.__name__
        self.options = options
        if utils.resume(self.options, self.module_name):
            utils.print_info(
                "It's already done. use '-f' options to force rerun the module")
            return
        slack.slack_noti('status', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Start Scanning Subdomain for {0}'.format(self.options['TARGET'])
        })

        self.initial()

        self.conclude()

        #this gonna run after module is done to update the main json
        slack.slack_noti('good', self.options, mess={
            'title':  "{0} | {1} ".format(self.options['TARGET'], self.module_name),
            'content': 'Done Scanning Subdomain for {0}'.format(self.options['TARGET'])
        })
예제 #27
0
파일: initials.py 프로젝트: qsdj/Osmedeus
    def create_skeleton_json(self):
        outout = utils.replace_argument(
            self.options, '$WORKSPACE/$COMPANY.json')

        if utils.not_empty_file(outout):
            utils.print_info("Modules is already done")
            return

        main_json = {
            "Company": utils.replace_argument(self.options, '$COMPANY'),
            "Main_domain": utils.replace_argument(self.options, '$TARGET'),
            "Info": {},
            "Subdomains": [],
            "Modules": {},
            "IP Space": []
        }


        utils.just_write(outout, main_json, is_json=True)
        utils.check_output(outout)
        slack.slack_noti('status', self.options, mess={
            'title':  "{0} | {1}".format(self.options['TARGET'], self.module_name),
            'content': 'Create skeleton json'
        })