Apfs Fuse

FUSE driver for APFS (Apple File System)

Cybersecurity & Ethical HackingC++GPL-2.0

Abstract

Apfs Fuse is an open-source Cybersecurity & Ethical Hacking project. FUSE driver for APFS (Apple File System). This project is a read-only FUSE driver for the new Apple File System. It also supports software encrypted volumes and fusion drives. It is built using C++. Key capabilities include: Can read macOS 10.13 case sensitive and insensitive volumes, as well as iOS 11 / macOS 10.12 volumes; Transparent decompression of ZLib and LZVN; Symlinks. The complete source code is publicly available on GitHub under the GNU General Public License v2.0, making it a useful reference for students building a Cybersecurity & Ethical Hacking mini project or final-year project.

1. Introduction

This project is a read-only FUSE driver for the new Apple File System. It also supports software encrypted volumes and fusion drives. Firmlinks are not supported yet.

Be aware that not all compression methods are supported yet (only the ones I have encountered so far). Thus, the driver may return compressed files instead of uncompressed ones. Although most of the time it should just report an error.

2. Objective

FUSE driver for APFS (Apple File System)

This project demonstrates how C++ can be applied to a real-world Cybersecurity & Ethical Hacking problem.

3. Key Features / Modules

  • Can read macOS 10.13 case sensitive and insensitive volumes, as well as iOS 11 / macOS 10.12 volumes
  • Transparent decompression of ZLib and LZVN
  • Symlinks
  • Hardlinks (it seems ...)
  • Extended attributes
  • Software encryption (at least full-disk encryption)
  • Automatic detection of GPT partition tables
  • Direct mounting of DMG images (supports zlib/adc compression and encryption)

4. Technology Stack

C++

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • Arduino IDE / PlatformIO or a C++ compiler (g++)
  • Target board (e.g. Arduino, ESP32) where applicable
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/sgan81/apfs-fuse.git
cd apfs-fuse

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Add logging and alert notifications (email / Telegram)
  • Write a threat model document for the tool
  • Package it with Docker for safe lab testing

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. Which threat or attack does this project defend against?
  2. What detection or protection technique is used and what are its limits?
  3. How are false positives and false negatives handled?
  4. Which cryptographic algorithms or security standards are involved?
  5. What legal and ethical rules apply when testing a tool like this?

9. Source Code & License

This project is developed by sgan81 and published on GitHub under the GNU General Public License v2.0. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on a Cybersecurity & Ethical Hacking project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for Cybersecurity & Ethical Hacking Internship