Just wondering...

In MetaSploit, there are many exploits for specific programs e.g. Acrobat Reader, etc. and for services (SSH, FTP etc.); but is it possible to get a shell on a computer with which you have established a direct TCP connection?

This could have many uses such as social engineering with file transfers, IRC direct connections etc. etc.

The only problem i can see is that although a TCP connection has been established, the program on the other end may or may not allow/support remote code execution, making it impossible to exploit until an actual exploit has been found.

Any thoughts/ideas as to how something like this could be accomplished?