karima

🐧

Intro to Programming Languages

15 / 234 5210 / 32000


Commands

Time of First Successful Submission: 2025-09-25 12:18:36

Command Arguments

Time of First Successful Submission: 2025-09-25 12:20:29

Command History

Time of First Successful Submission: 2025-09-25 12:21:43

The Root Path

Time of First Successful Submission: 2025-09-25 12:24:42

Absolute Paths

Time of First Successful Submission: 2025-09-25 12:27:39

Changing position

Time of First Successful Submission: 2025-09-25 12:49:17

Changing to an Absolute Path

Time of First Successful Submission: 2025-09-25 12:50:54

Relative Paths

Time of First Successful Submission: 2025-09-25 12:54:57

Cat

Time of First Successful Submission: 2025-09-25 13:49:25

Ls

Time of First Successful Submission: 2025-09-25 14:16:13

Ls All

Time of First Successful Submission: 2025-09-25 14:23:19

Find

Time of First Successful Submission: 2025-09-25 16:15:38

Piping Echo

Time of First Successful Submission: 2025-10-04 11:26:09

Piping Stdout

Time of First Successful Submission: 2025-10-04 11:48:36

Piping Stdin

Time of First Successful Submission: 2025-10-07 18:52:43


Linux Luminarium

128 / 128 2116 / 32409


Intro to Commands

Time of First Successful Submission: 2025-09-25 12:18:36

Intro to Arguments

Time of First Successful Submission: 2025-09-25 12:20:29

Command History

Time of First Successful Submission: 2025-09-25 12:21:43

The Root

Time of First Successful Submission: 2025-09-25 12:24:42

Program and absolute paths

Time of First Successful Submission: 2025-09-25 12:27:39

Position thy self

Time of First Successful Submission: 2025-09-25 12:49:17

Position elsewhere

Time of First Successful Submission: 2025-09-25 12:50:54

implicit relative paths, from /

Time of First Successful Submission: 2025-09-25 12:54:57

explicit relative paths, from /

Time of First Successful Submission: 2025-09-25 13:26:20

implicit relative path

Time of First Successful Submission: 2025-09-25 13:28:16

home sweet home

Time of First Successful Submission: 2025-09-25 13:42:58

cat: not the pet, but the command!

Time of First Successful Submission: 2025-09-25 13:49:25

catting absolute paths

Time of First Successful Submission: 2025-09-25 13:50:30

more catting practice

Time of First Successful Submission: 2025-09-25 13:55:19

grepping for a needle in a haystack

Time of First Successful Submission: 2025-09-25 14:05:34

comparing files

Time of First Successful Submission: 2025-09-25 14:11:24

listing files

Time of First Successful Submission: 2025-09-25 14:16:13

touching files

Time of First Successful Submission: 2025-09-25 14:17:31

removing files

Time of First Successful Submission: 2025-09-25 14:19:03

moving files

Time of First Successful Submission: 2025-09-25 14:21:45

copying files

Time of First Successful Submission: 2026-02-18 12:49:36

hidden files

Time of First Successful Submission: 2025-09-25 14:23:19

An Epic Filesystem Quest

Time of First Successful Submission: 2025-09-25 16:02:45

making directories

Time of First Successful Submission: 2025-09-25 16:05:00

finding files

Time of First Successful Submission: 2025-09-25 16:15:38

linking files

Time of First Successful Submission: 2025-09-25 17:58:44

Learning From Documentation

Time of First Successful Submission: 2025-09-25 19:28:07

Learning Complex Usage

Time of First Successful Submission: 2025-09-25 19:31:34

Reading Manuals

Time of First Successful Submission: 2025-09-25 19:40:31

Searching Manuals

Time of First Successful Submission: 2025-09-25 19:45:44

Searching For Manuals

Time of First Successful Submission: 2025-10-04 08:29:53

Helpful Programs

Time of First Successful Submission: 2025-10-04 08:38:21

