檔案加密工具 – age

Hacker News上看到的新工具,age,一套可以用來加密檔案的工具;用法看起來也蠻簡單的,可以用其指令產生出public key,再用其來加密需要的檔案。

$ age-keygen -o key.txt 
Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p 
$ tar cvz ~/data | age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p > data.tar.gz.age 
$ age --decrypt -i key.txt data.tar.gz.age > data.tar.gz

另外也支援多組key的加密,只有中其中一把解密的key 就可以解檔案了。

$ age -o example.jpg.age \
  -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p \
  -r age1lggyhqrw2nlhcxprm67z43rta597azn8gknawjehu9d9dl0jq3yqqvfafg example.jpg

透過ssh-rsa key來做加密看也是可以的

$ age -R ~/.ssh/id_ed25519.pub example.jpg > example.jpg.age
$ age -d -i ~/.ssh/id_ed25519 example.jpg.age > example.jpg

看來蠻實用的,之後如果有相關的需求看來可以用來試試。

Reference:

Kubernetes 的安全強化指南

Hacker Daily News上看到的新資訊,美國的National Security AgencyCybersecurity and Infrastructure Security Agency 出版的一個Kubernetes安全強化指南;雖然很久沒用kubernetes了,但對於這相關的資訊還是些記錄一下,以後說不定有機會用到。

CTR_KUBERNETES HARDENING GUIDANCE.PDF (defense.gov)

放在dropbox的備用連結

無所不在的SQL injection

一樣是在Hacker Daily News看到的一篇文章,作者說明了他在google上找到了30個關於php + email 註冊 的相關教學文章,發現其中的16筆是有SQL injection 的風險。

趁這個機會再來複習一下SQL Injection, 畢境這是非常常見的攻擊之 一;主要的攻擊手段是將一段有害的字串,透過網頁輸入的方式傳送至伺服器上,而伺服器的程式在沒有做任何檢查的情況下,就帶入網頁送上來的那些參數並執行了特定的SQL而造成問題。

從oswap上看到的一個典型的範例是,讓使用者在網頁端填入firstname與 lastname,然後伺服器這邊就透過使用者給的資訊來去資料庫找對應的使用者資訊,若此時使用者給的是像這樣的資訊

Firstname: evil'ex and Lastname: Newman

且執行的SQL可能會是長這樣, 其造成的問題就是會讓資料庫試著去執行evil 指令而失敗

select id, firstname, lastname from authors where firstname = 'evil'ex' and lastname ='newman'

事實上,還有更多網路上可以找到的攻擊範例,而解決方式就是在伺服器這邊需要針對使用者傳上來的資訊做更多的驗證,之後才可以使用。
另外,一些常見的web framework通常都會將這些驗證自動套用到程式中,所以如果我們有使用web framework的話,也可以看一下所使用的framework是否有對應的處理方式。

reference