Skip to content

Repository files navigation

LANsight

A desktop network scanner for Linux, Windows and macOS. Finds the devices on your network, scans their ports, identifies what's running and flags security problems.

No nmap, no native modules to compile.

LANsight

⚠️ Scan only networks you are allowed to scan

LANsight is an active scanner — it sends ICMP echoes, opens TCP connections and sends UDP probes to every address in the range you give it. Scanning networks without permission is illegal in many countries. Only scan networks you own, administer, or have written permission to test. You are responsible for how you use this tool.

Install

Requires Node.js 20+.

git clone https://github.com/dendycodes/lansight.git
cd lansight
npm install
npm run dev

npm install also downloads a static ffmpeg (~80 MB) into vendor/ — that's the decoder for the camera viewer.

Prebuilt installers are on Releases.

Windows and macOS will warn that the app is unrecognised. The builds aren't code-signed, so Windows SmartScreen shows "Windows protected your PC" — click More info → Run anyway. On macOS, right-click the app and choose Open. Signing certificates cost money every year and this project doesn't have one. Build from source if you'd rather not trust the binaries.

Features

  • Finds devices four ways — ARP, ICMP, TCP connect and UDP probes — so it still sees hosts that block ping.
  • Scans the top 100, top 1000 or all 65,535 ports, or a custom range like 1-1024,3389,8000-8100. Five timing profiles, with rate control that backs off when the link starts dropping probes.
  • Identifies services from banners, HTTP headers and TLS certificates. Vendor names come from a bundled IEEE database (~40,000 prefixes).
  • Flags security problems — Telnet, exposed SMB/RDP/VNC, unauthenticated Redis/MongoDB/ Elasticsearch, SNMP with the default community string, expired and self-signed certificates — with a fix for each one.
  • Views IP cameras: enter the credentials and the RTSP stream plays in the app.
  • Blocks a device by walking you through your router's MAC filter.
  • Saves every scan, diffs it against the last scan of the same target, and exports to HTML, Markdown, CSV or JSON.

Security findings, each with a fix

LANsight never authenticates, never tries a credential and never sends an exploit — it reports what's exposed, nothing more. There's no ARP spoofing or deauth either; the block flow never sends a packet to the device being blocked.

Device detail, with the camera stream playing in-app

How it works

The scan engine runs in a worker thread, so Stop is instant however hard a scan is running. A cancelled scan keeps what it found and is saved like any other.

Port scanning uses full TCP connect handshakes rather than raw SYN packets. Raw sockets would need root and a native packet-crafting module; the trade-off is that connect scans are more visible in the target's logs.

The engine (src/main/engine/) imports nothing from Electron, so it can also be run headlessly.

Building installers

npm run dist:linux    # AppImage + .deb
npm run dist:win      # NSIS installer + portable .exe
npm run dist:mac      # .dmg

Artifacts land in release/. Building for Windows from Linux or macOS needs Wine — run npm run dist:win:docker to do it in a container instead. Builds are unsigned; set CSC_LINK and CSC_KEY_PASSWORD if you have a certificate.

If Electron won't start in dev with a sandbox error, use npm run dev:no-sandbox.

Contributing

Contributions are welcome — new risk rules and service fingerprints especially. See CONTRIBUTING.md. For a vulnerability in LANsight itself, see SECURITY.md.

Licence

MIT © dendycodes

The bundled MAC vendor database is derived from the IEEE's public OUI registry.

About

Desktop network scanner for Linux, Windows and macOS. Finds the devices on your network, scans their ports, identifies what's running and flags security problems.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages