Compare commits

...

15 Commits
1.2.0 ... 1.3.0

Author SHA1 Message Date
Richard Mwewa
162d36d741 Update main.py 2022-03-27 22:52:44 +02:00
Richard Mwewa
49490ed95b Update README.md 2022-03-27 22:49:42 +02:00
Richard Mwewa
78966551ee Update main.py 2022-03-27 22:47:47 +02:00
Richard Mwewa
a939b89d23 Update requirements.txt 2022-03-27 22:32:08 +02:00
Richard Mwewa
f79ce44bc9 Update colors.py 2022-03-27 22:31:04 +02:00
Richard Mwewa
7e45fa5669 Update banner.py 2022-03-27 22:27:57 +02:00
Richard Mwewa
f55e1b3895 Update README.md 2022-03-27 22:22:15 +02:00
Richard Mwewa
1ea78c2e0b Update README.md 2022-03-27 22:21:30 +02:00
Richard Mwewa
2272e7ff81 Update main.py 2022-03-27 22:13:08 +02:00
Richard Mwewa
44ce7799f4 Update README.md 2022-03-17 21:33:31 +02:00
Richard Mwewa
6c6fc477f8 v1.2.0 2022-03-17 21:27:39 +02:00
Richard Mwewa
d7060e33dd v1.2.0 2022-03-17 21:25:26 +02:00
Richard Mwewa
b47b073af4 Create requirements.txt 2022-03-17 21:22:10 +02:00
Richard Mwewa
4f196660bc v1.2.0 2022-03-17 21:21:15 +02:00
Richard Mwewa
e073d63845 v1.2.0 2022-03-17 21:13:00 +02:00
5 changed files with 67 additions and 45 deletions

View File

