Funciona para mim. Observe que a criptografia e a descriptografia são pareadas com base no envio de criptografias e no recebimento de decodificações. (Você não pode usar cryptcat
para enviar um arquivo criptografado para descriptografá-lo.)
Você pode querer verificar se seu arquivo de origem criptografado contém dados plausíveis (ou seja, seu comprimento diferente de zero) e usar tshark
ou uma verificação equivalente de que os dados realmente são transmitidos pela rede.
Primeiro, gere um arquivo criptografado
Começamos a ouvir no Sistema 2 antes de transmitirmos a mensagem no Sistema 1.
Sistema 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....
Sistema 1
date | cryptcat -vv -k p@ssword -w 1 system2 1337
Agora, reenvie o arquivo criptografado
Como antes, começamos a ouvir no receptor antes de transmitir a mensagem
Sistema 1
cryptcat -vv -k p@ssword -l -p 1337 # → Thu 25 Oct 15:07:24 BST 2018
Sistema 2
nc -vv -w 1 system1 1337 <message.enc
Recomendação alternativa
Em termos gerais, o autor original de netcat
declarou que prefere mantê-lo como uma ferramenta de rede e que a criptografia seja adicionada usando ferramentas externas. Com essa abordagem, é possível usar mcrypt
e construir um par de cadeias de ferramentas como esta:
generate_data | mcrypt -z | nc ...
... nc -l | mcrypt -d -z | produce_data
Uma vantagem aqui é que a descriptografia independente é possível e não requer o uso de nc
... cryptcat -l
entre dois servidores. Também dissocia a direção da transferência da criptografia ou decriptografia implícita da mensagem.