Building the HacBook 🍎
After winning the U.S. Department of Defense Chief Digital and Artificial Intelligence Office AI Bias Bounty program (gosh - that’s a mouthful 😅), I used some of the winnings to treat myself to a brand-new, fully-loaded MacBook Air M3. I’ve always enjoyed using light-weight laptops 😊 and this model felt like it had enough RAM (24 GB) and CPU to handle the “closed box” testing I perform as a bug bounty hunter who primarily looks at web applications.
Likewise, at the beginning of the year I also signed-up to take Offensive Security’s WEB-200 course in order to sharpen some of my client-side testing skills; I really should have listened to Jason Haddix all those years ago when he said to spend time learning JavaScript 😅
Anyway - when I bought the new MacBook, I thought to myself: “wouldn’t it be cool if I could successfully navigate the WEB-200 course and the OSWA exam without a Kali VM or dual-boot setup?” - and so far, it certainly feels like the answer is “yes - and you can!”. Below is a list of the software - along with install instructions and the occasional commentary - which I’ve installed on my new “HacBook” as I’ve completed the WEB-200 chapter exercises.
I will eventually write a series of blog posts explaining how I use (and get the most out of) these various tools - but for now this post should serve as a starting point of “what’s in the toolbelt” for the various hacking adventures you might go on.
Oh and let’s not forget - it’s important to hack in style, so I needed to find some artwork for the custom ToastMade wooden cover I usually decorate my laptops with. Here’s what I landed on:
Disclaimer: this is by no-means an exhaustive list. In fact, I welcome additional suggestions via my handle andMYhacks on Discord, or via an email to keith [at] securing [dot] dev; Happy hacking!
Core applications
- Homebrew ← must have command line tool for MacOS
- Make
sudouse TouchIDsudo cp /etc/pam.d/sudo_local.template /etc/pam.d/sudo_localsudo vim /etc/pam.d/sudo_local- Uncomment
auth sufficient pam_tid.so
- Caido proxy ← My preferred proxy, upstreaming to Burp to cover some gaps (thank you, Justin Gardner 😄)
- Burp Suite Pro from PortSwigger - because you still need it for some Ajax things in the OSWA course
- OrbStack for container management (thank you, Natalie Somersall ❤️)
-
Viscosity VPN for connecting to Offensive Security’s lab network (thanks to the GitHub
#homelabcrew) - Google Chrome (strictly for web app testing)
brew install applications
brew install gitbrew install semgrepbrew install codeqlbrew install screenbrew install nucleibrew install gobrew install notify-
brew install nmap← My preferred port scanning tool brew install pipxbrew install feroxbuster-
brew install ffuf← My preferred web fuzzing tool brew install ruby-
brew tap owasp-amass/amass- Then
brew install amass
- Then
burp and caido extensions
-
Burp extensions
- 403 Bypasser
- Active Scan++
- Autorize
- Backslash Powered Scanner
- Collaborator Everywhere
- Copy as Python-Requests
- Distribute Damage
- Hackvertor ← always on
- Hunt Scanner ← always on
- InQL - GraphQL Scanner
- JS Link Finder ← always on
- JS Miner
- JSON Web Tokens
- JWT Editor
- Param Miner ← always on
- Piper
- Retire.js
- Request Minimizer ← always on
-
Caido extensions
- AI Replay Rename ← An absolute gem of an extension
- EvenBetterExtensions ← a “must have” extension
- Replay Header Refresher
go install applications
-
go install -vgithub.com/g0ldencybersec/gungnir@latest- Alternative to cert-sub-go
-
go install -vgithub.com/tomnomnom/anew@latest -
go install -vgithub.com/projectdiscovery/httpx/cmd/httpx@latest -
go install -vgithub.com/xssdoctor/graphqlMaker@latest -
go install -vgithub.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest -
go install -vgithub.com/OJ/gobuster/v3@latest
📢 This content was thoughtfully written by a human being; If you find it useful, enjoyable, or influential you can support my work via Patreon.️ I think we all know the AI training “data scrapers” aren’t going to support people like me 😅 Anyway…
git clone applications
-
git clone git@github.com:swisskyrepo/PayloadsAllTheThings.git- I usually end up referencing the GitHub page, but having it locally is nice 👌
-
git clone git@github.com@:danielmiessler/SecLists.git- I really wish directories were lowercased and didn’t include spaces 😢
git clone git@github.com:trufflesecurity/trufflehog.gitgit clone git@github.com:projectdiscovery/katana.git
docker pull
-
docker pull httpd← useful for running an Apache web server during the course- I spun this up with
docker run -dit --network host -v ${PWD}:/var/www/html --name apache-server httpd:latestfrom inside of a “web server” folder where I keep web shells, system binaries, etc. - The terminal session entrypoint is
/usr/local/apache2 - The config is located in
/usr/local/apache2/conf/httpd.conf, you’ll need to modify this in order to have it load the site from/var/www/html - Restart the service with
httpd -k restart - After this you can
docker [start|stop] apache-serverto get it running. I usually spin-up a terminal session within the container via the OrbStack UI if I need to.
- I spun this up with
-
docker pull kalilinux/kali-rolling← some apps were just a pain to install, and this was my last resort- I spun this up with
docker run -it --network host -v ${PWD}:/tmp --name kali-oswa kalilinux/kali-rolling:latestfrom inside my OSWA directory- After this you can
docker [start|stop] kali-oswato get it running or shut it down
- After this you can
- Then ,when you are in a terminal session inside of the container, run:
apt update && apt -y install kali-linux-headlessto get all the tools, scripts, etc. you might need for the course - You’ll probably also want to run
apt install seclists👀
- I spun this up with
And before my friend Natalie sends me a message on Signal - I know, I know… “livestock, not pets” - but what can you do 🤷 There are some tools (like cewl, gobuster, msfvenom, and wfuzz ) which are used throughout the WEB-200 course that are just not easily installed on MacOS. You could probably go get the specific container for each of these tools - but for the limited use cases I have, these two containers made everything easier 👍
Chrome extensions
- FoxyProxy Basic
- postMessage-tracker ← requires being in “developer mode”
- Simply Code Beautify
- Wappalyzer
- Xnl Reveal ← requires being in “developer mode”
- Bulk URL Opener
- Resources Saver
- Google Translate
Tools I’m still looking into:
FIN
Oof - okay, I know that was a lot 😅 but I hope this will make other hacker’s lives easier if you get a sweet new MacBook of your own to hack with in the future 😊 Also, if any of these tools/links break (or go stale) I will do my best to update this content - but please do me a favor: if you find something broken just email me at keith [at] securing [dot] dev to let me know 👍
Finally, I just want to give a special shout-out to my friends jhaddix, xnl_h4ck3r, xssdoctor, un1tycyb3r, Roll4Combat, and G0LD3N for their all of their feedback, suggestions, and crazy ideas ❤️ I love you guys!
Oh, and about that ToastMade cover: I think it came out pretty great - what do you think?
Thank you for stopping by 😊 While taking some time to prepare my next blog post, you can git checkout other (usually off-topic) content I’m reading over at Instapaper.
And until next time, remember to git commit && stay classy!
Cheers,
Keith // securingdev
If you found this post useful or interesting, I invite you to support my content through Patreon 😊 and thank you once again for reading this content!

