I wanted to briefly touch on a tool called objcopy because it's a useful tool, even if we may not use it on every analysis we perform. This tool allows us to make a copy of a binary file, and if we choose, allows us to convert that binary file into one of many binary formats, including the ELF format. Additionally, if the need arises, we can use objcopy to strip symbols from a binary as we copy it. The primary use of objcopy that I've encountered is when we need to convert a binary into a raw format for use with the sc tool I mentioned in the previous chapter. Also, in case we've forgotten, sc comes installed by default in Kali Linux and works right out of the box. I have yet to find a way to get sc working properly on 32-bit Ubuntu Linux. Nonetheless, objcopy allows us to strip the ELF format from a binary and copy the raw format into another file for analysis using sc. This is one of the many really useful features of objcopy.
We will focus primarily on the objcopy tool, covering some of its more useful arguments, many of which will accomplish the same task as the tools we've already learned about. Remember, it's really not a bad thing to have more than one tool that can accomplish the same task. It all depends on your workflow and how you prefer to work through the analysis methodology. Hopefully, you're starting to get inspired to create your own workflow or automation.