🕊️
[Level 0 ~ 9] OverTheWire Bandit Writeup
はじめに
→→(Level10~19)
サイト
環境
- macOS
- Intelチップ
Tips
macOS 使いは,パスワードをコピーした度に,下記のコマンドをローカルで実行すると,良い感じにパスワードが保存できてタイヘンヨーイ
pbpaste >> password && echo "" >> password && cat -n password
ルール
Level0
ユーザー名(bandit0
)を指定して ssh
接続を行う.
$ ssh -p 2220 bandit.labs.overthewire.org -l bandit0
パスワードは bandit0
を入力する.
これより先の注意書き
ログインの前提
前回レベルのユーザー名
を指定し,(ssh -p 2220 bandit.labs.overthewire.org -l <前回レベルのユーザー名>
) 前回レベルのパスワード
を入力し,ログインしたものとします.(i.e. シェルはローカルではなく,ログイン後の bandit.labs.overthewire.org
上を想定しています.)
基本的なコマンドの省略
基本的なコマンド(基準は問題に依存した相対的なものですが,cd
など)の説明は徐々に省かれます.
→Level1
cat
コマンドを用いて中身を表示する.
bandit0@bandit:~$ cat readme
→Level2
-
がオプション扱いされないように,相対パス ./
を用いる.
bandit1@bandit:~$ cat ./-
→Level3
空白は \
でエスケープさせる.
bandit2@bandit:~$ cat spaces\ in\ this\ filename
→Level4
隠しファイルは ls
コマンドの -a
を指定することで表示できる.
bandit3@bandit:~$ ls -a inhere
. .. ...Hiding-From-You
bandit3@bandit:~$ cat inhere/...Hiding-From-You
→Level5
cd
を用いて inhere/
ディレクトリに移動し, file
コマンドを使って,人間が読めるファイルを見つける.
bandit4@bandit:~$ cd inhere/
bandit4@bandit:~/inhere$ file ./*
./-file00: data
./-file01: data
./-file02: data
./-file03: data
./-file04: data
./-file05: data
./-file06: data
./-file07: ASCII text
./-file08: data
./-file09: data
bandit4@bandit:~/inhere$ cat ./-file07
→Level6
-
find
コマンドを用いて,1033
バイトのファイルを探す. - 結果が1件しかなかったので,それが答え.
bandit5@bandit:~$ cd inhere/
bandit5@bandit:~/inhere$ find . -type f -size 1033c
./maybehere07/.file2
bandit5@bandit:~/inhere$ cat ./maybehere07/.file2
→Level7
-
find
コマンドでuser
group
size
を指定すれば良い. - 標準エラー出力が鬱陶しいので,
2>/dev/null
を指定すると該当ファイルだけが出る.
bandit6@bandit:~$ find / -user bandit7 -group bandit6 -type f -size 33c 2>/dev/null
/var/lib/dpkg/info/bandit7.password
bandit6@bandit:~$ cat /var/lib/dpkg/info/bandit7.password
→Level8
-
less
コマンドを用いて,ファイルの中身を確認する. - 基本的な
vim
コマンドが使えるので,/millionth
と入力し,Enter
を押すと,該当する行が出てくるので,それが答え.
bandit7@bandit:~$ less data.txt
→Level9
-
awk
コマンドを使って,何回同じ行が現れたかを計算し,一度だけ現れた行を出力する. - 参考サイト
bandit8@bandit:~$ awk '{cnt[$0]++} END {for (ans in cnt) if (cnt[ans] == 1) print ans}' data.txt
おわりに
→→(Level10~19)
筆者について
Discussion