Чому для netcat-openbsd відсутня опція '-e'?


14

Чому -eв netcat-openbsdпакеті опція відсутня ? Існує netcat-traditionalпакет , але він має багато особливостей з пакета OpenBSD відсутня. У мене працює Linux Mint 16.

Хтось знає, чому цього не вистачає? Це видаляє досить велику особливість сітки.


Відповіді:


17

Тому що існують різні версії програми.

Немає "стандарту", який описує, які параметри netcatповинні підтримувати, на відміну від багатьох інших стандартних утиліт, які вказані в POSIX. У вас є netcatверсії OpenBSD, FreeBSD, GNU netcat та ін.

Для варіанта OpenBSD на сторінці вказується, що :

There is no -c or -e option in this netcat, but you still can execute a
 command after connection being established by redirecting file descriptors.
 Be cautious here because opening a port and let anyone connected execute
 arbitrary command on your site is DANGEROUS. If you really need to do this,
 here is an example:

 On ‘server’ side:

       $ rm -f /tmp/f; mkfifo /tmp/f
       $ cat /tmp/f | /bin/sh -i 2>&1 | nc -l 127.0.0.1 1234 > /tmp/f

 On ‘client’ side:

       $ nc host.example.com 1234
       $ (shell prompt from host.example.com)

 By doing this, you create a fifo at /tmp/f and make nc listen at port 1234
 of address 127.0.0.1 on ‘server’ side, when a ‘client’ establishes a
 connection successfully to that port, /bin/sh gets executed on ‘server’
 side and the shell prompt is given to ‘client’ side.

 When connection is terminated, nc quits as well. Use -k if you want it keep
 listening, but if the command quits this option won't restart it or keep nc
 running. Also don't forget to remove the file descriptor once you don't
 need it anymore:

       $ rm -f /tmp/f

0

останні версії, які я знайшов визначення в деяких джерелах для netcat, також дозволяють виконувати команду Execute. зазвичай це відключено з міркувань безпеки.

але я знайшов альтернативний спосіб обійти

http://www.commandlinefu.com/commands/view/11061/emulating-netcat-e-netcat-traditional-or-netcat-openbsd-with-the-gnu-netcat

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.