explaingit

infinition/bjorn

5,933PythonAudience · ops devopsComplexity · 4/5LicenseSetup · hard

TLDR

A Python tool that turns a Raspberry Pi into a portable network security scanner, it automatically finds devices, checks open ports, and tests for weak passwords, showing live results on a tiny screen.

Mindmap

mindmap
  root((bjorn))
    What it does
      Network scanning
      Port discovery
      Credential testing
      File collection
    Tech stack
      Python
      Raspberry Pi
      e-Paper display
      Web interface
    Use cases
      Security audits
      Network mapping
      Penetration testing
    Audience
      Security researchers
      Network admins
      Ethical hackers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Deploy a Raspberry Pi on a local network to automatically map all connected devices and their open ports

USE CASE 2

Test network services like SSH, FTP, and SMB for weak or default passwords during an authorized security audit

USE CASE 3

Monitor scan progress in real time from a browser on the same network using the built-in web interface

USE CASE 4

Build a compact, battery-friendly portable security scanner using a Raspberry Pi and a small e-Paper display

Tech stack

PythonRaspberry Pie-Paper HAT

Getting it running

Difficulty · hard Time to first run · 1day+

Requires a Raspberry Pi with a 2.13-inch e-Paper HAT, hardware assembly needed before software setup.

Use freely for any purpose, including commercial use, with no restrictions beyond keeping the copyright notice.

In plain English

Bjorn is a Python tool that runs on a Raspberry Pi, a small inexpensive computer the size of a credit card, and turns it into a portable network security scanner. The device is paired with a 2.13-inch e-Paper HAT, which is a small add-on screen that attaches to the Raspberry Pi's pins and displays status information without drawing much power. Together they form a compact, self-contained unit that can be carried around and deployed on a local network. Once running, Bjorn automatically scans the network to find other connected devices, checks which ports are open on those devices, and looks for known security weaknesses. It can attempt to log into services such as SSH, FTP, SMB, and database servers by trying common username and password combinations. If it gets in, it can copy files and data it finds there. The README describes these capabilities as being for educational use and authorized security testing only. The tool has two interfaces: the small e-Paper screen on the device itself, which shows live indicators as scanning progresses, and a web interface accessible from a browser on the same network. Both give real-time feedback without requiring someone to watch a terminal. Bjorn is described as autonomous, meaning it works through the network on its own after being deployed, without needing ongoing input. Installation is handled through a shell script that downloads and sets up all required software automatically. The project also links to a companion tool called Bjorn Detector that helps find the device's IP address on the network after setup. Bjorn is open source under the MIT license and has a Reddit community and Discord server for users and contributors.

Copy-paste prompts

Prompt 1
I've installed Bjorn on a Raspberry Pi. Walk me through what happens after I power it on, how does it discover devices and what does each phase of scanning do?
Prompt 2
Show me how to configure Bjorn to scan only a specific IP range on my network and limit which services it tests for weak credentials.
Prompt 3
I want to add a custom credential list to Bjorn for testing SSH logins. Where do I put the wordlist file and how do I configure it to use it?
Prompt 4
Explain what the e-Paper display shows during a Bjorn scan, what do the different indicators and icons mean?
Prompt 5
How does Bjorn's web interface work? Show me how to access it from a browser and what information it displays about the current scan.
Open on GitHub → Explain another repo

← infinition on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.