How to Hack Web Browsers Using BeEF (The Browser Exploitation Framework)
What is BeEF?
BeEF is short for The Browser Exploitation Framework. It is a penetration testing tool that focuses on the web browser.
Amid growing concerns about web-borne attacks against clients, including mobile clients, BeEF allows the professional penetration tester to assess the actual security posture of a target environment by using client-side attack vectors. Unlike other security frameworks, BeEF looks past the hardened network perimeter and client system, and examines exportability within the context of the one open door: the web browser. BeEF will hook one or more web browsers and use them as beachheads for launching directed command modules and further attacks against the system from within the browser context.
Now that we know a little about the BeEF project we can start exploiting browsers before we start I will list the required software we will be using.
#apt-get update #apt-get install beef-xss
- Kali Linux or other Linux OS
- BeEF (The Browser Exploitation Framework)
BeEF comes pre-installed in various pentesting operating systems such as Kali Linux, Parrot OS, BlackArch, Backbox, Cyborg OS in this tutorial I will be using Kali Linux there no difference weather you use Kali Linux or Parrot the tutorial will still take the same steps.
You can find BeEF in Kali Linux applications menu.
“Applications” -> “Kali Linux” -> “System Services” -> “BeEF” -> “beef start.”
Or from a new terminal we can start BeEF’ using the following commands.
Shows BeEF Framework running on 2 Interfaces Locally. (It does not matter what interface you use as long as your hook Payload is correctly configured).
Accessing BeEF Web GUI
To access BeEF server open up any web browser and access localhost (127.0.0.1). BeEF runs a web server at port 3000. We can access BeEFS Web GUI from the following URL.
The default credentials for beEF are both “beef” username “beef” and password “beef”.
BeEF Login Web GUI
- Once you have logged into BeEF Web GUI you can see a section on the left “Hooked Browsers” Online Browsers and Offline Browsers. This section shows victims hooked status.
- In this tutorial we will be using BeEF inside of our home network using localhost if you intend for users outside the network to connect back to BeEF you will need to open ports within your routers configuration.
Hooking a Browser
The example below shows a BeEF Hook running on my machines local IP address.
To find you local IP address you can use “ifconfig” from a new terminal.
BeEF hook http://192.168.43.49:3000/hook.js.
BeEF Framework also includes some default Web Page templates that you can use.
Once the target is presented with the Web Page there browser will be hooked and appear in the Hook Browsers section of the BeEF Web GUI.
- In the screen shot below we can see BeEF has hooked a target browser and its online from here we can find out information such as The Browsers version plug ins that the browser is using and various information about the target system and its software.
The screen shot below shows Logs from the target system such as mouse movement double clicks and other activity logs created by the target system.
Screen shot below shows available modules that can be used to exploit the target system such as Keyloggers and viewing Webcam’s or Microphone’s of the target browser play sounds steal cookies and credentials and much more.
You might notice that some of the commands have different colored icons next to them. If you click back to the Getting Started tab, it will explain what each of the colors represents.
Each command module has a traffic light icon, which is used to indicate the following:
- The command module works against the target and should be invisible to the user
- The command module works against the target, but may be visible to the user
- The command module is yet to be verified against this target
- The command module does not work against this target
BeEF also also us to send interactive shell commands to the target system the following screen shot below shows BeEF interactive shell.
BeEF can also be integrated with Metasploit for further system exploitation using modules such as browser_auto_pwn.
We hope you enjoyed this tutorial Hack Web Browsers Using BeEF share with friends and check back for more Kali Linux Hacking Tutorials