引言
前面有幾天的題目以及今天的題目算是 picoCTF 2019 的 General Skills ,
所以感覺使用的技巧較為重複,不過我們會先把所有 General Skills 做完再往下走,
這些基礎技能都是不能不會的,所以多試幾個例子加深印象。
General Skills / First Grep
這題從題目就可以看出需要使用 grep
工具,
可以參考這篇學習基礎使用法。
雖然題目叫做 First Grep ,但這不是我們第一次接觸 grep 了,之後也會常常使用它!
用 wget 將題目的 file
下載下來,
嘗試 cat 它,會發現內容太多顯示不完,
這種時候可以使用 less 命令來查看:
less 是顯示檔案內容的工具,跟 cat 有類似功能,
但可以先只顯示開頭一個頁面的內容,隨你的操作去顯示需要的部份,
更為靈活,例如用上下鍵往上或往下捲動、/ + 關鍵字
搜索關鍵字等。
$ less file
會顯示開頭一部分的內容:
yQE:Z:y?9U@Z Pl6lA%KO0TGr@9#mc`O;zWQePqFFyrZ+dzqMx`I*33T_gNm7[P|_)y8P9
(以下略過)
完全是亂碼,看完後可以按 q
退出 less 。
這時候 grep 就派上用場:
$ grep "picoCTF" file
flag 就到手囉:
picoCTF{grep_is_good_to_find_things_dba08a45}
grep
也可以搭配 pipe 管線使用,例如先 cat 再 grep :
$ cat file | grep "picoCTF"
將 cat 輸出到 stdout 的內容轉為傳輸到 grep 的 stdin
( 因此 grep 就不需要寫目標檔案,此時的目標檔案就是 stdin )
事實上這也是更為常用的用法。
另一個例子:
$ ls -al | grep "欲搜尋檔案或目錄的關鍵字"
可以找到你要找的檔案或目錄的詳細資訊。