Why does TW install automatic Broadcom FW installer?

Hi!

Have a Dell Precision 7500 with only the built-in GB-LAN card, no wifi of any kind, actually I avoid wifi where ever possible.

In late December 2016 I installed TW (snapshot 19-12-2016). On every boot the machine was blocked from reaching two IPs and downloading some stuff from there via curl by my IDS/IPS in the perimeter router (of note: before any user logs in).

Lately I had some time to track down the culprit script:

It’s a Broadcom FW loader (bm43 in zypper) and a Broadcom FW wrapper

Why does TW install by DEFAULT such intrusive stuff, although I have no wifi card, never had and never will have?

In my older TW installations I don’t see any traffic of that kind.

Why? Easy: because the package is part of the installed patterns. Goal is to have an install that will work with most/all hardware. If you decide you do want WiFi and you buy some USB device, don’t you want it to work without you having to go through the mess of finding out what is needed ?

Could live with installing a driver with new hardware. Especially with wifi, which is a gross security issue in general. Any guaranty that there is no wifi chip onboard (mobo or LAN card or graphics card) in any given computer?

Why has this not been part in TW before 19-12-2016? Cause nobody needs/wants to download some strange stuff from Hungary (78.24.191.177) or the USA (173.254.28.119) on EVERY boot?

TW changes all the time. Unmaintained or outdated packages disappear, new ones appear. The “Why” doesn’t matter, it’s a choice the devs make to create good releases.
And, without proper output instead of “download strange stuff” nobody will be able to say something decent.

Re. the firmware package: uninstall and lock, done.

The “WHY” is here the key question.

Gave you the IPs the scripts try to contact and download stuff via curl. Not going to disable my IDP/IPS to see which trash is beeing downloaded :wink:

Have a wireshark of the requests, if anybody is interested. Or you simply do a wireshark of your TW/opensuse while booting (before login).

The two packages I uninstalled and banned are:

b43-fwcutter

pullin-bcm43xx-firmware

That ended the strange traffic.

Isn’t it obvious?
To help (especially inexperienced) users to get their Broadcom WiFi interfaces working.

This is the submit request of the package to Factory:

(so it actually was there before 19-12-2016 already…)

this can make it easier for users to get their broadcom WLAN working
without finding+reading+understanding+executing the relevant docs

And it has been done because of this bug report:
https://bugzilla.opensuse.org/show_bug.cgi?id=904025

Btw, it will only download the firmware once, not on every boot.
But if you block the download, it will obviously try again on next boot.

The two packages I uninstalled and banned are:

b43-fwcutter

pullin-bcm43xx-firmware

That ended the strange traffic.

The first one contains only the tools to download/install the firmware, the second one has the service that actually downloads it automatically. The service should only get activated if you actually have a Broadcom wireless device.

The IP’s represent mirrors that are visited to see if a newer bcm43xx firmware version is available. But … none of my TW machines has the package installed, never uninstalled them … so they must have been pulled in by some other package. Question is how that happened.

I had a look into the logs and the packages were installed with the initial install. I never choose something related to “wifi” from any options menus during install:

From /var/log/zypper/history:


2016-12-25 19:23:52|command|root@install|'y2base' 'installation' '("initial")' 'qt' '--noborder' '--auto-fonts' '--fullscreen'|
....
2016-12-25 19:37:00|install|b43-fwcutter|019-3.5|x86_64||openSUSE-20161219-0|8ebddc42e93e3ef73bd5f6b73f1d2dac3bdb8953|
...

It may get installed automatically if a supported hardware is detected.
If you don’t have one, I have no idea why it got installed.
Feel free to file a bug report.

FWIW, the package is included in Leap 42.2 too (it got introduced in 42.1), and it didn’t get installed here either.

That’s my nightmare: Is there a wifi device inside my machine? I NEVER had one attached (no card, no USB-stick). 100% guarantee…

Well, ask “lspci”…

If the kernel detects it it will be listed there (unless it’s connected via usb), and if not it will not load the driver (or firmware) anyway so it would be inoperative even if it’s there.

And pullin-bcm43xx-firmware does run “lspci -nn|grep -q -i broadcom” to check whether to activate the service.

Please show output of

sudo lspci

and

lsusb

If a wifi module is on the board it should show up.

Hi again!

 sudo lspci
00:00.0 Host bridge: Intel Corporation 5520 I/O Hub to ESI Port (rev 22)
00:01.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 1 (rev 22)
00:03.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 3 (rev 22)
00:07.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 7 (rev 22)
00:14.0 PIC: Intel Corporation 7500/5520/5500/X58 I/O Hub System Management Registers (rev 22)
00:14.1 PIC: Intel Corporation 7500/5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers (rev 22)
00:14.2 PIC: Intel Corporation 7500/5520/5500/X58 I/O Hub Control Status and RAS Registers (rev 22)
00:1a.0 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4
00:1a.1 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5
00:1a.2 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #6
00:1a.7 USB controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2
00:1c.0 PCI bridge: Intel Corporation 82801JI (ICH10 Family) PCI Express Root Port 1
00:1c.5 PCI bridge: Intel Corporation 82801JI (ICH10 Family) PCI Express Root Port 6
00:1d.0 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1
00:1d.1 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2
00:1d.2 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3
00:1d.7 USB controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90)
00:1f.0 ISA bridge: Intel Corporation 82801JIR (ICH10R) LPC Interface Controller
00:1f.2 SATA controller: Intel Corporation 82801JI (ICH10 Family) SATA AHCI Controller
00:1f.3 SMBus: Intel Corporation 82801JI (ICH10 Family) SMBus Controller
01:00.0 PCI bridge: Pericom Semiconductor PCI Express to PCI-XPI7C9X130 PCI-X Bridge (rev 04)
02:00.0 Multimedia audio controller: Creative Labs EMU10k2/CA0100/CA0102/CA10200 [Sound Blaster Audigy Series] (rev 04)
02:00.2 FireWire (IEEE 1394): Creative Labs SB Audigy FireWire Port (rev 04)
03:00.0 VGA compatible controller: NVIDIA Corporation G94GL [Quadro FX 1800] (rev a1)
04:00.0 Multimedia controller: Digital Devices GmbH Octopus DVB Adapter
05:00.0 SCSI storage controller: LSI Logic / Symbios Logic SAS1068E PCI-Express Fusion-MPT SAS (rev 08)
06:00.0 Ethernet controller: Broadcom Limited NetXtreme BCM5761 Gigabit Ethernet PCIe (rev 10)
07:0a.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx]
20:03.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 3 (rev 22)
20:07.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 7 (rev 22)
20:09.0 PCI bridge: Intel Corporation 7500/5520/5500/X58 I/O Hub PCI Express Root Port 9 (rev 22)
20:14.0 PIC: Intel Corporation 7500/5520/5500/X58 I/O Hub System Management Registers (rev 22)
20:14.1 PIC: Intel Corporation 7500/5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers (rev 22)
20:14.2 PIC: Intel Corporation 7500/5520/5500/X58 I/O Hub Control Status and RAS Registers (rev 22)
3e:00.0 Host bridge: Intel Corporation Xeon 5600 Series QuickPath Architecture Generic Non-core Registers (rev 02)
3e:00.1 Host bridge: Intel Corporation Xeon 5600 Series QuickPath Architecture System Address Decoder (rev 02)
3e:02.0 Host bridge: Intel Corporation Xeon 5600 Series QPI Link 0 (rev 02)
3e:02.1 Host bridge: Intel Corporation Xeon 5600 Series QPI Physical 0 (rev 02)
3e:02.2 Host bridge: Intel Corporation Xeon 5600 Series Mirror Port Link 0 (rev 02)
3e:02.3 Host bridge: Intel Corporation Xeon 5600 Series Mirror Port Link 1 (rev 02)
3e:02.4 Host bridge: Intel Corporation Xeon 5600 Series QPI Link 1 (rev 02)
3e:02.5 Host bridge: Intel Corporation Xeon 5600 Series QPI Physical 1 (rev 02)
3e:03.0 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Registers (rev 02)
3e:03.1 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Target Address Decoder (rev 02)
3e:03.2 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller RAS Registers (rev 02)
3e:03.4 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Test Registers (rev 02)
3e:04.0 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Control (rev 02)
3e:04.1 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Address (rev 02)
3e:04.2 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Rank (rev 02)
3e:04.3 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Thermal Control (rev 02)
3e:05.0 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Control (rev 02)
3e:05.1 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Address (rev 02)
3e:05.2 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Rank (rev 02)
3e:05.3 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Thermal Control (rev 02)
3e:06.0 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Control (rev 02)
3e:06.1 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Address (rev 02)
3e:06.2 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Rank (rev 02)
3e:06.3 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Thermal Control (rev 02)
3f:00.0 Host bridge: Intel Corporation Xeon 5600 Series QuickPath Architecture Generic Non-core Registers (rev 02)
3f:00.1 Host bridge: Intel Corporation Xeon 5600 Series QuickPath Architecture System Address Decoder (rev 02)
3f:02.0 Host bridge: Intel Corporation Xeon 5600 Series QPI Link 0 (rev 02)
3f:02.1 Host bridge: Intel Corporation Xeon 5600 Series QPI Physical 0 (rev 02)
3f:02.2 Host bridge: Intel Corporation Xeon 5600 Series Mirror Port Link 0 (rev 02)
3f:02.3 Host bridge: Intel Corporation Xeon 5600 Series Mirror Port Link 1 (rev 02)
3f:02.4 Host bridge: Intel Corporation Xeon 5600 Series QPI Link 1 (rev 02)
3f:02.5 Host bridge: Intel Corporation Xeon 5600 Series QPI Physical 1 (rev 02)
3f:03.0 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Registers (rev 02)
3f:03.1 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Target Address Decoder (rev 02)
3f:03.2 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller RAS Registers (rev 02)
3f:03.4 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Test Registers (rev 02)
3f:04.0 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Control (rev 02)
3f:04.1 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Address (rev 02)
3f:04.2 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Rank (rev 02)
3f:04.3 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 0 Thermal Control (rev 02)
3f:05.0 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Control (rev 02)
3f:05.1 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Address (rev 02)
3f:05.2 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Rank (rev 02)
3f:05.3 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 1 Thermal Control (rev 02)
3f:06.0 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Control (rev 02)
3f:06.1 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Address (rev 02)
3f:06.2 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Rank (rev 02)
3f:06.3 Host bridge: Intel Corporation Xeon 5600 Series Integrated Memory Controller Channel 2 Thermal Control (rev 02)

lsusb
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub                                                                
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub                                                                      
Bus 007 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply                                              
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub                                                                       
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub                                                                      
Bus 001 Device 004: ID 047d:2048 Kensington Orbit Trackball with Scroll Ring                                                          
Bus 001 Device 003: ID 046a:0023 Cherry GmbH CyMotion Master Linux Keyboard G230                                                      
Bus 001 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub                                                                               
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub                                                                              
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub                                                                              
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub                                                                              
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub    

The b43* firmware is for Broadcom devices. My guess is that the presence of a Broadcom networking device is enough to make those packages recommended, that they got installed without you noticing. I know Broadcom have changed their policy re. distribution of firmware, maybe that’s the explanation for the change in TW. But it’s educated guessing.
Let’s leave it here, it’s solved AFAIK. For answers to the Why questions you’d have to consult the devs/packagers.

Well, that will match “lspci -nn|grep -q -i broadcom”, so that explains why the download service is activated.
Grepping for “broadcom” is obviously a bit too broad (no pun intended)…

I don’t know what exactly causes it to get installed, but it might be a similar “problem”.

On Fri 21 Jul 2017 09:16:01 AM CDT, suse rasputin wrote:

Hi!

Have a Dell Precision 7500 with only the built-in GB-LAN card, no wifi
of any kind, actually I avoid wifi where ever possible.

In late December 2016 I installed TW (snapshot 19-12-2016). On every
boot the machine was blocked from reaching two IPs and downloading some
stuff from there via curl by my IDS/IPS in the perimeter router (of
note: before any user logs in).

Lately I had some time to track down the culprit script:

It’s a Broadcom FW loader (bm43 in zypper) and a Broadcom FW wrapper

Why does TW install by DEFAULT such intrusive stuff, although I have no
wifi card, never had and never will have?

In my older TW installations I don’t see any traffic of that kind.

Hi
It runs as a service, so just disable…


systemctl status pullin-bcm43xx-firmware.service
systemctl stop pullin-bcm43xx-firmware.service
systemctl disable pullin-bcm43xx-firmware.service


Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
openSUSE Leap 42.2|GNOME 3.20.2|4.4.74-18.20-default
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below… Thanks!

Thanks for reply, I uninstalled and tabooed both packages. As I said: NEVER wifi… :wink: