KabanOS

🐧 💻

Intro to Programming Languages

15 / 234 9428 / 32792


Commands

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

Command Arguments

Time of First Successful Submission: 2026-03-24 00:16:44

Command History

Time of First Successful Submission: 2026-03-24 00:17:16

The Root Path

Time of First Successful Submission: 2026-03-24 00:18:15

Absolute Paths

Time of First Successful Submission: 2026-03-24 00:18:38

Changing position

Time of First Successful Submission: 2026-03-24 00:19:47

Changing to an Absolute Path

Time of First Successful Submission: 2026-03-24 00:22:03

Relative Paths

Time of First Successful Submission: 2026-03-24 00:23:00

Cat

Time of First Successful Submission: 2026-03-24 00:27:39

Ls

Time of First Successful Submission: 2026-03-24 00:36:09

Ls All

Time of First Successful Submission: 2026-03-24 00:44:15

Find

Time of First Successful Submission: 2026-03-24 00:59:16

Piping Echo

Time of First Successful Submission: 2026-03-24 11:28:35

Piping Stdout

Time of First Successful Submission: 2026-03-24 11:29:44

Piping Stdin

Time of First Successful Submission: 2026-03-24 11:34:48


Start Here

12 / 12 1858 / 44375


Using the Terminal

Time of First Successful Submission: 2026-03-23 23:41:52

Using the VSCode Workspace

Time of First Successful Submission: 2026-03-23 23:45:31

Using the GUI Desktop

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

Pasting into the Desktop

Time of First Successful Submission: 2026-03-23 23:49:42

Restarting Challenges

Time of First Successful Submission: 2026-03-23 23:51:47

Challenge Programs

Time of First Successful Submission: 2026-03-24 00:05:36

The Flag File

Time of First Successful Submission: 2026-03-23 23:58:11

Using Privileged Mode

Time of First Successful Submission: 2026-03-24 00:01:43

Persistent Home Directories - One

Time of First Successful Submission: 2026-03-24 00:03:58

Persistent Home Directories - Two

Time of First Successful Submission: 2026-03-24 00:04:36


Linux Luminarium

128 / 128 2620 / 33220


Intro to Commands

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

Intro to Arguments

Time of First Successful Submission: 2026-03-24 00:16:44

Command History

Time of First Successful Submission: 2026-03-24 00:17:16

The Root

Time of First Successful Submission: 2026-03-24 00:18:15

Program and absolute paths

Time of First Successful Submission: 2026-03-24 00:18:38

Position thy self

Time of First Successful Submission: 2026-03-24 00:19:47

Position elsewhere

Time of First Successful Submission: 2026-03-24 00:22:03

implicit relative paths, from /

Time of First Successful Submission: 2026-03-24 00:23:00

explicit relative paths, from /

Time of First Successful Submission: 2026-03-24 00:23:44

implicit relative path

Time of First Successful Submission: 2026-03-24 00:24:42

home sweet home

Time of First Successful Submission: 2026-03-24 00:25:54

cat: not the pet, but the command!

Time of First Successful Submission: 2026-03-24 00:27:39

catting absolute paths

Time of First Successful Submission: 2026-03-24 00:28:19

more catting practice

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

grepping for a needle in a haystack

Time of First Successful Submission: 2026-03-24 00:30:21

comparing files

Time of First Successful Submission: 2026-03-24 00:32:25

listing files

Time of First Successful Submission: 2026-03-24 00:36:09

touching files

Time of First Successful Submission: 2026-03-24 00:37:18

removing files

Time of First Successful Submission: 2026-03-24 00:38:03

moving files

Time of First Successful Submission: 2026-03-24 00:39:48

copying files

Time of First Successful Submission: 2026-03-24 00:40:27

hidden files

Time of First Successful Submission: 2026-03-24 00:44:15

An Epic Filesystem Quest

Time of First Successful Submission: 2026-03-24 00:51:32

making directories

Time of First Successful Submission: 2026-03-24 00:52:14

finding files

Time of First Successful Submission: 2026-03-24 00:59:16

linking files

Time of First Successful Submission: 2026-03-24 01:11:23

Learning From Documentation

Time of First Successful Submission: 2026-03-24 01:14:31

Learning Complex Usage

Time of First Successful Submission: 2026-03-24 01:15:32

Reading Manuals

Time of First Successful Submission: 2026-03-24 01:20:08

Searching Manuals

Time of First Successful Submission: 2026-03-24 01:21:50

Searching For Manuals

Time of First Successful Submission: 2026-03-24 01:24:58

Helpful Programs

Time of First Successful Submission: 2026-03-24 01:26:42

Help for Builtins

Time of First Successful Submission: 2026-03-24 01:28:47

Matching with *

Time of First Successful Submission: 2026-03-24 09:46:21

Matching with ?

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

Matching with []

Time of First Successful Submission: 2026-03-24 10:08:35

Matching paths with []

Time of First Successful Submission: 2026-03-24 10:14:28

Multiple globs

Time of First Successful Submission: 2026-03-24 10:18:22

Mixing globs

Time of First Successful Submission: 2026-03-24 10:40:18

Exclusionary globbing

Time of First Successful Submission: 2026-03-24 10:39:18

Tab completion

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

Multiple options for tab completion

Time of First Successful Submission: 2026-03-24 10:44:19

Tab completion on commands

Time of First Successful Submission: 2026-03-24 10:44:46

Redirecting output

Time of First Successful Submission: 2026-03-24 11:28:35

Redirecting more output

Time of First Successful Submission: 2026-03-24 11:29:44

Appending output

Time of First Successful Submission: 2026-03-24 11:31:41

Redirecting errors

Time of First Successful Submission: 2026-03-24 11:33:02

Redirecting input

Time of First Successful Submission: 2026-03-24 11:34:48

Grepping stored results

Time of First Successful Submission: 2026-03-24 11:39:40

Grepping live output

Time of First Successful Submission: 2026-03-24 11:45:29

Grepping errors

Time of First Successful Submission: 2026-03-24 11:47:34

Filtering with grep -v

Time of First Successful Submission: 2026-03-24 11:49:59

Filtering with sed

Time of First Successful Submission: 2026-03-24 11:52:23

Duplicating piped data with tee

Time of First Successful Submission: 2026-03-24 12:08:43

Process substitution for input

Time of First Successful Submission: 2026-03-24 12:12:54

Writing to multiple programs

Time of First Successful Submission: 2026-03-24 13:43:33

Split-piping stderr and stdout

Time of First Successful Submission: 2026-03-24 13:54:56

Named pipes

Time of First Successful Submission: 2026-03-24 14:06:48

Printing Variables

Time of First Successful Submission: 2026-03-24 14:08:45

Setting Variables

Time of First Successful Submission: 2026-03-24 14:10:50

Multi-word Variables

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

Exporting Variables

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

Printing Exported Variables

Time of First Successful Submission: 2026-03-24 14:15:05

Storing Command Output

Time of First Successful Submission: 2026-03-24 14:16:34

Reading Input

Time of First Successful Submission: 2026-03-24 14:20:33

Reading Files

Time of First Successful Submission: 2026-03-24 14:23:25

Translating characters

Time of First Successful Submission: 2026-03-24 14:35:55

Deleting characters

Time of First Successful Submission: 2026-03-24 14:38:50

Deleting newlines

Time of First Successful Submission: 2026-03-24 14:41:52

Extracting the first lines with head

Time of First Successful Submission: 2026-03-24 14:43:16

Extracting specific sections of text

Time of First Successful Submission: 2026-03-24 14:46:08

Sorting data

Time of First Successful Submission: 2026-03-24 14:47:45

Listing Processes

Time of First Successful Submission: 2026-03-24 14:56:44

Killing Processes

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

Interrupting Processes

Time of First Successful Submission: 2026-03-24 15:01:25

Killing Misbehaving Processes

Time of First Successful Submission: 2026-03-24 15:09:50

Suspending Processes

Time of First Successful Submission: 2026-03-24 15:15:07

Resuming Processes

Time of First Successful Submission: 2026-03-24 15:18:07

Backgrounding Processes

Time of First Successful Submission: 2026-03-24 16:00:21

Foregrounding Processes

Time of First Successful Submission: 2026-03-24 16:02:50

Starting Backgrounded Processes

Time of First Successful Submission: 2026-03-24 16:03:18

Process Exit Codes

Time of First Successful Submission: 2026-03-24 16:06:48

Becoming root with su

Time of First Successful Submission: 2026-03-24 16:14:39

Other users with su

Time of First Successful Submission: 2026-03-24 16:17:01

Cracking passwords

Time of First Successful Submission: 2026-03-24 18:28:41

Using sudo

Time of First Successful Submission: 2026-03-24 18:33:37

Changing File Ownership

Time of First Successful Submission: 2026-03-25 00:21:33

Groups and Files

Time of First Successful Submission: 2026-03-25 00:25:52

Fun With Groups Names

Time of First Successful Submission: 2026-03-25 00:27:15

Changing Permissions

Time of First Successful Submission: 2026-03-25 00:32:00

Executable Files

Time of First Successful Submission: 2026-03-25 00:34:29

Permission Tweaking Practice

Time of First Successful Submission: 2026-03-25 00:37:12

Permissions Setting Practice

Time of First Successful Submission: 2026-03-25 00:43:04

The SUID Bit

Time of First Successful Submission: 2026-03-25 00:45:45

Chaining with Semicolons

Time of First Successful Submission: 2026-03-25 00:51:42

Building on Success

Time of First Successful Submission: 2026-03-25 00:52:59

Handling Failure

Time of First Successful Submission: 2026-03-25 01:11:06

Your First Shell Script

Time of First Successful Submission: 2026-03-25 01:22:18

Redirecting Script Output

Time of First Successful Submission: 2026-03-25 01:25:30

Executable Shell Scripts

Time of First Successful Submission: 2026-03-25 01:26:46

Understanding Shebangs

Time of First Successful Submission: 2026-03-25 01:29:58

Scripting with Arguments

Time of First Successful Submission: 2026-03-25 01:31:40

Scripting with Conditionals

Time of First Successful Submission: 2026-03-25 01:35:08

Scripting with Default Cases

Time of First Successful Submission: 2026-03-25 01:36:16

Scripting with Multiple Conditions

Time of First Successful Submission: 2026-03-25 01:38:55

Reading Shell Scripts

Time of First Successful Submission: 2026-03-25 01:43:39

Launching Screen

Time of First Successful Submission: 2026-03-25 11:24:02

Detaching and Attaching

Time of First Successful Submission: 2026-03-25 11:25:10

Finding Sessions

Time of First Successful Submission: 2026-03-25 11:26:46

Switching Windows

Time of First Successful Submission: 2026-03-25 11:27:54

Detaching and Attaching (tmux)

Time of First Successful Submission: 2026-03-25 11:29:00

Switching Windows (tmux)

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

The PATH Variable

Time of First Successful Submission: 2026-03-25 11:34:45

Setting PATH

Time of First Successful Submission: 2026-03-25 11:37:03

Finding Commands

Time of First Successful Submission: 2026-03-25 11:38:14

Adding Commands

Time of First Successful Submission: 2026-03-25 13:41:02

Hijacking Commands

Time of First Successful Submission: 2026-03-25 13:53:44

Bashrc Backdoor

Time of First Successful Submission: 2026-03-25 14:53:51

Sniffing Input

Time of First Successful Submission: 2026-03-29 10:04:44

Overshared Directories

Time of First Successful Submission: 2026-03-29 10:40:04

Tricky Linking

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

Sniffing Process Arguments

Time of First Successful Submission: 2026-03-29 14:08:58

Snooping on Configurations

Time of First Successful Submission: 2026-03-29 14:12:44

The Fork Bomb

Time of First Successful Submission: 2026-03-29 14:33:00

Disk-Space Doomsday

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

rm -rf /

Time of First Successful Submission: 2026-03-29 14:40:19

Life after rm -rf /

Time of First Successful Submission: 2026-03-29 14:45:39

Finding meaning after rm -rf /

Time of First Successful Submission: 2026-03-29 14:48:44


Computing 101

94 / 94 357 / 22011


Your First Register

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

Your First Syscall

Time of First Successful Submission: 2026-03-29 15:00:49

Exit Codes

Time of First Successful Submission: 2026-03-29 15:05:26

Building Executables

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

Moving Between Registers

Time of First Successful Submission: 2026-03-30 09:10:22

Loading From Memory

Time of First Successful Submission: 2026-03-30 09:43:54

More Loading Practice

Time of First Successful Submission: 2026-03-30 09:44:48

Dereferencing Pointers

Time of First Successful Submission: 2026-03-30 09:47:06

Dereferencing Yourself

Time of First Successful Submission: 2026-03-30 09:48:25

Dereferencing with Offsets

Time of First Successful Submission: 2026-03-30 09:49:57

Stored Addresses

Time of First Successful Submission: 2026-03-30 09:53:18

Double Dereference

Time of First Successful Submission: 2026-03-30 09:55:24

The Stack

Time of First Successful Submission: 2026-03-30 09:57:06

Stack Offsets

Time of First Successful Submission: 2026-03-30 10:04:17

Program Arguments on the Stack

Time of First Successful Submission: 2026-03-30 10:07:45

Popping From the Stack

Time of First Successful Submission: 2026-03-30 10:09:18

Disassembling Programs

Time of First Successful Submission: 2026-03-30 11:25:05

Tracing Syscalls

Time of First Successful Submission: 2026-03-30 11:31:51

Starting GDB

Time of First Successful Submission: 2026-03-30 11:33:19

Quitting GDB

Time of First Successful Submission: 2026-03-30 11:34:53

Starting Programs in GDB

Time of First Successful Submission: 2026-03-30 11:36:22

Disassembling in GDB

Time of First Successful Submission: 2026-03-30 11:37:28

Stepping Through Instructions

Time of First Successful Submission: 2026-03-30 11:40:01

Reading Register Values

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

Popping Stack Values

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

Examining Memory

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

Examining Stack Pointers

Time of First Successful Submission: 2026-03-30 11:44:50

Cooperative Debugging

Time of First Successful Submission: 2026-03-30 11:54:30

Writing Output

Time of First Successful Submission: 2026-03-30 13:43:34

Chaining Syscalls

Time of First Successful Submission: 2026-03-30 13:48:25

Writing Strings

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

Reading Data

Time of First Successful Submission: 2026-03-30 14:02:51

Opening Files

Time of First Successful Submission: 2026-03-30 15:49:52

Hardcoding the Filename

Time of First Successful Submission: 2026-03-30 16:04:31

Comparing Values

Time of First Successful Submission: 2026-03-30 16:16:33

Comparing Characters

Time of First Successful Submission: 2026-03-30 17:38:46

Conditional Control Flow

Time of First Successful Submission: 2026-03-30 18:10:39

Comparing Strings

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

Reverse the Password

Time of First Successful Submission: 2026-03-30 18:17:23

Conditionals Without Conditionals

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

Looping

Time of First Successful Submission: 2026-03-30 20:41:00

Reverse the Calculation

Time of First Successful Submission: 2026-03-30 21:51:01

Reverse the Reverse

Time of First Successful Submission: 2026-03-30 21:53:44

Dealing with Bitwise Operations

Time of First Successful Submission: 2026-03-30 22:34:58

Loops on Data

Time of First Successful Submission: 2026-03-30 22:36:09

set-register

Time of First Successful Submission: 2026-03-30 22:44:21

set-multiple-registers

Time of First Successful Submission: 2026-03-30 22:47:40

add-to-register

Time of First Successful Submission: 2026-03-30 22:49:03

linear-equation-registers

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

integer-division

Time of First Successful Submission: 2026-03-30 22:53:24

modulo-operation

Time of First Successful Submission: 2026-03-30 22:54:14

set-upper-byte

Time of First Successful Submission: 2026-03-30 22:55:26

efficient-modulo

Time of First Successful Submission: 2026-03-30 22:59:01

byte-extraction

Time of First Successful Submission: 2026-03-30 23:06:34

bitwise-and

Time of First Successful Submission: 2026-03-30 23:09:32

check-even

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

memory-read

Time of First Successful Submission: 2026-03-30 23:13:42

memory-write

Time of First Successful Submission: 2026-03-30 23:14:18

memory-increment

Time of First Successful Submission: 2026-03-30 23:16:13

byte-access

Time of First Successful Submission: 2026-03-30 23:16:58

memory-size-access

Time of First Successful Submission: 2026-03-30 23:17:51

little-endian-write

Time of First Successful Submission: 2026-03-30 23:25:18

memory-sum

Time of First Successful Submission: 2026-03-30 23:27:20

stack-subtraction

Time of First Successful Submission: 2026-03-30 23:28:59

swap-stack-values

Time of First Successful Submission: 2026-03-30 23:30:53

average-stack-values

Time of First Successful Submission: 2026-03-31 00:41:45

absolute-jump

Time of First Successful Submission: 2026-04-01 13:36:47

relative-jump

Time of First Successful Submission: 2026-04-01 13:44:23

jump-trampoline

Time of First Successful Submission: 2026-04-01 14:57:33

conditional-jump

Time of First Successful Submission: 2026-04-01 23:42:24

indirect-jump

Time of First Successful Submission: 2026-04-02 00:29:14

average-loop

Time of First Successful Submission: 2026-04-02 00:38:02

count-non-zero

Time of First Successful Submission: 2026-04-02 00:46:44

string-lower

Time of First Successful Submission: 2026-04-02 01:49:04

most-common-byte

Time of First Successful Submission: 2026-04-02 03:30:14

Exit

Time of First Successful Submission: 2026-04-02 14:09:29

Socket

Time of First Successful Submission: 2026-04-02 14:50:06

Bind

Time of First Successful Submission: 2026-04-02 17:32:18

Listen

Time of First Successful Submission: 2026-04-02 17:46:41

Accept

Time of First Successful Submission: 2026-04-02 18:05:46

Static Response

Time of First Successful Submission: 2026-04-02 18:32:28

Dynamic Response

Time of First Successful Submission: 2026-04-02 21:28:25

Iterative GET Server

Time of First Successful Submission: 2026-04-02 21:34:37

Concurrent GET Server

Time of First Successful Submission: 2026-04-02 21:48:51

Concurrent POST Server

Time of First Successful Submission: 2026-04-03 00:50:22

Web Server

Time of First Successful Submission: 2026-04-03 00:50:59

Debugging Programs

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

Inspecting Registers

Time of First Successful Submission: 2026-04-04 14:15:52

Examining Memory

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

Setting Breakpoints

Time of First Successful Submission: 2026-04-04 14:26:35

GDB Scripting

Time of First Successful Submission: 2026-04-04 16:33:35

Modifying Data

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

Modifying Execution

Time of First Successful Submission: 2026-04-04 17:59:17

Broken Functions

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


Playing With Programs

16 / 116 16359 / 23591


What's the password?

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

... and again!

Time of First Successful Submission: 2026-04-04 18:58:34

Newline Troubles

Time of First Successful Submission: 2026-04-04 19:08:46

Reasoning about files

Time of First Successful Submission: 2026-04-04 19:17:30

Specifying Filenames

Time of First Successful Submission: 2026-04-04 19:19:25

Binary and Hex Encoding

Time of First Successful Submission: 2026-04-04 19:25:00

More Hex

Time of First Successful Submission: 2026-04-04 19:39:33

Decoding Hex

Time of First Successful Submission: 2026-04-04 19:43:57

Decoding Practice

Time of First Successful Submission: 2026-04-04 20:04:25

Encoding Practice

Time of First Successful Submission: 2026-04-04 20:17:55

Hex-encoding ASCII

Time of First Successful Submission: 2026-04-04 20:38:19

Nested Encoding

Time of First Successful Submission: 2026-04-04 20:51:12

Hex-encoding UTF-8

Time of First Successful Submission: 2026-04-04 21:02:05

UTF Mixups

Time of First Successful Submission: 2026-04-04 21:06:46

Modifying Encoded Data

Time of First Successful Submission: 2026-04-04 21:14:54

Decoding Base64

Time of First Successful Submission: 2026-04-04 21:30:08


GCA CTF

12 / 104 2106 / 44655


Using the Terminal

Time of First Successful Submission: 2026-03-23 23:41:52

Using the VSCode Workspace

Time of First Successful Submission: 2026-03-23 23:45:31

Using the GUI Desktop

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

Pasting into the Desktop

Time of First Successful Submission: 2026-03-23 23:49:42

Connecting over SSH

Time of First Successful Submission: 2026-03-24 00:14:26

Restarting Challenges

Time of First Successful Submission: 2026-03-23 23:51:47

Getting Help

Time of First Successful Submission: 2026-03-23 23:54:43

Challenge Programs

Time of First Successful Submission: 2026-03-24 00:05:36

The Flag File

Time of First Successful Submission: 2026-03-23 23:58:11

Using Privileged Mode

Time of First Successful Submission: 2026-03-24 00:01:43

Persistent Home Directories - One

Time of First Successful Submission: 2026-03-24 00:03:58

Persistent Home Directories - Two

Time of First Successful Submission: 2026-03-24 00:04:36