이전 연결이 끊어지면 busybox nc 서버가 새 연결을 수락할 수 없습니다.

이전 연결이 끊어지면 busybox nc 서버가 새 연결을 수락할 수 없습니다.

BusyBox v1.36.1 (2023-07-17 18:29:09 UTC) 다중 통화 바이너리.

다음과 같은 최소한의 CNC 서버를 실행합니다.

nc -lkp 12345

한번 연결해 볼 수 있어요 nc localhost 12345. Ctrl-C 이후에는 다음 시도가 실패합니다.

하지만 -e뭔가를 실행하면 작동합니다.

nc -lkp 12345 -e /bin/cat

누구든지 이 동작을 설명할 수 있나요?

답변1

netcat의 모든 버전에서는 지원되지 않습니다 -e.

netcat 이 없으면 -e표준 입력이 연결된 첫 번째 항목에 복사됩니다. 연결이 닫히면 종료됩니다.

-e옵션을 사용하면 각각의 새 연결은 제공된 명령을 새로 실행하여 출력을 얻습니다. 여러 가지가 동시에 연결되어 있으면 cat여러 고양이가 stdin에서 입력을 받아 전송하려고 하기 때문에 상황이 원활하게 진행되지 않을 수 있습니다.

관련 정보