Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I need a VNC/SSH/something server that will let me access command line remotely from a limited account (meaning no services or any install). Just a simple exe that I can run and have it either connect to me or listen for a connection. Preferably it would ask for a user/pass and run the cmd as the user I specify. Is there any such program?

share|improve this question

John mentions psexec as being able to run a single executable. What he doesn't mention is that that executable can be cmd.exe (or powershell or bash or whatever), which will give you a remote shell.

share|improve this answer
    
here's a good overview of how psexec works: forum.sysinternals.com/… .. but it doesn't mention what it uses for the connection. (SMB/CIFS? RPC?) – quack quixote Oct 11 '09 at 17:36
    
@JohnT, psexec is billed as a telnet-replacement, but it isn't telnet, has nothing to do with port 23, and only works if microsoft networking is enabled. – quack quixote Oct 11 '09 at 17:40
    
tho it does require a temporary service on the remote machine (which it will install & remove itself). – quack quixote Oct 11 '09 at 17:41
    
I would use psexec but when I run it, it shows a GUI which freezes my console and I have to open up another one to kill it. Is there a switch to disable that GUI message? – Chris T Oct 12 '09 at 17:57
    
A GUI?!? The only thing I can think of is that some of those Sysinternals tools require a one-time license agreement. Other than possibly that, I've never seen any GUI component of psexec. – wfaulk Oct 12 '09 at 22:44

Do-it yourself corner.

There is an open-source on codeproject for two components, server & client. The server is written in java and the client in C++. The server only needs enough permissions to open a socket, as described:

It first creates a server socket so that clients can connect to it. When a client is connected to the server, it will spawn a new thread using the CommandRunner class to handle the client's request. The main thread will continue to listen for new client.

The server part is here : Executing commands on a remote machine - Part 1
The client part is here : Executing commands on a remote machine - Part 2

image

share|improve this answer
    
The client appears to be written in MFC, judging by the icon =p – John T Oct 11 '09 at 18:14
    
Fixed it. (15 chars) – harrymc Oct 11 '09 at 18:52
    
I actually coded a reverse-shell for this however I found that for many things it doesn't work (I tried running "runas.exe" from the shell but it doesn't let me enter any input and just closes – Chris T Oct 11 '09 at 21:57
    
That's probably because as you said it's a limited account. – harrymc Oct 12 '09 at 6:18

Telnet?

alt text

For running a single command over telnet, there is psexec from Sysinternals, which is a single executable that doesn't require installation. If you'd like the extra security (recommended) there is OpenSSH for Windows, but that will require an install.

share|improve this answer
    
Telnet is disabled on the server. Is there a third party server that doesn't require being run as a service? – Chris T Oct 11 '09 at 17:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .