渗透测试中网站登录接口的漏洞测试分享



      从业渗透测试服务已经有十几年了,在对客户网站进行漏洞检测,安全渗透时,尤其网站用户

登录功能上发现的漏洞很多,想总结一下在渗透测试过程中,网站登录
功能上都存在哪些网站安全

隐患,下面就有请我们SINE安全的工程师老陈来给大家
总结一下,让大家都有更好的了解网站,在

对自己网站进行开发的过程中,尤其用
户登录功能上做好网站安全防护,防止网站被攻击。

 
网站登录有安全验证与效验,从分支上又可以分出其他代码功能,包括用户注册,忘记密码,用户

登录框,修改密码,验证码(图片以及短信验证码,邮箱验证码等
功能),用户登录信息安全提示

,密码错误还是输入的账号不对,以及账号频繁登
录的锁定安全机制功能,大大小小的功能组成了

网站的登录功能。那么我们SINE安
全在对客户网站进行渗透测试服务的时候,在网站登录功能里

到底发现那些致命的
漏洞?下面我们来详细的举例说明:
 
 
第一我们从最简单的一个用户登录框上来说,很多客户网站并没有对用户前端输入的参数值进行安

全过滤,导致账户名字与密码里可以插入恶意的参数值,导致SQL
注入漏洞的发生,再一个就是使

用万能的密码进行登录,可以绕过数据库,直接登
录网站。SINE安全是如何帮用户修复这个SQL注

入漏洞呢?针对SQL注入的修复办法
是:对用户登录的账号密码字段的参数值进行预编译,不允许

特殊字符的输入与传
输,在代码里写入get,post,cookies提交方式的安全拦截,发现恶意的字符包

<,>,\,/,,,",select,update,@,等等进行拦截,并返回错误提示,对特定的sql语句在代码里进行预

编译
,禁止多余的参数插入到账号与密码字段中。
 
 
用户ID与密码被暴力破解,很多客户网站并没有对网站的登录进行安全判断,导致攻击者可以随意

的对其进行任意的账号密码尝试登录,有些甚至有密码字典,可以
不断去猜解用户的ID与密码,导

致网站用户被恶意登录,资料恶意篡改等情况发生
。对这种渗透中发现的漏洞我们SINE安全的修

复办法是:增加验证码功能(图片验
证码,或者是短信验证码),每次登录都必须输入对的验证码

,如果验证码不对那
就不允许登录,也可以将验证码做时间的限制,30秒才能重新获取。 再一个

对用
户ID输入错误的提示,可以混淆攻击者的视线,提示是密码错误。在用户登录次数达到6次以

上直接锁定该账户的登录。

 
 
XSS跨站攻击漏洞也会在用户登录框中发生,比较常见的就是用户名的参数值中,有些客户网站

没有对XSS恶意代码进行安全效验,导致可以输入错误的账号进行登
录,当错误登录的时候,后

台有可能会有错误的用户登录记录,包括post数据包里
网站来源都会插入XSS攻击代码,导致管

理员在查看用户登录错误日志的时候触发
XSS漏洞。XSS跨站漏洞可以获取用户的cookies值,以

及网站后台的地址,并可以
将浏览器打开后台进行截图等功能,如何修复XSS跨站漏洞?对get,

post,cookies
的提交方式进行安全过滤,拦截掉<,>,script,img,"",等字符。
 
 
任意用户注册漏洞也会在网站登录功能上发生,可以用来猜测网站是否有注册过该用户名,进行

批量的暴力枚举。对注册使用的验证码进行绕过,使用正确的短信验
证码提交注册即可绕过注册

,手机以及邮箱的验证码过于太短,导致暴力破解,针
对于这样的网站漏洞我们SINE安全的修复

建议是对验证码和注册信息进行同步请求
,对验证码进行验证是否正确,然后再来确定注册的信

息是否与验证码是一体的。

 
还有很多网站功能在渗透测试过程中出现的漏洞,这里总结的是上部分,下一部分我们将会在下

一篇文章中跟大家揭晓,也希望这些的渗透测试分享能让大家对网站
的安全有所了解,只有真正

的了解了自己的网站,才能把安全做好,知彼知己百战
不殆。在网站上线以及发生安全问题后,

一定要做渗透测试服务,提前检测网站存
在的漏洞,以及模拟攻击者的手法去查找漏洞根源,防

患于未然。
分享: