admin管理员组

文章数量:1530845

2024年5月31日发(作者:)

网站防注入别忘了cookie注入

经过几年的注入攻击的洗礼,现在即使一般小企业的

网站也做了防注入,但有一种注入叫cookie注入,由于它利

用了网站程序一般很少使用但确实可用的获取参数的方法,

很多网站程序的作者往往忽略了防范cookie注入,给网站的

安全带来极大危害。下面我还是通过一个例子说明cookie注

入的危害。

我收藏了一款存在cookie注入漏洞的ASP网站程序―宜

昌电脑网络公司v2.8版,它存在的注入漏洞比较经典,就用

它来演示cookie注入漏洞了。

发现漏洞

我把宜昌电脑网络公司v2.8版在虚拟机里用IIS运行了

起来,网站访问地址为127.0.0.1/ ,如图1。

在“常见故障”栏目中点开一篇名为“夏普复印机特殊

故障代码的复位方法”的文章,在浏览器中显示的地址为

127.0.0.1/news_?id=1093,如图2。

在这个地址后面输入-0,也就是浏览器中的地址变为了

127.0.0.1/news_?id=1093-0,回车,显示的还

是“夏普复印机特殊故障代码的复位方法”这篇文章;在地

址127.0.0.1/news_?id=1093后面输入-1,也就

是浏览器中的地址变为了

127.0.0.1/news_?id=1093-1,回车,显示的文

章变为了“夏普AR1818、AR163、AR163N、AR2818垂直白

线”,如图3 。

和直接访问127.0.0.1/news_?id=1092显

示的页面相同。也就是id后面的参数1093-1这个减法运算

被执行了,推测news_在获取id参数的值时过滤不

严,很可能存在注入漏洞。是否存在普通的注入漏洞呢?在

地址127.0.0.1/news_?id=1093后面输入空格

and空格1=1(把空格换成按一下空格键),地址变为了

127.0.0.1/news_?id=1093 and 1=1,回车后出

来了防注入提示“系统提示:您进行了非法操作 请不要在

参数中包含非法字符尝试注入!”,如图4。

看来网站有防注入措施,那是不是网站就不存在注入漏

洞了呢?ASP程序有Get和Put两种常用获得输入的方法,

还有一种不常用的通过cookie获得输入的方法。

127.0.0.1/news_?id=1093 and 1=1就是通过

Get方式获得参数的值1093 and 1=1,注入代码被拦截只能

说明通过Get方式提交的注入代码被拦截,那么我们通过不

常用的cookie提交注入代码是否会被拦截呢?来实际测试一

下。在浏览器的地址栏中输入

javascript:alert(="id="+escape("1093 and

1=1")),回车,会出来一个对话框,点“确定”按钮关闭它,

然后在浏览器中输入127.0.0.1/news_ ,回车

后显示的内容和输入

127.0.0.1/news_?id=1093的内容一样,说明

news_获得了我们通过cookie传递的参数1093 and

1=1,正常显示了“夏普复印机特殊故障代码的复位方法”

这篇文章,并且我们的注入测试代码and 1=1也没有被拦截,

如图5。说明程序没有对我们通过cookie提交的数据做防注

入处理,程序存在cookie注入漏洞。

cookie注入

知道了网站存在cookie注入漏洞就可以来注入了。其实,

cookie注入漏洞和一般的注入漏洞能做的事一样,比如可以

获得网站管理员的用户名和密码等,就是利用过程稍微比一

般的注入麻烦一些。可以像上面一样在浏览器的地址栏中输

入javascript代码完成注入攻击,但输入代码太麻烦,我们来

用个简单的办法。通过寂寞的刺猬的注入中转生成器jmdcw

可以把cookie注入漏洞转化成普通的注入漏洞来利用,然后

就可以用注入漏洞利用工具进行注入了(截至到现在,据我

所知还没有一款注入工具可以直接对cookie注入点进行注

入)。打开,因为是cookie注入,因此选择“COOKIE

注 ”,“来源页”输入存在cookie注入漏洞的地址

127.0.0.1/news_?id=1093,注入URL地址输入

127.0.0.1/news_,也就是去掉了参数的地址,

“注入键名”输入id=,也就是存在cookie注入漏洞的地址

127.0.0.1/news_?id=1093中参数的名字id后

面再加个=,“POST提交值”修改为jmdcw=1093,“正常的

Cookie值”不用修改,用默认的就行,如图6。点“生成ASP”

按钮就会在同目录下生成文件,把

上传到支持ASP的网站空间中,这里我把它复制

到了我虚拟机里的网站根目录下,访问地址为

127.0.0.1/ 。

用浏览器打开127.0.0.1/?jmdcw=1093,

显示如图7。和127.0.0.1/news_?id=1093的内

容相同,通过注入中转生成器把地址

127.0.0.1/news_?id=1093转换成了

127.0.0.1/?jmdcw=1093。

127.0.0.1/?jmdcw=1093就是普通的注入点

了,用常用的注入工具比如啊D就可以跑出网站管理员的用

户名和密码了,如图8。

用获得的管理员的用户名和密码进入了后台。在后台点

“添加文章”,上传图片的地方可以直接上传asp文件,上传

个ASP大马上去,如图9。

至此,通过cookie注入漏洞获得了网站的完全控制权,

利用ASP大马可以编辑网站目录下的任意文件。

虽然普通的注入漏洞越来越少了,但比较隐蔽的cookie

注入漏洞却还普遍存在,尤其是很多小的利用ASP程序的网

站,有很大一部分存在cookie注入漏洞。要防范cookie注入

漏洞也比较简单,比如可以采用做了防cookie注入的程序来

建站等。

本文标签: 注入漏洞网站存在代码