Ghost187

🐧

Intro to Programming Languages

15 / 253 10689 / 35675


Commands

Time of First Successful Submission: 2026-05-23 03:32:21

Command Arguments

Time of First Successful Submission: 2026-05-23 03:33:50

Command History

Time of First Successful Submission: 2026-05-23 03:35:01

The Root Path

Time of First Successful Submission: 2026-05-23 03:40:04

Absolute Paths

Time of First Successful Submission: 2026-05-23 03:44:38

Changing position

Time of First Successful Submission: 2026-05-23 03:47:02

Changing to an Absolute Path

Time of First Successful Submission: 2026-05-23 03:51:14

Relative Paths

Time of First Successful Submission: 2026-05-23 04:07:04

Cat

Time of First Successful Submission: 2026-05-23 04:36:55

Ls

Time of First Successful Submission: 2026-05-23 05:15:59

Ls All

Time of First Successful Submission: 2026-05-23 05:38:17

Find

Time of First Successful Submission: 2026-05-23 06:19:35

Piping Echo

Time of First Successful Submission: 2026-05-24 19:40:49

Piping Stdout

Time of First Successful Submission: 2026-05-24 19:43:57

Piping Stdin

Time of First Successful Submission: 2026-05-24 22:24:50


Start Here

10 / 12 21960 / 48680


Using the Terminal

Time of First Successful Submission: 2026-05-17 18:19:26

Using the VSCode Workspace

Time of First Successful Submission: 2025-03-03 06:58:27

Using the GUI Desktop

Time of First Successful Submission: 2025-03-03 07:04:02

Pasting into the Desktop

Time of First Successful Submission: 2026-05-17 18:26:54

Restarting Challenges

Time of First Successful Submission: 2026-05-17 18:52:47

Challenge Programs

Time of First Successful Submission: 2026-05-17 18:57:47

The Flag File

Time of First Successful Submission: 2026-05-22 06:15:04

Using Privileged Mode

Time of First Successful Submission: 2026-05-22 06:21:06

Persistent Home Directories - One

Time of First Successful Submission: 2026-05-22 06:30:25

Persistent Home Directories - Two

Time of First Successful Submission: 2026-05-22 06:35:51


Linux Luminarium

128 / 128 3312 / 36164


Intro to Commands

Time of First Successful Submission: 2026-05-23 03:32:21

Intro to Arguments

Time of First Successful Submission: 2026-05-23 03:33:50

Command History

Time of First Successful Submission: 2026-05-23 03:35:01

The Root

Time of First Successful Submission: 2026-05-23 03:40:04

Program and absolute paths

Time of First Successful Submission: 2026-05-23 03:44:38

Position thy self

Time of First Successful Submission: 2026-05-23 03:47:02

Position elsewhere

Time of First Successful Submission: 2026-05-23 03:51:14

implicit relative paths, from /

Time of First Successful Submission: 2026-05-23 04:07:04

explicit relative paths, from /

Time of First Successful Submission: 2026-05-23 04:10:54

implicit relative path

Time of First Successful Submission: 2026-05-23 04:15:39

home sweet home

Time of First Successful Submission: 2026-05-23 04:26:17

cat: not the pet, but the command!

Time of First Successful Submission: 2026-05-23 04:36:55

catting absolute paths

Time of First Successful Submission: 2026-05-23 04:38:48

more catting practice

Time of First Successful Submission: 2026-05-23 04:44:29

grepping for a needle in a haystack

Time of First Successful Submission: 2026-05-23 05:05:07

comparing files

Time of First Successful Submission: 2026-05-23 04:58:13

listing files

Time of First Successful Submission: 2026-05-23 05:15:59

touching files

Time of First Successful Submission: 2026-05-23 05:21:23

removing files

Time of First Successful Submission: 2026-05-23 05:27:03

moving files

Time of First Successful Submission: 2026-05-23 05:35:18

copying files

Time of First Successful Submission: 2026-05-23 05:36:45

hidden files

Time of First Successful Submission: 2026-05-23 05:38:17

An Epic Filesystem Quest

Time of First Successful Submission: 2026-05-23 05:59:21

making directories

Time of First Successful Submission: 2026-05-23 06:12:03

finding files

Time of First Successful Submission: 2026-05-23 06:19:35

linking files

Time of First Successful Submission: 2026-05-24 02:21:01

Learning From Documentation

Time of First Successful Submission: 2026-05-24 03:57:19

Learning Complex Usage

Time of First Successful Submission: 2026-05-24 17:37:27

Reading Manuals

Time of First Successful Submission: 2026-05-24 17:43:28

Searching Manuals

Time of First Successful Submission: 2026-05-24 17:46:00

Searching For Manuals

Time of First Successful Submission: 2026-05-24 17:59:41

Helpful Programs

Time of First Successful Submission: 2026-05-24 18:06:59

Help for Builtins

Time of First Successful Submission: 2026-05-24 18:14:41

Matching with *

Time of First Successful Submission: 2026-05-24 18:21:15

Matching with ?

Time of First Successful Submission: 2026-05-24 18:32:57

Matching with []

Time of First Successful Submission: 2026-05-24 18:36:44

Matching paths with []

Time of First Successful Submission: 2026-05-24 18:47:57

Multiple globs

Time of First Successful Submission: 2026-05-24 18:50:20

Mixing globs

Time of First Successful Submission: 2026-05-24 19:02:32

Exclusionary globbing

Time of First Successful Submission: 2026-05-24 19:14:54

Tab completion

Time of First Successful Submission: 2026-05-24 19:17:41

Multiple options for tab completion

Time of First Successful Submission: 2026-05-24 19:24:53

Tab completion on commands

Time of First Successful Submission: 2026-05-24 19:32:08

Redirecting output

Time of First Successful Submission: 2026-05-24 19:40:49

Redirecting more output

Time of First Successful Submission: 2026-05-24 19:43:57

Appending output

Time of First Successful Submission: 2026-05-24 19:55:46

Redirecting errors

Time of First Successful Submission: 2026-05-24 22:10:02

Redirecting input

Time of First Successful Submission: 2026-05-24 22:24:50

Grepping stored results

Time of First Successful Submission: 2026-05-24 22:31:53

Grepping live output

Time of First Successful Submission: 2026-05-24 22:42:55

Grepping errors

Time of First Successful Submission: 2026-05-24 22:50:30

Filtering with grep -v

Time of First Successful Submission: 2026-05-24 22:54:39

Filtering with sed

Time of First Successful Submission: 2026-05-24 22:58:43

Duplicating piped data with tee

Time of First Successful Submission: 2026-05-24 23:03:10

Process substitution for input

Time of First Successful Submission: 2026-05-24 23:15:43

Writing to multiple programs

Time of First Successful Submission: 2026-05-24 23:34:45

Split-piping stderr and stdout

Time of First Successful Submission: 2026-05-24 23:55:31

Named pipes

Time of First Successful Submission: 2026-05-25 00:07:36

Printing Variables

Time of First Successful Submission: 2026-05-26 02:52:31

Setting Variables

Time of First Successful Submission: 2026-05-26 03:04:57

Multi-word Variables

Time of First Successful Submission: 2026-05-26 03:14:52

Exporting Variables

Time of First Successful Submission: 2026-05-26 03:22:32

Printing Exported Variables

Time of First Successful Submission: 2026-05-26 03:24:07

Storing Command Output

Time of First Successful Submission: 2026-05-26 04:08:01

Reading Input

Time of First Successful Submission: 2026-05-26 04:11:42

Reading Files

Time of First Successful Submission: 2026-05-26 04:30:31

Translating characters

Time of First Successful Submission: 2026-05-26 05:37:53

Deleting characters

Time of First Successful Submission: 2026-05-26 05:40:39

Deleting newlines

Time of First Successful Submission: 2026-05-27 09:34:34

Extracting the first lines with head

Time of First Successful Submission: 2026-05-27 09:37:55

Extracting specific sections of text

Time of First Successful Submission: 2026-05-27 09:46:21

Sorting data

Time of First Successful Submission: 2026-05-28 02:26:22

Listing Processes

Time of First Successful Submission: 2026-05-28 02:39:31

Killing Processes

Time of First Successful Submission: 2026-05-28 02:44:26

Interrupting Processes

Time of First Successful Submission: 2026-05-28 03:36:41

Killing Misbehaving Processes

Time of First Successful Submission: 2026-05-28 03:41:32

Suspending Processes

Time of First Successful Submission: 2026-05-28 03:43:29

Resuming Processes

Time of First Successful Submission: 2026-05-28 03:45:30

Backgrounding Processes

Time of First Successful Submission: 2026-05-28 03:51:48

Foregrounding Processes

Time of First Successful Submission: 2026-05-28 03:53:15

Starting Backgrounded Processes

Time of First Successful Submission: 2026-05-28 04:23:07

Process Exit Codes

Time of First Successful Submission: 2026-05-28 04:27:16

Becoming root with su

Time of First Successful Submission: 2026-05-28 05:44:03

Other users with su

Time of First Successful Submission: 2026-05-28 05:46:57

Cracking passwords

Time of First Successful Submission: 2026-05-28 05:53:13

Using sudo

Time of First Successful Submission: 2026-05-28 06:22:50

Changing File Ownership

Time of First Successful Submission: 2026-05-29 12:47:15

Groups and Files

Time of First Successful Submission: 2026-05-29 12:54:17

Fun With Groups Names

Time of First Successful Submission: 2026-05-29 14:02:24

Changing Permissions

Time of First Successful Submission: 2026-05-29 14:09:31

Executable Files

Time of First Successful Submission: 2026-05-29 22:34:22

Permission Tweaking Practice

Time of First Successful Submission: 2026-05-29 22:39:47

Permissions Setting Practice

Time of First Successful Submission: 2026-05-30 03:17:20

The SUID Bit

Time of First Successful Submission: 2026-05-30 03:22:12

Chaining with Semicolons

Time of First Successful Submission: 2026-05-30 03:26:24

Building on Success

Time of First Successful Submission: 2026-05-30 16:53:17

Handling Failure

Time of First Successful Submission: 2026-05-30 16:55:31

Your First Shell Script

Time of First Successful Submission: 2026-05-30 17:04:22

Redirecting Script Output

Time of First Successful Submission: 2026-05-30 17:41:25

Executable Shell Scripts

Time of First Successful Submission: 2026-05-30 17:43:41

Understanding Shebangs

Time of First Successful Submission: 2026-05-30 17:51:01

Scripting with Arguments

Time of First Successful Submission: 2026-05-30 18:31:39

Scripting with Conditionals

Time of First Successful Submission: 2026-05-30 18:37:19

Scripting with Default Cases

Time of First Successful Submission: 2026-05-30 22:01:11

Scripting with Multiple Conditions

Time of First Successful Submission: 2026-05-30 22:08:39

Reading Shell Scripts

Time of First Successful Submission: 2026-05-30 22:12:27

Launching Screen

Time of First Successful Submission: 2026-05-30 22:14:36

Detaching and Attaching

Time of First Successful Submission: 2026-05-30 22:21:21

Finding Sessions

Time of First Successful Submission: 2026-05-31 00:55:11

Switching Windows

Time of First Successful Submission: 2026-05-31 00:57:38

Detaching and Attaching (tmux)

Time of First Successful Submission: 2026-05-31 01:17:07

Switching Windows (tmux)

Time of First Successful Submission: 2026-05-31 01:23:03

The PATH Variable

Time of First Successful Submission: 2026-05-31 01:34:50

Setting PATH

Time of First Successful Submission: 2026-05-31 01:47:22

Finding Commands

Time of First Successful Submission: 2026-05-31 01:50:48

Adding Commands

Time of First Successful Submission: 2026-05-31 02:00:48

Hijacking Commands

Time of First Successful Submission: 2026-05-31 02:18:34

Bashrc Backdoor

Time of First Successful Submission: 2026-05-31 11:26:40

Sniffing Input

Time of First Successful Submission: 2026-05-31 12:01:21

Overshared Directories

Time of First Successful Submission: 2026-05-31 21:37:53

Tricky Linking

Time of First Successful Submission: 2026-05-31 22:26:28

Sniffing Process Arguments

Time of First Successful Submission: 2026-05-31 22:56:47

Snooping on Configurations

Time of First Successful Submission: 2026-05-31 22:59:35

The Fork Bomb

Time of First Successful Submission: 2026-05-31 23:21:56

Disk-Space Doomsday

Time of First Successful Submission: 2026-05-31 23:32:54

rm -rf /

Time of First Successful Submission: 2026-05-31 23:36:23

Life after rm -rf /

Time of First Successful Submission: 2026-05-31 23:51:49

Finding meaning after rm -rf /

Time of First Successful Submission: 2026-05-31 23:57:50


Computing 101

81 / 129 173 / 20679


Your First Register

Time of First Successful Submission: 2026-06-01 23:29:19

