V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dLvsYgJ8fiP8TGYU
V2EX  ›  信息安全

VLAN 隔离 防止恶意设备嗅探局域网内其他设备 的有效性和局限性?

  •  
  •   dLvsYgJ8fiP8TGYU · 2021-04-25 16:19:02 +08:00 · 4369 次点击
    这是一个创建于 1300 天前的主题,其中的信息可能已经有所发展或是发生改变。

    鉴于近日在本站看到一篇关于某智能设备厂商涉嫌未经授权擅自扫描用户局域网,并上传包含其他设备名称+MAC 地址+接入 /离开本地网络时间等隐私数据的帖子,遂在家里的路由器上配置了 VLAN 进行隔离实验,配置如下:

    |             | LAN           | LAN_100       |
    |-------------|---------------|---------------|
    | VLAN_ID     | 1             | 100           |
    | Gateway     | 192.168.0.1   | 10.100.0.1    |
    | DNS         | 192.168.0.1   | 10.100.0.1    |
    | Subnet Mask | 255.255.255.0 | 255.255.255.0 |
    

    LAN 是家里大部分设备所在的网段; LAN_100 则计划用于特定“不受信任”的设备(比如存在非法嗅探嫌疑的智能硬件)

    在接入 LAN_100 网段的一台电脑上通过 arp -a 命令,只能查询到网关和在此网段的设备 IP 地址和 MAC 地址,无法查询到接入 LAN 网段的其他设备。

    在接入 LAN 网段的一台电脑上执行同样命令,也只能查询到网关和在此网段的设备。

    目前为止一切都很合理,VLAN 隔离似乎起到了作用。

    但是当我在浏览器输入位于 LAN 网段的一台 NAS 的 IP 地址 192.168.0.88,可以显示管理登录界面,该地址也可以跨 VLAN ping 通

    进一步测试发现,位于 LAN_100 网段上的一台智能电视,依然可以连接到 NAS 上的影音服务器

    结论似乎是:跨 VLAN 无法扫描(比如 ARP ),但是只要你手动输入了另一个网段的 IP 地址,依然可以连通?

    那么问题来了:

    • 除了 ARP 还有没有其他方式,可以嗅探到局域网内其他设备的 设备名称+MAC 地址?如何防范?
    • 路由器 VLAN 设置选项里面可以禁止来自特定 VLAN 的设备访问路由器管理界面 192.168.0.1,经测试有效。这是如何实现的?能否推广到禁止从指定 VLAN 访问任意 IP
    • 在不使用软路由防火墙的前提下,是否可以仅使用传统路由器自带的 [策略路由] [静态路由] 等功能实现禁止跨 VLAN / 跨网段的连接
    10 条回复    2021-04-26 17:56:02 +08:00
    swulling
        1
    swulling  
       2021-04-25 16:22:53 +08:00
    能访问通是路由器上加了路由表,你可以修改路由表关掉就行了。
    Jirajine
        2
    Jirajine  
       2021-04-25 16:37:00 +08:00   ❤️ 1
    你怕不是完全没理解 vlan 。
    vlan 是在二层划分,不同 vlan 之间无法二层直接互通,需要通讯只能通过三层路由。
    对于那些无需访问局域网的设备,直接给一个 /31 的点对点连接,即除了访问网关和通过网关访问互联网以外,看不到任何其他设备。
    而不同 vlan 之间通过路由连通了,那你就操作路由表和防火墙就是了。划分 vlan 以后你的 nas 对它来说和 baidu 一样,相当于“外网”。
    jim9606
        3
    jim9606  
       2021-04-26 00:48:08 +08:00   ❤️ 1
    1. 通常是枚举 IP,例如你的例子中 DHCP 指派了 10.100.0.2/24,枚举 10.100.0.1-254,探测方法看你具体感兴趣的服务决定。另外 IPv6 ICMP 的 Neighbour Solication 也可以探测到部分主机,但难度比 IPv4 大很多,所以很少用。多数时候给个独立 IP 网段就行。

    2. 至少 OpenWRT 可以做到,在 INPUT 方向选择 REJECT 特定 interface(VLAN)或者特定源 IP 的包,其他路由看固件做得怎样,通常提供访客 wifi 的路由器固件都会拦截

    3. 同 2,这东西通常是防火墙实现而不是路由表实现
    ysc3839
        4
    ysc3839  
       2021-04-26 01:59:50 +08:00
    这些智能设备一般都是用 WiFi 连接的吧?那直接弄个访客网络就好了。
    suifengdang666
        5
    suifengdang666  
       2021-04-26 08:55:15 +08:00
    如果是 openwrt 之类的路由,直接新建一个网段单独给这些不受信任的设备,路由上用防火墙策略控制这个网段只能访问哪些 ip 就行了
    nbweb
        6
    nbweb  
       2021-04-26 10:56:34 +08:00
    @suifengdang666 openwrt 如何新建一个网段,谢谢。
    Greatshu
        7
    Greatshu  
       2021-04-26 12:32:05 +08:00 via Android
    用 pfsense,这些都是基本操作
    tankren
        8
    tankren  
       2021-04-26 13:44:58 +08:00
    VLAN 默认互通啊 企业级的路由或交换机有隔离功能
    一般需要在防火墙规则里面禁止掉 我用 pfsense IOT 设备的 VLAN 只能访问 WAN 限速 5M 晚上 9 点之后就断网
    justin03
        9
    justin03  
       2021-04-26 17:06:58 +08:00   ❤️ 1
    除了 ARP 还有没有其他方式,可以嗅探到局域网内其他设备的 设备名称+MAC 地址?如何防范?
    可以,任何合理的广播包都可以,在自己的子网里看到其他设备
    路由器 VLAN 设置选项里面可以禁止来自特定 VLAN 的设备访问路由器管理界面 192.168.0.1,经测试有效。这是如何实现的?能否推广到禁止从指定 VLAN 访问任意 IP
    可以,基于 VLAN 的 ACL
    在不使用软路由防火墙的前提下,是否可以仅使用传统路由器自带的 [策略路由] [静态路由] 等功能实现禁止跨 VLAN / 跨网段的连接
    20 年前的路由不行,现在的都可以。[策略路由] [静态路由]用词不准。路由器上有访问策略,不过是 lan 或者 vlan 都可以控制。
    ysc3839
        10
    ysc3839  
       2021-04-26 17:56:02 +08:00 via Android
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3381 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 10:40 · PVG 18:40 · LAX 02:40 · JFK 05:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.