LAN port scan forbidder

Forbid non-LAN web to access LAN

Co to jest LAN port scan forbidder?

LAN port scan forbidder to rozszerzenie Chrome opracowane przez https://garywill.github.io, a jego główną funkcją jest „Forbid non-LAN web to access LAN”.

Zrzuty ekranu rozszerzenia

screenshot

Pobierz plik CRX rozszerzenia LAN port scan forbidder

Pobierz pliki rozszerzeń LAN port scan forbidder w formacie crx, zainstaluj ręcznie rozszerzenia Chrome w przeglądarce lub udostępnij pliki crx znajomym, aby łatwo zainstalować rozszerzenia Chrome.

Instrukcja Użytkowania Rozszerzenia

                        Forbid untrusted web to scan localhost or LAN. 

## Source Code Repo
https://github.com/garywill/LAN-port-scan-forbidder

## What

Webs can try to fetch `127.0.0.1:xxxx` or `192.168.Y.Z:xxxx` to scan your open ports in LAN.

Although browsers have cross-domain protections, webs can't read response contents, **but** can still see the connection succeeds or fails.

There're already reports that some websites using that as tracking fingerprint.

> A web for testing: http://samy.pl/webscan/

## So

Forbid any website behaviors trying to connect to your LAN or localhost, if user is visiting the website via their domains or public IP addresses. (Read the source code `background.js` to see the logic)

> Using JS library [whitequark/ipaddr.js](https://github.com/whitequark/ipaddr.js) (MIT License) v2.0.0 to judge IP range.


### Notification

User can enable notification. When untrusted web tries to access private network and get blocked, will show up notification. 

### Fallback operation

If user find a web broken, user can temporary set this addon disabled via toolbar button for:

- this one tab
- this one tab and new tabs opened by this tab
- this one window (Firefox only)
- globally

(above can be set as keyboard shortcuts)

there's showy toolbar button badge indicating disabling status.

## Cases when web LAN scan is properly used

Not all LAN-port-scan are evil.

- Some manufacturers provide web for user's browser to scan LAN for their product that need updating.

- Some softwares use `127.0.0.1` communication to interact between native program and web.

## Disclaimer

This open souce addon comes with no warranty. Use on you own risk!                    

Podstawowe informacje o rozszerzeniu

Nazwa LAN port scan forbidder LAN port scan forbidder
ID lapppchpconamefemlnjdebbcpbncafl
Oficjalny URL https://chromewebstore.google.com/detail/lan-port-scan-forbidder/lapppchpconamefemlnjdebbcpbncafl
Opis Forbid non-LAN web to access LAN
Rozmiar pliku 35.41 KB
Liczba instalacji 310
Aktualna Wersja 0.6.1
Ostatnia Aktualizacja 2023-11-09
Data Publikacji 2021-12-25
Deweloper https://garywill.github.io
E-mail [email protected]
Typ Płatności free
Strona Rozszerzenia https://github.com/garywill/LAN-port-scan-forbidder
Adres URL Strony Pomocy https://github.com/garywill/LAN-port-scan-forbidder
Adres URL Strony Polityki Prywatności https://github.com/garywill/garywill/blob/privacy_policy/README.md
Obsługiwane Języki en
manifest.json
{
    "update_url": "https:\/\/clients2.google.com\/service\/update2\/crx",
    "name": "LAN port scan forbidder",
    "description": "Forbid non-LAN web to access LAN",
    "manifest_version": 2,
    "version": "0.6.1",
    "homepage_url": "https:\/\/github.com\/garywill\/LAN-port-scan-forbidder\/",
    "author": {
        "name": "Garywill",
        "url": "https:\/\/garywill.github.io"
    },
    "permissions": [
        "webRequest",
        "webRequestBlocking",
        "*:\/\/*\/*",
        "ws:\/\/*\/*",
        "wss:\/\/*\/*",
        "ftp:\/\/*\/*",
        "contextMenus",
        "storage"
    ],
    "optional_permissions": [
        "notifications"
    ],
    "icons": {
        "128": "icon.png"
    },
    "background": {
        "page": "background.html"
    },
    "browser_action": {
        "default_icon": "icon_gray.png",
        "default_title": "LAN port scan forbidder"
    },
    "commands": {
        "_execute_browser_action": {
            "description": "Click toolbar button"
        },
        "toggle_t": {
            "description": "Toggle for one tab"
        },
        "toggle_h": {
            "description": "Toggle for one tab and new tabs opened by it"
        },
        "toggle_global": {
            "description": "Toggle globally enable\/disable"
        }
    },
    "options_ui": {
        "page": "options.html"
    }
}