您好我的任务是尝试打破我公司使用的专有Web服务器程序,我真的没有太多运气。它建在c。
它以root身份运行,我试图让它执行命令。 Web服务器接收URL中发布的命令,并使用前缀执行这些命令。现在我可以传递任何命令,例如'& _cmd = gettimeout'或'& _cmd = rm'。该程序实际上将运行“前缀rm”
前缀程序将尝试在一组目录中运行该命令,其中没有有用的unix命令,因此只报告找不到的命令。由于php脚本将空格转换为+,因此也无法在URL中传递空格,例如'& _cmd = rm%20-f'。有没有格式化& _cmd字符串来运行真正的unix命令?
有点奇怪的任务,但我是一名安置学生做安全课程,我的工作正试图为我找到一些有关我课程的工作。
感谢您的帮助
答案 0 :(得分:1)
有些想法可能有用,可能不会:
prefix
运行之前进行评估。如果没有运气,他们可能会以某种方式为您服务。vi
,你就无法做任何你不能做的事情)。但在这种情况下,您可以利用它们。/proc/
中找到可执行文件,如果可以到达那里 - 它包含指向每个进程命令的链接。