我有一些使用 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
它还将传输方向与消息的隐含加密或解密解耦。