我有一些使用 Cryptcat 工具加密的資料包,我想解密它們。我有加密密碼。我嘗試將 netcat 與 cryptcat 一起使用,但每次我從 netcat 連接到 cryptcat 並嘗試發送某些內容時,連接都會關閉。
我嘗試了以下方法:
cryptcat -vv -k p@ssword -l -p 1337 > decryptedfile
並從另一個終端:
cat encrypted | nc localhost 1337
當我按下回車鍵時,連接關閉!
答案1
對我有用。請注意,加密和解密是在發送加密和接收解密的基礎上配對的。 (您不能使用cryptcat
傳送加密檔案來解密它。)
您可能想要檢查您的加密來源檔案是否包含合理的資料(即它的長度非零),並使用tshark
或等效檢查資料是否確實透過線路傳輸。
一、產生加密文件
在系統 1 上傳送訊息之前,我們開始監聽系統 2。
系統2
nc -vv -l -p 1337 >message.enc
hex message.enc
0000 14 fd 25 da c3 5e 36 81 b2 7b e7 b0 13 4b b5 8b ..%..^6. .{...K..
0010 cc 13 4c 60 bd 54 1e e2 5b 01 7f ac bc 93 27 6b ..L`.T.. [.....'k
0020 c3 a3 90 30 44 76 e1 61 f5 42 2d 04 f2 13 eb d4 ...0Dv.a .B-.....
0030 9c d9 9c 75 95 10 b2 55 42 bf 0d cb cb ...u...U B....
系統1
date | cryptcat -vv -k p@ssword -w 1 system2 1337
現在,重新傳送加密文件
和之前一樣,我們在發送訊息之前開始監聽接收器
系統1
cryptcat -vv -k p@ssword -l -p 1337 # → Thu 25 Oct 15:07:24 BST 2018
系統2
nc -vv -w 1 system1 1337 <message.enc
替代推薦
總的來說,原作者表示netcat
他們更願意將其純粹作為網路工具,並使用外部工具添加加密。採用這種方法,我們可以使用mcrypt
並建立一對如下的工具鏈:
generate_data | mcrypt -z | nc ...
... nc -l | mcrypt -d -z | produce_data
這裡的一個優點是可以進行獨立解密,並且不需要在兩個伺服器之間使用nc
...。cryptcat -l
它還將傳輸方向與訊息的隱含加密或解密解耦。