BobSanova

🐧 💻

Intro to Programming Languages

15 / 234 9994 / 33462


Commands

Time of First Successful Submission: 2026-04-23 12:59:29

Command Arguments

Time of First Successful Submission: 2026-04-23 13:00:10

Command History

Time of First Successful Submission: 2026-04-23 13:00:40

The Root Path

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

Absolute Paths

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

Changing position

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

Changing to an Absolute Path

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

Relative Paths

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

Cat

Time of First Successful Submission: 2026-04-24 02:09:18

Ls

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

Ls All

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

Find

Time of First Successful Submission: 2026-04-24 02:30:45

Piping Echo

Time of First Successful Submission: 2026-04-24 09:43:20

Piping Stdout

Time of First Successful Submission: 2026-04-24 09:44:36

Piping Stdin

Time of First Successful Submission: 2026-04-24 10:02:56


Start Here

11 / 12 9400 / 45309


Using the Terminal

Time of First Successful Submission: 2026-04-23 12:18:29

Using the VSCode Workspace

Time of First Successful Submission: 2026-04-23 12:20:54

Using the GUI Desktop

Time of First Successful Submission: 2026-04-23 12:26:13

Pasting into the Desktop

Time of First Successful Submission: 2026-04-23 12:27:56

Restarting Challenges

Time of First Successful Submission: 2026-04-23 12:42:07

Challenge Programs

Time of First Successful Submission: 2026-04-23 12:48:46

The Flag File

Time of First Successful Submission: 2026-04-23 12:50:19

Using Privileged Mode

Time of First Successful Submission: 2026-04-23 12:53:34

Persistent Home Directories - One

Time of First Successful Submission: 2026-04-23 12:55:41

Persistent Home Directories - Two

Time of First Successful Submission: 2026-04-23 12:56:07


Linux Luminarium

128 / 128 2904 / 33900


Intro to Commands

Time of First Successful Submission: 2026-04-23 12:59:29

Intro to Arguments

Time of First Successful Submission: 2026-04-23 13:00:10

Command History

Time of First Successful Submission: 2026-04-23 13:00:40

The Root

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

Program and absolute paths

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

Position thy self

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

Position elsewhere

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

implicit relative paths, from /

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

explicit relative paths, from /

Time of First Successful Submission: 2026-04-23 13:06:07

implicit relative path

Time of First Successful Submission: 2026-04-23 13:07:33

home sweet home

Time of First Successful Submission: 2026-04-23 13:15:45

cat: not the pet, but the command!

Time of First Successful Submission: 2026-04-24 02:09:18

catting absolute paths

Time of First Successful Submission: 2026-04-24 02:10:51

more catting practice

Time of First Successful Submission: 2026-04-24 02:11:30

grepping for a needle in a haystack

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

comparing files

Time of First Successful Submission: 2026-04-24 02:13:35

listing files

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

touching files

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

removing files

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

moving files

Time of First Successful Submission: 2026-04-24 02:19:40

copying files

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

hidden files

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

An Epic Filesystem Quest

Time of First Successful Submission: 2026-04-24 02:26:01

making directories

Time of First Successful Submission: 2026-04-24 02:27:10

finding files

Time of First Successful Submission: 2026-04-24 02:30:45

linking files

Time of First Successful Submission: 2026-04-24 02:53:13

Learning From Documentation

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

Learning Complex Usage

Time of First Successful Submission: 2026-04-24 02:56:04

Reading Manuals

Time of First Successful Submission: 2026-04-24 02:58:58

Searching Manuals

Time of First Successful Submission: 2026-04-24 02:59:59

Searching For Manuals

Time of First Successful Submission: 2026-04-24 03:09:12

Helpful Programs

Time of First Successful Submission: 2026-04-24 03:12:09

Help for Builtins

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

Matching with *

Time of First Successful Submission: 2026-04-24 04:41:59

Matching with ?

Time of First Successful Submission: 2026-04-24 04:43:08

Matching with []

Time of First Successful Submission: 2026-04-24 04:45:10

Matching paths with []

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

Multiple globs

Time of First Successful Submission: 2026-04-24 04:47:07

Mixing globs

Time of First Successful Submission: 2026-04-24 09:10:55

Exclusionary globbing

Time of First Successful Submission: 2026-04-24 09:12:17

Tab completion

Time of First Successful Submission: 2026-04-24 09:13:22

Multiple options for tab completion

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

Tab completion on commands

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

Redirecting output

Time of First Successful Submission: 2026-04-24 09:43:20

Redirecting more output

Time of First Successful Submission: 2026-04-24 09:44:36

Appending output

Time of First Successful Submission: 2026-04-24 09:47:05

Redirecting errors

Time of First Successful Submission: 2026-04-24 09:53:41

Redirecting input

Time of First Successful Submission: 2026-04-24 10:02:56

Grepping stored results

Time of First Successful Submission: 2026-04-24 10:05:29

Grepping live output

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

Grepping errors

Time of First Successful Submission: 2026-04-24 10:10:31

Filtering with grep -v

Time of First Successful Submission: 2026-04-24 10:13:17

Filtering with sed

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

Duplicating piped data with tee

Time of First Successful Submission: 2026-04-24 10:40:23

Process substitution for input

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

Writing to multiple programs

Time of First Successful Submission: 2026-04-24 14:12:28

Split-piping stderr and stdout

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

Named pipes

Time of First Successful Submission: 2026-04-24 14:27:21

Printing Variables

Time of First Successful Submission: 2026-04-24 14:28:43

Setting Variables

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

Multi-word Variables

Time of First Successful Submission: 2026-04-24 14:46:12

Exporting Variables

Time of First Successful Submission: 2026-04-24 14:52:56

Printing Exported Variables

Time of First Successful Submission: 2026-04-24 14:53:26

Storing Command Output

Time of First Successful Submission: 2026-04-24 14:56:37

Reading Input

Time of First Successful Submission: 2026-04-24 15:06:56

Reading Files

Time of First Successful Submission: 2026-04-24 15:14:06

Translating characters

Time of First Successful Submission: 2026-04-24 15:23:29

Deleting characters

Time of First Successful Submission: 2026-04-24 15:24:21

Deleting newlines

Time of First Successful Submission: 2026-04-24 15:25:46

Extracting the first lines with head

Time of First Successful Submission: 2026-04-24 15:26:59

Extracting specific sections of text

Time of First Successful Submission: 2026-04-24 15:51:37

Sorting data

Time of First Successful Submission: 2026-04-24 15:37:47

Listing Processes

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

Killing Processes

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

Interrupting Processes

Time of First Successful Submission: 2026-04-24 16:17:32

Killing Misbehaving Processes

Time of First Successful Submission: 2026-04-24 16:21:39

Suspending Processes

Time of First Successful Submission: 2026-04-24 16:22:48

Resuming Processes

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

Backgrounding Processes

Time of First Successful Submission: 2026-04-24 18:05:13

Foregrounding Processes

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

Starting Backgrounded Processes

Time of First Successful Submission: 2026-04-24 18:06:51

Process Exit Codes

Time of First Successful Submission: 2026-04-24 18:07:55

Becoming root with su

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

Other users with su

Time of First Successful Submission: 2026-04-25 01:13:21

Cracking passwords

Time of First Successful Submission: 2026-04-25 01:22:32

Using sudo

Time of First Successful Submission: 2026-04-25 01:24:47

Changing File Ownership

Time of First Successful Submission: 2026-04-25 01:41:22

Groups and Files

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

Fun With Groups Names

Time of First Successful Submission: 2026-04-25 01:50:54

Changing Permissions

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

Executable Files

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

Permission Tweaking Practice

Time of First Successful Submission: 2026-04-25 02:23:01

Permissions Setting Practice

Time of First Successful Submission: 2026-04-25 02:26:30

The SUID Bit

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

Chaining with Semicolons

Time of First Successful Submission: 2026-04-25 02:30:27

Building on Success

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

Handling Failure

Time of First Successful Submission: 2026-04-25 02:32:43

Your First Shell Script

Time of First Successful Submission: 2026-04-25 02:35:02

Redirecting Script Output