Your First Syscall

Time of First Successful Submission: 2026-06-02 00:48:17

Exit Codes

Time of First Successful Submission: 2026-06-03 12:05:25

Building Executables

Time of First Successful Submission: 2026-06-03 15:35:23

Moving Between Registers

Time of First Successful Submission: 2026-06-03 16:04:09

Loading From Memory

Time of First Successful Submission: 2026-06-03 17:23:24

More Loading Practice

Time of First Successful Submission: 2026-06-05 12:27:16

Dereferencing Pointers

Time of First Successful Submission: 2026-06-05 12:58:54

Dereferencing Yourself

Time of First Successful Submission: 2026-06-05 13:05:17

Dereferencing with Offsets

Time of First Successful Submission: 2026-06-05 13:36:28

Stored Addresses

Time of First Successful Submission: 2026-06-05 13:46:30

Double Dereference

Time of First Successful Submission: 2026-06-05 13:58:25

The Stack

Time of First Successful Submission: 2026-06-06 15:04:53

Stack Offsets

Time of First Successful Submission: 2026-06-06 15:08:27

Program Arguments on the Stack

Time of First Successful Submission: 2026-06-06 15:30:02

Popping From the Stack

Time of First Successful Submission: 2026-06-06 15:43:08

Negative Numbers

Time of First Successful Submission: 2026-06-06 16:55:08

Negative Numbers (16-bit)

Time of First Successful Submission: 2026-06-06 17:20:18

Negative Numbers (32-bit)

Time of First Successful Submission: 2026-06-07 01:44:38

Encoding Negatives

Time of First Successful Submission: 2026-06-07 01:49:50

Binary and Hex Encoding

Time of First Successful Submission: 2026-06-07 01:55:55

More Hex

Time of First Successful Submission: 2026-06-07 02:09:55

Decoding Hex

Time of First Successful Submission: 2026-06-07 02:14:18

Mixed Conversions

Time of First Successful Submission: 2026-06-07 02:25:21

Disassembling Programs

Time of First Successful Submission: 2026-06-07 17:50:56

Tracing Syscalls

Time of First Successful Submission: 2026-06-08 21:32:24

Starting GDB

Time of First Successful Submission: 2026-06-09 12:01:03

Quitting GDB

Time of First Successful Submission: 2026-06-09 12:01:54

Starting Programs in GDB

Time of First Successful Submission: 2026-06-09 12:05:49

Disassembling in GDB

Time of First Successful Submission: 2026-06-09 12:47:35

Stepping Through Instructions

Time of First Successful Submission: 2026-06-09 12:50:32

Reading Register Values

Time of First Successful Submission: 2026-06-09 12:52:32

Popping Stack Values

Time of First Successful Submission: 2026-06-09 12:55:51

Examining Memory

Time of First Successful Submission: 2026-06-09 22:05:29

Examining Stack Pointers

Time of First Successful Submission: 2026-06-09 22:09:34

Cooperative Debugging

Time of First Successful Submission: 2026-06-09 22:28:23

Running with Arguments

Time of First Successful Submission: 2026-06-09 22:31:44

Writing Output

Time of First Successful Submission: 2026-06-09 23:34:02

Chaining Syscalls

Time of First Successful Submission: 2026-06-09 23:50:13

Writing Strings

Time of First Successful Submission: 2026-06-10 02:28:23

Reading Data

Time of First Successful Submission: 2026-06-10 03:05:57

Reading Exactly

Time of First Successful Submission: 2026-06-17 02:40:53

Opening Files

Time of First Successful Submission: 2026-06-10 19:58:04

Hardcoding the Filename

Time of First Successful Submission: 2026-06-11 04:41:16

RIP-Relative Strings

Time of First Successful Submission: 2026-06-12 17:08:03

Comparing Values

Time of First Successful Submission: 2026-06-11 23:47:18

Comparing Characters

Time of First Successful Submission: 2026-06-12 00:11:55

Conditional Control Flow

Time of First Successful Submission: 2026-06-12 02:45:31

Comparing Strings

Time of First Successful Submission: 2026-06-12 02:52:11

Reverse the Password

Time of First Successful Submission: 2026-06-12 17:18:30

Conditionals Without Conditionals

Time of First Successful Submission: 2026-06-12 18:58:32

Looping

Time of First Successful Submission: 2026-06-12 20:41:00

Writing From a Shared Library

