Est-il possible de «diriger» une instance d'une application console via netcat, afin que netcat écoute une nouvelle connexion et redirige la stdin
et stdout
sur la connexion réseau.
linux
networking
console
netcat
jammmie999
la source
la source
<
or>
) est significativement différent de piping (|
), bien que vous puissiez parfois réaliser une opération équivalente avec un mélange des deux. Encore une fois cependant, avec la redirection d'E / S, vous pouvez modifier l'emplacement des deux flux; la tuyauterie redirige simplement la sortie standard d'un processus vers l'entrée standard d'un autre.Réponses:
Eh bien, comme documenté dans Wikipedia et dans la
netcat
documentation, il existe une-e
option qui le fait générer ( e xecute) un programme à la réception d'une connexion, en attachant le socket à stdin, stdout et stderr du processus. Exemple d'utilisation:Les exemples montrent généralement
/bin/sh
oubash
sont utilisés comme nom_programme . L'utilisation de cette option est déconseillée car elle ouvre essentiellement un portail d'accès anonyme et sans mot de passe dans votre machine. Bien sûr, cela est atténué en utilisant un programme avec moins de puissance que le shell (un qui n'a pas la capacité de s'échapper vers un shell), en minimisant votre utilisation et en le gardant secret. Néanmoins, les développeurs originaux denetcat
suffisamment senti que cette option était une mauvaise idée qu'ils l'ont désactivée par défaut, et l'ont conditionné sous l'option de compilation "GAPING_SECURITY_HOLE". Ceci est brièvement mentionné dans ce didacticiel NetCat et dans d'autresnetcat
documentations.Une recherche Google m'a conduit à des discussions sur ce problème sur d'autres sites Stack Exchange: Stack Overflow et Server Fault . Plusieurs contributeurs ont proposé la technique suivante pour faire la même chose sans utiliser l'
-e
option (c'est-à-dire que dans une versionnetcat
qui a l'-e
option désactivée):Quelques notes:
netcat
,-l
implique-p
, vous devez donc dire juste-l
, puis le numéro de port.while true
boucle.la source