从飞龙文章系统上传漏洞到系统管理员的飞跃

来源:互联网 发布:js页面提示信息 编辑:程序博客网 时间:2024/06/10 05:48
文章来源:Perl

2004年,带给我们太多的美好的东西,先屏弃黑客暂时不谈,我们的国家在这一年的诸多方面都有长足的进步:加入WTO、外交活跃、国际地位上升、奥运夺奎、广州申亚等等这些,都无不体现了一个中华民族正日益繁荣强大这一客观事实。

国家在进步,世界在进步,我们学习者更要进步,这不,今天我给大家带来的是老兵才刚发现的飞龙文章系统漏洞,单纯提级一个漏洞的使用并没什么多大的意义,这篇文章里我想说的其实是一个学习思路:

在老兵的文章中最后一段写到:

admin_upfile.asp
user_upfile.asp

这两个文件简直是动网以前那个上传漏洞的再现,而且这两个文件不要登录也可以操作。不过在用本站的上传工具上传时注意在cookies一栏中填上ArtID=1111;

文件名是以artid为依据的。

好,到这里,老兵把漏洞指出来了,下面我们找一份飞龙文章系统来,对应着这个漏洞来先了解漏洞。

找到admin_upfile.asp文件,然后找到如下一段代码:
dim FilePath,Object,upload,iCount,FormPath,FileExt,ArtID,FileName
if request.Cookies("ArtID")=0 then
conn.execute("insert into article(subject,content) values('news','news')")
set rs=conn.execute("select Top 1 ArtID from Article Order by Addtime desc")
ArtID=int(rs(0))
rs.close()
set rs=nothing
response.Cookies("ArtID")=ArtID
else
ArtID=request.Cookies("ArtID")



懂看一点ASP代码的朋友应该很快就明白了吧,在上传之前,这个文件会先读取cookie,里看是否有ArtID这个文件名的依据,如果有,系统符合要求,系统就会将新上传的文件读入数据库然后执行上传操作,否则的话就不执行。

再往下看代码,就是和之前的动网上传是差不多的了,我们一直来到这一行:

FileName=FormPath&ArtID&"-"&iCount+1&"."&FileExt

这句代码了说明的文件名保存方式:是用路径+ArtID的形式,到这里,老兵说的:"上传时注意在cookies一栏中填上ArtID=1111;文件名是以artid为依据的。"就可以很好理解了。

怎么样?是不是觉得其实学习就是这么简单,只要肯读,呵呵……

好了,说了这么多的原理,下面我们来看看具体的操作:

(1)准备工具:
老兵上传工具一个,ASP木马一个,Fpipe.exe,Serv-u,后门一份(我用Radmin),还有浏览器一个(什么话,兄弟们给我打他,这个东西谁没有啊,简直是在浪费时间嘛。。。。。^_^!)

(2)用搜索引擎搜索关键字"飞龙文章管理系统版权及免责声明",这个关键字比老兵说的关键字"Article.asp?ArtID="这个要准许多^_^。

(3)搜索出来的文件是copyritht.asp ,将它改成admin_upfile.asp,如果出现图一所师,说明这个网站有这个文件并存在漏洞。

Click to Open in New Window

至于那些出错信息就不用管了,谁叫咱是没权限的入侵者呢~呵呵……

(4)打开老兵的上传工具,写入网站的上传地址,Cookie一项后面加多一句:
; ArtID=1111; 如图2:

Click to Open in New Window

(5)点完上传就是等啦,一会就好了,看看我们准备的小马上去了没?图3:

Click to Open in New Window

好了,WebShell就拿到了,接着我们就要拿Administrtor权限咯,这是每个Hacker入侵时的最高目标嘛。

用这个小马写了个海阳进去,看起来直观多了哈……,我们先看看能不能执行命令。

哎呀,cmd.exe用不了啊,咋办?有人说过:"此路不通我们走别的路。"他不给用那我用我自己的可以了吧,哈哈……为了隐蔽,我把自己的cmd.exe给放到了Documents and Settings/All Users/Documents这个目录里,当然你也可以放进别的可写目录里,例如c:/winnt/system32/inetsrv/data这里,又深默认又可写,不用不是浪费了微软的好意?^_^

好,我们再用海阳调用这个cmd来看看

Click to Open in New Window

嘿嘿……这不,都老老实实的交代了吧^_^。

继续,net start看到有Serv-U了,版本是多少一般我很少去注意,因为我用的是端口转向提升权限,所以开始就不需要看版本是不是能溢出?目录在哪里?是不是可写这些,。如果转向之后端口连接不上那么也许就是防火墙的缘故了,因为在现在所有版本的Serv-u中这个办法通杀。我们用海阳执行命令fpipe -v -l 12345 -r 43958 127.0.0.1,这句命令的意思是将本地的43958端口的数据转发到12345端口。让我郁闷的是,这个cmd执行这个命令竟然不能执行成功。。。大汗!!不怕!我们还有一个武器—WSH,海阳2005已经为我们准备好这些了,直接使用即可。

然后打开Serv-U进行远程连接(这个我就不多说了,要不小编要说我骗稿费了^_^!)添加Serv-U超级用户,提升权限,上传后门,再给它来个Rootkit,开个终端把服务替换掉,做个隐藏帐号,装个超小ASP后门再改改文件时间这些(我晕……你够狠的。。。。。),这样就够我用上个半年的了^_^。

这篇文章的东西都是很老的技术串联起来的,但是老东西不一定就过时。飞龙文章上传漏洞的一"盗",Serv-U提升权限的二"盗",加之学习方法的三"盗",都不得不说——咱不光学Hack,咱"盗"也要"盗"得精彩!
原创粉丝点击