Ethical Hacking Course (25 Blogs) Become a Certified Professional
AWS Global Infrastructure

Cyber Security

Topics Covered
  • Cybersecurity Certification Course (25 Blogs)

MacChanger with Python- Your first step to Ethical hacking

Last updated on Apr 26,2024 8.6K Views

Omkar S Hiremath
Tech Enthusiast in Blockchain, Hadoop, Python, Cyber-Security, Ethical Hacking. Interested in anything... Tech Enthusiast in Blockchain, Hadoop, Python, Cyber-Security, Ethical Hacking. Interested in anything and everything about Computers.
3 / 4 Blog from Ethical Hacking and Python

Ethical Hacking is fun and interesting, but there are a lot of things an Ethical hacker should be aware of. Such as, covering his tracks. And, one of the ways to do this is using a MacChanger. In this tutorial, I will teach you how to write a MacChanger with Python.

I will cover the following topics:

Before writing a MacChanger, let’s see why we should use Python for Ethical Hacking.

Why Python for Ethical Hacking?

Ethical Hacking is the process of finding vulnerabilities in a system that an attacker can exploit and cause damage. And then, these results are used to improve the security of the network and the system. We already have many Ethical Hacking Tools available, so what’s the need for Python?

Python is used to Automate the process of Ethical Hacking. Ethical Hacking is not a one-step process. There are different Phases of Ethical Hacking and some of which you will have to conduct more than once. Ethical Hacking with Python makes this easy. 

Suppose you want to test a website for vulnerabilities, you will have to run tests on the website. After you are done with this project, you might have to test another website. Now, you will have to follow the same steps from scratch. Python can be used here to automate these testing steps. So, you write the code once and use it every time you want to test a website. If you are excited to know more about Ethical hacking, join the Ethical Hacking Course Online today.

Now that we know what we are dealing with, let’s understand what a MacChanger is!

What is a MacChanger?

Every networking device is assigned a MAC address by the device manufacturer which is helpful to communicate with other devices. A MAC address is hard-coded on the device and it is not possible to permanently change it. But, we can change it temporarily using a MacChanger. A MacChanger is a tool that changes the MAC address to the desired (or random) address until that device is rebooted. Once, the device is rebooted, the MAC address of that device will be set to its original MAC address.

Now that we know what a MacChanger is, let’s build this using Python!

For this tutorial on writing a MacChanger with Python, we will run our Python scripts in PyCharm, which is an integrated development environment. So, to run our Python Script, we need to install PyCharm first. Let’s see how to install PyCharm on Ubuntu. 

Installing PyCharm on Ubuntu

To install PyCharm on Ubuntu, first go to this link:

Here, you will find two Editions, and for this tutorial, we will use the Community Edition.

PyCharm Download - macchanger- Edureka

When you click on the download button, the download should start. After the download is completed, we will have to install PyCharm. By default, this file will be downloaded in the “Downloads” directory. Open a terminal and run the following commands:

$ cd Downloads
$ tar -xvf pycharm-community-2018.3.4.tar.gz

Remember to replace the name of the file in the above command with the name of the file that is downloaded in your system.

The above command will extract the PyCharm files. And now, to run PyCharm, you will have to go into the pycharm-community-2018.3.4/bin folder and run the file. To do this, run the following commands:

$ cd pycharm-community-2018.3.4/
$ cd bin/
$ ./

Running PyCharm-macchanger-Edureka

When you run it for the first time, you will have to accept the Terms and Conditions. Once done, PyCharm will be up and running.

Learn about the latest tools, technologies, and frameworks used in ethical hacking through this Ethical Hacking Internship.

Now that we have installed PyCharm, let’s move on to writing a MacChanger.

Writing a MacChanger

You will write the MacChanger script in PyCharm. To start PyCharm, go to the directory where PyCharm was extracted and run the shell script.

$ cd pycharm-community-2018.3.4/ 
$ cd bin/
$ ./

You will see the welcome screen of PyCharm. Click on “Create New Project”.

PyCharm welcome-macchanger-edureka

Enter a name for your project. I will name this Mac_changer. And then click “Create“. 


You will now see the workplace. Next, let’s create a Python file. To do this, right click on the project name, go to “New” and click on “Python file“.

new python file-macchanger-edureka

You can now write the python script here. But first, you should decide which network device you want to change the MAC address for. For this, open the terminal and run the following command:

$ ifconfig

You should see a list of the network interfaces and their respective MAC address. You might have different interface names or MAC addresses. When using the scripts in this blog, make sure you change the interface name to the one in your system. For this tutorial, I will change the MAC address of “ens33“.


The script to change the MAC Address is as follows:

import subprocess["sudo","ifconfig","ens33","down"])["sudo","ifconfig","ens33","hw","ether","00:11:22:33:44:55"])["sudo","ifconfig","ens33","up"])

I will be changing the MAC address to 00:11:22:33:44:55. Now run this script. To run the script, click on the “Run” tab at the top and click on “Run“.

After running the script, to check whether the MAC address of the interface has changed or not, we will check the details again. Just run the ifconfig command in the terminal.


Do you see the change in the MAC address? The new MAC address is 00:11:22:33:44:55. That’s how simple it is. Now whenever you need to change the MAC address, all you have to do is update the MAC address and/or the interface name in the Python script.

But this doesn’t make any difference or save much time right? I mean, it’s just 3 commands, we can do it manually. Why write a Python script for this?

Let me tell you how it can make a difference. Just think of the scenario where you will have to change the MAC address every 5 minutes. And suppose you are working for an hour, you will have to run these 3 commands 12 times. So, you will have to run 3 * 12 = 36 commands in total. Okay, now it seems too much, isn’t it?

Find out our CISSP Course in Top Cities

CISSP Training in BangaloreCISSP Training in India
CISSP Training in ChennaiCISSP Training in Pune
CISSP Training in HyderabadCISSP Training in Mumbai

Well, when you write the Python script, you can just run this script in a loop to change the MAC address every 5 minutes. Now you see how much time and effort you can save.

Congratulations! You have written a MacChanger in Python and seen it in action. Now that you know how Python can be beneficial for Ethical Hacking, learn some more modules, commands, and start automating Ethical Hacking with Python.

Got a question for us? Please post it on Edureka Community and we will get back to you.

Looking for a challenging and rewarding career in cybersecurity? Enroll in the CISSP Online Training.

If you wish to learn Cybersecurity and build a colorful career in Cybersecurity, then check out our Cyber Security Training Course which comes with instructor-led live training and real-life project experience. This training will help you understand Cybersecurity in-depth and help you achieve mastery over the subject.

You can also take a look at our newly launched course on CompTIA Security+ Training Course which is a first-of-a-kind official partnership between Edureka & CompTIA Security+. It offers you a chance to earn a global certification that focuses on core cybersecurity skills which are indispensable for security and network administrators. 

Learn Cybersecurity the right way with Edureka’s POST-GRADUATE PROGRAM with NIT Rourkela and defend the world’s biggest companies from phishers, hackers and cyber attacks.

Upcoming Batches For CEH v12 - Certified Ethical Hacking Course Online
Course NameDateDetails
CEH v12 - Certified Ethical Hacking Course Online

Class Starts on 22nd June,2024

22nd June

SAT&SUN (Weekend Batch)
View Details
CEH v12 - Certified Ethical Hacking Course Online

Class Starts on 20th July,2024

20th July

SAT&SUN (Weekend Batch)
View Details

Join the discussion

Browse Categories

webinar_success Thank you for registering Join Edureka Meetup community for 100+ Free Webinars each month JOIN MEETUP GROUP

Subscribe to our Newsletter, and get personalized recommendations.

image not found!
image not found!

MacChanger with Python- Your first step to Ethical hacking