考上碩班了,實驗室也找好了。實驗是的學長給了我們這些碩零的不少資安相關的資料、網站讓我們讀。有鑑於以前沒有整理筆記的習慣,這次打算來用功整理了...
這次要整理的是一個 Wargame 網站 OverTheWire 的攻略(?)筆記。 XD
我只會記下我自己有遇上的問題、想記下的東西。
Wargame web site
Solutions for Bandit level 0-25
Advanced Bash-Scripting Guide - Special Characters
The unix commandline: pipes and redirects
SSH/OpenSSH/Keys
指令
file
查詢檔案類型
可以簡單判斷某檔案是否為文字檔案。du
列出檔案大小uniq
找出重複的(相鄰)資料uniq -u
strings
印出某檔案中的可印字元strings [OPTION] file
tr
字元代換tr [OPTION] SET1 [SET2]
可用來實作簡易的 rotation cipher
shell 相關
-
(dash, hyphen): shell 特殊字元
說是特殊字元其實不太正確。就我的理解,這個字元會完整的作為 avg 參數的一部分傳給目前要執行的指令。不過許多指令會特別處理這個字元。
當 "-" 出現在應該要放 filename 的位置時,許多指令會以 stdin 或 stdout 當作使用的檔案,或者說.. 把資料流導向 stdin 或 stdout,根據目前該檔案是用來輸入或輸出。
example:
cat tarball | tar xpvf -
在 cd 指令中,若以 "-" 作為 directory name,會回到上一個目錄 example:
cd ./Workspace cd ../Documentscd - #回到 Workspace 中
若要 cat 當前目錄下的某檔案,又不想標明 path,可以用 "-- " 來表示後面那一個 token 不是參數。這種方式可以用在檔名為 "-" 或是以 "-" 開頭的實際檔案。 example:
cat -- -somefile
cat ./-somefile
# these two command has the same effects.
ROT13
Wiki Page
這是一種簡易、不安全、基本上只會出現在教科書裡的 rotation cipher,實作方式很簡單,就是將所有的拉丁字元往後移 13 個字元,特別的是,encode 和 decode 是共用一個 cipher。與之類似的還有 ROT47,不過 ROT47 轉換範圍是介於 0b33 !
至 0b126 ~
共 96 個 ASCII 字元。
ROT13 可以透過 shell 裡的 tr
來實作。
cat file | tr 'A-Za-z' 'N-ZA-Mn-za-m'
# ROT13 cipher
cat file | tr '\!-~' 'P-~\!-O'
# ROT47 cipher