Skip to main content
CI/CD CI - Test CD - Build Package
Package PyPI - Version PyPI - Downloads PyPI - Python Version
Meta code style - yapf types - Mypy imports - isort

Python aircrack-ng bindings

PyrCrack is a Python API exposing a common aircrack-ng API. As AircrackNg will run in background processes, and produce parseable output both in files and stdout, the most pythonical approach are context managers, cleaning up after

This library exports a basic aircrack-ng API aiming to keep always a small readable codebase.

This has led to a simple library that executes each of the aircrack-ng's suite commands and auto-detects its usage instructions. Based on that, it dinamically builds classes inheriting that usage as docstring and a run() method that accepts keyword parameters and arguments, and checks them BEFORE trying to run them.

Some classes expose themselves as async iterators, as airodump-ng's wich returns access points with its associated clients.

Documentation

The documentation is made with Material for MkDocs and is hosted by GitHub Pages.

Examples

Be sure to check the python notebook example

You can have also have a look at the examples/ folder for some usage examples, such as the basic "scan for targets", that will list available interfaces, let you choose one, put it in monitor mode, and scan for targets updating results each 2 seconds.

import asyncio

import pyrcrack

from rich.console import Console
from rich.prompt import Prompt


async def scan_for_targets():
    """Scan for targets, return json."""
    console = Console()
    console.clear()
    console.show_cursor(False)
    airmon = pyrcrack.AirmonNg()

    interface = Prompt.ask(
	'Select an interface',
	choices=[a['interface'] for a in await airmon.interfaces])

    async with airmon(interface) as mon:
	async with pyrcrack.AirodumpNg() as pdump:
	    async for result in pdump(mon.monitor_interface):
		console.clear()
		console.print(result.table)
		await asyncio.sleep(2)


asyncio.run(scan_for_targets())

This snippet of code will produce the following results:

scan

Contributors

contributors

License

Pyrcrack is distributed under the terms of the GPL2+ license.

v1.2.6 (2022-12-20)

Fix

  • Fixed small typing issue

v1.2.5 (2022-12-03)

Fix

  • Fixed CI badge on readme

v1.2.4 (2022-12-03)

Fix

  • Reorganized workflows

v1.2.3 (2022-12-03)

Fix

  • I was re-checking out the repo

v1.2.2 (2022-12-03)

Fix

  • Changed action for softprops/action-gh-release

v1.2.1 (2022-12-03)

Fix

  • Added missing commitizen dep

v1.2.0 (2022-12-03)

d12f20d9790c04622957a14d2304e149b78d49df

Feat

  • Added CI autorelease
  • Upgrading workflows
  • Migrating to hatch
  • ✨ Check correct aircrack version and root (#41)
  • ✨ #29 Improved airmon-ng interface
  • ✨ #37 Improved aireplay-ng usability (#38)
  • Added debug mode. Don't delete tempfiles
  • closes: #11 Added pypi to github flow

Fix

  • 🐛 #29 Don't break on exit in most cases
  • Added run-as-root message
  • Fixed airmon test
  • [#10] Using codecov badge
  • [#10] Migrating to codecov

Metadata

Release files for pyrcrack 1.2.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyrcrack 1.2.6
File Size Uploaded Provenance Actions
pyrcrack-1.2.6.tar.gz 67.4 kB Without provenance Details for pyrcrack-1.2.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for pyrcrack 1.2.6
File Interpreter ABI Platform Actions
pyrcrack-1.2.6-py3-none-any.whl Python 3 none any Details for pyrcrack-1.2.6-py3-none-any.whl

Total release size: 85.1 kB

Release files / pyrcrack-1.2.6.tar.gz

Download URL pyrcrack-1.2.6.tar.gz
Size 67.4 kB
Tags Source
SHA-256 checksum
How to use checksums
cd7c816134a99c3c8d78b67692b53c226d5bf7cb666506005b3b3445f167a9de
BLAKE2b-256 checksum
How to use checksums
3d6e803aa27c2da5c2f87d1314cfc256f8382f90a73e35cc422c5b3c505a3291
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.16

Release files / pyrcrack-1.2.6-py3-none-any.whl

Download URL pyrcrack-1.2.6-py3-none-any.whl
Size 17.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ca534b77272358bfdb273cdd069db206a998957bffe147dbc4d24b6472766263
BLAKE2b-256 checksum
How to use checksums
a2103c0f614c1f35915d1500a551d48d677f340a1c14ee75647c3ee3d4548a7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.16

Security for pyrcrack 1.2.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page