Other FreeBSD as a Reverse Engineering Platform

Lately I've been using FreeBSD more and more as my primary desktop operating system, and I've been pleasantly surprised by how well it works not only for software development but also for reverse engineering.
The FreeBSD Ports Collection already includes many useful tools such as Ghidra, Cutter, Rizin, radare2, YARA, YARA-X, capa, binwalk, and many others. In addition, a number of projects can be built from source and, if useful, packaged as FreeBSD ports.

Recently I managed to build Detect It Easy (DIE), and I'm now considering creating a FreeBSD port for it. I'm curious if there are other people here who use FreeBSD for reverse engineering. It would be great if we could work together to:
  1. Create a list of reverse engineering tools available on FreeBSD.
  2. Share our experience using these tools.
  3. Port additional reverse engineering software that is not yet available in the Ports Collection, whenever possible, to make FreeBSD an even better platform for binary analysis, firmware research, and reverse engineering.
Perhaps some of you are already using tools that are not widely known or have your own workflows and recommendations. I'd be very interested to hear about them. Hopefully, over time we can build a comprehensive list of reverse engineering tools for FreeBSD and contribute new ports to the Ports Collection.
 

Attachments

  • die.jpg
    die.jpg
    144.1 KB · Views: 93
Tools like cbsd (and every other jail/bhyve orchestrator in the daemon-sphere) make local sandboxing really nice as well. For reverse-engineering, having that flexibility to spin up other environments on a whim is pretty nice. And then there are those tools that don't have native ports over on FreeBSD yet e.g. BinaryNinja, that I've had success w/ varying degrees on bhyves or via linux compat.

Honestly, one way to go about this might be to just start going down the blackarch or kali pkg lists to see what sorts of things have already been ported over.
 
Honestly, one way to go about this might be to just start going down the blackarch or kali pkg lists to see what sorts of things have already been ported over.
I looked at the list of kali packages with the reverse engineering tag, there are often old utilities and some have not been updated for 7-10 years
BinaryNinja has a free version and an ULTIMATE license of $2999. This may be because there is no port for FreeBSD
 
I used the base programs to pull apart the USB communication data of several touchscreens and cardreaders to avoid the need of complex support with a driver kernel module. Just translate the raw USB stream and fish out the parts that are relevant to function. I think a base already is pretty complete if you want to find out how something behaves in detail and change it.
 
Back
Top