Skip to main content

A client to gather vulnerability-related information from the Fediverse.

Project description

FediVuln

A client to gather vulnerability-related information from the Fediverse.

Usage

Installation

pipx is an easy way to install and run Python applications in isolated environments. It's easy to install.

$ pipx install FediVuln
$ export FEDIVULN_CONFIG=~/.FediVuln/conf.py

The configuration for FediVuln should be defined in a Python file (e.g., ~/.FediVuln/conf.py). You must then set an environment variable (FEDIVULN_CONFIG) with the full path to this file.

You can have a look at this example of configuration.

Register your application

$ FediVuln-Register

This script uses OAuth in order to retrieve the access token. This is achieved in several steps.

  • Register the application with Mastodon instance, a including all necessary scopes
  • Instantiate Mastodon client with client credentials
  • Log in - Generate authorization URL with the exact same scopes
  • Once the user authorizes, prompt for the authorization code
  • Use the authorization code to retrieve the access token, with the same scopes

You only have to execute it once.

Streaming

Usage

usage: FediVuln-Stream [-h] [--user] [--public] [--push-sighting] [--push-status]

Allows access to the streaming API.

options:
  -h, --help       show this help message and exit
  --user           Streams events that are relevant to the authorized user, i.e. home timeline and notifications.
  --public         Streams public events.
  --push-sighting  Push the sightings to Vulnerability Lookup.
  --push-status    Push the status to Vulnerability Lookup.

Examples

Streams events that are relevant to the authorized user, i.e. home timeline and notifications:

$ FediVuln-Stream --user --push-sighting

If you want to get the stream of public events (local server + connected servers):

$ FediVuln-Stream --public --push-sighting

Using the --push-sighting argument, detected vulnerability IDs will be recorded in Vulnerability Lookup as sightings.

With --push-status argument, the full JSON status object will be sent to the Vulnerability Lookup instance and stored in the kvrocks database.

Search

Usage

usage: FediVuln-Search [-h] --query QUERY

Allows you to search for users, tags and, when enabled, full text, by default within your own posts and those you have interacted with.

options:
  -h, --help     show this help message and exit
  --query QUERY  Query of the search.

Publishing

WIP.

$ python publish.py

License

FediVuln is licensed under GNU General Public License version 3

Copyright (c) 2024 Computer Incident Response Center Luxembourg (CIRCL)
Copyright (C) 2024 Cédric Bonhomme - https://github.com/cedricbonhomme

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

fedivuln-0.3.0.tar.gz (18.1 kB view details)

Uploaded Source

Built Distribution

fedivuln-0.3.0-py3-none-any.whl (34.0 kB view details)

Uploaded Python 3

File details

Details for the file fedivuln-0.3.0.tar.gz.

File metadata

  • Download URL: fedivuln-0.3.0.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.11.4 Linux/6.1.0-26-amd64

File hashes

Hashes for fedivuln-0.3.0.tar.gz
Algorithm Hash digest
SHA256 d119fa382d33e4b4b5d1fa7944f191d8072c70c60e617f42c318951b789d784e
MD5 b14f2b53e22ec251cbbf749feec87bdd
BLAKE2b-256 dfc2953e3b1a0254ecaff2c113534fbba7f9a7bcaefa77778e9e6adc7b54ebfd

See more details on using hashes here.

File details

Details for the file fedivuln-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: fedivuln-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 34.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.11.4 Linux/6.1.0-26-amd64

File hashes

Hashes for fedivuln-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a8a26ea418c260085146bc3790a0c1ebd4d0521bcb09c231c78ab36f0559add7
MD5 52d2f6982c1e9b832a174f4215c3d531
BLAKE2b-256 b604f055aad227cf2577c9eb457cb663bc53bc6fff34caccff884e7a20b32f89

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