黑客攻击网络服务器

时间:2012-01-18 11:00:25

标签: webserver penetration-testing

您好我的任务是尝试打破我公司使用的专有Web服务器程序,我真的没有太多运气。它建在c。

它以root身份运行,我试图让它执行命令。 Web服务器接收URL中发布的命令,并使用前缀执行这些命令。现在我可以传递任何命令,例如'& _cmd = gettimeout'或'& _cmd = rm'。该程序实际上将运行“前缀rm”

前缀程序将尝试在一组目录中运行该命令,其中没有有用的unix命令,因此只报告找不到的命令。由于php脚本将空格转换为+,因此也无法在URL中传递空格,例如'& _cmd = rm%20-f'。有没有格式化& _cmd字符串来运行真正的unix命令?

有点奇怪的任务,但我是一名安置学生做安全课程,我的工作正试图为我找到一些有关我课程的工作。

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

有些想法可能有用,可能不会:

  1. 后引号。幸运的是,它们将在prefix运行之前进行评估。如果没有运气,他们可能会以某种方式为您服务。
  2. 如果空格不起作用,为什么不尝试其他类型的空格?有标签,还有更多。
  3. 您需要找到可以使用的命令,并确定它们是否有用。
  4. 您可能会在其中一个允许的命令中发现缓冲区溢出。通常情况下,这种超支不会带来安全风险(如果你接管vi,你就无法做任何你不能做的事情)。但在这种情况下,您可以利用它们。
  5. 您可以在/proc/中找到可执行文件,如果可以到达那里 - 它包含指向每个进程命令的链接。