Help for Builtins

Time of First Successful Submission: 2025-10-04 08:50:31

Matching with *

Time of First Successful Submission: 2025-10-04 09:00:45

Matching with ?

Time of First Successful Submission: 2025-10-04 09:04:41

Matching with []

Time of First Successful Submission: 2025-10-04 09:08:05

Matching paths with []

Time of First Successful Submission: 2025-10-04 09:44:35

Multiple globs

Time of First Successful Submission: 2025-10-04 09:30:14

Mixing globs

Time of First Successful Submission: 2025-10-04 10:42:51

Exclusionary globbing

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

Tab completion

Time of First Successful Submission: 2025-10-04 10:49:49

Multiple options for tab completion

Time of First Successful Submission: 2025-10-04 11:23:06

Tab completion on commands

Time of First Successful Submission: 2025-10-04 11:23:44

Redirecting output

Time of First Successful Submission: 2025-10-04 11:26:09

Redirecting more output

Time of First Successful Submission: 2025-10-04 11:48:36

Appending output

Time of First Successful Submission: 2025-10-04 12:18:01

Redirecting errors

Time of First Successful Submission: 2025-10-07 18:49:19

Redirecting input

Time of First Successful Submission: 2025-10-07 18:52:43

Grepping stored results

Time of First Successful Submission: 2025-10-07 19:17:21

Grepping live output

Time of First Successful Submission: 2025-10-07 19:19:06

Grepping errors

Time of First Successful Submission: 2025-10-07 19:26:51

Filtering with grep -v

Time of First Successful Submission: 2025-10-07 19:29:09

Filtering with sed

Time of First Successful Submission: 2026-02-18 12:56:47

Duplicating piped data with tee

Time of First Successful Submission: 2025-10-07 21:37:45

Process substitution for input

Time of First Successful Submission: 2025-10-07 22:03:31

Writing to multiple programs

Time of First Successful Submission: 2025-10-08 07:57:07

Split-piping stderr and stdout

Time of First Successful Submission: 2025-10-08 08:20:30

Named pipes

Time of First Successful Submission: 2025-10-08 09:01:10

Printing Variables

Time of First Successful Submission: 2025-10-08 09:03:16

Setting Variables

Time of First Successful Submission: 2025-10-08 09:13:14

Multi-word Variables

Time of First Successful Submission: 2025-10-08 09:14:38

Exporting Variables

Time of First Successful Submission: 2025-10-08 09:27:26

Printing Exported Variables

Time of First Successful Submission: 2025-10-08 09:29:03

Storing Command Output

Time of First Successful Submission: 2025-10-08 09:30:54

Reading Input

Time of First Successful Submission: 2025-10-08 10:00:11

Reading Files

Time of First Successful Submission: 2025-10-08 10:07:30

Translating characters

Time of First Successful Submission: 2025-10-08 10:18:46

Deleting characters

Time of First Successful Submission: 2025-10-08 10:21:15

Deleting newlines

Time of First Successful Submission: 2025-10-08 10:23:52

Extracting the first lines with head

Time of First Successful Submission: 2025-10-08 10:41:15

Extracting specific sections of text

Time of First Successful Submission: 2025-10-08 10:59:18

Sorting data

Time of First Successful Submission: 2025-10-08 11:00:53

Listing Processes

Time of First Successful Submission: 2025-10-11 09:23:24

Killing Processes

Time of First Successful Submission: 2025-10-11 09:30:03

Interrupting Processes

Time of First Successful Submission: 2025-10-11 09:30:49

Killing Misbehaving Processes

Time of First Successful Submission: 2025-10-11 09:40:21

Suspending Processes

Time of First Successful Submission: 2025-10-11 09:42:31

Resuming Processes

Time of First Successful Submission: 2025-10-11 09:44:05

Backgrounding Processes

Time of First Successful Submission: 2025-10-11 10:02:34

Foregrounding Processes

Time of First Successful Submission: 2025-10-11 10:04:19

Starting Backgrounded Processes

Time of First Successful Submission: 2025-10-11 10:10:07

Process Exit Codes

Time of First Successful Submission: 2025-10-11 10:31:20

Becoming root with su

Time of First Successful Submission: 2025-10-11 11:55:04

Other users with su

Time of First Successful Submission: 2025-10-11 11:56:08

Cracking passwords

Time of First Successful Submission: 2025-10-11 12:05:14

Using sudo

Time of First Successful Submission: 2025-10-11 12:08:14

Changing File Ownership

Time of First Successful Submission: 2025-10-11 12:31:21

Groups and Files

Time of First Successful Submission: 2025-10-11 12:48:42

Fun With Groups Names

Time of First Successful Submission: 2025-10-11 12:50:06

Changing Permissions

Time of First Successful Submission: 2025-10-11 13:03:46

Executable Files

Time of First Successful Submission: 2025-10-11 13:05:06

Permission Tweaking Practice

Time of First Successful Submission: 2025-10-11 13:25:14

Permissions Setting Practice

Time of First Successful Submission: 2025-10-11 13:35:26

The SUID Bit

Time of First Successful Submission: 2025-10-11 14:03:37

Chaining with Semicolons

Time of First Successful Submission: 2025-10-11 14:10:13

Building on Success

Time of First Successful Submission: 2025-10-11 14:14:23

Handling Failure

Time of First Successful Submission: 2025-10-11 14:15:57

Your First Shell Script

Time of First Successful Submission: 2025-10-11 14:28:14

Redirecting Script Output

Time of First Successful Submission: 2025-10-11 17:45:38

Executable Shell Scripts

Time of First Successful Submission: 2025-10-11 17:50:04

Understanding Shebangs

Time of First Successful Submission: 2025-10-11 18:04:13

Scripting with Arguments

Time of First Successful Submission: 2025-10-11 18:10:53

Scripting with Conditionals

Time of First Successful Submission: 2025-10-11 18:19:52

Scripting with Default Cases

Time of First Successful Submission: 2025-10-11 18:22:36

Scripting with Multiple Conditions

Time of First Successful Submission: 2025-10-11 18:32:51

Reading Shell Scripts

Time of First Successful Submission: 2025-10-11 19:14:42

Launching Screen

Time of First Successful Submission: 2025-10-11 19:31:04

Detaching and Attaching

Time of First Successful Submission: 2025-10-11 19:37:43

Finding Sessions

Time of First Successful Submission: 2025-10-11 19:42:41

Switching Windows

Time of First Successful Submission: 2025-10-11 19:50:12

Detaching and Attaching (tmux)

Time of First Successful Submission: 2025-10-11 19:52:20

Switching Windows (tmux)

Time of First Successful Submission: 2025-10-11 19:57:40

The PATH Variable

Time of First Successful Submission: 2025-10-12 21:22:19

Setting PATH

Time of First Successful Submission: 2025-10-17 13:20:13

Finding Commands

Time of First Successful Submission: 2025-10-17 13:28:12

Adding Commands

Time of First Successful Submission: 2025-10-17 22:09:55

Hijacking Commands

Time of First Successful Submission: 2025-10-17 23:17:32

Bashrc Backdoor

Time of First Successful Submission: 2025-10-17 23:21:40

Sniffing Input

Time of First Successful Submission: 2026-02-17 17:10:34

Overshared Directories

Time of First Successful Submission: 2026-02-17 17:27:40

Tricky Linking

Time of First Successful Submission: 2026-02-17 17:59:25

Sniffing Process Arguments

Time of First Successful Submission: 2026-02-17 18:27:09

Snooping on Configurations

Time of First Successful Submission: 2026-02-17 18:31:41

The Fork Bomb

Time of First Successful Submission: 2026-02-17 19:45:35

Disk-Space Doomsday

Time of First Successful Submission: 2026-02-17 22:17:27

rm -rf /

Time of First Successful Submission: 2026-02-17 22:29:45

Life after rm -rf /

Time of First Successful Submission: 2026-02-17 22:39:12

Finding meaning after rm -rf /

Time of First Successful Submission: 2026-02-17 23:06:19


Computing 101

86 / 94 532 / 21536


Your First Register

Time of First Successful Submission: 2025-10-17 17:51:25

Your First Syscall

Time of First Successful Submission: 2025-12-16 16:33:27

Exit Codes

Time of First Successful Submission: 2025-12-16 16:35:44

Building Executables

Time of First Successful Submission: 2025-12-16 16:44:26

Moving Between Registers

Time of First Successful Submission: 2025-12-16 16:48:18

Loading From Memory

Time of First Successful Submission: 2025-12-16 17:06:49

More Loading Practice

Time of First Successful Submission: 2025-12-16 17:08:02

Dereferencing Pointers

Time of First Successful Submission: 2026-02-20 14:02:02

Dereferencing Yourself

Time of First Successful Submission: 2026-02-20 14:03:39

Dereferencing with Offsets

Time of First Successful Submission: 2026-02-20 14:11:38

Stored Addresses

Time of First Successful Submission: 2026-02-20 14:16:05

Double Dereference

Time of First Successful Submission: 2026-02-20 14:22:45

The Stack

Time of First Successful Submission: 2026-02-20 14:38:56

Stack Offsets

Time of First Successful Submission: 2026-02-20 14:41:24

Program Arguments on the Stack

Time of First Successful Submission: 2026-02-20 15:03:24

Popping From the Stack

Time of First Successful Submission: 2026-02-20 15:05:46

Disassembling Programs

Time of First Successful Submission: 2026-02-20 15:22:05

Tracing Syscalls

Time of First Successful Submission: 2025-12-16 16:53:26

Starting GDB

Time of First Successful Submission: 2025-12-16 16:55:51

Quitting GDB

Time of First Successful Submission: 2026-02-20 15:31:47

Starting Programs in GDB

Time of First Successful Submission: 2025-12-16 16:57:19

Disassembling in GDB

Time of First Successful Submission: 2026-02-20 15:34:24

Stepping Through Instructions

Time of First Successful Submission: 2026-02-20 15:36:10

Reading Register Values

Time of First Successful Submission: 2026-02-20 15:37:03

Popping Stack Values

Time of First Successful Submission: 2026-02-20 15:38:51

Examining Memory

Time of First Successful Submission: 2026-02-20 15:44:22

Examining Stack Pointers

Time of First Successful Submission: 2026-02-20 15:46:47

Cooperative Debugging

Time of First Successful Submission: 2026-02-20 15:55:56

Writing Output

Time of First Successful Submission: 2026-02-21 14:39:30

Chaining Syscalls

Time of First Successful Submission: 2026-02-21 14:44:26

Writing Strings

Time of First Successful Submission: 2026-02-21 14:51:52

Reading Data

Time of First Successful Submission: 2026-02-22 13:52:05

Opening Files

Time of First Successful Submission: 2026-02-22 14:33:55

Hardcoding the Filename

Time of First Successful Submission: 2026-02-22 15:10:46

Comparing Values

Time of First Successful Submission: 2026-02-24 14:13:23

Comparing Characters

Time of First Successful Submission: 2026-02-24 14:22:49

Conditional Control Flow

Time of First Successful Submission: 2026-02-24 14:33:04

Comparing Strings

Time of First Successful Submission: 2026-02-24 14:37:00

Reverse the Password

Time of First Successful Submission: 2026-02-24 14:44:25

Conditionals Without Conditionals

Time of First Successful Submission: 2026-02-24 16:00:53

Looping

Time of First Successful Submission: 2026-02-24 16:15:01

Reverse the Calculation

Time of First Successful Submission: 2026-02-24 16:38:23

Reverse the Reverse

Time of First Successful Submission: 2026-02-24 20:11:46

Dealing with Bitwise Operations

Time of First Successful Submission: 2026-02-24 20:21:40

Loops on Data

Time of First Successful Submission: 2026-02-24 20:26:48

set-register

Time of First Successful Submission: 2026-02-24 20:31:53

set-multiple-registers

Time of First Successful Submission: 2026-02-24 20:34:11

add-to-register

Time of First Successful Submission: 2026-02-24 20:37:38

linear-equation-registers

Time of First Successful Submission: 2026-02-24 20:47:57

integer-division

Time of First Successful Submission: 2026-02-24 20:49:59

modulo-operation

Time of First Successful Submission: 2026-02-24 21:04:23

set-upper-byte

Time of First Successful Submission: 2026-02-24 21:20:09

efficient-modulo

Time of First Successful Submission: 2026-02-24 21:35:58

byte-extraction

Time of First Successful Submission: 2026-02-24 21:53:34

bitwise-and

Time of First Successful Submission: 2026-02-24 22:11:56

check-even

Time of First Successful Submission: 2026-02-24 22:28:12

memory-read

Time of First Successful Submission: 2026-02-24 22:30:59

memory-write

Time of First Successful Submission: 2026-02-24 22:34:31

memory-increment

Time of First Successful Submission: 2026-02-24 22:48:52

byte-access

Time of First Successful Submission: 2026-02-25 00:29:55

memory-size-access

Time of First Successful Submission: 2026-02-25 00:32:50

little-endian-write

Time of First Successful Submission: 2026-02-26 10:06:08

memory-sum

Time of First Successful Submission: 2026-02-26 10:21:04

stack-subtraction

Time of First Successful Submission: 2026-02-26 10:25:10

swap-stack-values

Time of First Successful Submission: 2026-02-26 10:27:31

average-stack-values

Time of First Successful Submission: 2026-02-26 10:32:21

absolute-jump

Time of First Successful Submission: 2026-02-26 10:34:09

relative-jump

Time of First Successful Submission: 2026-02-26 10:41:35

jump-trampoline

Time of First Successful Submission: 2026-02-26 10:45:34

conditional-jump

Time of First Successful Submission: 2026-02-26 11:22:26

indirect-jump

Time of First Successful Submission: 2026-02-26 11:29:38

average-loop

Time of First Successful Submission: 2026-02-26 11:31:37

count-non-zero

Time of First Successful Submission: 2026-02-26 11:42:23

string-lower

Time of First Successful Submission: 2026-02-26 11:48:17

most-common-byte

Time of First Successful Submission: 2026-02-26 11:52:49

Exit

Time of First Successful Submission: 2026-02-26 20:06:45

Socket

Time of First Successful Submission: 2026-02-26 21:48:54

Bind

Time of First Successful Submission: 2026-02-26 23:25:37

Listen

Time of First Successful Submission: 2026-02-26 23:34:11

Accept

Time of First Successful Submission: 2026-02-26 23:37:17

Static Response

Time of First Successful Submission: 2026-02-27 12:38:54

Dynamic Response

Time of First Successful Submission: 2026-02-27 12:52:12

Iterative GET Server

Time of First Successful Submission: 2026-02-27 13:00:33

Concurrent GET Server

Time of First Successful Submission: 2026-02-27 13:04:12

Debugging Programs

Time of First Successful Submission: 2026-02-27 13:48:53

Inspecting Registers

Time of First Successful Submission: 2026-02-27 14:06:51


Playing With Programs

49 / 116 7600 / 23386


What's the password?

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

... and again!

Time of First Successful Submission: 2026-02-21 00:21:53

Newline Troubles

Time of First Successful Submission: 2026-02-21 00:31:06

Reasoning about files

Time of First Successful Submission: 2026-02-21 00:50:02

Specifying Filenames

Time of First Successful Submission: 2026-02-21 00:51:33

Binary and Hex Encoding

Time of First Successful Submission: 2026-02-21 01:02:00

More Hex

Time of First Successful Submission: 2026-02-21 01:07:11

Decoding Hex

Time of First Successful Submission: 2026-02-21 01:15:47

Decoding Practice

Time of First Successful Submission: 2026-02-21 01:40:34

Encoding Practice

Time of First Successful Submission: 2026-02-27 14:16:10

Hex-encoding ASCII

Time of First Successful Submission: 2026-02-27 15:09:24

Nested Encoding

Time of First Successful Submission: 2026-02-27 15:16:47

Hex-encoding UTF-8

Time of First Successful Submission: 2026-02-27 15:23:03

UTF Mixups

Time of First Successful Submission: 2026-02-27 15:49:53

Modifying Encoded Data

Time of First Successful Submission: 2026-02-27 16:53:28

Decoding Base64

Time of First Successful Submission: 2026-02-27 18:25:42

Encoding Base64

Time of First Successful Submission: 2026-02-27 18:29:15

Dealing with Obfuscation

Time of First Successful Submission: 2026-02-27 19:17:42

Dealing with Obfuscation 2

Time of First Successful Submission: 2026-02-27 19:41:53

Your First HTTP Request

Time of First Successful Submission: 2026-02-27 23:06:42

Reading Flask

Time of First Successful Submission: 2026-02-27 23:20:39

Commented Data

Time of First Successful Submission: 2026-02-28 02:57:30

HTTP Metadata

Time of First Successful Submission: 2026-02-28 03:20:20

HTTP (netcat)

Time of First Successful Submission: 2026-02-28 03:50:17

HTTP Paths (netcat)

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

HTTP (curl)

Time of First Successful Submission: 2026-02-28 04:26:55

HTTP (python)

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

HTTP Host Header (python)

Time of First Successful Submission: 2026-02-28 04:48:52

HTTP Host Header (curl)

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

HTTP Host Header (netcat)

Time of First Successful Submission: 2026-02-28 05:12:12

URL Encoding (netcat)

Time of First Successful Submission: 2026-02-28 05:20:56

HTTP GET Parameters

Time of First Successful Submission: 2026-02-28 05:40:00

Multiple HTTP Parameters (netcat)

Time of First Successful Submission: 2026-02-28 05:51:32

Multiple HTTP Parameters (curl)

Time of First Successful Submission: 2026-02-28 05:57:47

HTTP Forms

Time of First Successful Submission: 2026-02-28 14:58:02

HTTP Forms (curl)

Time of First Successful Submission: 2026-02-28 15:27:59

HTTP Forms (netcat)

Time of First Successful Submission: 2026-02-28 15:55:26

HTTP Forms (python)

Time of First Successful Submission: 2026-02-28 16:16:02

HTTP Forms Without Forms

Time of First Successful Submission: 2026-02-28 16:51:58

Multiple Form Fields (curl)

Time of First Successful Submission: 2026-03-01 12:37:27

Multiple Form Fields (netcat)

Time of First Successful Submission: 2026-03-01 13:03:14

HTTP Redirects (netcat)

Time of First Successful Submission: 2026-03-01 14:04:37

HTTP Redirects (curl)

Time of First Successful Submission: 2026-03-01 14:11:32

HTTP Redirects (python)

Time of First Successful Submission: 2026-03-01 14:15:40

HTTP Cookies (curl)

Time of First Successful Submission: 2026-03-01 22:13:03

HTTP Cookies (netcat)

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

HTTP Cookies (python)

Time of First Successful Submission: 2026-03-02 00:02:35

Server State (python)

Time of First Successful Submission: 2026-03-02 00:26:29

Listening Web

Time of First Successful Submission: 2026-03-02 00:36:26