Skip to main content

A python wrapper for the Kismet database

Project description

Kismet DB abstraction

Documentation Status

Quickstart

Install with pip install .

In the Python interpreter:

import json
import kismetdb
kismet_log_file = "kismet/database.here"
alerts = kismetdb.Alerts(kismet_log_file)

# Get alert metadata
all_alerts_meta = alerts.get_meta()
for alert in all_alerts_meta:
    print(alert["header"])

# Get payload from all alerts
all_alerts = alerts.get_all()
for alert in all_alerts:
    print(json.loads(alert["json"])["kismet.alert.text"])

Included scripts

Alongside the Python library, several commands are installed:

  • kismet_log_devices_to_json

  • kismet_log_to_csv

  • kismet_log_to_kml

  • kismet_log_to_pcap

Following any of the prior commands with --help will provide details on usage

Testing

In order to test, you must place a kismet sqlite log file at tests/assets/testdata.kismet_4 and tests/assets/testdata.kismet_4, which are Kismet version 4 and 5 databases, respectively.

Testing happens in a Docker build process:

Testing for Python 2.7:

docker build .

Testing for Python 3.6:

docker build --build-arg PY_VER=3.6 .

Testing for Python 3.7:

docker build --build-arg PY_VER=3.7 .

Changelog

v2019.02.01

  • Minor commit to trigger mirror. [Mike Kershaw / Dragorn]

v5.1.0 (2019-02-16)

New

  • Include version-specific converters. [Ash Wilson]

    This allows us to, for instance, ensure that all GPS coordinates are returned as float-type values, across all database versions, no matter how they were originally stored in the database.

    Closes #22

  • Support v4 as well as v5 Kismet databases. [Ash Wilson]

    Closes #19

  • Add kismet_log_devices_to_filebeat_json. [Ash Wilson]

    Closes #17

v5.0.0 (2019-02-12)

New

  • Support v5 schema. [Ash Wilson]

v4.0.3 (2019-02-05)

Changes

  • Updated docs, added simplekml requirement. [Ash Wilson]

    Closes #8 Closes #7

  • Adding docs to be built by Sphinx. [Ash Wilson]

  • Scripts automatically install with Python package. [Ash Wilson]

    Added generator function yield_rows() to all abstractions.

  • Initial working commit. [Ash Wilson]

    In order to run integration tests, you need a Kismet db at tests/assets/testdata.kismet.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kismetdb-2019.2.1.tar.gz (15.3 kB view details)

Uploaded Source

File details

Details for the file kismetdb-2019.2.1.tar.gz.

File metadata

  • Download URL: kismetdb-2019.2.1.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.0.0 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/2.7.15

File hashes

Hashes for kismetdb-2019.2.1.tar.gz
Algorithm Hash digest
SHA256 86923d6b0994fb7b7259f238369f8620e935fbf45b3046c4c0940186d1304681
MD5 10c258d0e6c5a03e14df4cbf822034d4
BLAKE2b-256 758d8a6b04a7b9e89e825fea596c094adb4f75e5f26eb91c07f31c4eec70cf22

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page