Kismon / kismon

A GUI client for kismet
BSD 3-Clause "New" or "Revised" License
106 stars 20 forks source link

Getting type error #15

Closed tranzmatt closed 4 years ago

tranzmatt commented 4 years ago

I'm running kismon built from here against the 2019-12 release of kismet, but get the following error:

17:49:22,650 INFO [networks.py:131] Total networks 4 Traceback (most recent call last): File "/usr/local/lib/python3.7/dist-packages/kismon/core.py", line 326, in queues_handler_networks self.queue_handler_networks(server_id) File "/usr/local/lib/python3.7/dist-packages/kismon/core.py", line 297, in queue_handler_networks self.networks.add_device_data(device, server_id) File "/usr/local/lib/python3.7/dist-packages/kismon/networks.py", line 268, in add_device_data new_ssid = ssid_map[key]['dot11.advertisedssid.ssid'] TypeError: list indices must be integers or slices, not dict Traceback (most recent call last): File "/usr/local/lib/python3.7/dist-packages/kismon/core.py", line 286, in queues_handler self.queue_handler(server_id) File "/usr/local/lib/python3.7/dist-packages/kismon/core.py", line 206, in queue_handler gps = {'lat': data['kismet.common.location.lat'], KeyError: 'kismet.common.location.lat'

tranzmatt commented 4 years ago

10:36:49,540 ERROR [networks.py:672] Parser: filename is not a file () 10:36:49,540 INFO [networks.py:71] saving 4 networks to /tmp/networks-1582904209.json 10:36:49,543 INFO [networks.py:110] Loading networks.json 10:36:49,543 INFO [networks.py:131] Total networks 4 10:36:49,543 ERROR [networks.py:410] unknown filetype 10:36:49,543 INFO [networks.py:71] saving 4 networks to /tmp/networks-1582904209.json 10:36:49,637 ERROR [networks.py:262] todo: multiple SSIDs per device 88:B1:E1:22:C8:F2 /usr/lib/python3/dist-packages/apport/report.py:13: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses import fnmatch, glob, traceback, errno, sys, atexit, locale, imp Traceback (most recent call last): File "/home/matt/Code/SDR/Kismet/kismon/kismon/core.py", line 326, in queues_handler_networks self.queue_handler_networks(server_id) File "/home/matt/Code/SDR/Kismet/kismon/kismon/core.py", line 297, in queue_handler_networks self.networks.add_device_data(device, server_id) File "/home/matt/Code/SDR/Kismet/kismon/kismon/networks.py", line 268, in add_device_data print(ssid_map[key]) TypeError: list indices must be integers or slices, not dict 10:36:49,752 DEBUG [map.py:368] marker 11:22:33:44:55:66 not found

dreadnought commented 4 years ago

Thanks for reporting the issue, please test if it is gone after you pulled the latest commits.

tranzmatt commented 4 years ago

Yes, the errors went away with the most recent commit, thanks. I see, however, an odd error that I'm not sure what it means:

devices/last-time/-2/devices.itjson devices/last-time/-2/devices.itjson 15:58:13,567 ERROR [networks.py:262] todo: multiple SSIDs per device XX:XX:XX:22:C8:F0 15:58:13,567 ERROR [networks.py:262] todo: multiple SSIDs per device XX:XX:XX:22:B0:30 15:58:13,568 ERROR [networks.py:262] todo: multiple SSIDs per device XX:XX:XX:22:B0:32 15:58:13,568 ERROR [networks.py:262] todo: multiple SSIDs per device XX:XX:XX:22:47:60

The office I'm testing from has multiple AP's in different rooms to the same network. Is that what this is? If so, can I suppress it? Perhaps a warning instead of an error? Also, the last-time never increments from -2

dreadnought commented 4 years ago

The todo means that there is nothing implemented for the case that a device broadcasts more than one SSID by using the same MAC address. So you might not see the SSID that you expect in Kismon, there is no logic yet of how to process and display them. I'm not aware of an enterprise access point who does that, usually each one has a base MAC and a couple more for every SSID that it broadcasts.

-2 requests all devices that changed in the last two seconds from the kismet.