A python3 wrapper around libsniff
Project description
libsniffpy
Motivation
I wanted to have a nice cython/python wrapper around libsniff. This name might confuse you, I just care about sniffing wifi packets from a nic in monitor mode.
Installation
pip install libsniffpy
Usage
Simple: Low level usage
from sniff import get_socket
# You might have to adjust
s = get_socket("wlan0mon")
# or whatever big number, forgot how big those frames are lel
raw = s.recv(3000)
Advanced: Iterate over the Radiotap frames
from sniff import get_socket, type_predicate, subtype_predicate, loop
from sys import stderr
from dpkt import ieee80211
from dpkt.radiotap import Radiotap
if __name__ == "__main__":
mgmt_predicate = type_predicate(ieee80211.MGMT_TYPE)
probe_request_predicate = subtype_predicate(ieee80211.M_PROBE_REQ)
mgmt_packets = filter(mgmt_predicate, loop("wlan0mon"))
probe_requests = filter(probe_request_predicate, mgmt_packets)
for pkg in probe_requests:
print(pkg)
Guidance for n00bs
This lib opens a raw socket for a monitor mode enabled interface. It needs privs that your user probably don't have.
Either you run this stuff as root or you do sth like this:
sudo setcap cap_net_raw,cap_net_admin=eip
on a wrapper script that calls your python interpreter.
License
This project is licensed under the GPL-3 license.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file libsniffpy-0.3.2.tar.gz.
File metadata
- Download URL: libsniffpy-0.3.2.tar.gz
- Upload date:
- Size: 3.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.8 CPython/3.9.5 Linux/5.11.0-27-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00ae244885dec28675faaf4fe827425810d0d06e7b427da91f0f65b0e9357129
|
|
| MD5 |
e60df761e0c912040e4cb275a88806cb
|
|
| BLAKE2b-256 |
62bbe7772ca743864307a92f5bf5c3fe05a37d37782ee73e6da1afe90de94594
|
File details
Details for the file libsniffpy-0.3.2-cp39-cp39-manylinux_2_31_x86_64.whl.
File metadata
- Download URL: libsniffpy-0.3.2-cp39-cp39-manylinux_2_31_x86_64.whl
- Upload date:
- Size: 81.5 kB
- Tags: CPython 3.9, manylinux: glibc 2.31+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.8 CPython/3.9.5 Linux/5.11.0-27-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ca6491a4f6540f85187951e6c4e8e8f7fcfcb4510ca38fc6ff2bc158778d6ef
|
|
| MD5 |
21e9752dd525ef16cd48478861a21bb0
|
|
| BLAKE2b-256 |
4b8a765a90206d2b7932544440f8c89f649f4416ea65d402b3965efa2658a689
|