Time of First Successful Submission: 2026-04-26 13:23:22

Executable Shell Scripts

Time of First Successful Submission: 2026-04-26 14:40:24

Understanding Shebangs

Time of First Successful Submission: 2026-04-26 14:43:38

Scripting with Arguments

Time of First Successful Submission: 2026-04-26 14:47:54

Scripting with Conditionals

Time of First Successful Submission: 2026-04-26 14:52:47

Scripting with Default Cases

Time of First Successful Submission: 2026-04-26 15:00:40

Scripting with Multiple Conditions

Time of First Successful Submission: 2026-04-26 15:03:40

Reading Shell Scripts

Time of First Successful Submission: 2026-04-26 15:07:09

Launching Screen

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

Detaching and Attaching

Time of First Successful Submission: 2026-04-26 15:13:22

Finding Sessions

Time of First Successful Submission: 2026-04-26 15:18:14

Switching Windows

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

Detaching and Attaching (tmux)

Time of First Successful Submission: 2026-04-26 15:38:46

Switching Windows (tmux)

Time of First Successful Submission: 2026-04-26 15:39:30

The PATH Variable

Time of First Successful Submission: 2026-04-26 15:40:27

Setting PATH

Time of First Successful Submission: 2026-04-26 15:41:05

Finding Commands

Time of First Successful Submission: 2026-04-26 15:41:57

Adding Commands

Time of First Successful Submission: 2026-04-27 00:23:22

Hijacking Commands

Time of First Successful Submission: 2026-04-27 00:27:29

Bashrc Backdoor

Time of First Successful Submission: 2026-04-27 00:31:10

Sniffing Input

Time of First Successful Submission: 2026-04-27 04:40:04

Overshared Directories

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

Tricky Linking

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

Sniffing Process Arguments

Time of First Successful Submission: 2026-04-27 05:24:35

Snooping on Configurations

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

The Fork Bomb

Time of First Successful Submission: 2026-04-27 05:45:20

Disk-Space Doomsday

Time of First Successful Submission: 2026-04-27 05:48:29

rm -rf /

Time of First Successful Submission: 2026-04-27 05:52:17

Life after rm -rf /

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

Finding meaning after rm -rf /

Time of First Successful Submission: 2026-04-27 05:56:12


Computing 101

94 / 94 488 / 22332


Your First Register

Time of First Successful Submission: 2026-04-23 13:18:06

Your First Syscall

Time of First Successful Submission: 2026-04-23 13:18:36

Exit Codes

Time of First Successful Submission: 2026-04-23 13:20:34

Building Executables

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

Moving Between Registers

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

Loading From Memory

Time of First Successful Submission: 2026-04-23 13:26:03

More Loading Practice

Time of First Successful Submission: 2026-04-23 13:27:00

Dereferencing Pointers

Time of First Successful Submission: 2026-04-23 13:28:18

Dereferencing Yourself

Time of First Successful Submission: 2026-04-23 13:31:41

Dereferencing with Offsets

Time of First Successful Submission: 2026-04-23 13:33:07

Stored Addresses

Time of First Successful Submission: 2026-04-23 13:40:17

Double Dereference

Time of First Successful Submission: 2026-04-23 13:42:00

The Stack

Time of First Successful Submission: 2026-04-23 13:46:59

Stack Offsets

Time of First Successful Submission: 2026-04-23 13:53:49

Program Arguments on the Stack

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

Popping From the Stack

Time of First Successful Submission: 2026-04-23 14:07:30

Disassembling Programs

Time of First Successful Submission: 2026-04-23 15:11:53

Tracing Syscalls

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

Starting GDB

Time of First Successful Submission: 2026-04-23 15:17:50

Quitting GDB

Time of First Successful Submission: 2026-04-23 15:18:26

Starting Programs in GDB

Time of First Successful Submission: 2026-04-23 15:22:56

Disassembling in GDB

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

Stepping Through Instructions

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

Reading Register Values

Time of First Successful Submission: 2026-04-23 15:30:14

Popping Stack Values

Time of First Successful Submission: 2026-04-23 15:32:04

Examining Memory

Time of First Successful Submission: 2026-04-23 15:35:30

Examining Stack Pointers

Time of First Successful Submission: 2026-04-23 15:38:24

Cooperative Debugging

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

Writing Output

Time of First Successful Submission: 2026-04-27 07:47:24

Chaining Syscalls

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

Writing Strings

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

Reading Data

Time of First Successful Submission: 2026-04-27 08:00:24

Opening Files

Time of First Successful Submission: 2026-04-27 08:14:25

Hardcoding the Filename

Time of First Successful Submission: 2026-04-27 08:34:06

Comparing Values

Time of First Successful Submission: 2026-04-27 08:50:41

Comparing Characters

Time of First Successful Submission: 2026-04-27 08:55:27

Conditional Control Flow

Time of First Successful Submission: 2026-04-27 09:01:20

Comparing Strings

Time of First Successful Submission: 2026-04-27 09:04:53

Reverse the Password

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

Conditionals Without Conditionals

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

Looping

Time of First Successful Submission: 2026-04-27 09:20:53

Reverse the Calculation

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

Reverse the Reverse

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

Dealing with Bitwise Operations

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

Loops on Data

Time of First Successful Submission: 2026-04-28 10:19:52

set-register

Time of First Successful Submission: 2026-04-28 10:30:37

set-multiple-registers

Time of First Successful Submission: 2026-04-28 10:31:50

add-to-register

Time of First Successful Submission: 2026-04-28 10:33:36

linear-equation-registers

Time of First Successful Submission: 2026-04-28 10:37:59

integer-division

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

modulo-operation

Time of First Successful Submission: 2026-04-28 10:43:17

set-upper-byte

Time of First Successful Submission: 2026-04-28 13:19:52

efficient-modulo

Time of First Successful Submission: 2026-04-28 16:43:20

byte-extraction

Time of First Successful Submission: 2026-04-29 02:38:56

bitwise-and

Time of First Successful Submission: 2026-04-29 02:42:26

check-even

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

memory-read

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

memory-write

Time of First Successful Submission: 2026-04-29 02:51:46

memory-increment

Time of First Successful Submission: 2026-04-29 04:30:24

byte-access

Time of First Successful Submission: 2026-04-29 04:42:08

memory-size-access

Time of First Successful Submission: 2026-04-29 04:44:13

little-endian-write

Time of First Successful Submission: 2026-04-29 13:24:28

memory-sum

Time of First Successful Submission: 2026-04-29 13:34:25

stack-subtraction

Time of First Successful Submission: 2026-04-29 13:35:45

swap-stack-values

Time of First Successful Submission: 2026-04-29 13:37:58

average-stack-values

Time of First Successful Submission: 2026-04-29 13:46:00

absolute-jump

Time of First Successful Submission: 2026-04-29 13:50:58

relative-jump

Time of First Successful Submission: 2026-04-29 13:58:46

jump-trampoline

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

conditional-jump

Time of First Successful Submission: 2026-04-29 14:36:59

indirect-jump

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

average-loop

Time of First Successful Submission: 2026-04-30 06:44:22

count-non-zero

Time of First Successful Submission: 2026-04-30 06:55:33

string-lower

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

most-common-byte

Time of First Successful Submission: 2026-05-04 03:19:36

Exit

Time of First Successful Submission: 2026-05-04 05:26:38

Socket

Time of First Successful Submission: 2026-05-04 13:36:08

Bind

Time of First Successful Submission: 2026-05-04 15:40:59

Listen

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

Accept

Time of First Successful Submission: 2026-05-05 10:46:42

Static Response

Time of First Successful Submission: 2026-05-05 11:23:26

Dynamic Response

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

Iterative GET Server

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

Concurrent GET Server

Time of First Successful Submission: 2026-05-07 17:10:33

Concurrent POST Server

Time of First Successful Submission: 2026-05-08 16:58:25

Web Server

Time of First Successful Submission: 2026-05-08 17:05:27

Debugging Programs

Time of First Successful Submission: 2026-05-08 17:10:44

Inspecting Registers

Time of First Successful Submission: 2026-05-08 17:14:18

Examining Memory

Time of First Successful Submission: 2026-05-09 03:29:05

Setting Breakpoints

Time of First Successful Submission: 2026-05-09 13:55:48

GDB Scripting

Time of First Successful Submission: 2026-05-09 15:50:57

Modifying Data

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

Modifying Execution

Time of First Successful Submission: 2026-05-09 17:26:08

Broken Functions

Time of First Successful Submission: 2026-05-10 07:51:38


Playing With Programs

33 / 116 9582 / 23768


What's the password?

Time of First Successful Submission: 2026-04-27 09:27:08

... and again!

Time of First Successful Submission: 2026-04-27 09:27:48

Newline Troubles

Time of First Successful Submission: 2026-04-27 09:29:13

Reasoning about files

Time of First Successful Submission: 2026-04-27 09:30:21

Specifying Filenames

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

Binary and Hex Encoding

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

More Hex

Time of First Successful Submission: 2026-05-10 09:05:43

Decoding Hex

Time of First Successful Submission: 2026-05-10 09:11:29

Decoding Practice

Time of First Successful Submission: 2026-05-10 09:17:31

Encoding Practice

Time of First Successful Submission: 2026-05-10 09:43:29

Hex-encoding ASCII

Time of First Successful Submission: 2026-05-10 09:51:01

Nested Encoding

Time of First Successful Submission: 2026-05-10 12:43:26

Hex-encoding UTF-8

Time of First Successful Submission: 2026-05-10 12:46:38

UTF Mixups

Time of First Successful Submission: 2026-05-10 12:51:25

Modifying Encoded Data

Time of First Successful Submission: 2026-05-10 12:54:27

Decoding Base64

Time of First Successful Submission: 2026-05-10 13:07:01

Encoding Base64

Time of First Successful Submission: 2026-05-10 13:13:12

Dealing with Obfuscation

Time of First Successful Submission: 2026-05-10 14:48:21

Dealing with Obfuscation 2

Time of First Successful Submission: 2026-05-10 15:01:09

Your First HTTP Request

Time of First Successful Submission: 2026-05-11 03:09:34

Reading Flask

Time of First Successful Submission: 2026-05-12 02:04:07

Commented Data

Time of First Successful Submission: 2026-05-12 02:10:15

HTTP Metadata

Time of First Successful Submission: 2026-05-12 02:18:16

HTTP (netcat)

Time of First Successful Submission: 2026-05-12 02:38:53

HTTP Paths (netcat)

Time of First Successful Submission: 2026-05-12 02:42:34

HTTP (curl)

Time of First Successful Submission: 2026-05-12 02:52:23

HTTP (python)

Time of First Successful Submission: 2026-05-12 02:55:58

cat

Time of First Successful Submission: 2026-05-10 09:55:51

more

Time of First Successful Submission: 2026-05-10 09:56:30

less

Time of First Successful Submission: 2026-05-10 09:56:51

tail

Time of First Successful Submission: 2026-05-10 09:57:09

vim

Time of First Successful Submission: 2026-05-10 09:59:28

rev

Time of First Successful Submission: 2026-05-10 09:59:47


GCA CTF

11 / 104 9553 / 45599


Using the Terminal

Time of First Successful Submission: 2026-04-23 12:18:29

Using the VSCode Workspace

Time of First Successful Submission: 2026-04-23 12:20:54

Using the GUI Desktop

Time of First Successful Submission: 2026-04-23 12:26:13

Pasting into the Desktop

Time of First Successful Submission: 2026-04-23 12:27:56

Connecting over SSH

Time of First Successful Submission: 2026-04-23 12:36:00

Restarting Challenges

Time of First Successful Submission: 2026-04-23 12:42:07

Challenge Programs

Time of First Successful Submission: 2026-04-23 12:48:46

The Flag File

Time of First Successful Submission: 2026-04-23 12:50:19

Using Privileged Mode

Time of First Successful Submission: 2026-04-23 12:53:34

Persistent Home Directories - One

Time of First Successful Submission: 2026-04-23 12:55:41

Persistent Home Directories - Two

Time of First Successful Submission: 2026-04-23 12:56:07