JAVA架构网站代码的安全审计



           国内对于java开发的网站系统很少有开源的,基本上都是大公司自己开发,自己使用不

对外的一种JAVA网站系统,sine安全公司针对于这种情况,找了一套JAVA
网站来示范教大家该

如何对网站代码进行安全审计。
 
 
该JAVA系统没有使用struct2框架来开发,而是简单的遵循了JAVA网站开发的一些规则,来构造

了这一套O2O的租车网站,该网站的功能基本上是由租车,包月租车
,单日租车,周租车,会

员注册,汽车司机端,门店功能。我们现来架设一下这个
JAVA的环境,我们用的是tomcat+

mysql数据库来运行整个JAVA网站。

 
上面这个是网站的首页,我们先来对网站的前端进行功能性的预览,一般网站代码的安全审计

都是先看首页的大体功能,然后根据网站开发的功能进行详细的代码的
安全审计,一步一步的

往下延伸安全审计,这样可以节省很多的人工安全审计时间
,以及安全成本。首先看到的是网

站的会员注册功能,一般会员注册这里我们来审
计一下是否包含会员恶意字符注册,是否含有

sql注入漏洞,XSS跨站漏洞,会员注
册逻辑漏洞,还有这个会员头像上传这里是否可以上传

木马文件,像webshell等等
的脚步木马代码。Sine安全公司是一家专注于:网站安全、服务器

安全、网站安全
检测、网站漏洞修复,渗透测试,安全服务于一体的网络安全服务提供商。
 
我们再来审计下网站里的主要功能:租车业务,如下图:

 
点击立即租车,首先会判断用户的登录状态,如果用户没有登录那么就会自动跳转到用户的

登录界面,对租车代码进行安全审计的时候,一般会出现一些用户密码任
意修改漏洞,以及

租车功能上的租车时间上可以掺入非法字符,造成SQL注入,再
一个就是租车订单是否存在

遍历查看漏洞,其他用户的租车订单被普通用户任意查
看漏洞,以及订车下单付款这里是否

可以任意金额支付。

 
 
我们再对其会员注册这里进行安全审计的时候发现用户注册时发送的验证码可以绕
 
过,并可以无限制的发送验证码,我们来看下代码:
 
该JAVA代码并没有对用户的手机号以及发送验证码进行安全限制,并做安全过滤,导致可以

多次发送验证码到任意手机号上去,可以构造成一个短信炸弹攻击漏洞。
Sine安全公司是一

家专注于:网站安全、服务器安全、网站安全检测、网站漏洞修
复,渗透测试,安全服务于一

体的网络安全服务提供商。

 
 
在租车网站系统的后台,还发现了XSS跨站漏洞,这个跨站漏洞是用户注册的时候可以构造

语句进行注册,导致管理员在后台查看会员信息的时候直接执行了XSS语
句,导致可以获取

后台登录的管理员cookies值。这个代码我们来看下是如何写的
吧。



 
 
可以看出来是直接post请求过去,并没有对输入的参数进行过滤,造成可以输入任意参数,当

构造了XSS跨站代码就可以执行。以上就是对整套JAVA网站代码的安全
审计,基本上的漏洞就

是对输入的参数以及字符没有过滤导致产生的漏洞,希望网
站的程序员加强过滤,防止被XSS

以及sql注入漏洞。
分享: