[代码审计]web程序对客户端数据加解密带来的安全问题

Yaseng 2013-08-19 11:26:00

0x00 前言


对于一个完善系统而言,无论是桌面还是web程序, 都会使用客户端保存数据如cookie,db文件等。为了不让外部获取或者控制,系统会对数据进行私有加密 例如qq密码,聊天记录,web程序中用户信息等。而对于开源程序而言,算法是公开的,对数据的加密只有依靠key来保护数据 ,一旦数据可控就可能造成某些安全问题,本文探讨web开源程序中对私有数据的使代码的安全性问题。

0x01 直捣黄龙:key可知


某些加密key可推算抑或可爆破情况下,私有数据数据完全可控,根据实际环境sql注入,xss,越权等攻击。

例如:

WooYun: Espcms v5.6 暴力注入

WooYun: dedecms sql injection

PHPCMS V9 sys_auth()设计缺陷导致多个SQL注入漏洞

0x02  隔山打牛:key不可知


为了数据和代码的统一,一套系统中数据的加密解密key一般是通用的,我们可以利用程序的某些功能来生成加密之后的数据,从而控制程序的私有数据,进行攻击。

类似的案例如:

WooYun: PHPCMS最新版(V9)SQL注入一枚

WooYun: espcms 二次注入一枚

WooYun: Espcms加密函数缺陷导致getshell

0x03 总结


当变量能控时,一切数据都是危险的,程序除了对输入输出的数据做严格过滤之外,对内部私有数据也要相应的过滤。

评论

瞌睡龙 2013-08-19 11:29:39

总结的不错~!就是略显简短了点 :)

X

xsser 2013-08-19 19:50:15

好短

E

erevus 2013-08-20 15:00:53

成正比的...嘿嘿嘿

P

possible 2013-08-28 09:49:24

都不用滚动条 真好

随机分类

渗透测试 文章:154 篇
APT 文章:6 篇
Web安全 文章:248 篇
memcache安全 文章:1 篇
安全开发 文章:83 篇

扫码关注公众号

WeChat Offical Account QRCode

最新评论

Article_kelp

因为这里的静态目录访功能应该理解为绑定在static路径下的内置路由,你需要用s

N

Nas

师傅您好!_static_url_path那 flag在当前目录下 通过原型链污

Z

zhangy

你好,为什么我也是用windows2016和win10,但是流量是smb3,加密

K

k0uaz

foniw师傅提到的setfge当在类的字段名成是age时不会自动调用。因为获取

Yukong

🐮皮

目录