Projects STRLCPY Osmedeus Commits c106d15d
🤬
  • ■ ■ ■ ■ ■
    .gitignore
    skipped 7 lines
    8 8  modules/testing.py
    9 9  local-install.sh
    10 10  config.conf
    11  -paused.conf
    12 11   
    13 12  # Byte-compiled / optimized / DLL files
    14 13  core/__pycache__/
    skipped 6 lines
  • ■ ■ ■ ■ ■ ■
    README.md
    skipped 19 lines
    20 20  ./osmedeus.py -t example.com
    21 21  ```
    22 22   
    23  -List all module
    24  -```
    25  -./osmedeus.py -M
    26  -```
     23 +# Main Features
     24 +* Collection of awesome tools againt the target. [Details](https://github.com/j3ssie/Osmedeus/CREDITS.md)
     25 +* Seperate workspaces to store all scan output and details logging.
     26 +* REST API.
     27 +* Slack notifications.
     28 + 
     29 +![Slack Noti](https://github.com/j3ssie/Osmedeus/tree/master/imgs/slack_noti.png)
     30 + 
     31 +![Slack Report](https://github.com/j3ssie/Osmedeus/tree/master/imgs/slack_report.png)
     32 + 
     33 +![REST API](https://github.com/j3ssie/Osmedeus/tree/master/imgs/rest_api.png)
    27 34   
    28  -Update
    29  -```
    30  -./osmedeus.py --update
    31  -```
    32 35   
    33 36  # Demo
    34  -[![asciicast](https://asciinema.org/a/ZudWoY9mRbXaqmYqHwB6Ky6lm.svg)](https://asciinema.org/a/ZudWoY9mRbXaqmYqHwB6Ky6lm)
     37 +[![asciicast](https://asciinema.org/a/230164.svg)](https://asciinema.org/a/230164)
     38 + 
    35 39   
    36  -[![Osmedeus](https://img.youtube.com/vi/SnGPedyJvig/0.jpg)](https://www.youtube.com/watch?v=SnGPedyJvig)
    37 40   
    38 41  # Disclaimer
    39 42  Most of this tool done by the authors of the tool that you can see in the module folder.
    skipped 13 lines
  • ■ ■ ■ ■ ■ ■
    config.conf
    1 1  [Enviroments]
    2 2  cwd = /Users/j3ssie/myGit/Osmedeus
    3  -workspace = /Users/j3ssie/myGit/Osmedeus/workspaces/duckduckgo.com
     3 +workspace = ${CWD}/workspaces/example.com
    4 4  plugins_path = ${CWD}/plugins
    5 5  go_path = /Users/j3ssie/go/bin
    6  -github_api_key = 8403594f6f9f600778c2042f54b7ab9fcaca116e
     6 +;this isn't works api
     7 +github_api_key = 11
     8 + 
     9 +[Resources]
     10 +directory_full = ${Enviroments:plugins_path}/wordlists/dir-all.txt
     11 +domain_full = ${Enviroments:plugins_path}/wordlists/all.txt
     12 +domain_short = ${Enviroments:plugins_path}/wordlists/shorts.txt
    7 13   
    8 14  [Slack]
    9 15  local_name = "JJ"
    10  -bot_token = xoxb-483793498323-561878104020-Otr60kOBbRfZEYbdnH2YTJ5D
    11  -log_channel = CGJAH1RKP
     16 +bot_token = None
     17 +log_channel = CGxxx
    12 18  log_name = logcmd
    13  -status_channel = CGHPFA7BM
     19 +status_channel = CGxxx
    14 20  status_name = status
    15  -report_channel = CGJ764UAZ
     21 +report_channel = CGxxx
    16 22  report_name = report
    17 23   
    18  -[Resources]
    19  -directory_full = ${Enviroments:plugins_path}/wordlists/dir-all.txt
    20  -domain_full = ${Enviroments:plugins_path}/wordlists/all.txt
    21  -domain_short = ${Enviroments:plugins_path}/wordlists/shorts.txt
    22  - 
    23 24  [Mode]
    24 25  speed = quick
    25 26  module = None
    26 27  debug = False
    27 28   
    28 29  [Target]
    29  -target = duckduckgo.com
     30 +target = example.com
    30 31  target_list = None
    31  -company = duckduckgo.com
    32  -strip_target = duckduckgo.com
     32 +company = example.com
     33 +strip_target = example.com
    33 34  git_target = None
    34 35  burpstate_target = None
    35  -ip = 54.254.135.186
    36  -output = duckduckgo.com
     36 +ip = 1.2.3.4
     37 +output = example.com
    37 38  more =
    38 39   
    39  - 
  • ■ ■ ■ ■ ■
    core/app.py
    skipped 179 lines
    180 180   
    181 181  if __name__ == '__main__':
    182 182   app.run(debug=True) # important to mention debug=True
     183 + # app.run(debug=False) # important to mention debug=True
    183 184   
  • ■ ■ ■ ■ ■ ■
    core/routine.py
    skipped 31 lines
    32 32   ##waiting for previous module
    33 33   utils.just_waiting('SubdomainScanning')
    34 34   
    35  - ##Scanning for subdomain take over
     35 + # ##Scanning for subdomain take over
    36 36   takeover.TakeOverScanning(options)
    37 37   
    38 38   ##Screen shot the target on common service
    skipped 77 lines
    116 116   utils.print_good("Debug routine")
    117 117   utils.print_good("Running with {0} speed".format(options['SPEED']))
    118 118   # Create skeleton json
    119  - initials.Initials(options)
     119 + # initials.Initials(options)
    120 120   
    121 121   ##Finding subdomain
    122  - subdomain.SubdomainScanning(options)
     122 + # subdomain.SubdomainScanning(options)
    123 123   
    124 124   ##waiting for previous module
    125 125   # utils.just_waiting('SubdomainScanning')
    skipped 33 lines
  • ■ ■ ■ ■ ■
    core/slack.py
    skipped 8 lines
    9 9   
    10 10  ###Slack printing
    11 11  def slack_info(options, text='', title='Execute', mess=None):
     12 + if options['BOT_TOKEN'] == "None":
     13 + return
    12 14   sm = Messages(options)
    13 15   if not mess:
    14 16   mess = {
    skipped 5 lines
    20 22   
    21 23  ###Slack printing
    22 24  def send_log(options, text='', title='Execute', mess=None):
     25 + if options['BOT_TOKEN'] == "None":
     26 + return
    23 27   sm = Messages(options)
    24 28   if not mess:
    25 29   mess = {
    skipped 5 lines
    31 35   
    32 36   
    33 37  def slack_good(options, text='', title='Done', mess=None):
     38 + if options['BOT_TOKEN'] == "None":
     39 + return
    34 40   sm = Messages(options)
    35 41   if not mess:
    36 42   mess = {
    skipped 1 lines
    38 44   'title': title,
    39 45   'content': text,
    40 46   }
    41  - sm.send_info(mess)
     47 + sm.send_good(mess)
    42 48   
    43 49   
    44 50  def slack_file(options, filename='', title='Done', mess=None):
     51 + if options['BOT_TOKEN'] == "None":
     52 + return
     53 + 
    45 54   sm = Messages(options)
    46 55   if not mess:
    47 56   mess = {
    skipped 168 lines
  • imgs/rest_api.png
  • imgs/slack_noti.png
  • imgs/slack_report.png
  • ■ ■ ■ ■ ■
    osmedeus.py
    skipped 32 lines
    33 33   
    34 34  ### Global stuff
    35 35  current_path = os.path.dirname(os.path.realpath(__file__))
    36  -# SPECIAL_ARGUMENT = {
    37  -# 'TARGET' : 'example.com',
    38  -# 'COMPANY' : 'example.com',
    39  -# 'STRIP_TARGET' : 'example.com',
    40  -# 'IP' : '1.2.3.4',
    41  -# 'BURPSTATE' : '',
    42  -# 'OUTPUT' : 'out.txt',
    43  -# 'WORKSPACE' : current_path + '/workspaces',
    44  - 
    45  -# 'PLUGINS_PATH' : current_path + '/plugins',
    46  -# 'GO_PATH' : '~/go/bin',
    47  -# 'DIRECTORY_FULL' : current_path + '/plugins/wordlists/dir-all.txt',
    48  -# 'DOMAIN_FULL' : current_path + '/plugins/wordlists/all.txt',
    49  -# 'DEFAULT_WORDLIST' : '',
    50  - 
    51  -# 'GITHUB_API_KEY' : 'abc123poi456', # this isn't work api :D
    52  -# 'MORE' : '',
    53  -# 'CWD' : os.path.dirname(os.path.realpath(__file__)),
    54  -# }
    55  -###
    56  - 
    57  -# options = {
    58  -# 'target' : '',
    59  -# 'targetlist' : '',
    60  -# 'env' : SPECIAL_ARGUMENT,
    61  -# 'speed' : 'quick',
    62  -# 'DEBUG' : False
    63  -# }
    64  - 
    65 36   
    66 37  def flask_run():
    67 38   utils.print_banner("Staarting Flask API")
    skipped 8 lines
    76 47   if args.config:
    77 48   config_path = args.config
    78 49   options = config.parsing_config(config_path, args)
    79  - # if options['DEBUG'] == "True":
    80  - # pprint(options)
    81  - # sm = slack.Messages(options)
    82  - # sm.testing()
     50 + 
    83 51  
    84 52   #wait for flask API start
    85 53   time.sleep(2)
    skipped 95 lines
Please wait...
Page is in error, reload to recover