Kali Linux Broadcom Wireless on Macbook

After setting up your Kali Linux USB Live Drive with persistence, there’s one final step that usually provides a major headache for Mac users, the Wifi. It took me many many hours of searching and trying different things and learning to come up with a concrete solution, like a detective piecing together the threads of information I could find.

One big drawback it seemed was that those who had managed to get things working weren’t able to put the WiFi into monitor mode, effectively making airodump-ng and other Wireless cracking/hacking tools useless, as you could not monitor and collect packets of data from the WiFi traffic.

Thankfully though I was able to find the solution for this as well.

This is confirmed as working 100% on my Macbook Pro (Mid 2014 model). The model you have of Macbook (or Mac Mini or macbook air etc) will determine exactly what broadcom chipset you have. You can find out what exact chipset you have by using the lspci command at the terminal window. You will get a list of all pci devices connected to your system. Look in the list to find your broadcom device. On my mid 2014 model Macbook Pro the device is BCM4360

hardware

STEP 1

  • First you need to boot up into your Kali Linux Live Drive with persistence turns on and configured correctly (otherwise you will need to do this procedure overtime you boot up if you don’t have persistence configured correctly). Also you are going to need internet access, so you will have to most probably plug in a thunderbolt Ethernet adapter so you can gain access online during this procedure.
  • If you run the ifconfig and ifconfig commands in your linux terminal you will see only your ethernet and loopback devices listed, no wireless Lan.
    before
  • In terminal run the following commands to update your Linux installation
    • sudo apt-get update
      update
    • apt-get install linux-headers-$(uname -r | sed ‘s,[^-]*-[^-]*-,,’) broadcom-sta-dkms
      broadcom
  • After the above two commands have run (they take a few minutes each to complete, as the updates need to be downloaded and installed) you will need to run the following commands to remove the possibly conflicting drivers which come with Debian.
    • mod probe -r b44 b43 b43legacy ssd brcmsmac
  • After this you are good to go with he following command
    • mod probe wl
  • Now if you run the ifconfig and iwconfig you should see the wireless card is now listed
    after
  • Open up the network settings of Kali Linux and you should find you are now able to connect to wireless networks. Once connected, disconnect your ethernet cable and run the following in terminal
    • ping google.com
  • If the ping returns are good then your wireless connecting is working!

STEP 2

  • That’s just the beginning, now you have this working but you will not be able to switch the wireless adapter into monitor mode when trying to perform any wireless cracking techniques. If you try putting the wlan0 device into monitor mode it fails like this.
    airmonFail
  • This was one of the most difficult parts to puzzle out but here is the correct working method. You will need to run this command EVERY TIME you reboot, I haven’t figured out yet how to make this persistent.
  • In terminal type the following :-
    • echo 1 | sudo tee /proc/brcm_monitor0
  • This will now create a new wireless interface called prism0 which you can see if you run the iwconfig command in terminal. It is the prism0 adapter that you will be using for your wireless attacks as it has monitor mode enabled.
    prism0
  • Now, there’s no need to run airmon-ng, the prism0 device is already your monitoring wireless lan. You can run airodump-ng to test that everything is working properly
    • airodump-ng prism0
      airodumpCapture

36 thoughts on “Kali Linux Broadcom Wireless on Macbook

  1. Thank you my friend it worked pretty well on my MacBook Air however after I upgraded the system and reboot I tried to reconnect to the Wi-Fi but didn’t work anymore …any solutions please

    Like

  2. Hi,

    First up, thanks for providing the tutorials on setting up a USB boot of Kali with persistence and with how to get a wi-if connection – very well explained.

    I think we are running on the same laptop – a MacBook Pro – mid 2014 with the same built in Broadcom network adapter looking at your screen shots above.

    Therefore I’m just wondering if you have the same problem with changing the MAC address and losing wi-if that I, and, through searching forums, others are having? And if so if you’ve found a workaround?

    The basic issue is that once the MAC address is changed from its permanent address to anything else Kali is no longer able to connect to the Internet via wi-if. Reconnecting to wi-fi can only be re-established via reverting back to the laptops permanent MAC address.

    Obviously I’ve tried all the usual bringing down the network manager and/or wlan0 before using Macchanger then bringing it back up – but that doesn’t work.

    Reading up on this it’s almost certainly related to the broadcom drivers, but as someone reletivley new to Kali / LInux I reached a point of not knowing what to do next – so was just wondering if you had any advice.

    Many thanks,

    Jay

    Like

  3. Is there anyway that I can download the packages separately on Mac and then install on Linux, such that I dont have the thunderbolt adapter. Please help me with this step.

    Like

  4. I’m very new to all this. When I try the “mod ….” commands to remove conflicting drivers, I get the error “bash: mod: command not found” How do I fix this? I tried skipping that step and proceeding, but when I do
    echo 1 | sudo tee /proc/brcm_monitor0
    I get tee: /proc/brcm_monitor0: No such file or directory
    I’d appreciate a response!
    Thank you!!!

    Like

  5. I get an error that no such file directory exists when I use the (echo 1 | sudo tee /proc/brcm_monitor0) command. I have a 2015 Macbook pro with BCM43602 chipset. Wifi was already working, but I can not put my internal card into monitor mode. Please respond back as soon as you get a chance as I can not find a fix on Google.

    Like

  6. modprobe wl module not found. some guidance would be much appreciated. My macbook pro contains the same BCM4360 broadcom wireless.

    Like

  7. Great tutorial. My compliments. The persistence setup was perfect and running smoothly on my Macbook Air (2015). Now I’m trying to install the updates. But after doing all the steps above I have to stop, because I’m getting the following error after I’ve entered mod probe -r b44 b43 b43legacy ssd brcmsmac. It says: bash: mod: command not found. I’ve tried to google it but there’s not that much of a solution. What are you recommending?

    Like

  8. Hi! I’ve been following your tutorials for about 3 days and I just got here to solve my wifi problem.

    When I try to execute the modprobe commands I get the following errors:

    FATAL: Module ssd not found.
    FATAL: Module wl not found.

    Thank you so much!

    Like

  9. Hey man,
    Its 3rd sleepless night of mine, in search for the below problem.

    This question has been arise on all the debian based linux forums, what ever I try, I am stuck at one particular point.

    Everything from works but this command “modprobe wl” gives Fatal error ‘wl’ not found.

    Like

  10. Very good tutorial but is there a way to get this without ethernet as my macbook doesn’t have an ethernet port and I don’t want to go out and buy a ethernet to usb adapter.

    Like

  11. hi
    i have a problem that when i enter “modprobe wl”,it return “modprobe: FATAL: Module wl not found.”

    macbook pro 15
    kali linux 2016.1

    Like

  12. This entry has helped me after several days of trying to figure out why my Kali LInux 2.0 would not recognise the wireless card. Thank you. Thank you. I will pass this on to others.

    Like

  13. Hi! I have the exact same controlles like you (BCM4360), but when i hit “modprobe wl” i get a “fatal error module wl not found in”. I have a MacBook Pro Retina 15′ mid2014.
    Plus, i followed the procedure to persistence mode but is not working for me. Anyway, activation of the wireless module is what i want more, if you can help me i will appreciate! thanks!

    Like

  14. Hey, I may have a new way of doing this without internet. On new kali Linux 2016.2 iso if you use a kali live USB to GUI install kali to another thumb drive (os install, not live- better imo), you have listed options to install network driver. There are tons listed. I have the same bcm4360 rev 03 chip and not sure if the listed ones on kali installer will work. The ones that may work are : brcmfmac fullmac, brcmsmac, brcmutil utilities. Others that probably don’t work according to your post are b43, b43legacy, b44, bnxt_en bcm573xx. So of these choices will any work or do I have to get a thunderbolt to ethernet adapter in order to get net connection and run the commands you listed?

    Like

    1. This guide does not work. When running the commands those drivers and packages are not found. Using kali rolling 2016.2. Apparently you cannot get wifi working on one of the most common wifi chips out there, rendering kali linux virtually useless. Fail @kali_linux

      Like

  15. Hello,
    as few others, i have an error after following commands: modprobe wl
    “modprobe: FATAL: Module wl not found in directory /lib/modules/4.6.0-kali1-amd64”. I followed usb live with persistence tuto wich was great, but now i’m stuck. I’ll be so greatfull if you accept to help me.
    Thanks a lot

    Like

  16. While issuing the command mod probe -r b44 b43 b43legacy ssd brcmmac, I got this error sir : od probe -r b44 b43 b43legacy ssd brcmsmac
    Error: Your request has found no candidate provider [hs=”(null)”, id=”(null)”]

    Advice please!

    Like

  17. when I run the Modprobe wl I get the error message “odprobe: FATAL: Module wl not found in directory /lib/modules/4.6.0-kali1-amd64”, Can you please advise what to do

    Like

  18. Hey all, yeah I have the very same BCM4360 (MacBook Pro Late 2013) Strangely when setting this all up I could not get it to boot using unetbootin. Eventually opting for Mac Linux USB Loader https://www.sevenbits.io/mlul/ which does work, however, have found an error ‘applesettos’ once the Kernel is being loaded, though the OS does boot incidentally. I realised when I was creating the Live USB it would not partition as GUID rather opting for Master Boot Record anybody else had that problem? I rectified mine by adding persistence in the command line for the host.

    I have now realised after not being able to boot the wifi, I am left in the same predicament as Bob, or is there another way to this?

    Like

  19. Hello, I’m using Kali in box in a MacBook Pro 2017 with chipset Broadcom BCM43xx 1.0. I tried your steps but when I run iwconfig it doesn’t show WLAN. Also when I run ifconfig it doesn’t show “network controller” as it appears in your image. Thanks!

    Like

  20. What a shame. What seems to be a FANTASTIC tutorial, with flaws. Everyone, myself included have the exact same problem. Yet you just ignore everyone. Why bother? It seems you want to help out.

    Like

  21. How to install Broadcom wifi drivers in kali linux:

    Check source.list file! Add a “non-free” component to /etc/apt/sources.list for your Debian version, it has to be like this:
    deb http://http.kali.org/kali kali-rolling main contrib non-free
    deb http://httpredir.debian.org/debian/ stretch main contrib non-free

    Update the list of available packages. Install the relevant/latest linux-image, linux-headers and broadcom-sta-dkms packages:

    # apt-get update
    # apt-get dist-upgrade
    # apt-get install broadcom-sta-dkms

    Check your wifi Network Controler type to make sure (we are installing BCM43142 802.11b/g/n):
    # lspci

    Unload conflicting modules:
    # modprobe -r b44 b43 b43legacy ssb brcmsmac bcma

    Load the wl module:
    # modprobe wl

    Restart … after trying to make it work for a very long time finally my wifi is working with Kali linux on my Acer laptop!

    Liked by 1 person

  22. This script fixes it


    echo "As of October 18, 2018 this script works with this image:"
    echo "http://cdimage.kali.org/kali-weekly/kali-linux-2018-W41-amd64.iso"
    echo
    echo "If you are using a different version you will have to change the variables kbuild, headers1, headers2, and server"
    echo
    echo "Look in /lib/modules to find out what version of Kali you need to search for."
    echo
    proc=$(uname -r|sed 's,[^-]*-[^-]*-,,')
    #server=http://old.kali.org/kali/pool/main/l/linux/ # Look here too
    server=http://http.kali.org/kali/pool/main/l/linux/ # These are the newest files
    kbuild=linux-kbuild-4.18_4.18.6-1kali1_$proc.deb
    headers1=linux-headers-4.18.0-kali1-common_4.18.6-1kali1_all.deb
    headers2=linux-headers-4.18.0-kali1-${proc}_4.18.6-1kali1_$proc.deb
    # Update and install necessary packages
    apt-get update
    apt-get -y install linux-image-$proc linux-headers-$proc
    modprobe -r b44 b43 b43legacy ssb brcmsmac bcma
    # Download some extra packages, that do the trick for "wl module not found"
    echo wget $server/$kbuild && \
    wget $server/$kbuild && \
    echo wget $server/$headers1 && \
    wget $server/$headers1 && \
    echo wget $server/$headers2 && \
    wget $server/$headers2 && \
    \
    dpkg -i $kbuild && \
    dpkg -i $headers1 && \
    dpkg -i $headers2 && \
    \
    apt-get -y –fix-broken install && \
    \
    apt-get -y install broadcom-sta-dkms && \
    \
    echo modprobe wl && \
    modprobe wl
    iwconfig
    ifconfig
    # Done 🙂
    echo "Don't forget to enable network-manager: nano /etc/NetworkManager/NetworkManager.conf to true and restart the service."
    echo
    echo "To monitor traffic run"
    echo
    echo "echo 1 > /proc/brcm_monitor0"
    echo "airodump-ng prism0"

    Like

Leave a comment