Quando tento executar o seguinte comando:
echo -e "GET / HTTP/1.1\n\n" | /dev/tcp/74.125.225.19/80
Eu recebi a seguinte mensagem de erro:
bash: /dev/tcp/74.125.225.19/80: No such file or directory
O comando a seguir funciona perfeitamente, então o problema envolve como eu estou usando /dev/tcp
:
echo -e "GET / HTTP/1.1\n\n" | nc 74.125.225.19 80
Estou no Ubuntu 13.04, então a capacidade deve estar no meu sistema. O que estou fazendo errado? Quais são as regras para usar /dev/tcp
corretamente?
Respostas:
Você precisa usá-lo nos redirecionamentos :
Tão:
é o caminho certo para usá-lo.
Quando você usou
/dev/tcp/74.125.225.19/80
em um canal,bash
tentou executar um comando nomeado/dev/tcp/74.125.225.19/80
e relatou um erro porque esse arquivo não existia.A capacidade de manipular
/dev/tcp/host/port
e/dev/udp/host/port
redirecionar foi adicionadabash
na versão 2.04.Você precisa compilar
bash
com a--enable-net-redirections
opçãofonte
/dev/tcp
é tratado como um "arquivo" e não como um script.