Skip to content

Commit

Permalink
pythem v0.8.1 - Adding WebCrawler feature.
Browse files Browse the repository at this point in the history
  • Loading branch information
m4n3dw0lf committed Mar 5, 2018
1 parent b30460c commit 54ae995
Show file tree
Hide file tree
Showing 6 changed files with 50 additions and 5 deletions.
2 changes: 2 additions & 0 deletions README.md
Expand Up @@ -113,6 +113,8 @@ docker run -it --net=host --rm --name pythem m4n3dw0lf/pythem
- [print](https://github.com/m4n3dw0lf/pythem/wiki/Commands-Reference#print)

##### Network, Man-in-the-middle and Denial of service (DOS)<br>
- [scan](https://github.com/m4n3dw0lf/pythem/wiki/Commands-Reference#scan)
- [webcrawl](https://github.com/m4n3dw0lf/pythem/wiki/Commands-Reference#webcrawl)
- [arpspoof](https://github.com/m4n3dw0lf/pythem/wiki/Commands-Reference#arpspoof)
- [dhcpspoof](https://github.com/m4n3dw0lf/pythem/wiki/Commands-Reference#dhcpspoof)
- [dnsspoof](https://github.com/m4n3dw0lf/pythem/wiki/Commands-Reference#dnsspoof)
Expand Down
27 changes: 27 additions & 0 deletions pythem/core/interface.py
Expand Up @@ -245,6 +245,33 @@ def start(self):
except IndexError:
print "[!] Select a valid variable name."

elif self.input_list[0] == "webcrawl":
if self.input_list[1] == "help":
print "\n[Help] Start a webcrawler in target URL."
print "[Required] URL as target"
print "example:"
print "{} set target http://10.0.0.1/app".format(console)
print "{} webcrawl start\n".format(console)
continue
elif self.input_list[1] == "start":
from pythem.modules.webcrawler import WebCrawler
self.webcrawl = WebCrawler()
try:
self.webcrawl.start(self.input_list[2])
except IndexError:
try:
if self.targets:
self.webcrawl.start(self.targets)
else:
self.targets = raw_input("[+] Enter the target URL: ")
self.webcrawl.start(self.targets)
except KeyboardInterrupt:
pass
except Exception as e:
print "[!] Exception caught: {}".format(e)
except Exception as e:
print "[!] Exception caught: {}".format(e)

elif self.input_list[0] == "scan":
try:
if self.input_list[1] == "help":
Expand Down
10 changes: 7 additions & 3 deletions pythem/modules/completer.py
Expand Up @@ -27,7 +27,7 @@
class Completer(object):
name = "TAB completer"
desc = "Auto complete pythem commands with tab"
version = "0.4"
version = "0.5"


def __init__(self,path, console):
Expand Down Expand Up @@ -105,11 +105,15 @@ def pythem(self, text, state):
self.suboptions = ['help']
completer = readline.set_completer(self.suboption)

elif "webcrawl" in text and state == 1:
self.suboptions = ['help','start']
completer = readline.set_completer(self.suboption)

else:
self.words = ['clear','help','exit','quit','set','print','scan','arpspoof','dnsspoof','redirect','sniff','pforensic','dos','xploit','brute','decode','encode','cookiedecode','dhcpspoof']
self.words = ['clear','help','exit','quit','set','print','scan','arpspoof','dnsspoof','redirect','sniff','pforensic','dos','xploit','brute','decode','encode','cookiedecode','dhcpspoof','webcrawl']
results = [x for x in self.words if x.startswith(text)] + [None]
return results[state]




12 changes: 12 additions & 0 deletions pythem/modules/utils.py
Expand Up @@ -190,6 +190,18 @@ def print_help():
print color(" pythem> ","red") + "scan manual"
print " [+] Enter the port, ports (separated by commas): 21,22,25,80"
print
print
print color("[*] webcrawl Start to crawl an URL target finding links.","blue")
print
print color(" arguments:","red")
print
print color(" - start","yellow")
print color(" - help","yellow")
print
print color(" examples:","green")
print
print color(" pythem> ","red") + "webcrawl start"
print
print
print color("[*] arpspoof Start or stop an arpspoofing attack.","blue")
print
Expand Down
2 changes: 1 addition & 1 deletion pythem/pythem
Expand Up @@ -24,7 +24,7 @@ import sys
from pythem.core.interface import Processor
from pythem.modules.utils import banner,color

version = "0.8.0"
version = "0.8.1"
Processor = Processor()


Expand Down
2 changes: 1 addition & 1 deletion setup.py
Expand Up @@ -25,7 +25,7 @@
setup(
name='pythem',
packages=['pythem','pythem/modules','pythem/core'],
version='0.8.0',
version='0.8.1',
description="pentest framework",
author='Angelo Moura',
author_email='m4n3dw0lf@gmail.com',
Expand Down

0 comments on commit 54ae995

Please sign in to comment.