Working before re-write, no nord

This commit is contained in:
SiloDS
2021-07-30 10:54:13 +01:00
parent 62124977da
commit 7c365af660
4 changed files with 761 additions and 31 deletions

View File

@@ -1,12 +1,13 @@
import re
import subprocess import subprocess
from config import RPI, Debug, ClientInterface from config import RPI, ClientInterface, Debug
from flask import flash, redirect, render_template, url_for from flask import flash, redirect, render_template, url_for
from flask_login import current_user, login_required, login_user, logout_user from flask_login import current_user, login_required, login_user, logout_user
from app import app from app import app
from app.forms import LoginForm, WPAForm from app.forms import LoginForm, WPAForm
from app.models import User, Passwords from app.models import Passwords, User
CMD_SCAN = "sudo nmcli -t -f SSID,SIGNAL,IN-USE,SECURITY -e yes -m tab device wifi list ifname wlan1 --rescan yes" CMD_SCAN = "sudo nmcli -t -f SSID,SIGNAL,IN-USE,SECURITY -e yes -m tab device wifi list ifname wlan1 --rescan yes"
CMD_JOIN = "sudo nmcli device wifi connect *SSID* ifname wlan1" CMD_JOIN = "sudo nmcli device wifi connect *SSID* ifname wlan1"
@@ -16,6 +17,48 @@ CMD_DISCONNECT = "sudo nmcli device disconnect wlan1"
# Device 'wlxf81a6719febb' successfully activated with '11111-1111-11111-111111-11111111' # Device 'wlxf81a6719febb' successfully activated with '11111-1111-11111-111111-11111111'
def parse_iwlist(iwlist_output, current):
data = []
cell = []
for line in iwlist_output.splitlines():
if line.find(" Cell ") != -1 and cell != []:
data.append(cell)
cell = []
elif line.find("Scan completed :") > 0:
pass
else:
cell.append(line)
try:
del data[0][0]
except:
pass
cells = []
for a in data:
cell = {}
for line in a:
line = line.strip()
if line.find("ESSID:") != -1:
if line.partition("ESSID:")[2].strip('"') != "":
cell["SSID"] = line.partition("ESSID:")[2].strip('"')
if cell["SSID"] == current:
cell["Connected"] = "Yes"
else:
cell["Connected"] = ""
if line.partition("Signal level=")[2].split("/")[0] != "" != -1:
cell["Signal"] = line.partition("Signal level=")[2].split("/")[0]
if line.find("Encryption key:") != -1:
if line.find(":on") != -1:
cell["WPA"] = "WPA2"
else:
cell["WPA"] = "None"
cells.append(cell)
return cells
def scan_networks(): def scan_networks():
scan = [] scan = []
@@ -30,28 +73,29 @@ def scan_networks():
current = output.partition("ESSID:")[2].strip().strip('"') current = output.partition("ESSID:")[2].strip().strip('"')
output = subprocess.run(["sudo", "iwlist", ClientInterface, "scan"], stdout=subprocess.PIPE).stdout.decode("utf-8") output = subprocess.run(["sudo", "iwlist", ClientInterface, "scan"], stdout=subprocess.PIPE).stdout.decode("utf-8")
a = 0 scan = parse_iwlist(output, current)
scan = [] # a = 0
for line in output.splitlines(): # scan = []
if a == 0: # for line in output.splitlines():
connected = " " # if a == 0:
if line.partition("ESSID:")[2].strip('"') != "": # connected = " "
a = 1 # if line.partition("ESSID:")[2].strip('"') != "":
ssid = line.partition("ESSID:")[2].strip('"') # a = 1
if ssid == current: # ssid = line.partition("ESSID:")[2].strip('"')
connected = "*" # if ssid == current:
if a == 1: # connected = "*"
if line.find("Encryption key:off") != -1: # if a == 1:
password = "" # if line.find("Encryption key:off") != -1:
a = 2 # password = ""
elif line.find("Encryption key:on") != -1: # a = 2
password = "WPA2" # elif line.find("Encryption key:on") != -1:
a = 2 # password = "WPA2"
if a == 2: # a = 2
if line.partition("Signal level=")[2].split("/")[0] != "": # if a == 2:
signal = line.partition("Signal level=")[2].split("/")[0] # if line.partition("Signal level=")[2].split("/")[0] != "":
a = 0 # signal = line.partition("Signal level=")[2].split("/")[0]
scan.append(ssid + ":" + signal + ":" + connected + ":" + password) # a = 0
# scan.append(ssid + ":" + signal + ":" + connected + ":" + password)
return scan return scan
@@ -64,13 +108,18 @@ def index():
if not Debug: if not Debug:
scan = scan_networks() scan = scan_networks()
# for network in scan:
# item = [
# network.split(":", maxsplit=1)[0],
# network.split(":")[1],
# "Yes" if network.split(":")[2] == "*" else "",
# "None" if network.split(":")[3].strip() == "" else "WPA2",
# ]
# results.append(item)
item = []
for network in scan: for network in scan:
item = [ item = [network["SSID"], network["Signal"], network["Connected"], network["WPA"]]
network.split(":", maxsplit=1)[0],
network.split(":")[1],
"Yes" if network.split(":")[2] == "*" else "",
"None" if network.split(":")[3].strip() == "" else "WPA2",
]
results.append(item) results.append(item)
# table = Networks(results) # table = Networks(results)
@@ -134,6 +183,13 @@ network={{
""".format( """.format(
ssid, form.password.data ssid, form.password.data
) )
with open("/etc/network/interfaces", "r") as sources:
lines = sources.readlines()
with open("/etc/network/interfaces", "w") as sources:
for line in lines:
sources.write(re.sub(r"^iface wlan0 inet manual", "iface wlan0 inet dhcp", line))
output = subprocess.run( output = subprocess.run(
["sudo", "/usr/sbin/ifdown", ClientInterface], stdout=subprocess.PIPE, stderr=subprocess.PIPE ["sudo", "/usr/sbin/ifdown", ClientInterface], stdout=subprocess.PIPE, stderr=subprocess.PIPE
).stdout.decode("utf-8") ).stdout.decode("utf-8")
@@ -192,6 +248,12 @@ network={{
ssid ssid
) )
with open("/etc/network/interfaces", "r") as sources:
lines = sources.readlines()
with open("/etc/network/interfaces", "w") as sources:
for line in lines:
sources.write(re.sub(r"^iface wlan0 inet manual", "iface wlan0 inet dhcp", line))
output = subprocess.run( output = subprocess.run(
["sudo", "/usr/sbin/ifdown", ClientInterface], stdout=subprocess.PIPE, stderr=subprocess.PIPE ["sudo", "/usr/sbin/ifdown", ClientInterface], stdout=subprocess.PIPE, stderr=subprocess.PIPE
).stdout.decode("utf-8") ).stdout.decode("utf-8")
@@ -232,4 +294,29 @@ def disconnect(ssid):
["sudo", "/usr/sbin/ifdown", ClientInterface], stdout=subprocess.PIPE, stderr=subprocess.PIPE ["sudo", "/usr/sbin/ifdown", ClientInterface], stdout=subprocess.PIPE, stderr=subprocess.PIPE
).stdout.decode("utf-8") ).stdout.decode("utf-8")
wpafile = """country=GB # Your 2-digit country code
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
"""
with open("/etc/wpa_supplicant/wpa_supplicant.conf", "wt") as f:
f.write(wpafile)
with open("/etc/network/interfaces", "r") as sources:
lines = sources.readlines()
with open("/etc/network/interfaces", "w") as sources:
for line in lines:
sources.write(re.sub(r"^iface wlan0 inet dhcp", "iface wlan0 inet manual", line))
try:
output = subprocess.run(
["sudo", "/usr/bin/systemctl", "restart", "wpa_supplicant"],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
timeout=20,
).stdout.decode("utf-8")
output = subprocess.run(
["sudo", "/usr/sbin/ifup", ClientInterface], stdout=subprocess.PIPE, stderr=subprocess.PIPE, timeout=20
).stdout.decode("utf-8")
except:
return render_template("message.html", message="Failt to disconnect from {}".format(ssid))
return render_template("message.html", message="Sucessfully disconnected from {}".format(ssid)) return render_template("message.html", message="Sucessfully disconnected from {}".format(ssid))

