Re: 8139too link beat status and possible security hole through MIIioctls()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 1 Nov 2002, Lennart Poettering wrote:

> In contrast to some other Linux network drivers (notably eepro100)
> your 8139too 0.9.26 doesn't allow access to the link beat status when

A few of my drivers (epic100) put the chip into power saving mode when
the interface is down, but they all allow reading the status at any
time.  With the epic100 driver, the chip is brought out of power saving
mode with the first ioctl() call.

It's never proper for a general purpose driver to turn off link beat
without a specific manual configuration.  It is too easy to end up in a
situation where neither side will generate link beat because it thinks
its link partner is down.

> Another related issue: Currently access to the link beat status via
> SIOETHTOOL and SIOCGMII* is not allowed for normal users.

The proper semantics are for the reads to be generally allowed, and
writes to require capable(CAP_NET_ADMIN), which is translated to suser()
for older kernels.

> is even a certain inconsistency and security issue: the older
> SIOGDEVPRIVATE ioctls (including those for modifying MII registers)
> work for normal users, since the security checks in net/core/dev.c
> only work for SIOCETHTOOL and SIOCGMII*, not for SIODEVPRIVATE; they
> are passed untested to the specific driver, which doesn't check for
> security any further. (at least 8139too doesn't do so)

Check my unmodified drivers: they handle the security.  That's pretty
much the best way to handle the issue, since it's possible some chip
might 

-- 
Donald Becker				becker@scyld.com
Scyld Computing Corporation		http://www.scyld.com
410 Severn Ave. Suite 210		Scyld Beowulf cluster system
Annapolis MD 21403			410-990-9993

-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux