colloide

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 9f67654a2ef35b0f0e53c9ebc2bc5cfd9253551f
parent 9144755975277c78543db91d29d7c2cf9b009222
Author: MichaelDim02 <31562759+MichaelDim02@users.noreply.github.com>
Date:   Tue, 21 Nov 2017 11:45:44 +0000

Update colloide.py
Diffstat:
Mcolloide.py | 112++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
1 file changed, 86 insertions(+), 26 deletions(-)

diff --git a/colloide.py b/colloide.py @@ -1,19 +1,58 @@ -# Colloide v0.6 +#!/usr/bin/python +# +# MCD's Colloide v0.7 # Thessaloniki, GREECE 2017 - greekhacking.gr # Michael Constantine Dimopoulos # GNU General Public Lisence # Pronounced: Kow Lawd -# In this version (0.6): -# Minor bugs fixed -# Option to save the pages into a txt page added -# Added some comments to help contributors read the code -# Added a function that checks whether the URL is valid or not -# https://github.com/MichaelDim02/colloide -# Report bugs: anivsante2@gmail.com -# or /issues if you use github -# # # # # # # # # # # # # # # # # # +# +# DO NOT USE FOR MALICIOUS PURPOSES! +# THE DEVELOPER HAS NO RESPONSIBLITY FOR ANY DAMAGE CAUSED! +# +# +# _.:' VERSION DIARY ':._ +# +# In version 0.1: +# Program is working! +# In version 0.2: +# Minor bugs fixed +# Updated the links file +# In version 0.3: +# Major bug fixed +# Minor bugs fixed as well +# Updated the links file +# Added option / argument parsing +# Added legals +# In version 0.4: +# Minor bugs fixed +# General stracture has been updated +# Wordlist option added - Only links.txt could be used before this update +# Added ASCII logo +# Added the sexy ASCII wolf +# In version 0.5 MAJOR RELEASE +# Minor bugs fixed +# Major bug fixed +# Updated ASCII logo +# Updated ASCII wolf +# Program has been released to the masses! +# In version 0.6: +# Minor bugs fixed +# Option to save the pages into a txt page added +# Added some comments to help contributors read the code +# Added a function that checks whether the URL is valid or not +# In version 0.7: +# One major bug fixed +# Minor bugs fixed as well +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# https://github.com/MichaelDim02/colloide +# Report bugs: anivsante2@gmail.com +# or /issues if you use github +# +# # # # # # # # # # # # # # # # # # # # # # # # -#CODE: +# MODULES / LIBRARIES: from __future__ import print_function #because some print functions print quotation marks and commas import sys @@ -22,36 +61,41 @@ import os import socket from urllib2 import Request, urlopen, URLError, HTTPError -def banner(): #banner with logo - patorjk.com +# CODE: + +def banner(): #banner with logo - patorjk.com + print("MCD's") print("_________ .__ .__ .__ .___ ") print("\_ ___ \ ____ | | | | ____ |__| __| _/____ ") print("/ \ \/ / _ \| | | | / _ \| |/ __ |/ __ \ ") print("\ \___( <_> ) |_| |_( <_> ) / /_/ \ ___/") print(" \______ /\____/|____/____/\____/|__\____ |\___ >") print(" \/ \/ \/ ") - print("Colloide v 0.6") + print("MCD's") + print("Colloide v 0.7") print("Michael C. Dimopoulos 2017") print("www.greekhacking.gr\n\n") def opts(): - print(" -h --help Display the help panel (Shown right now)") - print(" -u --URL The URL to the website") - print(" -p --pages Path to the wordlist with the page names / links") - print(" -l --legals License & legal disclaimer") - print(" -s --save Save pages on a text file (name of the file)") - print(" -L --limit Add limit to the pages (Integer)\n\n") + print(" -h --help Display the help panel (Shown right now)") + print(" -u --URL The URL to the website") + print(" -p --pages Path to the wordlist with the page names / links") + print(" -l --legals License & legal disclaimer") + print(" -s --save Save pages on a text file (name of the file)") + print(" -L --limit Add limit to the pages (Integer)") + print(" -v --verbose Show all attempts\n\n") def legals(): #License - print("Colloide version 0.6 is free software. It can be re-distributed ") - print("and / or modified under the terms of the GNU General Public License") + print("MCD's Colloide version 0.7 is free software. It can be re-distributed ") + print("and / or modified under the terms of the GNU General Public License") print("as published by the Free Software Foundation; For more information") - print("read the GNU General Public License that comes") + print("read the GNU General Public License that comes") print("along with this program.\n\n") #Disclaimer print("[!] Legal Disclaimer [!]") print("Information distributed by this tool may be used maliciously.") print("The developer has no responsibility for any damage caused by") print("this script or any unauthorized use of it.\n") -def wolf(): +def wolf(): #prints the ASCII colloide wolf print(" ___________________ , ,") print("[ COLLOIDE MISSION! ] |\---/| __--__") @@ -85,7 +129,7 @@ def findAdmin(): #tfilename = raw_input(">> ") WONT BE USED - YOU CAN REMOVE IT tfilename = txt f = open(str(tfilename) ,'w+') - f.write("Colloide v0.6\n") + f.write("MCD's Colloide v0.7\n") f.write("Michel Constantine Dimopoulos\n") f.write("Thessaloniki, Greece 2017\n") f.write("greekhacking.gr\n") @@ -115,15 +159,25 @@ def findAdmin(): link = URL #website name req_link = "http://"+link+"/"+sub_link #Final link for attempt req = Request(req_link) + if ver: + notworking = "[ATTEMPT] - " + req_link + #notworking.rstrip() So it does not print lines between attempt output line #identifies links that show up HTTP error try: response = urlopen(req) except HTTPError as e: + if ver: + print(notworking.rstrip()) continue except URLError as e: + if ver: + print(notworking.rstrip()) continue else: #prints working link - print("[+] Link Found -> " + req_link) + if ver != True: + print("[+] Link Found -> " + req_link + "") # if verbose if off + if ver: + print("\n[+] Link Found -> " + req_link + "") #because in verbose mode failed attempts don't have \n at the end found = found + 1 if txt: f = open(str(tfilename) ,'a') @@ -132,7 +186,8 @@ def findAdmin(): pass except KeyboardInterrupt: print("\n[!] Process has been terminated - Ctrl + C has been pressed.\n") - print("All working pages have been saved at: ", tfilename, "\n") + if txt: + print("All working pages have been saved at: ", tfilename, "\n") sys.exit(0) if found > int(limit): print("[!] Process has been terminated due to the limitation that has been set\n") @@ -146,12 +201,15 @@ parser.add_argument("-p", "--pages", help="Path to the wordlist with the page na parser.add_argument("-l", "--legals", action='store_true', help="License & legal disclaimer") parser.add_argument("-s", "--save", help="Save all working pages on a text file") parser.add_argument("-L", "--limit", help="Add limit to the pages. Integer", default="10") +parser.add_argument("-v", "--verbose", help="Show all attempts", action="store_true") + #Declaring Argument Variables args = parser.parse_args() links = args.pages URL = args.URL txt = args.save limit = args.limit +ver = args.verbose if args.URL and args.pages: check_names(links) @@ -163,6 +221,8 @@ else: opts() print("Usage: python colloide.py -u [URL] -p [WORDLIST] -s [TEXT FILE] -L [NUMBER]") +#MCD's +#Colloide v0.7 #Can be modified #Can be distributed commercially #Can be distributed non-commercially