View File

@@ -4,7 +4,8 @@ basedir = os.path.abspath(os.path.dirname(__file__))
Debug = False Debug = False
RPI = True RPI = True
ClientInterface = "wlan1" ClientInterface = "wlan0"
# wlan1 access point
class Config(object): class Config(object):
SECRET_KEY = os.environ.get("SECRET_KEY") or "dfsads1!FASASF231(*&FADSs" SECRET_KEY = os.environ.get("SECRET_KEY") or "dfsads1!FASASF231(*&FADSs"

285
iwlist.txt Normal file
View File

@@ -0,0 +1,285 @@
wlan0 Scan completed :
Cell 01 - Address: 94:37:F7:ED:E5:F5
Channel:5
Frequency:2.432 GHz (Channel 5)
Quality=70/70 Signal level=-38 dBm
Encryption key:on
ESSID:"Home"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
24 Mb/s; 36 Mb/s; 54 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 0004486F6D65
IE: Unknown: 010882840B162430486C
IE: Unknown: 030105
IE: Unknown: 050400010000
IE: Unknown: 23020E00
IE: Unknown: 2A0104
IE: Unknown: 32040C121860
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B0507005C0000
IE: Unknown: 2D1AEE191BFFFF000000000000000000000000000000000000000000
IE: Unknown: 3D1605081500000000000000000000000000000000000000
IE: Unknown: 4A0E14000A002C01C800140005001900
IE: Unknown: 7F080500080000000040
IE: Unknown: DD0F00E0FC400000000000FD0480000000
IE: Unknown: DD350050F204104A000110104400010210470010D96C7EFC2F8938F1EFBD6E5148BFA812103C0001031049000A00372A00012005020780
IE: Unknown: DD090010180207008C0000
IE: Unknown: DD180050F2020101840003A4000027A4000042435E0062322F00
Cell 02 - Address: 20:B0:01:9C:02:F9
Channel:2
Frequency:2.417 GHz (Channel 2)
Quality=56/70 Signal level=-54 dBm
Encryption key:on
ESSID:"HOME2"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
24 Mb/s; 36 Mb/s; 54 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 0005484F4D4532
IE: Unknown: 010882848B962430486C
IE: Unknown: 030102
IE: Unknown: 050400010000
IE: Unknown: 2A0104
IE: Unknown: 32040C121860
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050100330000
IE: Unknown: 46053000000000
IE: Unknown: 2D1A2D0017FFFFFF0000000000000000000000000000000000000000
IE: Unknown: 3D1602080400000000000000000000000000000000000000
IE: Unknown: 4A0E14000A002C01C800140005001900
IE: Unknown: 7F080500080000400040
IE: Unknown: DD1D0050F204104A0001101044000102103C0001031049000600372A000120
IE: Unknown: DD1E00904C0400BF0C1258820FEAFF0000EAFF0000C0050002000000C3020002
IE: Unknown: DD090010180201101C0000
IE: Unknown: DD180050F2020101000003A4000027A4000042435E0062322F00
Cell 03 - Address: 1C:BF:CE:8A:B4:41
Channel:7
Frequency:2.442 GHz (Channel 7)
Quality=70/70 Signal level=-10 dBm
Encryption key:on
ESSID:"rpi"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
9 Mb/s; 12 Mb/s; 18 Mb/s
Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 0003727069
IE: Unknown: 010882848B960C121824
IE: Unknown: 030107
IE: Unknown: 050400010000
IE: Unknown: 2A0104
IE: Unknown: 32043048606C
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Cell 04 - Address: 96:37:F7:ED:E5:F9
Channel:5
Frequency:2.432 GHz (Channel 5)
Quality=67/70 Signal level=-43 dBm
Encryption key:on
ESSID:"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
24 Mb/s; 36 Mb/s; 54 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 0018000000000000000000000000000000000000000000000000
IE: Unknown: 010882840B162430486C
IE: Unknown: 030105
IE: Unknown: 050400010000
IE: Unknown: 23020E00
IE: Unknown: 2A0104
IE: Unknown: 32040C121860
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B0500003A0000
IE: Unknown: 2D1AEE191BFFFF000000000000000000000000000000000000000000
IE: Unknown: 3D1605081500000000000000000000000000000000000000
IE: Unknown: 4A0E14000A002C01C800140005001900
IE: Unknown: 7F080500080000000040
IE: Unknown: DD090010180200000C0000
IE: Unknown: DD180050F2020101840003A4000027A4000042435E0062322F00
Cell 05 - Address: EC:8E:B5:B3:AE:CE
Channel:5
Frequency:2.432 GHz (Channel 5)
Quality=50/70 Signal level=-60 dBm
Encryption key:on
ESSID:"DIRECT-CD-HP ENVY 4520 series"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 001D4449524543542D43442D485020454E5659203435323020736572696573
IE: Unknown: 01088C129824B048606C
IE: Unknown: 030105
IE: Unknown: 200100
IE: Unknown: 23021100
IE: Unknown: 2A0100
IE: Unknown: 2F0100
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 2D1A20001AFF00000000000000000000000000000000000000000000
IE: Unknown: 3D1605080000000000000000000000000000000000000000
IE: Unknown: DD090010180200000C0000
IE: Unknown: DD180050F202010188000364000027A4000041435E0061322F00
IE: Unknown: DDC10050F204104A000110104400010210570001011041000100103B000103104700101C852A4DB8001F08ABCDEC8EB5B3AECD10210002485010230011454E565920343532302073657269657300102400053435323400104200105448363650334D3044393036363000001054000800030050F20400051011001D4449524543542D43442D485020454E56592034353230207365726965731008000200001049000600372A00012010490017000137100600101C852A4DB8001F08ABCDEC8EB5B3AECD
IE: Unknown: DD5F080009000400000007010201000311454E5659203435323020736572696573000405343532340005105448363650334D30443930363630000006101C852A4DB8001F08ABCDEC8EB5B3AECD0704C0A800A3080200D4090200080A0400000001
Cell 06 - Address: D4:DA:CD:27:B5:92
Channel:36
Frequency:5.18 GHz (Channel 36)
Quality=50/70 Signal level=-60 dBm
Encryption key:on
ESSID:"SKY2E6AD"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 0008534B593245364144
IE: Unknown: 01088C129824B048606C
IE: Unknown: 07344742202401172801172C01173001173401173801173C011740011764011E68011E6C011E70011E74011E84011E88011E8C011E00
IE: Unknown: 200100
IE: Unknown: 23021000
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050000130000
IE: Unknown: 420100
IE: Unknown: 46057208000000
IE: Unknown: 2D1AEF0117FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1624050000000000000000000000000000000000000000
IE: Unknown: 7F080400080000000040
IE: Unknown: BF0CB269830FAAFF0000AAFF0000
IE: Unknown: C005012A000000
IE: Unknown: C30402020202
IE: Unknown: DDAD0050F204104A0001101044000102103B00010310470010B3B9D65E5B53F032D888BB2D851A5CBA10210003536B7910230005454D31353010240007312E302E302E301042000E41543133353132303330303030311054000800060050F20400011011000E536B792051204D696E6920626F7810080002200C103C0001021049000600372A00012010580022007FC510001868FFE221A0ABBBB2A9C1BB3C760026E3303030303030303130000101
IE: Unknown: DD090010180200001C0000
IE: Unknown: DD180050F2020101840003A4000027A4000042435E0062322F00
Cell 07 - Address: 94:37:F7:ED:E5:FA
Channel:36
Frequency:5.18 GHz (Channel 36)
Quality=62/70 Signal level=-48 dBm
Encryption key:on
ESSID:"Home_5GHz"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 0009486F6D655F3547487A
IE: Unknown: 01088C129824B048606C
IE: Unknown: 200100
IE: Unknown: 23020F00
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050700210000
IE: Unknown: 2D1AEF0117FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1624051600000000000000000000000000000000000000
IE: Unknown: 7F080400080000000040
IE: Unknown: BF0CB5698B0FAAFF0000AAFF0020
IE: Unknown: C005012A000000
IE: Unknown: C30402202020
IE: Unknown: C70132
IE: Unknown: FF24230900001200100C2002C06F5B8318000C00AAFFAAFFAAFFAAFF1B1CC7711CC7711CC771
IE: Unknown: FF072404000025FCFF
IE: Unknown: FF022700
IE: Unknown: FF0E260400A4FF20A4FF4043FF6032FF
IE: Unknown: DD0F00E0FC8000000001009437F7EDE5FA
IE: Unknown: DD1400E0FC400000000000FB069437F7EDE5FAF90101
IE: Unknown: DD7E0050F204104A0001101044000102103B00010310470010D96C7EFC2F8938F1EFBD6E5148BFA81210210006487561776569102300064875617765691024000631323334353610420004313233341054000800060050F2040001101100084875617765694150100800020100103C0001031049000A00372A00012005020780
IE: Unknown: DD0500904C0417
IE: Unknown: DD090010180207001C0000
IE: Unknown: DD180050F2020101840003A4000027A4000042435E0062322F00
Cell 08 - Address: 98:1E:19:E5:01:39
Channel:36
Frequency:5.18 GHz (Channel 36)
Quality=33/70 Signal level=-77 dBm
Encryption key:on
ESSID:"BTHub6-F8K2"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 000B4254487562362D46384B32
IE: Unknown: 01088C129824B048606C
IE: Unknown: 050402030000
IE: Unknown: 073C4742202401172801172C01173001173401173801173C011740011764011E68011E6C011E70011E74011E78011E7C011E80011E84011E88011E8C011E
IE: Unknown: 200100
IE: Unknown: 23021500
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B0501000C0000
IE: Unknown: 42020000
IE: Unknown: 2D1AEF0117FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1624050000000000000000000000000000000000000000
IE: Unknown: 7F080400080000000040
IE: Unknown: BF0CB269830FAAFF0000AAFF0000
IE: Unknown: C005012A000000
IE: Unknown: C30402020202
IE: Unknown: DD310050F204104A0001101044000102104700102ADE320B3332E522A765BA8ACC7669F8103C0001031049000600372A000120
IE: Unknown: DD0500904C0417
IE: Unknown: DD090010180201001C0000
IE: Unknown: DD180050F2020101800003A4000027A4000042435E0062322F00
Cell 09 - Address: 22:B0:01:9C:02:01
Channel:52
Frequency:5.26 GHz (Channel 52)
Quality=53/70 Signal level=-57 dBm
Encryption key:on
ESSID:"HOME2"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 80ms ago
IE: Unknown: 0005484F4D4532
IE: Unknown: 01088C129824B048606C
IE: Unknown: 050400010000
IE: Unknown: 073C4742202401172801172C01173001173401173801173C011740011764011E68011E6C011E70011E74011E78011E7C011E80011E84011E88011E8C011E
IE: Unknown: 200100
IE: Unknown: 23021400
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050200040000
IE: Unknown: 420100
IE: Unknown: 46053000000000
IE: Unknown: 2D1A6F0017FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1634050400000000000000000000000000000000000000
IE: Unknown: 4A0E14000A002C01C800140005001900
IE: Unknown: 7F080500088000400040
IE: Unknown: BF0C3268830FAAFF0000AAFF0000
IE: Unknown: C005013A000000
IE: Unknown: C30402020202
IE: Unknown: DD1D0050F204104A0001101044000102103C0001031049000600372A000120
IE: Unknown: DD0500904C0417
IE: Unknown: DD090010180202009C0000
IE: Unknown: DD180050F2020101000003A4000027A4000042435E0062322F00
IE: Unknown: DD07506F9A16010100
IE: Unknown: 6C027F00

