This story is on Slashdot:

CGI-Shell simulates a shell using CGI. So everybody who has a CGI-directory on a web-server, also has its own shell on it -- comparable with Telnet or SSH.

The CGI-Shell program is written in Perl. See the CGI-Shell page in English and German.

As always you should inform yourself of any security implications before you try this.

--
John.

Replies are listed 'Best First'.
•Re: Shell Simulation via CGI
by merlyn (Sage) on Feb 04, 2003 at 17:05 UTC
    That all seems like overkill when this will do. Name a CGI script nph-my-shell, and put into it:
    #!/bin/sh exec sh -i
    Then telnet to your webserver, and "GET" the file. Boom, instant shell.

    Or at least, that's how I recall doing it. I might be wrong in a detail or two.

    -- Randal L. Schwartz, Perl hacker
    Be sure to read my standard disclaimer if this is a reply.

      I think the point is for users who don't have telnet access to their account to have some sort of simulation for it.

      For instance, JoeUser gets a 20-dollar-a-month account at JoeWebHost, and that account doesn't come with shell access. So, JoeUser then uses CGI-Shell to "simulate" it.

      Of course, its still a massive security hole, and I wouldn't be surprised if most hosts deny it in their service agreements.

        Of course, its still a massive security hole, and I wouldn't be surprised if most hosts deny it in their service agreements.
        I'd be surprised if you could distinguish this tool from another CGI script in any legally binding way.

        There's no escalation of privilege for me as the CGI uploader, because I can already write scripts that do what I need, albeit not interactively.

        If you're referring to the insecurity of an unsecured CGI script, that insecurity already exists in many scripts, such as the early Matt Wright attempts.

        So, I don't get this "massive security hole" you speak of.

        -- Randal L. Schwartz, Perl hacker
        Be sure to read my standard disclaimer if this is a reply.