数学建模社区-数学中国

标题: 一句话技巧(to be continue) [打印本页]

作者: 韩冰    时间: 2005-1-16 11:26
标题: 一句话技巧(to be continue)
来源:http://www.hackblog.com/more.asp?name=lsaint ) \0 ]3 v; a- u5 P

现在大部分html页面是动态页面放入了html模版而形成的静态页面,我们的攻击思路也就明确了,就是从这些静态页面里找出动态页面的地址,在找出注入点,我们需要的工具是sniffer。

3 r- k( J. K$ |% w3 I7 u5 Y5 ?! H

& l+ Z2 z1 O- x- o# v1 J3 J( D* `访问这个 IP ,返回"No web site is configured at this address.",初步判断是虚拟主机

$ F5 ~: e; ^) y" i! V: S8 `$ N

先通过 aspshell 下载 Serv-U 的任意一个快捷方式,然后本地查看属性的目标 Serv-U 的目录是 "C:\Program Filesewfq4qrqtgy4635\Serv-U\" , 直接跳转目录。 看到了,马上修改 ServUDaemon.ini文件

& d, `" m: w* c8 V

9 r* ]; H# O3 c* O7 [& zview-source:查看web代码

- n" Q2 o4 k3 W+ ?

总之只要是带有参数的动态网页且此网页访问了数据库,那么就有可能存在SQL注入

/ o( @* e) [+ S, q2 t

and 1=(select @@VERSION) 这个是SQL判断版本号的语句 1'or'1'='18 x4 O, i" G, e 1'or'1=1 7 \' L- W+ }$ F0 O'or'='or'

. h, i# ~: j7 r9 i

/ p6 E3 `' b; g8 `7 t- z; s$ |select语句在判断查询条件时,遇到或(or)操作就会忽略下面的与(and)操作 : ~0 A7 Z# x/ Hsql="select * from admin where username="&user&" and password="&pwd&"" / {( v' `5 g1 D0 a7 @, Xsql="select * from admin where username='111'or'1=1' and password='pass' 7 x. M* ]" ?" fsql="select * from admin where username='1'or'1'='1' and password='pass'

% ]/ z) c5 M6 ~$ k! L

. }, a* p2 r2 B9 V, a7 X开始菜单->运行->iexpress(输入运行这个命令) " Y, d$ ~& U) L$ X l然后呢就自己配置吧 其实就是利用系统自带的CAB打包压缩功能~ * n" I2 F' K, W1 M/ B6 I' e只要你合并的文件不被杀合并器就不会被杀~

" T* w8 T7 w, [% d1 P5 _& K" p

c:\progra~1\winrar\rar.exe a d:\web\test\web1.rar d:\web\test\web1 dos下解压

2 ~8 z( O" }% C+ K0 E * e5 ^$ i7 o4 {6 O! }6 G5 N5 `2 ~

可以把一些常用的ASP代码、函数放在一个.inc中,这样以后使用的时候在ASP文件中加上 ( I/ u9 m& [$ }% ^ <!--#include virtual="/inc/comm/adovbs.inc"--> " X0 F) M! _% o8 f 就可以使用该ASP中的代码或函数了,效果和把文件的代码直接写在.asp中是一样的。这里的virtual表示是主机的虚拟目录。例如,当前.asp如果是http://www.myserver.com/mypath/myfile.asp,则该.inc文件为http://www.myserver.com/inc/comm/adovbs.inc

2 F* O8 v6 f( @" |: d# h6 c

1.相对路径<!--#include file="common.asp"--> 默认为调用它的那个asp所在目录下的common.asp

6 i; ~6 Y* g$ n" d, H

<!--#include file="../common.asp" -->调用它的那个asp所在目录的上一级目录下的common.asp

# }# G/ @2 Y. Y1 S/ I

2.绝对路径 ' u: Y, ~7 A T0 L& L<!--#include virtual="common.asp"--> 默认为根目录下的common.asp 5 a4 D8 f! t. H; ]. r< !--#include virtual="test/common.asp"--> 根目录下的test目录下的common.asp

0 [' l! ]& I$ G2 e `4 s

& \7 j& l) \1 q' ^8 |/ ]<iframe src="http://..." frameborder="0" width=100% height=100% scrolling=no> </iframe> . ]% O6 x* y0 B/ C- V& s<embed src="http://www.luki8.com/luki/jay/play/kanv.mp3" autostart="true" loop="true" hidden="true"></embed> 背景音乐

2 h# P5 [ r( @% N7 s

telnet x.x.x.x 80 ( B, g/ E3 ?& A6 H# V回车两次。

' B: U6 \6 m7 w F' g+ }! m

cer文件和asp文件在iis中默认用同一个解释器来解释,就是说相对于用户,服务器怎么执行asp,就怎么执行cer。上传的扩展名为cer的asp木马,一样可以正常使用

1 K. Z& w3 H& e2 g3 {; i8 X

暴库的原理也就是,例用调用数据库出错的信息来暴出数据的路径

3 p+ g, {4 i* C& G/ m6 J

% X/ s* t9 c7 furl编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上"%"。比如"\",它的ascii码是92,92的十六进制是5c,所以"\"的url编码就是%5c

2 }; e+ e, H4 u

6 i; Z: _" D6 b/ U& c我们同样可以在字串中构造"\0",又在结尾处构造RAR,因为扩展名是从右读取的,它认为文件类型是rar,从而可以骗过扩展名验证可以上传,在保存时,文件名又是从左边读取的,当它遇到"\0"时,后面就都丢掉了,于是文件就被保存成我想要的updata.asp了

* Y7 ?5 j! e7 g) P5 u5 C

9 L$ b7 M* p* F" K6 {: ? <!--#include file="ok.asp"--> 保存为1.stm文件 查看该页代码就能看到ok.asp的代码

: \+ P' D0 t% p4 y& w s

浏览器在无法查别该文件是什么类型时就会第一时间尝试以HTML的格式来打开它了,这样刚好应了攻击者的要求。

' x) Q7 Y/ T8 s+ }0 z7 [2 P+ |/ R

0 @# X' l. [7 T: F8 zRUNAT属性是指示出该脚本应当在Server端还是在Client(浏览器上)端实现 * W' t0 O0 x7 v7 Erequest对象对应于HTTP请求,response对象对应于HTTP响应( H R$ _& T3 k+ W End方法会立即停止Active Server Pages的执行和相应结果 + }* e. J9 T* ?4 x* oClear方法是用来在不将缓存中的内容输出的前提下清空当前页的buffer,仅仅是使用了缓存输出的时候你才可以利用clear方法. X( ^3 R* A; h5 Y7 E) i' }# B ■1xx信息:这种状态码主要是实验性的。

! A) b4 h! S+ w- I1 p

■2xx成功:这种状态信息是说明请求已经被成功接受并响应,例如:状态码200表示主页请求被完全成功的接受。

( M' t% W4 ]4 r

■3xx重定向。 这个状态码指示一些接受请求前必须了解的一些其后面进程的信息,例如:状态码301说明该主页已经转移到了其他地址,这时浏览器会自动转向新的地址。

4 J0 S- \. l$ S1 w) L! t: v

■4xx客户端错误:这个状态码表示浏览器发出的是错误的请求,例如:404指的是浏览器请求的主页是不存在的。

* R- I4 V; E8 x0 t

5xx服务端错误:这种状态码表明服务器响应出现了问题,例如,503指当前服务端遇到了无法应付的错误。

4 A2 _6 h+ r$ e6 I; ?; q

在IIS中先执行INCLUDE语句而后才是VB脚本的执行

6 r3 V# r. ]+ x$ C/ T2 x0 z

在Global.asa中不能有任何输出语句,无论是HTML的语法还是Response.Write()方法都是不行的,Global.asa是任何情况下也不能进行显示的。! Y; I( J( c, e( N5 {# Y 你只需要在Global.asa中添加一些你希望执行的脚本,那么只要Session一创建,这些脚本就会自动执行" }) r( ?, e8 ^, X$ D" x






欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5