Bash 스크립트를 사용하여 Kali Linux에서 소켓 열기

Bash 스크립트를 사용하여 Kali Linux에서 소켓 열기

다음 명령을 사용하여 Ubuntu에서 TCP 또는 UDP 소켓을 여는 방법을 알고 있습니다.

exec 3<>/dev/tcp/google.com/80

예를 들어:

포트 80에서는 TCP 소켓을 열 수 있지만 Kali Linux에서는 열 수 없습니다.TCP 디렉토리의지하다구현하다주문하다.

  1. Kali Linux에서 소켓을 여는 방법을 알려줄 수 있는 사람이 있습니까?

  2. bash(스크립트)를 사용하여 TCP/UDP 소켓을 여는 더 좋고 더 표준적인 방법이 있습니까?

답변1

문제의 코드는 실제로 /dev/tcp파일 시스템의 기존 코드에 의존하지 않습니다. 오히려 이는 Bash 자체의 기능입니다. 예를 들어, 예제의 파일 설명자 3에 간단한 HTTP 요청을 작성하면 다음과 같은 응답을 받아야 합니다.

> ls /dev/tcp ls: /dev/tcp: No such file or directory
> exec 3<>/dev/tcp/google.com/80
> echo -e "GET / HTTP/1.1\n\r" >&3
> cat <&3 
HTTP/1.1 302 Found 
Cache-Control: private
Content-Type: text/html; 
charset=UTF-8 
[...SNIP...]

이것이 쉘에서 작동하지 않으면 사용 중인 기본 쉘에 이 특정 기능이 없을 수 있습니다.

쉘 스크립트 내에서 TCP/UDP 연결을 설정하는 다른 널리 사용되는 방법은 다음과 같습니다.netcat그리고socat공공 시설.

관련 정보