swarfte

🐧 💻

Intro to Programming Languages

15 / 234 9561 / 32434


Commands

Time of First Successful Submission: 2026-03-29 14:24:14

Command Arguments

Time of First Successful Submission: 2026-03-29 14:25:13

Command History

Time of First Successful Submission: 2026-03-29 14:25:46

The Root Path

Time of First Successful Submission: 2026-03-30 12:12:43

Absolute Paths

Time of First Successful Submission: 2026-03-30 12:07:29

Changing position

Time of First Successful Submission: 2026-03-30 12:09:37

Changing to an Absolute Path

Time of First Successful Submission: 2026-03-30 12:10:58

Relative Paths

Time of First Successful Submission: 2026-03-30 12:40:32

Cat

Time of First Successful Submission: 2026-03-30 12:44:51

Ls

Time of First Successful Submission: 2026-03-30 12:51:00

Ls All

Time of First Successful Submission: 2026-03-30 12:57:59

Find

Time of First Successful Submission: 2026-03-30 13:17:11

Piping Echo

Time of First Successful Submission: 2026-04-01 04:31:36

Piping Stdout

Time of First Successful Submission: 2026-04-01 04:51:39

Piping Stdin

Time of First Successful Submission: 2026-04-01 04:59:32


Start Here

12 / 12 1935 / 43844


Using the Terminal

Time of First Successful Submission: 2026-03-29 09:40:42

Using the VSCode Workspace

Time of First Successful Submission: 2026-03-29 09:39:48

Using the GUI Desktop

Time of First Successful Submission: 2026-03-29 09:46:00

Pasting into the Desktop

Time of First Successful Submission: 2026-03-29 09:47:15

Restarting Challenges

Time of First Successful Submission: 2026-03-29 10:00:08

Challenge Programs

Time of First Successful Submission: 2026-03-29 14:09:11

The Flag File

Time of First Successful Submission: 2026-03-29 14:11:22

Using Privileged Mode

Time of First Successful Submission: 2026-03-29 14:15:51

Persistent Home Directories - One

Time of First Successful Submission: 2026-03-29 14:18:02

Persistent Home Directories - Two

Time of First Successful Submission: 2026-03-29 14:18:46


Linux Luminarium

128 / 128 2708 / 32850


Intro to Commands

Time of First Successful Submission: 2026-03-29 14:24:14

Intro to Arguments

Time of First Successful Submission: 2026-03-29 14:25:13

Command History

Time of First Successful Submission: 2026-03-29 14:25:46

The Root

Time of First Successful Submission: 2026-03-30 12:12:43

Program and absolute paths

Time of First Successful Submission: 2026-03-30 12:07:29

Position thy self

Time of First Successful Submission: 2026-03-30 12:09:37

Position elsewhere

Time of First Successful Submission: 2026-03-30 12:10:58

implicit relative paths, from /

Time of First Successful Submission: 2026-03-30 12:40:32

explicit relative paths, from /

Time of First Successful Submission: 2026-03-30 12:41:28

implicit relative path

Time of First Successful Submission: 2026-03-30 12:42:17

home sweet home

Time of First Successful Submission: 2026-03-30 12:44:02

cat: not the pet, but the command!

Time of First Successful Submission: 2026-03-30 12:44:51

catting absolute paths

Time of First Successful Submission: 2026-03-30 12:45:18

more catting practice

Time of First Successful Submission: 2026-03-30 12:46:11

grepping for a needle in a haystack

Time of First Successful Submission: 2026-03-30 12:47:41

comparing files

Time of First Successful Submission: 2026-03-30 12:50:17

listing files

Time of First Successful Submission: 2026-03-30 12:51:00

touching files

Time of First Successful Submission: 2026-03-30 12:52:54

removing files

Time of First Successful Submission: 2026-03-30 12:53:40

moving files

Time of First Successful Submission: 2026-03-30 12:54:20

copying files

Time of First Successful Submission: 2026-03-30 12:54:49

hidden files

Time of First Successful Submission: 2026-03-30 12:57:59

An Epic Filesystem Quest

Time of First Successful Submission: 2026-03-30 13:05:01

making directories

Time of First Successful Submission: 2026-03-30 13:06:11

finding files

Time of First Successful Submission: 2026-03-30 13:17:11

linking files

Time of First Successful Submission: 2026-03-30 13:22:50

Learning From Documentation

Time of First Successful Submission: 2026-03-31 06:39:03

Learning Complex Usage

Time of First Successful Submission: 2026-03-31 06:45:34

Reading Manuals

Time of First Successful Submission: 2026-03-31 06:48:52

Searching Manuals

Time of First Successful Submission: 2026-03-31 06:50:15

Searching For Manuals

Time of First Successful Submission: 2026-03-31 06:55:39

Helpful Programs

Time of First Successful Submission: 2026-03-31 07:02:44

Help for Builtins

Time of First Successful Submission: 2026-03-31 07:04:26

Matching with *

Time of First Successful Submission: 2026-03-31 07:19:49

Matching with ?

Time of First Successful Submission: 2026-03-31 07:21:08

Matching with []

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

Matching paths with []

Time of First Successful Submission: 2026-03-31 07:25:20

Multiple globs

Time of First Successful Submission: 2026-03-31 07:27:09

Mixing globs

Time of First Successful Submission: 2026-03-31 09:26:50

Exclusionary globbing

Time of First Successful Submission: 2026-03-31 09:30:20

Tab completion

Time of First Successful Submission: 2026-03-31 09:32:10

Multiple options for tab completion

Time of First Successful Submission: 2026-03-31 09:35:07

Tab completion on commands

Time of First Successful Submission: 2026-03-31 09:37:58

Redirecting output

Time of First Successful Submission: 2026-04-01 04:31:36

Redirecting more output

Time of First Successful Submission: 2026-04-01 04:51:39

Appending output

Time of First Successful Submission: 2026-04-01 04:54:56

Redirecting errors

Time of First Successful Submission: 2026-04-01 04:57:40

Redirecting input

Time of First Successful Submission: 2026-04-01 04:59:32

Grepping stored results

Time of First Successful Submission: 2026-04-01 05:01:28

Grepping live output

Time of First Successful Submission: 2026-04-01 07:10:24

Grepping errors

Time of First Successful Submission: 2026-04-01 07:16:15

Filtering with grep -v

Time of First Successful Submission: 2026-04-01 07:19:06

Filtering with sed

Time of First Successful Submission: 2026-04-01 07:22:26

Duplicating piped data with tee

Time of First Successful Submission: 2026-04-01 07:35:18

Process substitution for input

Time of First Successful Submission: 2026-04-01 07:41:35

Writing to multiple programs

Time of First Successful Submission: 2026-04-01 08:00:16

Split-piping stderr and stdout

Time of First Successful Submission: 2026-04-01 08:20:20

Named pipes

Time of First Successful Submission: 2026-04-01 08:30:41

Printing Variables

Time of First Successful Submission: 2026-04-01 08:40:49

Setting Variables

Time of First Successful Submission: 2026-04-01 08:42:44

Multi-word Variables

Time of First Successful Submission: 2026-04-01 08:44:21

Exporting Variables

Time of First Successful Submission: 2026-04-01 08:53:27

Printing Exported Variables

Time of First Successful Submission: 2026-04-01 08:55:34

Storing Command Output

Time of First Successful Submission: 2026-04-01 08:59:18

Reading Input

Time of First Successful Submission: 2026-04-01 11:51:53

Reading Files

Time of First Successful Submission: 2026-04-01 11:56:04

Translating characters

Time of First Successful Submission: 2026-04-02 13:31:47

Deleting characters

Time of First Successful Submission: 2026-04-02 13:33:21

Deleting newlines

Time of First Successful Submission: 2026-04-02 15:38:44

Extracting the first lines with head

Time of First Successful Submission: 2026-04-02 15:40:54

Extracting specific sections of text

Time of First Successful Submission: 2026-04-02 15:43:26

Sorting data

Time of First Successful Submission: 2026-04-02 15:46:21

Listing Processes

Time of First Successful Submission: 2026-04-02 15:54:18

Killing Processes

Time of First Successful Submission: 2026-04-02 16:02:22

Interrupting Processes

Time of First Successful Submission: 2026-04-02 16:03:00

Killing Misbehaving Processes

Time of First Successful Submission: 2026-04-02 16:14:58

Suspending Processes

Time of First Successful Submission: 2026-04-02 16:16:26

Resuming Processes

Time of First Successful Submission: 2026-04-02 16:17:05

Backgrounding Processes

Time of First Successful Submission: 2026-04-02 16:20:12

Foregrounding Processes

Time of First Successful Submission: 2026-04-02 16:21:44

Starting Backgrounded Processes

Time of First Successful Submission: 2026-04-02 16:22:33

Process Exit Codes

Time of First Successful Submission: 2026-04-02 16:24:46

Becoming root with su

Time of First Successful Submission: 2026-04-03 07:27:58

Other users with su

Time of First Successful Submission: 2026-04-03 07:29:19

Cracking passwords

Time of First Successful Submission: 2026-04-03 07:33:49

Using sudo

Time of First Successful Submission: 2026-04-03 07:36:38

Changing File Ownership

Time of First Successful Submission: 2026-04-03 08:05:42

Groups and Files

Time of First Successful Submission: 2026-04-03 08:09:05

Fun With Groups Names

Time of First Successful Submission: 2026-04-03 08:11:13

Changing Permissions

Time of First Successful Submission: 2026-04-03 08:17:25

Executable Files

Time of First Successful Submission: 2026-04-03 08:32:45

Permission Tweaking Practice

Time of First Successful Submission: 2026-04-03 08:45:11

Permissions Setting Practice

Time of First Successful Submission: 2026-04-03 08:51:19

The SUID Bit

Time of First Successful Submission: 2026-04-03 08:59:43

Chaining with Semicolons

Time of First Successful Submission: 2026-04-04 03:15:01

Building on Success

Time of First Successful Submission: 2026-04-04 03:16:23

Handling Failure

Time of First Successful Submission: 2026-04-04 03:17:18

Your First Shell Script

Time of First Successful Submission: 2026-04-04 03:20:24

Redirecting Script Output

Time of First Successful Submission: 2026-04-04 15:56:57

Executable Shell Scripts

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

Understanding Shebangs

Time of First Successful Submission: 2026-04-04 16:09:59

Scripting with Arguments

Time of First Successful Submission: 2026-04-04 16:11:36

Scripting with Conditionals

Time of First Successful Submission: 2026-04-04 16:13:24

Scripting with Default Cases

Time of First Successful Submission: 2026-04-04 16:14:34

Scripting with Multiple Conditions

Time of First Successful Submission: 2026-04-04 16:16:23

Reading Shell Scripts

Time of First Successful Submission: 2026-04-04 16:25:51

Launching Screen

Time of First Successful Submission: 2026-04-04 16:29:02

Detaching and Attaching

Time of First Successful Submission: 2026-04-04 16:31:13

Finding Sessions

Time of First Successful Submission: 2026-04-07 05:11:40

Switching Windows

Time of First Successful Submission: 2026-04-07 05:19:09

Detaching and Attaching (tmux)

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

Switching Windows (tmux)

Time of First Successful Submission: 2026-04-07 05:33:06

The PATH Variable

Time of First Successful Submission: 2026-04-04 17:46:28

Setting PATH

Time of First Successful Submission: 2026-04-04 17:47:44

Finding Commands

Time of First Successful Submission: 2026-04-04 17:50:03

Adding Commands

Time of First Successful Submission: 2026-04-04 18:01:37

Hijacking Commands

Time of First Successful Submission: 2026-04-04 18:14:40

Bashrc Backdoor

Time of First Successful Submission: 2026-04-05 10:00:07

Sniffing Input

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

Overshared Directories

Time of First Successful Submission: 2026-04-05 11:18:04

Tricky Linking

Time of First Successful Submission: 2026-04-05 11:54:11

Sniffing Process Arguments

Time of First Successful Submission: 2026-04-05 12:00:29

Snooping on Configurations

Time of First Successful Submission: 2026-04-05 12:03:00

The Fork Bomb

Time of First Successful Submission: 2026-04-05 16:44:48

Disk-Space Doomsday

Time of First Successful Submission: 2026-04-05 17:13:09

rm -rf /

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

Life after rm -rf /

Time of First Successful Submission: 2026-04-05 17:29:02

Finding meaning after rm -rf /

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


Computing 101

94 / 94 398 / 21746


Your First Register

Time of First Successful Submission: 2026-04-09 15:18:59

Your First Syscall

Time of First Successful Submission: 2026-04-09 15:35:34

Exit Codes

Time of First Successful Submission: 2026-04-09 15:39:03

Building Executables

Time of First Successful Submission: 2026-04-09 15:47:42

Moving Between Registers

Time of First Successful Submission: 2026-04-09 16:05:10

Loading From Memory

Time of First Successful Submission: 2026-04-09 16:35:24

More Loading Practice

Time of First Successful Submission: 2026-04-09 16:36:35

