mirror of
https://github.com/vee1e/Cryptonite-Taskphase.git
synced 2026-09-01 19:17:14 +00:00
Add level 5 -> 6
This commit is contained in:
parent
45f95aad73
commit
f238f084bd
1 changed files with 46 additions and 4 deletions
50
Writeup.md
50
Writeup.md
|
|
@ -29,7 +29,7 @@ Once we log in, we're greeted with the following page
|
|||
bandit0@bandit.labs.overthewire.org's password:
|
||||
```
|
||||
|
||||
We paste the password we were given **(bandit0)**, and are dropped into a shell session.
|
||||
We paste the password we were given (`bandit0`), and are dropped into a shell session.
|
||||
|
||||
```
|
||||
bandit0@bandit:~$
|
||||
|
|
@ -61,7 +61,7 @@ The `cat` command simply outputs the contents of a file to the terminal. We run
|
|||
bandit1@bandit.labs.overthewire.org's password:
|
||||
```
|
||||
|
||||
We then input the password in **(NH2SXQwcBdpmTEzi3bvBHMM9H66vVXjL)**, and thus get to Level 1.
|
||||
We then input the password in (`NH2SXQwcBdpmTEzi3bvBHMM9H66vVXjL`), and thus get to Level 1.
|
||||
|
||||
# Level 1 → Level 2
|
||||
|
||||
|
|
@ -96,7 +96,7 @@ bandit2@bandit:~$ cat "spaces in this filename"
|
|||
aBZ0W5EmUfAf7kHTQeOwd8bauFJ2lAiG
|
||||
```
|
||||
|
||||
We ssh into the next level, enter the password given **(aBZ0W5EmUfAf7kHTQeOwd8bauFJ2lAiG)** into the prompt, and finish the second stage.
|
||||
We ssh into the next level, enter the password given (`aBZ0W5EmUfAf7kHTQeOwd8bauFJ2lAiG`) into the prompt, and finish the second stage.
|
||||
|
||||
# Level 3 → 4
|
||||
|
||||
|
|
@ -110,7 +110,7 @@ cat: inhere/..: Is a directory
|
|||
```
|
||||
|
||||
- The `inhere/` indicates that the file whose contents we want to output is in the `inhere` directory.
|
||||
- The `.*` is a `glob` matcher, which translates to *cat every file that starts with the character `.` and has an indefinite number of characters after it.* We use it for brevity's sake, as it sidesteps knowing the name of the file inside the `inhere` directory entirely. The only problem is the two error messages output by `cat`, indicating it tried to output the contents of a directory instead of a file.
|
||||
- The `.*` is a `glob` matcher, which translates to *"cat every file that starts with the character `.` and has an indefinite number of characters after it."* We use it for brevity's sake, as it sidesteps knowing the name of the file inside the `inhere` directory entirely. The only problem is the two error messages output by `cat`, indicating it tried to output the contents of a directory instead of a file.
|
||||
|
||||
# Level 4 → 5
|
||||
|
||||
|
|
@ -137,3 +137,45 @@ bandit4@bandit:~$ cat inhere/-file07
|
|||
lrIWWI6bB37kxfiCQZqUdOIYfr6eEeqR
|
||||
```
|
||||
|
||||
# Level 5 → 6
|
||||
|
||||
Here the specifications for the file containing the password are as follows
|
||||
|
||||
- human-readable
|
||||
- 1033 bytes in size
|
||||
- not executable
|
||||
|
||||
We use a new shell utility called `find`, and construct the command as follows
|
||||
|
||||
```
|
||||
find . -type f -size 1033c ! -executable
|
||||
```
|
||||
|
||||
The arguments are as follows
|
||||
|
||||
- `.` indicates that we want `find` to search in the current directory.
|
||||
- `-type f` is to make it so the only results we see are of files `f`. If we wanted to find only directories, we would use `-type d` instead.
|
||||
- `! -executable` is a negation of the `-executable` argument, i.e. *"only show files that are \*not\* executable"*
|
||||
|
||||
The results of the command are as follows.
|
||||
|
||||
|
||||
```
|
||||
bandit5@bandit:~$ find . -type f -size 1033c ! -executable
|
||||
./inhere/maybehere07/.file2
|
||||
```
|
||||
|
||||
We then perform `cat` on the file as usual.
|
||||
|
||||
```
|
||||
bandit5@bandit:~$ cat ./inhere/maybehere07/.file2
|
||||
P4L4vucdmLnm8I7Vl7jG1ApGSfjYKqJU
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```
|
||||
|
||||
The password is revealed to be `P4L4vucdmLnm8I7Vl7jG1ApGSfjYKqJU`.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue