Skip to main content

See which processes make remote network connections

Project description

picosnitch

  • Monitors your system to notify you whenever a program makes its first remote network connection (while picosnitch has been running)
  • Or when the sha256 changes for one of these programs
  • Logs and config are stored in ~/.config/picosnitch/snitch.json
  • Inspired by programs such as:
    • GlassWire
    • Little Snitch
    • OpenSnitch
    • simplewall
    • tinysnitch
  • picosnitch only provides monitoring and notification capabilities, see the above programs for features such as a GUI, bandwidth tracking, firewall configuration, or filtering

getting started

linux

  • install from PyPI with
    pip3 install picosnitch[full] --upgrade --user
  • depends on the BPF Compiler Collection
    sudo apt install python3-bpfcc
  • run daemon with
    picosnitch start

windows

  • no longer supported for now, use a version <= v0.2.5

building from source

  • install from source using python 3 with
    python setup.py install --user
  • required dependencies (installed automatically from PyPI on setup if not already present)
    filelock plyer psutil python-daemon vt-py
  • additional dependency (requires manual installation)
    bcc
  • picosnitch.py can also be run directly

configuration

  • stored in ~/.config/picosnitch/snitch.json
  • terminate picosnitch if it is currently running before making any edits otherwise your changes will be lost
{
  "Config": {
    "Log command lines": True, # Log command line args for each executable
    "Log remote address": True, # Log remote addresses for each executable
    "Only log connections": True, # Only log processes that make remote network connections
    # otherwise log every new process from exec()
    "Remote address unlog": [80, "chrome", "firefox"], # List of process names (str) or ports (int)
    # will omit connections that match any of these from the log of remote addresses to avoid clutter
    # the process and executable will still be logged if it has not been already
    "VT API key": "", # API key for VirusTotal, leave blank otherwise
    "VT file upload": False, # Only hashes are uploaded by default
    "VT limit request": 15 # Number of seconds between requests
  },
  "Latest Entries": [], # Log of entries by time
  "Names": {}, # Log of processes by name containing respective executable(s)
  "Processes": {}, # Log of processes by executable containing:
  # cmdlines, days seen, first seen, last seen, name, ports, remote addresses, results
  # some cmdlines are consolidated using * as a wildcard
  "Remote Addresses": {} # Log of remote addresses containing respective executable(s)
}

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

picosnitch-0.4.0.tar.gz (27.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

picosnitch-0.4.0-py3-none-any.whl (27.5 kB view details)

Uploaded Python 3

File details

Details for the file picosnitch-0.4.0.tar.gz.

File metadata

  • Download URL: picosnitch-0.4.0.tar.gz
  • Upload date:
  • Size: 27.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for picosnitch-0.4.0.tar.gz
Algorithm Hash digest
SHA256 f6e39a77339ee2f75ecbba13cfc75c59312d13a6cc51248989793dfd9ddab6be
MD5 590d720812378a429649cf829dfe1a59
BLAKE2b-256 076188a483e7564359dcee091b5d051bab1547c31ca86cb49ded50b7d7fdd29d

See more details on using hashes here.

File details

Details for the file picosnitch-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: picosnitch-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 27.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for picosnitch-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6ee3cf673ef1674b028b24e57bf48db0620350c2ea3c7b6e95d0ece679b56994
MD5 2db88144edcd42c896143b4807a6e735
BLAKE2b-256 2683a8fb6a8cdf6ac54c7b24b206e446465dbd0a002effc0bf2e601580904128

See more details on using hashes here.

Supported by

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