Useful Tools: Difference between revisions

From DisNCord Community Wiki
Jump to navigation Jump to search
(Add link to 7-zip homepage ~Samuel)
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== File System Manipulation ==
== File System Manipulation ==
* [https://github.com/aaru-dps/Aaru Aaru] supports a fairly comprehensive collection of disk image, partition table, and file system formats, and is built with the Microsoft .NET Framework - builds exist, for several operating systems.
* [https://github.com/aaru-dps/Aaru Aaru] supports a fairly comprehensive collection of disk image, partition table, and file system formats, and is built with the Microsoft .NET Framework - builds exist, for several operating systems.
* [https://linux.die.net/man/8/kpartx kpartx] is a fairly standard command to automatically create loop devices for whole disk images (assuming regular partition table types Linux can understand)
* [https://linux.die.net/man/8/kpartx kpartx] is a fairly standard command to automatically create loop devices for whole disk images (assuming regular partition table types Linux can understand).
* [https://osxfuse.github.io/ macFUSE] allows you to use FUSE filesystems on macOS
* [https://osxfuse.github.io/ macFUSE] allows you to use FUSE filesystems on macOS.


== Archive Manipulation ==  
== Archive Manipulation ==  
* 7-Zip supports the Windows Imaging format (<code>.WIM</code>) disk images, with LZX compression, as used by Windows 8.1
* [https://www.7-zip.org/ 7-Zip] supports the Windows Imaging format (<code>.WIM</code>) disk images, with LZX compression, as used by Windows 8.1.
* [https://github.com/MacPaw/XADMaster XADMaster] supports a fairly comprehensive collection of compression, and archival formats, and can also expand some disk image formats - this seems to be the basis of the "unar" utility, provided for Ubuntu, and some other Linux distributions.
* [https://github.com/MacPaw/XADMaster XADMaster] supports a fairly comprehensive collection of compression, and archival formats, and can also expand some disk image formats - this seems to be the basis of the "unar" utility, provided for Ubuntu, and some other Linux distributions.
* [https://github.com/twogood/unshield unshield] is a CLI tool, for unpacking various flavours of InstallShield archive
* [https://github.com/twogood/unshield unshield] is a CLI tool, for unpacking various flavours of InstallShield archive.


== Firmware Image Extraction ==
== Firmware Image Extraction ==
* The [http://marksmods.com/Hack-the-L7/zip/random.zip RandomSHX] utility, for Windows will extract the contents of some Motorola P2K (e.g. A835) "UNIX Generated SuperFile" firmware archives - this requires Windows, and does not work with UNC paths
* The [http://marksmods.com/Hack-the-L7/zip/random.zip RandomSHX] utility, for Windows will extract the contents of some Motorola P2K (e.g. A835) "UNIX Generated SuperFile" firmware archives - this requires Windows, and does not work with UNC paths.
* The <code>srecord</code> package, under Ubuntu contains a utility, that can convert Motorola S-Record files, into plain binaries: (for example <code>srec_cat C139_V1.0.03.E.m0 -Output C139_V1.0.03.E.bin -Binary</code>
* The <code>srecord</code> package, under Ubuntu contains a utility, that can convert Motorola S-Record files, into plain binaries: (for example <code>srec_cat C139_V1.0.03.E.m0 -Output C139_V1.0.03.E.bin -Binary</code>).


* BinWalk is extremely useful, for extracting files, and resources out of firmware images, executables, and file system structures
* BinWalk is extremely useful, for extracting files, and resources out of firmware images, executables, and file system structures.


== Binary reverse engineering ==
== Binary reverse engineering ==
Line 19: Line 19:
* [https://www.dependencywalker.com/ Dependency Walker] for understanding Windows program dependencies and what's used by the program, helpful for software archaeology.
* [https://www.dependencywalker.com/ Dependency Walker] for understanding Windows program dependencies and what's used by the program, helpful for software archaeology.
* [https://ghidra-sre.org/ Ghidra] is an open-source set of RE tools, including a set of decompilers and disassemblers for most binary formats.
* [https://ghidra-sre.org/ Ghidra] is an open-source set of RE tools, including a set of decompilers and disassemblers for most binary formats.
== Development tools ==
* [https://github.com/davidgiven/ack The Amsterdam Compiler Kit] is one of the few (mostly) C99 compilers around that can still target a PDP-11 Unix v7 target.
* [https://github.com/JuliaHubOSS/llvm-cbe llvm-cbe] is the C backend for LLVM -- it can convert LLVM bytecode into C (useful for compiling modern C++ targeting systems that don't have a functional modern C++ compiler, for example).
* [https://www.ibiblio.org/pub/micro/pc-stuff/freedos/gnuish/gnuish_t.htm GNUish Project] is a port of UNIX standard utilities for DOS with family mode support (useful for replacing equivalent utilities that cannot be ran under OS/2).


[[Category:Preservation and Documentation]]
[[Category:Preservation and Documentation]]

Latest revision as of 16:53, 24 January 2023

File System Manipulation

  • Aaru supports a fairly comprehensive collection of disk image, partition table, and file system formats, and is built with the Microsoft .NET Framework - builds exist, for several operating systems.
  • kpartx is a fairly standard command to automatically create loop devices for whole disk images (assuming regular partition table types Linux can understand).
  • macFUSE allows you to use FUSE filesystems on macOS.

Archive Manipulation

  • 7-Zip supports the Windows Imaging format (.WIM) disk images, with LZX compression, as used by Windows 8.1.
  • XADMaster supports a fairly comprehensive collection of compression, and archival formats, and can also expand some disk image formats - this seems to be the basis of the "unar" utility, provided for Ubuntu, and some other Linux distributions.
  • unshield is a CLI tool, for unpacking various flavours of InstallShield archive.

Firmware Image Extraction

  • The RandomSHX utility, for Windows will extract the contents of some Motorola P2K (e.g. A835) "UNIX Generated SuperFile" firmware archives - this requires Windows, and does not work with UNC paths.
  • The srecord package, under Ubuntu contains a utility, that can convert Motorola S-Record files, into plain binaries: (for example srec_cat C139_V1.0.03.E.m0 -Output C139_V1.0.03.E.bin -Binary).
  • BinWalk is extremely useful, for extracting files, and resources out of firmware images, executables, and file system structures.

Binary reverse engineering

  • Dependency Walker for understanding Windows program dependencies and what's used by the program, helpful for software archaeology.
  • Ghidra is an open-source set of RE tools, including a set of decompilers and disassemblers for most binary formats.

Development tools

  • The Amsterdam Compiler Kit is one of the few (mostly) C99 compilers around that can still target a PDP-11 Unix v7 target.
  • llvm-cbe is the C backend for LLVM -- it can convert LLVM bytecode into C (useful for compiling modern C++ targeting systems that don't have a functional modern C++ compiler, for example).
  • GNUish Project is a port of UNIX standard utilities for DOS with family mode support (useful for replacing equivalent utilities that cannot be ran under OS/2).