У меня есть несколько пакетов, зашифрованных с помощью инструмента Cryptcat, и я хочу их расшифровать. У меня есть пароль шифрования. Я пытался использовать netcat с cryptcat, но каждый раз, когда я подключаюсь из netcat в cryptcat и пытаюсь что-то отправить, соединение закрывается.
Я попробовал следующее:
cryptcat -vv -k p@ssword -l -p 1337 > decryptedfile
и с другого терминала:
cat encrypted | nc localhost 1337
Когда я нажимаю Enter, соединение закрывается!
решение1
У меня работает. Обратите внимание, что шифрование и дешифрование сопряжены на основе того, что отправка шифрует, а получение расшифровывает. (Вы не можете использовать , cryptcat
чтобы отправить зашифрованный файл, чтобы расшифровать его.)
Возможно, вам захочется проверить, что ваш зашифрованный исходный файл содержит правдоподобные данные (т. е. имеет ненулевую длину), а также с помощью tshark
или эквивалентной проверки того, что данные действительно передаются по сети.
Сначала создайте зашифрованный файл.
Мы начинаем прослушивание в Системе 2, прежде чем передать сообщение в Системе 1.
Система 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
между двумя серверами. Это также отделяет направление передачи от подразумеваемого шифрования или расшифровки сообщения.