@@ -4,65 +4,76 @@
![GitHub tag (latest by date)](https://img.shields.io/github/v/tag/rly0nheart/octosuite?style=for-the-badge&logo=github)
![OS](https://img.shields.io/badge/OS-GNU%2FLinux-red?style=for-the-badge&logo=Linux)
![OS](https://img.shields.io/badge/OS-Windows-blue?style=for-the-badge&logo=Windows)
![OS](https://img.shields.io/badge/OS-Mac-blue?style=for-the-badge&logo=apple)
![GitHub](https://img.shields.io/github/license/rly0nheart/octosuite?style=for-the-badge&logo=github)
![Lines of code](https://img.shields.io/tokei/lines/github/rly0nheart/octosuite?style=for-the-badge&logo=github)
![GitHub repo size](https://img.shields.io/github/repo-size/rly0nheart/octosuite?style=for-the-badge&logo=github)
> *Simply gather OSINT on Github users and organizations like a god🔥*
# INSTALLATION
**clone project**:
```
$ git clone https://github.com/rly0nheart/octosuite.git
git clone https://github.com/rly0nheart/octosuite.git
```
```
$ cd octosuite
cd octosuite
```
```
pip install -r requirements.txt
```
# USAGE
**Linux**:
```
$ sudo chmod +x octosuite
sudo chmod +x octosuite
```
```
$ ./octosuite
sudo ./octosuite
```
**Windows**:
```
$ python3 octosuite
python3 octosuite
```
**Mac**:
```
python3 octosuite
```
# AVAILABLE COMMANDS
| Command | Usage|
| ------------- |:---------:|
| <code>orginfo</code> | *get organization info* |
| <code>userinfo</code> | *get user profile info* |
| <code>repoinfo</code> | *get repository info* |
| <code>pathcontents</code> | *get contents of a path from a specified repository* |
| <code>orgrepos</code> | *get a list of repositories owned by a specified organization* |
| <code>userrepos</code> | *get a list of repositories owned by a specified user* |
| <code>usergists</code> | *get a list of gists owned by a specified user* |
| <code>userfollowers</code> | *get a list of a user's followers* |
| <code>userfollowing</code> | *check whether user A follows user B* |
| <code>usersearch</code> | *search user(s)* |
| <code>reposearch</code> | *search repositor(y)(ies)* |
| <code>topicsearch</code> | *search topics(s)* |
| <code>issuesearch</code> | *search issue(s)* |
| <code>commitsearch</code> | *search commit(s)* |
| <code>usersearch</code> | *search user(s)* |
| <code>update</code> | *check for/download updates* |
| <code>author</code> | *show author info* |
| <code>help</code> | *show usage/help* |
| <code>exit</code> | *exit session* |
| ``orginfo`` | *get organization info* |
| ``userinfo`` | *get user profile info* |
| ``repoinfo`` | *get repository info* |
| ``pathcontents`` | *get contents of a path from a specified repository* |
| ``orgrepos`` | *get a list of repositories owned by a specified organization* |
| ``userrepos`` | *get a list of repositories owned by a specified user* |
| ``usergists`` | *get a list of gists owned by a specified user* |
| ``userfollowers`` | *get a list of a user's followers* |
| ``userfollowing`` | *check whether user A follows user B* |
| ``usersearch`` | *search user(s)* |
| ``reposearch`` | *search repositor(y)(ies)* |
| ``topicsearch`` | *search topics(s)* |
| ``issuesearch`` | *search issue(s)* |
| ``commitsearch`` | *search commit(s)* |
| ``usersearch`` | *search user(s)* |
| ``update`` | *update octosuite* |
| ``changelog`` | *show changelog* |
| ``author`` | *show author info* |
| ``help`` | *show usage/help* |
| ``exit`` | *exit session* |
# NOTE
* *octosuite automatically logs network and minor user activity. The logs are saved by date and time in .logs folder*
* *octosuite has only been tested on **Termux** *and* **Kali Linux** (for now), please be sure to let me know how it works on **Windows***
* *Although octosuite was developed to work on **Mac**, **Windows**, or any **Linux** *Distribution*, it has only been tested on **Termux** *and* **Kali Linux***
# LICENSE
![license](https://user-images.githubusercontent.com/74001397/137917929-2f2cdb0c-4d1d-4e4b-9f0d-e01589e027b5.png)

View File

@@ -7,7 +7,7 @@ banner = f'''{red}
░ ████▓▒░▒ ▓███▀ ░ ▒██▒ ░ ░ ████▓▒░▒██████▒▒▒█████▓ ░██░ ▒██▒ ░ ░▒████▒
░ ▒░▒░▒░ ░ ░▒ ▒ ░ ▒ ░░ ░ ▒░▒░▒░ ▒ ▒▓▒ ▒ ░░▒▓▒ ▒ ▒ ░▓ ▒ ░░ ░░ ▒░ ░
░ ▒ ▒░ ░ ▒ ░ ░ ▒ ▒░ ░ ░▒ ░ ░░░▒░ ░ ░ ▒ ░ ░ ░ ░ ░
░ ░ ░ ▒ ░ ░ ░ ░ ░ ▒ ░ ░ ░ ░░░ ░ ░ ▒ v1.1.0
░ ░ ░ ▒ ░ ░ ░ ░ ░ ▒ ░ ░ ░ ░░░ ░ ░ ▒ v1.3.0
░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
{white}— Advanced Github {red}OSINT{white} Framework{reset}

View File

@@ -1,9 +1,10 @@
import sys
# Colors will be unavailable on non-linux machines
colors = True
machine = sys.platform # Detecting the os
machine = sys.platform
if machine.lower().startswith(("os", "win", "darwin")):
colors = False # Colors will not be displayed
colors = False
if not colors:
reset = red = white = green = ""

2
requirements.txt Normal file
View File

@@ -0,0 +1,2 @@
tqdm
requests

View File

@@ -1,18 +1,13 @@
import os
import logging
import requests
import platform
import subprocess
import urllib.request
from tqdm import tqdm
from pprint import pprint
from lib import colors,banner
from datetime import datetime
try:
import requests
except ImportError:
print(f'{colors.white}[{colors.green}*{colors.white}] Installing requirement(s). Please wait...{colors.reset}')
subprocess.run(['pip', 'install', 'requests'],shell=False)
exit(f'{colors.white}[{colors.green}+{colors.white}] Installation complete. Re-run octosuite.{colors.reset}')
class octosuite:
def __init__(self):
@@ -155,9 +150,6 @@ class octosuite:
# Author dictionary
self.author_dict = {'Alias': 'rly0nheart',
'Country': 'Zambia, Africa',
'Github': 'https://github.com/rly0nheart',
'Twitter': 'https://twitter.com/rly0nheart',
'Facebook': 'https://fb.me/rly0nheart',
'About.me': 'https://about.me/rly0nheart'}
def on_start(self):
@@ -200,6 +192,8 @@ class octosuite:
self.commits_search()
elif command == 'update':
self.update()
elif command == 'changelog':
print(self.changelog())
elif command == 'author':
self.author()
elif command == 'help':
@@ -410,10 +404,9 @@ class octosuite:
# Update program
def update(self):
logging.info('Checking for update(s)...')
files_to_update = ['src/main.py','lib/banner.py','lib/colors.py','octosuite','LICENSE','README.md']
print(f'\n{colors.white}[{colors.green}*{colors.white}] Fetching update(s). Please wait...{colors.reset}',end='')
for file in files_to_update:
logging.info('Fetching updates...')
files_to_update = ['src/main.py','lib/banner.py','lib/colors.py','octosuite','LICENSE','README.md','requirements.txt']
for file in tqdm(files_to_update,desc=f'{colors.white}[{colors.green}*{colors.white}] Fetching updates...{colors.reset}'):
data = urllib.request.urlopen(f'https://raw.githubusercontent.com/rly0nheart/octosuite/master/{file}').read()
with open(file, 'wb') as code:
code.write(data)
@@ -423,6 +416,20 @@ class octosuite:
exit(f'\n{colors.white}[{colors.green}+{colors.white}] Update complete. Re-run octosuite.{colors.reset}')
# Show changelog
def changelog(self):
# lol yes the changelog is hard coded
changelog_text = '''
v1.3.0 Changelog:
• Adjusted to work on Mac
• Added changelog command
• Added progress bar when fetching updates
• Minor bug fixes
'''
return changelog_text
# Author info
def author(self):
print(f'\n{colors.white}Richard Mwewa (Ritchie){colors.reset}')
@@ -448,7 +455,8 @@ usage:
topicsearch --> Search topic(s)
issuesearch --> Search issue(s)
commitsearch --> Search commit(s)
update --> Check for/download update(s)
update --> Update octosuite
changelog --> Show changelog
author --> Show author info
help --> Show usage/help
exit --> Exit session
@@ -456,5 +464,5 @@ usage:
return help
# Set to automatically monitor and log network and user activity to .log folder
# Set to automatically monitor and log network and user activity into the .logs folder
logging.basicConfig(filename=f'.logs/{datetime.now()}.log',format='[%(asctime)s] %(message)s',level=logging.DEBUG)