클라이언트 측에서 netcat을 사용하여 쉘을 생성하는 방법은 무엇입니까?

클라이언트 측에서 netcat을 사용하여 쉘을 생성하는 방법은 무엇입니까?

다음을 사용하여 서버 측에서 셸을 생성할 수 있다는 것을 알고 있습니다.

nc -l 1111 -e /bin/bash

하지만 클라이언트 측에서 쉘을 생성하고 싶습니다.

나는 다음을 시도했습니다.nc 127.0.0.1 1111 | /bin/bash

작동하지만 실행된 명령의 출력을 볼 수 없습니다.

그렇다면 문제는 netcat을 사용하여 클라이언트 측에서 셸을 생성할 수 있는 방법이 있느냐는 것입니다.

답변1

netcat 버전에 따라 다르지만 저에게 맞는 것 같습니다. 데비안은 두 가지를 패키지했습니다: "netcat-전통적인" 그리고 "netcat-openbsd". 전자는 -e클라이언트와 서버 모드를 모두 지원하지만 후자는 전혀 지원하지 않습니다.

$ nc.traditional localhost 1234 -e /bin/bash

$ nc.openbsd localhost 1234 -e /bin/bash
nc.openbsd: invalid option -- 'e'

내 OSX에 있는 것도 지원하지 않습니다.

지원하지 않는 netcat을 사용하여 이 작업을 수행해야 하는 경우-e 다음과 같은 것이 필요할 수 있습니다.두 프로그램 간에 양방향 파이프를 만드는 방법은 무엇입니까?

관련 정보