Actions

MAC Address


Introduction[edit]

All network cards, both wired and wireless, have a unique identifier called a MAC address. [1] MAC addresses are stored in hardware and are used to assign an address to computers on the local network.

The MAC address is normally not traceable because it is not passively sent to computers beyond the local router. [2] However, other computers on the local network can potentially log it, which would then provide proof the user's computer connected to that specific network. If users intend to use an untrusted, public network then MAC spoofing should be considered. [3]

MAC Spoofing Warning[edit]

Auto-connect Risk[edit]

Apart from the difficulty in creating an appropriate MAC address for spoofing purposes, there are also technical hurdles to overcome in the form of preventing automatic network connections.

It is futile to prepare a spoofed MAC address if the computer instantly connects to the public network after booting, disclosing the user's real MAC address in the process:

  • Physical Isolation: Whonix-Gateway automatically connects to Tor after start.
  • USB Wi-FI Device: Automatic connections might also occur, depending on the configuration.
  • VM users: The host operating system most likely automatically connects via updates, perhaps time sync, and other avenues.

Burner Wi-Fi USB Sticks[edit]

One immediate workaround for the Wi-Fi card profiling threat is to buy new "burner" Wi-Fi USB sticks from different manufacturers. Take care to disable the computer's native Wi-Fi functionality in the BIOS settings if pursuing this option -- the computer's characteristics are likely to have already been logged if it was ever used from an untrusted hotspot. Burner devices should only be enabled for connectivity at the intended public destination. If this advice is ignored and burner devices are used for network connections at locations tied to or regularly visited by the user, this can lead to deanonymization. A different burner stick should be used for each new location to avoid geographical profiling / tracking.

Random MAC Addresses[edit]


The problem of using a random MAC address is that the vendor ID which is chosen may be non-existent. Even if it exists, the user might end up with a vendor ID which has either never been used or not for decades. When spoofing MAC addresses, it is critical to use a a popular vendor ID. The initial, second part of the MAC address can safely be random or unique. [5]

Research on this issue is still ongoing. Whonix cannot yet provide detailed instructions on how to create appropriate MAC addresses fulfilling the criteria above.

Other Location Tracking Risks[edit]

Authentication Fingerprinting Techniques[edit]

An authentication technique can fingerprint devices by observing inter-packet timings on a LAN's wire-segment. One side effect is that user devices can be tracked. The timing effects are the result of how various components in a machine create packets. [6] Fortunately, this technique cannot be used to identify devices across the Internet. [7]

This technique can be defeated by inducing random delays in a machine's packet stream. Since there is no problem with impersonating other devices on the LAN, it does not matter that such an authentication system will view these machines as "unknown". [8] Note also that spectrum analyzers have been used to fingerprint the unique electromagnetic (EM) characteristics of a Wi-Fi card. The disposable USB Wi-Fi workaround described further above would mitigate this attack. [9]

Tor Entry Guard Fingerprinting[edit]

Dealing with the MAC address problem is only one piece of the larger location tracking puzzle. Users must also contend with changing the usual Tor entry guards used for connections across different locations, in order to prevent guard fingerprinting. To mitigate this threat, follow one of the recommended configurations:


To fully thwart this threat, entry guard changes are necessary for every Tor instance on the user's machine host (apt-transport-tor) and guest.

MAC Spoofing on Different Networks[edit]

Home Connections[edit]


Connectivity Risk[edit]

If the user's home network has a cable modem internet connection, the ISP either provides the cable modem device as part of the service or requires pre-registration of the MAC address of the self-provided cable modem in order to setup the service.

If a user manages to hack or change the MAC address of the modem, the service would immediately cease functioning because the IP address assignment is apportioned for, and bound to, that specific MAC address. As a result, when connecting from behind a cable modem/NAT router, MAC address spoofing of the computer's Ethernet adapter may be pointless. If a user is traced, the trackable endpoint will be the MAC address of the cable modem device.

Public Computers[edit]


The MAC address should not be changed in this scenario, otherwise it may bring undesired administrator attention to the service/user and/or simply prevent access to the Internet.

Using Personal Computers in a Public Network[edit]


In this scenario, the MAC address should be changed and a new set of Tor entry guards should be configured. [10] Attempts should be made to disguise the use of Tor from the administrator of the public network. Depending on the user's configuration, this may involve using an obfsproxy bridge or the tunneling of traffic through SSH or a VPN prior to connecting to the Tor network.

Depending on the user's threat model, changing the MAC address and using Tor might rule out revisiting that public network again in the future. If the same public network is to be reused, then users must decide whether to use the same MAC address (and set of Tor entry guards) or to generate a new one.

It is unwise to change the MAC address and arouse suspicion if MAC address logging by the administrator is suspected. If a user assesses the network is sufficiently public and observation is unlikely, then it might be safe to use a new MAC address -- with a popular vendor ID and random/unique second part (identifier) -- each time the network is used.

For more discussion on this rather complex topic, see Dev/MAC.

Changing MAC Addresses[edit]

Linux Hosts[edit]

If you are interested in MAC address spoofing in Non-Qubes-Whonix, please press on Expand on the right.

Non-Qubes-Whonix means all Whonix platforms except Qubes-Whonix. This includes KVM, VirtualBox and Physical Isolation.

TODO: please help to test and expand these instructions.

1. Edit the Network Interfaces File

  • Standard-Whonix-Version (VM) users: Edit /etc/network/interfaces on the host.
  • Physical Isolation users: Edit /etc/network/interfaces on Whonix-Gateway.


2. Get Macchanger

In a terminal, run.

apt-get update && apt-get install macchanger

3. Change the MAC Address (I)


ifconfig wlan0 down
macchanger -a wlan0
ifconfig wlan0 up

If instructions from Step 1+ did not work, the following steps might also work without macchanger. Replace wlan0 to match the specific device.

ifconfig wlan0 down
ifconfig wlan0 hw ether 00:AA:BB:CC:DD:EE
ifconfig wlan0 up
Or use iproute2 commands to change the MAC address.
ip link set down wlan0
ip link set wlan0 address 00:AA:BB:CC:DD:EE
ip link set up wlan0

4. Change the MAC Address (II)

Below iface eth0 inet dhcp, add.

hwaddress ether 00:00....

5. Optional: Automatically Randomize MAC Address on Boot

If this is desired, add.

pre-up macchanger -e eth0

6. Change New Network Interfaces Settings

To prevent new network interfaces being brought up automatically, uncomment the following.

auto eth0

Then configure manual bring ups with the following setting.

sudo ifup eth0


macOS Hosts[edit]


1. Find the Current MAC Address of the Interface [11]

Open System Preferences -> Click on Network -> Select the interface from the listbox on the left -> Select the Advanced button -> Click on Hardware tab

The first line is the MAC address of the interface.

2. Change the MAC Address

Note: There is no eth0 on default macOS configurations. By default, en0 and en1 are the physical network connections (wired and wireless LAN). [12] Disconnect from any networks before running these commands.

In a terminal, run as an administrator.

ifconfig en0 | grep ether

The output will show the MAC address for the en0 interface. Depending on how many interfaces there are on the computer, the command might need to be run several times by adding 1 to the number each time.

Once a MAC address is listed that matches the one seen via System Preferences, the user knows which interface (en0, en1....) to change.

In a terminal, run the following as an administrator. Below, change en0 to match the relevant interface, and replace "XX:XX:XX:XX:XX:XX" with the desired new MAC address, for example: f8:1e:df:d8:9d:8a

sudo ifconfig en0 ether XX:XX:XX:XX:XX:XX

3. Check the MAC Address has Changed

In a terminal, re-run.

ifconfig en0 | grep ether

The output should show a value matching the user's change.

Qubes Hosts[edit]


Qubes users can manually change MAC addresses in the NetVM by following either the Network Manager or macchanger guides. MAC Address Randomization capability for Wi-Fi has been implemented, but it is not applied by default.

Refer to the following Qubes documentation and related support items for further information and advice:

Windows Hosts[edit]


The following steps spoof the MAC address in Windows 10 via Device Manager: [13]

Press Windows Key + X -> select Device Manager -> Expand the list of Network adapters -> Right-click the appropriate adapter -> Select Properties -> Navigate to Advanced tab -> Select Network Address -> Enter any 12 digit hexadecimal value -> Click OK

Reboot the computer for the changes to take effect. To check the changes are functional, in a terminal run.

ipconfig /all

The physical address of the adapter should show a new MAC address.

Sources[edit]

See footnote. [14]

References[edit]

  1. https://en.wikipedia.org/wiki/MAC_address
  2. Unless the computer is infected with malware designed to disclose this identifier.
  3. https://en.wikipedia.org/wiki/MAC_spoofing
  4. Why MAC Address Randomization is not Enough: An Analysis of Wi-Fi Network Discovery Mechanisms
  5. Also note that if MAC address changing is always enabled, it might cause connectivity problems on some networks.
  6. A Passive Technique for Fingerprinting Wireless Devices with Wired-side Observations
  7. The primary weakness of this technique is that it relies on fine-grained packet timing; timing that is lost as a result of buffering in switches and routers. Therefore, this technique and similar methods are not suited for identification across the Internet. Rather, it is perfectly suited for the significant challenge of local network access control and other local network activities like counterfeit detection.
  8. Figure 7(a) shows attackers that can vary their packet sizes, change their data rate, and tunnel their packets through another protocol. Figure 7(b) presents attackers that can introduce constant or random delays to the packet stream and load the CPU with intensive applications to overshadow normal behavior. Figure 7(c) shows an attacker that can modify or change its operating system. GTID (the passive fingerprinting method) detects these attacks and classifies all of these devices that generated attack traffic from previously seen devices as unknown.
  9. There have also been physical layer approaches to fingerprinting wireless devices. Radio frequency (RF) emitter fingerprinting uses the distinct EM characteristics that arise from differences in circuit topology and manufacturing tolerances. This approach has a history of use in cellular systems and has more recently been applied to Wi-Fi and Bluetooth emitters. The EM properties fingerprint the unique transmitter of a signal and these differ from emitter to emitter. This technique requires expensive signal analyzer hardware to be within RF range of the target.
  10. This process involves removal of the /var/lib/tor/state file.
  11. http://www.online-tech-tips.com/computer-tips/how-to-change-mac-address/
  12. https://superuser.com/questions/1190550/physical-and-wireless-interfaces-in-macos
  13. http://windowsreport.com/mac-address-changer-windows-10/

License[edit]

Whonix MAC Address wiki page Copyright (C) Amnesia <amnesia at boum dot org>
Whonix MAC Address wiki page Copyright (C) 2012 - 2018 ENCRYPTED SUPPORT LP <adrelanos@riseup.net>

This program comes with ABSOLUTELY NO WARRANTY; for details see the wiki source code.
This is free software, and you are welcome to redistribute it under certain conditions; see the wiki source code for details.


Random News:

Please help us to improve the Whonix Wikipedia Page. Also see the feedback thread.


https | (forcing) onion

Share: Twitter | Facebook

This is a wiki. Want to improve this page? Help is welcome and volunteer contributions are happily considered! See Conditions for Contributions to Whonix, then Edit! IP addresses are scrubbed, but editing over Tor is recommended. Edits are held for moderation.

Whonix is a licensee of the Open Invention Network. Unless otherwise noted, the content of this page is copyrighted and licensed under the same Libre Software license as Whonix itself. (Why?)