Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
routersploit
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
czos-dpend
routersploit
Commits
f61d9eb8
Unverified
Commit
f61d9eb8
authored
Jun 13, 2018
by
Marcin Bury
Committed by
GitHub
Jun 13, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixing boolean options (#465)
parent
759d0630
Hide whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
58 additions
and
47 deletions
+58
-47
option.py
routersploit/core/exploit/option.py
+11
-0
ftp_client.py
routersploit/core/ftp/ftp_client.py
+2
-2
http_client.py
routersploit/core/http/http_client.py
+2
-2
snmp_client.py
routersploit/core/snmp/snmp_client.py
+1
-1
ssh_client.py
routersploit/core/ssh/ssh_client.py
+1
-1
tcp_client.py
routersploit/core/tcp/tcp_client.py
+1
-1
telnet_client.py
routersploit/core/telnet/telnet_client.py
+1
-1
udp_client.py
routersploit/core/udp/udp_client.py
+1
-1
webinterface_http_form_default_creds.py
...reds/cameras/acti/webinterface_http_form_default_creds.py
+2
-2
webinterface_http_form_default_creds.py
...ds/cameras/basler/webinterface_http_form_default_creds.py
+2
-2
ftp_bruteforce.py
routersploit/modules/creds/generic/ftp_bruteforce.py
+2
-2
ftp_default.py
routersploit/modules/creds/generic/ftp_default.py
+2
-2
http_basic_digest_bruteforce.py
...oit/modules/creds/generic/http_basic_digest_bruteforce.py
+2
-2
http_basic_digest_default.py
...sploit/modules/creds/generic/http_basic_digest_default.py
+2
-2
snmp_bruteforce.py
routersploit/modules/creds/generic/snmp_bruteforce.py
+2
-2
ssh_bruteforce.py
routersploit/modules/creds/generic/ssh_bruteforce.py
+2
-2
ssh_default.py
routersploit/modules/creds/generic/ssh_default.py
+2
-2
telnet_bruteforce.py
routersploit/modules/creds/generic/telnet_bruteforce.py
+2
-2
telnet_default.py
routersploit/modules/creds/generic/telnet_default.py
+2
-2
api_ros_default_creds.py
...t/modules/creds/routers/mikrotik/api_ros_default_creds.py
+2
-2
webinterface_http_form_default_creds.py
...s/routers/pfsense/webinterface_http_form_default_creds.py
+3
-3
firepower_management60_rce.py
...ules/exploits/routers/cisco/firepower_management60_rce.py
+1
-1
secure_acs_bypass.py
...ploit/modules/exploits/routers/cisco/secure_acs_bypass.py
+1
-1
ipfire_oinkcode_rce.py
...it/modules/exploits/routers/ipfire/ipfire_oinkcode_rce.py
+1
-1
twg849_info_disclosure.py
...odules/exploits/routers/thomson/twg849_info_disclosure.py
+1
-1
airos_6_x.py
routersploit/modules/exploits/routers/ubiquiti/airos_6_x.py
+1
-1
zywall_usg_extract_hashes.py
...dules/exploits/routers/zyxel/zywall_usg_extract_hashes.py
+1
-1
btle_scan.py
routersploit/modules/generic/bluetooth/btle_scan.py
+2
-2
btle_write.py
routersploit/modules/generic/bluetooth/btle_write.py
+1
-1
autopwn.py
routersploit/modules/scanners/autopwn.py
+2
-2
No files found.
routersploit/core/exploit/option.py
View file @
f61d9eb8
...
...
@@ -62,6 +62,17 @@ class OptPort(Option):
class
OptBool
(
Option
):
""" Option Bool attribute """
def
__init__
(
self
,
default
,
description
=
""
):
self
.
label
=
None
self
.
description
=
description
if
default
:
self
.
display_value
=
"true"
else
:
self
.
display_value
=
"false"
self
.
value
=
default
def
_apply_widget
(
self
,
value
):
if
value
in
[
"true"
,
"false"
]:
return
value
...
...
routersploit/core/ftp/ftp_client.py
View file @
f61d9eb8
...
...
@@ -16,8 +16,8 @@ class FTPClient(Exploit):
target_protocol
=
Protocol
.
FTP
ssl
=
OptBool
(
"false"
,
"SSL enabled: true/false"
)
verbosity
=
OptBool
(
"true"
,
"Enable verbose output: true/false"
)
ssl
=
OptBool
(
False
,
"SSL enabled: true/false"
)
verbosity
=
OptBool
(
True
,
"Enable verbose output: true/false"
)
def
ftp_create
(
self
):
if
self
.
ssl
:
...
...
routersploit/core/http/http_client.py
View file @
f61d9eb8
...
...
@@ -18,8 +18,8 @@ class HTTPClient(Exploit):
target_protocol
=
Protocol
.
HTTP
verbosity
=
OptBool
(
"true"
,
"Verbosity enabled: true/false"
)
ssl
=
OptBool
(
"false"
,
"SSL enabled: true/false"
)
verbosity
=
OptBool
(
True
,
"Verbosity enabled: true/false"
)
ssl
=
OptBool
(
False
,
"SSL enabled: true/false"
)
def
http_request
(
self
,
method
,
path
,
session
=
requests
,
**
kwargs
):
if
self
.
ssl
:
...
...
routersploit/core/snmp/snmp_client.py
View file @
f61d9eb8
...
...
@@ -15,7 +15,7 @@ class SNMPClient(Exploit):
target_protocol
=
Protocol
.
SNMP
verbosity
=
OptBool
(
"true"
,
"Enable verbose output: true/false"
)
verbosity
=
OptBool
(
True
,
"Enable verbose output: true/false"
)
def
snmp_get
(
self
,
community_string
,
oid
,
version
=
1
,
retries
=
0
):
cmdGen
=
cmdgen
.
CommandGenerator
()
...
...
routersploit/core/ssh/ssh_client.py
View file @
f61d9eb8
...
...
@@ -22,7 +22,7 @@ class SSHClient(Exploit):
target_protocol
=
Protocol
.
SSH
verbosity
=
OptBool
(
"true"
,
"Enable verbose output: true/false"
)
verbosity
=
OptBool
(
True
,
"Enable verbose output: true/false"
)
def
ssh_create
(
self
):
ssh_client
=
paramiko
.
SSHClient
()
...
...
routersploit/core/tcp/tcp_client.py
View file @
f61d9eb8
...
...
@@ -17,7 +17,7 @@ class TCPClient(Exploit):
target_protocol
=
Protocol
.
TCP
verbosity
=
OptBool
(
"true"
,
"Enable verbose output: true/false"
)
verbosity
=
OptBool
(
True
,
"Enable verbose output: true/false"
)
def
tcp_create
(
self
):
if
is_ipv4
(
self
.
target
):
...
...
routersploit/core/telnet/telnet_client.py
View file @
f61d9eb8
...
...
@@ -15,7 +15,7 @@ class TelnetClient(Exploit):
target_protocol
=
Protocol
.
TELNET
verbosity
=
OptBool
(
"true"
,
"Enable verbose output: true/false"
)
verbosity
=
OptBool
(
True
,
"Enable verbose output: true/false"
)
def
telnet_connect
(
self
,
target
=
None
,
port
=
None
):
if
not
target
:
...
...
routersploit/core/udp/udp_client.py
View file @
f61d9eb8
...
...
@@ -16,7 +16,7 @@ class UDPClient(Exploit):
target_protocol
=
Protocol
.
UDP
verbosity
=
OptBool
(
"true"
,
"Enable verbose output: true/false"
)
verbosity
=
OptBool
(
True
,
"Enable verbose output: true/false"
)
def
udp_create
(
self
):
if
is_ipv4
(
self
.
target
):
...
...
routersploit/modules/creds/cameras/acti/webinterface_http_form_default_creds.py
View file @
f61d9eb8
...
...
@@ -20,8 +20,8 @@ class Exploit(HTTPClient):
threads
=
OptInteger
(
1
,
"Number of threads"
)
defaults
=
OptWordlist
(
"admin:12345,admin:123456,Admin:12345,Admin:123456"
,
"User:Pass or file with default ccredentials (file://)"
)
stop_on_success
=
OptBool
(
"false"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
False
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/cameras/basler/webinterface_http_form_default_creds.py
View file @
f61d9eb8
...
...
@@ -21,8 +21,8 @@ class Exploit(HTTPClient):
threads
=
OptInteger
(
1
,
"Number of threads"
)
defaults
=
OptWordlist
(
"admin:admin"
,
"User:Pass or file with default credentials (file://)"
)
stop_on_success
=
OptBool
(
"false"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
False
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/generic/ftp_bruteforce.py
View file @
f61d9eb8
...
...
@@ -24,8 +24,8 @@ class Exploit(FTPClient):
usernames
=
OptWordlist
(
"admin"
,
"Username or file with usernames (file://)"
)
passwords
=
OptWordlist
(
wordlists
.
passwords
,
"Password or file with passwords (file://)"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/generic/ftp_default.py
View file @
f61d9eb8
...
...
@@ -22,8 +22,8 @@ class Exploit(FTPClient):
threads
=
OptInteger
(
8
,
"Number of threads"
)
defaults
=
OptWordlist
(
wordlists
.
defaults
,
"User:Pass pair or file with default credentials (file://)"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/generic/http_basic_digest_bruteforce.py
View file @
f61d9eb8
...
...
@@ -29,8 +29,8 @@ class Exploit(HTTPClient):
path
=
OptString
(
"/"
,
"URL Path"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/generic/http_basic_digest_default.py
View file @
f61d9eb8
...
...
@@ -27,8 +27,8 @@ class Exploit(HTTPClient):
path
=
OptString
(
"/"
,
"URL Path"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/generic/snmp_bruteforce.py
View file @
f61d9eb8
...
...
@@ -24,8 +24,8 @@ class Exploit(SNMPClient):
defaults
=
OptWordlist
(
wordlists
.
snmp
,
"SNMP community string or file with default communit stryings (file://)"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
strings
=
[]
...
...
routersploit/modules/creds/generic/ssh_bruteforce.py
View file @
f61d9eb8
...
...
@@ -25,8 +25,8 @@ class Exploit(SSHClient):
usernames
=
OptWordlist
(
"admin"
,
"Username or file with usernames (file://)"
)
passwords
=
OptWordlist
(
wordlists
.
passwords
,
"Password or file with passwords (file://)"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/generic/ssh_default.py
View file @
f61d9eb8
...
...
@@ -23,8 +23,8 @@ class Exploit(SSHClient):
defaults
=
OptWordlist
(
wordlists
.
defaults
,
"User:Pass or file with default credentials (file://)"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/generic/telnet_bruteforce.py
View file @
f61d9eb8
...
...
@@ -25,8 +25,8 @@ class Exploit(TelnetClient):
usernames
=
OptWordlist
(
"admin"
,
"Username or file with usernames (file://)"
)
passwords
=
OptWordlist
(
wordlists
.
passwords
,
"Password or file with passwords (file://)"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/generic/telnet_default.py
View file @
f61d9eb8
...
...
@@ -23,8 +23,8 @@ class Exploit(TelnetClient):
defaults
=
OptWordlist
(
wordlists
.
defaults
,
"User:Pass or file with default credentials (file://)"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/routers/mikrotik/api_ros_default_creds.py
View file @
f61d9eb8
...
...
@@ -20,8 +20,8 @@ class Exploit(TCPClient):
threads
=
OptInteger
(
1
,
"Number of threads"
)
defaults
=
OptWordlist
(
"admin:admin"
,
"User:Pass or file with default credentials (file://)"
)
stop_on_success
=
OptBool
(
"true"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
"true"
,
"Display authentication attempts"
)
stop_on_success
=
OptBool
(
True
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Display authentication attempts"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/creds/routers/pfsense/webinterface_http_form_default_creds.py
View file @
f61d9eb8
...
...
@@ -17,12 +17,12 @@ class Exploit(HTTPClient):
target
=
OptIP
(
""
,
"Target IPv4, IPv6 address or file with ip:port (file://)"
)
port
=
OptPort
(
443
,
"Target Web Interface port"
)
ssl
=
OptBool
(
"true"
,
"SSL enabled: true/false"
)
ssl
=
OptBool
(
True
,
"SSL enabled: true/false"
)
threads
=
OptInteger
(
1
,
"Number of threads"
)
defaults
=
OptWordlist
(
"admin:pfsense"
,
"User:Pass or file with default credentials (file://)"
)
stop_on_success
=
OptBool
(
"false"
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
"true"
,
"Displaye authentication attempts"
)
stop_on_success
=
OptBool
(
False
,
"Stop on first valid authentication attempt"
)
verbosity
=
OptBool
(
True
,
"Displaye authentication attempts"
)
def
run
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/exploits/routers/cisco/firepower_management60_rce.py
View file @
f61d9eb8
...
...
@@ -25,7 +25,7 @@ class Exploit(HTTPClient, SSHClient):
target
=
OptIP
(
""
,
"Target IPv4 or IPv6 address"
)
port
=
OptPort
(
443
,
"Target HTTP port"
)
ssl
=
OptBool
(
"true"
,
"SSL enabled: true/false"
)
ssl
=
OptBool
(
True
,
"SSL enabled: true/false"
)
ssh_port
=
OptPort
(
22
,
"Target SSH Port"
)
...
...
routersploit/modules/exploits/routers/cisco/secure_acs_bypass.py
View file @
f61d9eb8
...
...
@@ -25,7 +25,7 @@ class Exploit(HTTPClient):
target
=
OptIP
(
""
,
"Target IPv4 or IPv6 address"
)
port
=
OptPort
(
443
,
"Target HTTP port"
)
ssl
=
OptBool
(
"true"
,
"SSL enabled: true/false"
)
ssl
=
OptBool
(
True
,
"SSL enabled: true/false"
)
path
=
OptString
(
"/PI/services/UCP/"
,
"Path to UCP WebService"
)
username
=
OptString
(
""
,
"Username to use"
)
...
...
routersploit/modules/exploits/routers/ipfire/ipfire_oinkcode_rce.py
View file @
f61d9eb8
...
...
@@ -22,7 +22,7 @@ class Exploit(HTTPClient):
target
=
OptIP
(
""
,
"Target IPv4 or IPv6 address"
)
port
=
OptPort
(
444
,
"Target HTTP port"
)
ssl
=
OptBool
(
"true"
,
"SSL enabled: true/false"
)
ssl
=
OptBool
(
True
,
"SSL enabled: true/false"
)
username
=
OptString
(
"admin"
,
"Username to log in with"
)
password
=
OptString
(
"admin"
,
"Password to log in with"
)
...
...
routersploit/modules/exploits/routers/thomson/twg849_info_disclosure.py
View file @
f61d9eb8
...
...
@@ -21,7 +21,7 @@ class Exploit(SNMPClient):
target
=
OptIP
(
""
,
"Target IPv4 or IPv6 address"
)
port
=
OptPort
(
161
,
"Target SNMP port"
)
verbosity
=
OptBool
(
"false"
,
"Enable verbose output: true/false"
)
verbosity
=
OptBool
(
False
,
"Enable verbose output: true/false"
)
def
__init__
(
self
):
self
.
oids
=
{
...
...
routersploit/modules/exploits/routers/ubiquiti/airos_6_x.py
View file @
f61d9eb8
...
...
@@ -26,7 +26,7 @@ class Exploit(HTTPClient, SSHClient):
target
=
OptIP
(
""
,
"Target IPv4 or IPv6 address"
)
port
=
OptPort
(
443
,
"Target HTTP port"
)
ssl
=
OptBool
(
"true"
,
"SSL enabled: true/false"
)
ssl
=
OptBool
(
True
,
"SSL enabled: true/false"
)
ssh_port
=
OptPort
(
22
,
"Target SSH Port"
)
...
...
routersploit/modules/exploits/routers/zyxel/zywall_usg_extract_hashes.py
View file @
f61d9eb8
...
...
@@ -29,7 +29,7 @@ class Exploit(HTTPClient):
}
target
=
OptIP
(
""
,
"Target IPv4 or IPv6 address"
)
port
=
OptPort
(
443
,
"Target HTTP port"
)
ssl
=
OptBool
(
"true"
,
"SSL enabled: true/false"
)
ssl
=
OptBool
(
True
,
"SSL enabled: true/false"
)
def
__init__
(
self
):
self
.
credentials
=
[]
...
...
routersploit/modules/generic/bluetooth/btle_scan.py
View file @
f61d9eb8
...
...
@@ -14,8 +14,8 @@ class Exploit(BTLEClient):
),
}
enum
=
OptBool
(
"false"
,
"Automatically enumerate services: true/false"
)
buffering
=
OptBool
(
"true"
,
"Buffering enabled: true/false. Results in real time."
)
enum
=
OptBool
(
False
,
"Automatically enumerate services: true/false"
)
buffering
=
OptBool
(
False
,
"Buffering enabled: true/false. Results in real time."
)
def
run
(
self
):
devices
=
self
.
btle_scan
()
...
...
routersploit/modules/generic/bluetooth/btle_write.py
View file @
f61d9eb8
...
...
@@ -18,7 +18,7 @@ class Exploit(BTLEClient):
target
=
OptMAC
(
""
,
"Target MAC address"
)
char
=
OptString
(
""
,
"Characteristic"
)
data
=
OptString
(
"41424344"
,
"Data (in hex format)"
)
buffering
=
OptBool
(
"true"
,
"Buffering enabled: true/false. Results in real time."
)
buffering
=
OptBool
(
True
,
"Buffering enabled: true/false. Results in real time."
)
def
run
(
self
):
try
:
...
...
routersploit/modules/scanners/autopwn.py
View file @
f61d9eb8
...
...
@@ -20,10 +20,10 @@ class Exploit(Exploit):
target
=
OptIP
(
""
,
"Target IPv4 or IPv6 address"
)
http_port
=
OptPort
(
80
,
"Target Web Interface Port"
)
http_ssl
=
OptBool
(
"false"
,
"HTTPS enabled: true/false"
)
http_ssl
=
OptBool
(
False
,
"HTTPS enabled: true/false"
)
ftp_port
=
OptPort
(
21
,
"Target FTP port (default: 21)"
)
ftp_ssl
=
OptBool
(
"false"
,
"FTPS enabled: true/false"
)
ftp_ssl
=
OptBool
(
False
,
"FTPS enabled: true/false"
)
ssh_port
=
OptPort
(
22
,
"Target SSH port (default: 22)"
)
telnet_port
=
OptPort
(
23
,
"Target Telnet port (default: 23)"
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment