Re: How to grab Wifi passwords with only 2 commands
Got a question, can either of them be used on a Mac?
Got a question, can either of them be used on a Mac?
skynet@ubuntu:~/Desktop$ python3 script.txt Error: invalid field 'SSID'; allowed fields: NAME,UUID,TYPE,TIMESTAMP,TIMESTAMP-REAL,AUTOCONNECT,AUTOCONNECT-PRIORITY,READONLY,DBUS-PATH,ACTIVE,DEVICE,STATE,ACTIVE-PATH,SLAVE. Traceback (most recent call last): File "script.txt", line 4, in <module> wifi_profiles_info = subprocess.check_output(['nmcli', '-t', '-f', 'SSID', 'connection', 'show', '--active']).decode('utf-8') File "/usr/lib/python3.6/subprocess.py", line 356, in check_output **kwargs).stdout File "/usr/lib/python3.6/subprocess.py", line 438, in run output=stdout, stderr=stderr) subprocess.CalledProcessError: Command '['nmcli', '-t', '-f', 'SSID', 'connection', 'show', '--active']' returned non-zero exit status 2.
skynet@ubuntu:~/Desktop$ python3 script.txt Error: invalid field 'SSID'; allowed fields: NAME,UUID,TYPE,TIMESTAMP,TIMESTAMP-REAL,AUTOCONNECT,AUTOCONNECT-PRIORITY,READONLY,DBUS-PATH,ACTIVE,DEVICE,STATE,ACTIVE-PATH,SLAVE. Traceback (most recent call last): File "script.txt", line 4, in <module> wifi_profiles_info = subprocess.check_output(['nmcli', '-t', '-f', 'SSID', 'connection', 'show', '--active']).decode('utf-8') File "/usr/lib/python3.6/subprocess.py", line 356, in check_output **kwargs).stdout File "/usr/lib/python3.6/subprocess.py", line 438, in run output=stdout, stderr=stderr) subprocess.CalledProcessError: Command '['nmcli', '-t', '-f', 'SSID', 'connection', 'show', '--active']' returned non-zero exit status 2.
import subprocess wifi_profiles_info = subprocess.check_output(['nmcli', '-t', '-f', 'NAME', 'connection', 'show', '--active']).decode('utf-8') wifi_profiles = [line.strip() for line in wifi_profiles_info.split('\n')] print("Available Wi-Fi networks:") for index, profile in enumerate(wifi_profiles): print(f"{index + 1}. {profile}") selection = input("Select a Wi-Fi network (enter the number): ") try: selected_profile = wifi_profiles[int(selection) - 1] except (ValueError, IndexError): selected_profile = None if selected_profile: wifi_password_info = subprocess.check_output(['nmcli', '-s', '-g', '802-11-wireless-security.psk', 'connection', 'show', selected_profile]).decode('utf-8') wifi_password = wifi_password_info.strip() print(f"Wi-Fi network: {selected_profile}") print(f"Password: {wifi_password}") else: print("No Wi-Fi network selected.")
Comment