This is my first how-to for this site so feel free to let me know if I can somehow improve!
Inspired by the great Jailbroken iDevice and Rooted Android PenTesting tutorials I decided to share how I use my Toshiba Chromebook 2 with Kali Sana.
Chromebooks have a couple of benefits over traditional laptops. They're extremely light and are nice and cheap! The Toshiba Chromebook 2 which I use retails for around 300$.
With a little bit of tinkering you can get Kali set up on your Chromebook and start hacking away. To do this we will use crouton, an excellent project that you can find on GitHub: https://github.com/dnschneid/crouton
There are plenty of guides on how to do this online so I'm just going to link to a good one: http://www.howtogeek.com/210817/how-to-enable-developer-mode-on-your-chromebook/
Go to the crouton GitHub page and download the crouton file:
Make sure the crouton file is in your downloads folder.
Install the crouton extension from the Chrome Webstore. It greatly improves crouton functionality with features like clipboard sharing and the Linux OS running in a window.
Type ctrl+alt+t to open a crosh shell. Now type shell and hit enter to get a chronos shell.
sudo sh ~/Downloads/crouton -r sana -t extension,xiwi,kde
Optionally add the following flags:
-e for full disk encryption
-k /PATH-TO-STORE-KEYFILE/KEYFILE-NAME require keyfile to start (best when combined with -e)
-p /PATH-TO-REMOVABLE-MEDIA/ installs Kali Sana on a removable device.
I installed Sana on an SD card to take advantage of the larger storage capacity available. Many Chromebooks only have 16GB of storage which is not enough for a fully decked out Kali installation. Using the -e and -k flags greatly increases the security of the installation. Also make sure to format the SD Card to ext4 prior to installation.
After executing the command, follow the on screen instructions to install Kali. This process may take quite some time, so get a snack and feel free to browse the web while you wait.
Now that Sana is installed, you can enter it by typing sudo sh startkde -n sana.
If you installed to an SD Card you will need to type the full path of the file. It will be in /PATH-TO-REMOVABLE-MEDIA/bin/.
This should start Kali. The chrome extension should automatically connect, and you should have your OS open in a nice window! If the window is black at first, wait a bit and try re-sizing it a couple of times.
You can now install Kali Metapackages and any other software you may need.
Congratulations, you now have Kali Sana running on your Chromebook! Keep reading for a couple of tips that may smooth out your experience.
SD Card idle lid suspend fix
If you installed Sana on an SD Card like I did, you will experience problems with idle lid suspend while running crouton. This is due to the fact that Chrome OS sometimes ejects SD cards when the lid is closed, thereby making crouton crash. There is some great information on the crouton GitHub page on how to fix this. The easiest way being to disable idle lid suspend while crouton is running. This way only the screen will turn off while Chrome OS will keep running. This stops your SD Card from getting ejected. Here's the script you can use to start Sana with this modification:
You will have to modify the part of the script that actually starts Sana by adding the startup command you used in Step 5.
Notes on airmon-ng
If you Chromebook has a compatible wifi card you'll be able to use the aircrack-ng suite for pentesting. My Toshiba Chromebook 2 works well with this, the only problem being that when finished and airmon-ng is stopped, it does not rename your wireless device back to what it was before. This is an issue as Chrome OS will not recognize the wireless device and you will not have internet access. To solve this you can either restart you computer, or you can manually rename the interface:
sudo iw dev wlan0mon del
sudo iw phy phy0 interface add wlan0 type managed
These commands will vary depending on the name of you wireless interface.
Notes on external wireless adapters
This is the only downside of running Sana through crouton on Chrome OS. As it shares the Chrome OS kernel, most external wireless adapters will not register. Some people have apparently gotten select cards to work, but I have not been so lucky. The only solution to this is enabling USB-Boot and booting from a Live Kali USB when you need multiple network cards.
Hope you enjoyed my tutorial. Feel free to leave suggestions and any questions you may have below. I'll try to answer any that come up.