Cryptcat 도구로 암호화된 패킷이 있는데 이를 해독하고 싶습니다. 암호화된 비밀번호를 가지고 있습니다. cryptcat과 함께 netcat을 사용하려고 시도했지만 netcat에서 cryptcat로 연결하고 무언가를 보내려고 할 때마다 연결이 닫힙니다.
나는 다음을 시도했다:
cryptcat -vv -k p@ssword -l -p 1337 > decryptedfile
그리고 다른 터미널에서:
cat encrypted | nc localhost 1337
Enter 키를 누르면 연결이 닫힙니다!
답변1
나를 위해 작동합니다. 암호화와 복호화는 전송 암호화와 수신 복호화를 기반으로 쌍을 이룹니다. ( cryptcat
복호화를 위해 암호화된 파일을 보내는 데 사용할 수 없습니다 .)
암호화된 소스 파일에 그럴듯한 데이터(예: 길이가 0이 아님)가 포함되어 있는지 확인하고 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
또한 메시지의 암시적 암호화 또는 암호 해독에서 전송 방향을 분리합니다.