Dereferencing Pointers

Time of First Successful Submission: 2026-04-09 16:41:28

Dereferencing Yourself

Time of First Successful Submission: 2026-04-09 16:51:29

Dereferencing with Offsets

Time of First Successful Submission: 2026-04-09 16:55:16

Stored Addresses

Time of First Successful Submission: 2026-04-09 17:02:05

Double Dereference

Time of First Successful Submission: 2026-04-09 17:06:23

The Stack

Time of First Successful Submission: 2026-04-10 03:43:22

Stack Offsets

Time of First Successful Submission: 2026-04-10 03:45:21

Program Arguments on the Stack

Time of First Successful Submission: 2026-04-10 03:54:25

Popping From the Stack

Time of First Successful Submission: 2026-04-10 03:58:15

Disassembling Programs

Time of First Successful Submission: 2026-04-10 04:21:47

Tracing Syscalls

Time of First Successful Submission: 2026-04-10 04:32:10

Starting GDB

Time of First Successful Submission: 2026-04-10 04:33:57

Quitting GDB

Time of First Successful Submission: 2026-04-10 04:34:51

Starting Programs in GDB

Time of First Successful Submission: 2026-04-10 04:37:12

Disassembling in GDB

Time of First Successful Submission: 2026-04-10 04:38:09

Stepping Through Instructions

Time of First Successful Submission: 2026-04-10 04:39:50

Reading Register Values

Time of First Successful Submission: 2026-04-10 04:41:25

Popping Stack Values

Time of First Successful Submission: 2026-04-10 11:55:54

Examining Memory

Time of First Successful Submission: 2026-04-10 11:57:31

Examining Stack Pointers

Time of First Successful Submission: 2026-04-10 12:01:02

Cooperative Debugging

Time of First Successful Submission: 2026-04-10 14:43:11

Writing Output

Time of First Successful Submission: 2026-04-10 16:21:12

Chaining Syscalls

Time of First Successful Submission: 2026-04-10 16:59:06

Writing Strings

Time of First Successful Submission: 2026-04-10 17:00:11

Reading Data

Time of First Successful Submission: 2026-04-10 17:08:41

Opening Files

Time of First Successful Submission: 2026-04-10 17:21:09

Hardcoding the Filename

Time of First Successful Submission: 2026-04-10 17:32:17

Comparing Values

Time of First Successful Submission: 2026-04-11 06:37:01

Comparing Characters

Time of First Successful Submission: 2026-04-11 08:15:21

Conditional Control Flow

Time of First Successful Submission: 2026-04-11 08:22:30

Comparing Strings

Time of First Successful Submission: 2026-04-11 09:08:52

Reverse the Password

Time of First Successful Submission: 2026-04-11 10:00:55

Conditionals Without Conditionals

Time of First Successful Submission: 2026-04-11 10:47:48

Looping

Time of First Successful Submission: 2026-04-11 13:52:29

Reverse the Calculation

Time of First Successful Submission: 2026-04-11 14:11:59

Reverse the Reverse

Time of First Successful Submission: 2026-04-11 14:16:18

Dealing with Bitwise Operations

Time of First Successful Submission: 2026-04-11 14:21:00

Loops on Data

Time of First Successful Submission: 2026-04-11 15:28:09

set-register

Time of First Successful Submission: 2026-04-11 15:38:00

set-multiple-registers

Time of First Successful Submission: 2026-04-11 16:55:36

add-to-register

Time of First Successful Submission: 2026-04-11 16:57:20

linear-equation-registers

Time of First Successful Submission: 2026-04-12 03:48:16

integer-division

Time of First Successful Submission: 2026-04-12 03:52:19

modulo-operation

Time of First Successful Submission: 2026-04-12 03:56:00

set-upper-byte

Time of First Successful Submission: 2026-04-12 03:58:29

efficient-modulo

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

byte-extraction

Time of First Successful Submission: 2026-04-12 06:10:07

bitwise-and

Time of First Successful Submission: 2026-04-12 06:15:43

check-even

Time of First Successful Submission: 2026-04-12 08:56:50

memory-read

Time of First Successful Submission: 2026-04-12 08:59:42

memory-write

Time of First Successful Submission: 2026-04-12 09:00:35

memory-increment

Time of First Successful Submission: 2026-04-12 09:32:43

byte-access

Time of First Successful Submission: 2026-04-12 09:34:26

memory-size-access

Time of First Successful Submission: 2026-04-12 09:56:14

little-endian-write

Time of First Successful Submission: 2026-04-12 10:19:22

memory-sum

Time of First Successful Submission: 2026-04-12 10:23:32

stack-subtraction

Time of First Successful Submission: 2026-04-12 10:30:52

swap-stack-values

Time of First Successful Submission: 2026-04-12 10:32:43

average-stack-values

Time of First Successful Submission: 2026-04-12 10:41:28

absolute-jump

Time of First Successful Submission: 2026-04-12 10:46:10

relative-jump

Time of First Successful Submission: 2026-04-12 11:03:18

jump-trampoline

Time of First Successful Submission: 2026-04-12 11:17:29

conditional-jump

Time of First Successful Submission: 2026-04-12 15:16:31

indirect-jump

Time of First Successful Submission: 2026-04-12 16:28:11

average-loop

Time of First Successful Submission: 2026-04-12 16:34:14

count-non-zero

Time of First Successful Submission: 2026-04-12 16:53:28

string-lower

Time of First Successful Submission: 2026-04-13 03:40:24

most-common-byte

Time of First Successful Submission: 2026-04-13 03:55:10

Exit

Time of First Successful Submission: 2026-04-13 04:01:37

Socket

Time of First Successful Submission: 2026-04-13 16:58:18

Bind

Time of First Successful Submission: 2026-04-14 16:37:22

Listen

Time of First Successful Submission: 2026-04-14 16:41:40

Accept

Time of First Successful Submission: 2026-04-14 16:45:47

Static Response

Time of First Successful Submission: 2026-04-14 16:59:20

Dynamic Response

Time of First Successful Submission: 2026-04-14 17:04:34

Iterative GET Server

Time of First Successful Submission: 2026-04-14 17:07:01

Concurrent GET Server

Time of First Successful Submission: 2026-04-14 17:10:41

Concurrent POST Server

Time of First Successful Submission: 2026-04-14 17:17:33

Web Server

Time of First Successful Submission: 2026-04-15 02:33:29

Debugging Programs

Time of First Successful Submission: 2026-04-15 02:53:46

Inspecting Registers

Time of First Successful Submission: 2026-04-15 02:57:09

Examining Memory

Time of First Successful Submission: 2026-04-15 03:18:04

Setting Breakpoints

Time of First Successful Submission: 2026-04-15 03:36:42

GDB Scripting

Time of First Successful Submission: 2026-04-15 03:56:00

Modifying Data

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

Modifying Execution

Time of First Successful Submission: 2026-04-15 04:09:33

Broken Functions

Time of First Successful Submission: 2026-04-15 04:33:25


Playing With Programs

8 / 116 18723 / 23501


What's the password?

Time of First Successful Submission: 2026-04-15 04:51:13

... and again!

Time of First Successful Submission: 2026-04-15 04:51:58

Newline Troubles

Time of First Successful Submission: 2026-04-15 04:57:51

Reasoning about files

Time of First Successful Submission: 2026-04-15 05:01:44

Specifying Filenames

Time of First Successful Submission: 2026-04-15 16:07:11

Binary and Hex Encoding

Time of First Successful Submission: 2026-04-15 16:16:41

More Hex

Time of First Successful Submission: 2026-04-15 16:18:27

Decoding Hex

Time of First Successful Submission: 2026-04-15 16:22:47


GCA CTF

12 / 104 2172 / 44123


Using the Terminal

Time of First Successful Submission: 2026-03-29 09:40:42

Using the VSCode Workspace

Time of First Successful Submission: 2026-03-29 09:39:48

Using the GUI Desktop

Time of First Successful Submission: 2026-03-29 09:46:00

Pasting into the Desktop

Time of First Successful Submission: 2026-03-29 09:47:15

Connecting over SSH

Time of First Successful Submission: 2026-03-29 09:56:49

Restarting Challenges

Time of First Successful Submission: 2026-03-29 10:00:08

Getting Help

Time of First Successful Submission: 2026-03-29 10:03:30

Challenge Programs

Time of First Successful Submission: 2026-03-29 14:09:11

The Flag File

Time of First Successful Submission: 2026-03-29 14:11:22

Using Privileged Mode

Time of First Successful Submission: 2026-03-29 14:15:51

Persistent Home Directories - One

Time of First Successful Submission: 2026-03-29 14:18:02

Persistent Home Directories - Two

Time of First Successful Submission: 2026-03-29 14:18:46