357
test.py Normal file
View File

@@ -0,0 +1,357 @@
iwlist_text = """wlan0 Scan completed :
Cell 01 - Address: 20:B0:01:9C:02:F9
Channel:2
Frequency:2.417 GHz (Channel 2)
Quality=56/70 Signal level=-54 dBm
Encryption key:on
ESSID:"HOME2"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
24 Mb/s; 36 Mb/s; 54 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 0005484F4D4532
IE: Unknown: 010882848B962430486C
IE: Unknown: 030102
IE: Unknown: 2A0100
IE: Unknown: 32040C121860
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050100180000
IE: Unknown: 46053000000000
IE: Unknown: 2D1A2D0017FFFFFF0000000000000000000000000000000000000000
IE: Unknown: 3D1602080400000000000000000000000000000000000000
IE: Unknown: 4A0E14000A002C01C800140005001900
IE: Unknown: 7F080500080000400040
IE: Unknown: DD830050F204104A0001101044000102103B00010310470010FE571D369D3F5F88A4940FAD3FA4FE2C10210008566F6461666F6E65102300075448473330303010240007566F78332E307610420009313932385341484D411054000800060050F204000110110008566F7820332E3076100800020784103C0001031049000600372A000120
IE: Unknown: DD1E00904C0400BF0C1258820FEAFF0000EAFF0000C0050002000000C3020002
IE: Unknown: DD090010180201101C0000
IE: Unknown: DD180050F2020101000003A4000027A4000042435E0062322F00
Cell 02 - Address: 1C:BF:CE:8A:B4:41
Channel:7
Frequency:2.442 GHz (Channel 7)
Quality=70/70 Signal level=-10 dBm
Encryption key:on
ESSID:"rpi"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
9 Mb/s; 12 Mb/s; 18 Mb/s
Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 0003727069
IE: Unknown: 010882848B960C121824
IE: Unknown: 030107
IE: Unknown: 050400010000
IE: Unknown: 2A0104
IE: Unknown: 32043048606C
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Cell 03 - Address: 22:B0:01:9C:02:01
Channel:52
Frequency:5.26 GHz (Channel 52)
Quality=56/70 Signal level=-54 dBm
Encryption key:on
ESSID:"HOME2"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 0005484F4D4532
IE: Unknown: 01088C129824B048606C
IE: Unknown: 050400010100
IE: Unknown: 073C4742202401172801172C01173001173401173801173C011740011764011E68011E6C011E70011E74011E78011E7C011E80011E84011E88011E8C011E
IE: Unknown: 200100
IE: Unknown: 23021400
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050300020000
IE: Unknown: 420100
IE: Unknown: 46053000000000
IE: Unknown: 2D1A6F0017FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1634050400000000000000000000000000000000000000
IE: Unknown: 4A0E14000A002C01C800140005001900
IE: Unknown: 7F080500088000400040
IE: Unknown: BF0C3268830FAAFF0000AAFF0000
IE: Unknown: C005013A000000
IE: Unknown: C30402020202
IE: Unknown: DD1D0050F204104A0001101044000102103C0001031049000600372A000120
IE: Unknown: DD0500904C0417
IE: Unknown: DD090010180203009C0000
IE: Unknown: DD180050F2020101000003A4000027A4000042435E0062322F00
IE: Unknown: DD07506F9A16010100
IE: Unknown: 6C027F00
Cell 04 - Address: 94:37:F7:ED:E5:F5
Channel:7
Frequency:2.442 GHz (Channel 7)
Quality=70/70 Signal level=-37 dBm
Encryption key:on
ESSID:"Home"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
24 Mb/s; 36 Mb/s; 54 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 0004486F6D65
IE: Unknown: 010882840B162430486C
IE: Unknown: 030107
IE: Unknown: 23020E00
IE: Unknown: 2A0104
IE: Unknown: 32040C121860
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050500190000
IE: Unknown: 2D1AEE191BFFFF000000000000000000000000000000000000000000
IE: Unknown: 3D1607081500000000000000000000000000000000000000
IE: Unknown: 4A0E14000A002C01C800140005001900
IE: Unknown: 7F080500080000000040
IE: Unknown: DD7E0050F204104A0001101044000102103B00010310470010D96C7EFC2F8938F1EFBD6E5148BFA81210210006487561776569102300064875617765691024000631323334353610420004313233341054000800060050F2040001101100084875617765694150100800020100103C0001031049000A00372A00012005020780
IE: Unknown: DD0F00E0FC400000000000FD0480000000
IE: Unknown: DD0F00E0FC8000000001009437F7EDE5F5
IE: Unknown: DD1400E0FC400000000000FB069437F7EDE5F5F90101
IE: Unknown: DD090010180205008C0000
IE: Unknown: DD180050F2020101840003A4000027A4000042435E0062322F00
Cell 05 - Address: EC:8E:B5:B3:AE:CE
Channel:7
Frequency:2.442 GHz (Channel 7)
Quality=44/70 Signal level=-66 dBm
Encryption key:on
ESSID:"DIRECT-CD-HP ENVY 4520 series"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 001D4449524543542D43442D485020454E5659203435323020736572696573
IE: Unknown: 01088C129824B048606C
IE: Unknown: 030107
IE: Unknown: 200100
IE: Unknown: 23021100
IE: Unknown: 2A0100
IE: Unknown: 2F0100
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 2D1A20001AFF00000000000000000000000000000000000000000000
IE: Unknown: 3D1607081100000000000000000000000000000000000000
IE: Unknown: DD090010180200000C0000
IE: Unknown: DD180050F202010188000364000027A4000041435E0061322F00
IE: Unknown: DDC10050F204104A000110104400010210570001011041000100103B000103104700101C852A4DB8001F08ABCDEC8EB5B3AECD10210002485010230011454E565920343532302073657269657300102400053435323400104200105448363650334D3044393036363000001054000800030050F20400051011001D4449524543542D43442D485020454E56592034353230207365726965731008000200001049000600372A00012010490017000137100600101C852A4DB8001F08ABCDEC8EB5B3AECD
IE: Unknown: DD5F080009000400000007010201000311454E5659203435323020736572696573000405343532340005105448363650334D30443930363630000006101C852A4DB8001F08ABCDEC8EB5B3AECD0704C0A800A3080200D4090200080A0400000001
Cell 06 - Address: D4:DA:CD:27:B5:92
Channel:36
Frequency:5.18 GHz (Channel 36)
Quality=50/70 Signal level=-60 dBm
Encryption key:on
ESSID:"SKY2E6AD"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 0008534B593245364144
IE: Unknown: 01088C129824B048606C
IE: Unknown: 07344742202401172801172C01173001173401173801173C011740011764011E68011E6C011E70011E74011E84011E88011E8C011E00
IE: Unknown: 200100
IE: Unknown: 23021000
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050000280000
IE: Unknown: 420100
IE: Unknown: 46057208000000
IE: Unknown: 2D1AEF0117FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1624050000000000000000000000000000000000000000
IE: Unknown: 7F080400080000000040
IE: Unknown: BF0CB269830FAAFF0000AAFF0000
IE: Unknown: C005012A000000
IE: Unknown: C30402020202
IE: Unknown: DDAD0050F204104A0001101044000102103B00010310470010B3B9D65E5B53F032D888BB2D851A5CBA10210003536B7910230005454D31353010240007312E302E302E301042000E41543133353132303330303030311054000800060050F20400011011000E536B792051204D696E6920626F7810080002200C103C0001021049000600372A00012010580022007FC51000186309446EBAB7CC70AE7616820D8EF0A5303030303030303130000101
IE: Unknown: DD090010180200001C0000
IE: Unknown: DD180050F2020101840003A4000027A4000042435E0062322F00
Cell 07 - Address: 94:37:F7:ED:E5:FA
Channel:36
Frequency:5.18 GHz (Channel 36)
Quality=64/70 Signal level=-46 dBm
Encryption key:on
ESSID:"Home_5GHz"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 0009486F6D655F3547487A
IE: Unknown: 01088C129824B048606C
IE: Unknown: 200100
IE: Unknown: 23020F00
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B0505002F0000
IE: Unknown: 2D1AEF0117FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1624050400000000000000000000000000000000000000
IE: Unknown: 7F080400080000000040
IE: Unknown: BF0CB5698B0FAAFF0000AAFF0020
IE: Unknown: C005012A000000
IE: Unknown: C30402202020
IE: Unknown: C70132
IE: Unknown: FF24230900001200100C2002C06F5B8318000C00AAFFAAFFAAFFAAFF1B1CC7711CC7711CC771
IE: Unknown: FF072404000030FCFF
IE: Unknown: FF022700
IE: Unknown: FF0E260400A4FF20A4FF4043FF6032FF
IE: Unknown: DD7E0050F204104A0001101044000102103B00010310470010D96C7EFC2F8938F1EFBD6E5148BFA81210210006487561776569102300064875617765691024000631323334353610420004313233341054000800060050F2040001101100084875617765694150100800020100103C0001031049000A00372A00012005020780
IE: Unknown: DD0F00E0FC8000000001009437F7EDE5FA
IE: Unknown: DD1400E0FC400000000000FB069437F7EDE5FAF90101
IE: Unknown: DD0500904C0417
IE: Unknown: DD090010180205001C0000
IE: Unknown: DD180050F2020101840003A4000027A4000042435E0062322F00
Cell 08 - Address: 62:8E:29:1A:B2:3D
Channel:1
Frequency:2.412 GHz (Channel 1)
Quality=34/70 Signal level=-76 dBm
Encryption key:off
ESSID:"BTWi-fi"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
24 Mb/s; 36 Mb/s; 54 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 0007425457692D6669
IE: Unknown: 010882848B962430486C
IE: Unknown: 030101
IE: Unknown: 050401030000
IE: Unknown: 0706474220010D14
IE: Unknown: 2A0104
IE: Unknown: 32040C121860
IE: Unknown: 0B050000230000
IE: Unknown: 2D1AAD0117FFFFFF0000000000000000000000000000000000000000
IE: Unknown: 3D1601000400000000000000000000000000000000000000
IE: Unknown: 7F080400080000000040
IE: Unknown: DD1E00904C0408BF0CB259820FEAFF0000EAFF0000C0050001000000C3020002
IE: Unknown: DD090010180200101C0000
IE: Unknown: DD180050F2020101880003A4000027A4000042435E0062322F00
Cell 09 - Address: 98:1E:19:E5:01:39
Channel:36
Frequency:5.18 GHz (Channel 36)
Quality=33/70 Signal level=-77 dBm
Encryption key:on
ESSID:"BTHub6-F8K2"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 000B4254487562362D46384B32
IE: Unknown: 01088C129824B048606C
IE: Unknown: 073C4742202401172801172C01173001173401173801173C011740011764011E68011E6C011E70011E74011E78011E7C011E80011E84011E88011E8C011E
IE: Unknown: 200100
IE: Unknown: 23021500
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B050100110000
IE: Unknown: 42020000
IE: Unknown: 2D1AEF0117FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1624050000000000000000000000000000000000000000
IE: Unknown: 7F080400080000000040
IE: Unknown: BF0CB269830FAAFF0000AAFF0000
IE: Unknown: C005012A000000
IE: Unknown: C30402020202
IE: Unknown: DD800050F204104A0001101044000102103B000103104700102ADE320B3332E522A765BA8ACC7669F81021000242541023000842545F4855425F3610240007312E302D322E30104200063132333435361054000800060050F20400011011000D42545F4855425F362D31323334100800022000103C0001031049000600372A000120
IE: Unknown: DD0500904C0417
IE: Unknown: DD090010180201001C0000
IE: Unknown: DD180050F2020101800003A4000027A4000042435E0062322F00
Cell 10 - Address: 96:37:F7:ED:E5:FC
Channel:36
Frequency:5.18 GHz (Channel 36)
Quality=64/70 Signal level=-46 dBm
Encryption key:on
ESSID:"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000000000000000
Extra: Last beacon: 50ms ago
IE: Unknown: 0018000000000000000000000000000000000000000000000000
IE: Unknown: 01088C129824B048606C
IE: Unknown: 050400010000
IE: Unknown: 200100
IE: Unknown: 23020F00
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 0B0500002F0000
IE: Unknown: 2D1AEF0117FFFFFFFF00000000000000000000000000000000000000
IE: Unknown: 3D1624050400000000000000000000000000000000000000
IE: Unknown: 7F080400080000000040
IE: Unknown: BF0CB5698B0FAAFF0000AAFF0020
IE: Unknown: C005012A000000
IE: Unknown: C30402202020
IE: Unknown: C70132
IE: Unknown: FF24230900001200100C2002C06F5B8318000C00AAFFAAFFAAFFAAFF1B1CC7711CC7711CC771
IE: Unknown: FF072404000030FCFF
IE: Unknown: FF022700
IE: Unknown: FF0E260400A4FF20A4FF4043FF6032FF
IE: Unknown: DD0500904C0417
IE: Unknown: DD090010180200001C0000
IE: Unknown: DD180050F2020101840003A4000027A4000042435E0062322F00
"""
from pprint import pprint
def parse_iwlist(iwlist_output):
data = []
in_cell = False
cell = []
for line in iwlist_output.splitlines():
if line.find(" Cell ") != -1 and cell != []:
data.append(cell)
cell = []
elif line.find("Scan completed :") > 0:
pass
else:
cell.append(line)
del data[0][0]
cells = []
for a in data:
cell = {}
for line in a:
line = line.strip()
if line.find("ESSID:") != -1:
if line.partition("ESSID:")[2].strip('"') != "":
cell["SSID"] = line.partition("ESSID:")[2].strip('"')
if line.partition("Signal level=")[2].split("/")[0] != "" != -1:
cell["Signal"] = line.partition("Signal level=")[2].split("/")[0]
if line.find("Encryption key:") != -1:
if line.find(":on") != -1:
cell["WPA"] = "WPA2"
else:
cell["WPA"] = "None"
cells.append(cell)
pprint(cells)
if __name__ == "__main__":
parse_iwlist(iwlist_text)