SkillAgentSearch skills...

Skul

Skul is a PoC to bruteforce the Cryptsetup implementation of Linux Unified Key Setup (LUKS).

Install / Use

/learn @cryptcoffee/Skul
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

  ██████  ██ ▄█▀ █    ██  ██▓    
▒██    ▒  ██▄█▒  ██  ▓██▒▓██▒    
░ ▓██▄   ▓███▄░ ▓██  ▒██░▒██░    
  ▒   ██▒▓██ █▄ ▓▓█  ░██░▒██░    
▒██████▒▒▒██▒ █▄▒▒█████▓ ░██████▒
▒ ▒▓▒ ▒ ░▒ ▒▒ ▓▒░▒▓▒ ▒ ▒ ░ ▒░▓  ░
░ ░▒  ░ ░░ ░▒ ▒░░░▒░ ░ ░ ░ ░ ▒  ░
░  ░  ░  ░ ░░ ░  ░░░ ░ ░   ░ ░   
      ░  ░  ░      ░         ░  ░
      

Introduction

Skul is a PoC to bruteforce the Cryptsetup implementation of Linux Unified Key Setup (LUKS).

Read about it here.

Features

Most relevant features included in this release:

  • Fast PBKDF2 implementation: we make use of fastpbkdf2, the most powerfull CPU-based implementation of PBKDF2.
  • Multi-thread support
  • Fast master key check: enables the speed-up of the attack up to 20%
  • Configurable incremental bruteforce attack mode
  • Password-list attack mode

Prerequisites

To run Skul the OpenSSL library is required.

Build Skul

$ ./configure 
$ make skul 

Usage

To test Skul we provide an example header of cryptsetup's encrypted disks:

$ ./skul disks/test_disk_py 

To test your own disk you need to dump the LUKS header of the partition:

# dd if=/dev/sdX of=./my_dump bs=1024 count=3072
# chmod myusr:myusr ./my_dump

Then you can run:

$ ./skul ./my_dump

You can configure Skul thruogh its configuration file conf/skul.cfg

Related Skills

View on GitHub
GitHub Stars14
CategoryDevelopment
Updated5mo ago
Forks6

Languages

C

Security Score

87/100

Audited on Oct 7, 2025

No findings