Time of First Successful Submission: 2026-06-12 21:58:01

Returning a Value

Time of First Successful Submission: 2026-06-12 22:28:15

Calling Through a Pointer

Time of First Successful Submission: 2026-06-13 18:40:16

Calling Through a Pointer with an Argument

Time of First Successful Submission: 2026-06-13 19:58:30

Saving Caller-Saved Registers

Time of First Successful Submission: 2026-06-13 20:53:15

Saving Callee-Saved Registers

Time of First Successful Submission: 2026-06-13 21:55:28

Sign Extension

Time of First Successful Submission: 2026-06-14 19:37:13

Little-Endian Bytes

Time of First Successful Submission: 2026-06-14 20:34:33

Qword by Qword

Time of First Successful Submission: 2026-06-14 21:02:22

Dword by Dword

Time of First Successful Submission: 2026-06-15 03:28:17

Word by Word

Time of First Successful Submission: 2026-06-15 03:44:23

Byte by Byte

Time of First Successful Submission: 2026-06-15 04:05:00

Cracking a Struct

Time of First Successful Submission: 2026-06-15 04:17:47

Scrambled Struct

Time of First Successful Submission: 2026-06-15 04:29:53

Reverse the Calculation

Time of First Successful Submission: 2026-06-15 18:23:20

Reverse the Reverse

Time of First Successful Submission: 2026-06-15 18:32:42

Dealing with Bitwise Operations

Time of First Successful Submission: 2026-06-15 19:22:44

Even or Odd

Time of First Successful Submission: 2026-06-16 00:08:23

Masking Bits

Time of First Successful Submission: 2026-06-16 00:48:22

Lowercase a String

Time of First Successful Submission: 2026-06-16 01:28:49

Uppercase a String

Time of First Successful Submission: 2026-06-16 02:58:34

Swap Case

Time of First Successful Submission: 2026-06-17 00:47:33

Shifting Left

Time of First Successful Submission: 2026-06-17 01:00:38

Shifting Right

Time of First Successful Submission: 2026-06-17 01:10:54

Loops on Data

Time of First Successful Submission: 2026-06-17 01:58:44

Reaching Into the Caller's Frame

Time of First Successful Submission: 2026-06-17 19:43:38

Stealing Stale Stack Data

Time of First Successful Submission: 2026-06-18 13:20:11

Using Your Own Frame

Time of First Successful Submission: 2026-06-17 20:07:06

Environment Variables on the Stack

Time of First Successful Submission: 2026-06-17 20:48:43


DSU Cyber Camps

10 / 104 22110 / 48974


Using the Terminal

Time of First Successful Submission: 2026-05-17 18:19:26

Using the VSCode Workspace

Time of First Successful Submission: 2025-03-03 06:58:27

Using the GUI Desktop

Time of First Successful Submission: 2025-03-03 07:04:02

Pasting into the Desktop

Time of First Successful Submission: 2026-05-17 18:26:54

Restarting Challenges

Time of First Successful Submission: 2026-05-17 18:52:47

Challenge Programs

Time of First Successful Submission: 2026-05-17 18:57:47

The Flag File

Time of First Successful Submission: 2026-05-22 06:15:04

Using Privileged Mode

Time of First Successful Submission: 2026-05-22 06:21:06

Persistent Home Directories - One

Time of First Successful Submission: 2026-05-22 06:30:25

Persistent Home Directories - Two

Time of First Successful Submission: 2026-05-22 06:35:51


GCA CTF

10 / 104 22111 / 48974


Using the Terminal

Time of First Successful Submission: 2026-05-17 18:19:26

Using the VSCode Workspace

Time of First Successful Submission: 2025-03-03 06:58:27

Using the GUI Desktop

Time of First Successful Submission: 2025-03-03 07:04:02

Pasting into the Desktop

Time of First Successful Submission: 2026-05-17 18:26:54

Restarting Challenges

Time of First Successful Submission: 2026-05-17 18:52:47

Challenge Programs

Time of First Successful Submission: 2026-05-17 18:57:47

The Flag File

Time of First Successful Submission: 2026-05-22 06:15:04

Using Privileged Mode

Time of First Successful Submission: 2026-05-22 06:21:06

Persistent Home Directories - One

Time of First Successful Submission: 2026-05-22 06:30:25

Persistent Home Directories - Two

Time of First Successful Submission: 2026-05-22 06:35:51