时下很多网站都提供了短信注册的功能,用户只要注册,便可以享受网站提供的各种收费(或者免费,极少)短信信息服务。当然,注册的过程是免费和快捷的,但是我却发现很多网站在提供用户注册的时候省略了一些重要的步骤,造成了严重的安全隐患。看看下面这是某个网站提供的注册手续,真是“快捷”啊!
分析一下这个网页的源代码(提交表单部分):
熟悉表单操作的读者应该能看懂当我提交表单的时候会向服务器发送些什么东西:使用HTTP协议的POST方法向服务器提交一个表单,处理这个表单的服务器程序是的一个asp程序,提交的数据只有两个,电话号码,和确认(在HTTP头中也许有额外的cookie信息)。没有其它的任何辅助认证手段,就可以输入一个手机号码,然后就可以向这个手机号码发送一条短信。
现在设想这样的情况:我使用一个程序,它来代替我向这个服务器发送一个HTTP的POST消息,然后提交它需要的发送短信的足够的数据,那么这个服务器就会向指定号码的手机发送一条短信。如果我建立一个数据库,里面有多达上百个可以来发送短信的服务器地址和数据,然后我重复的做这种操作1000次(甚至更多),所有的短信都发送到一个手机上!用户一下子会接收到几千甚至上万条短信,他的手机还能用吗?!
不要觉得这是不可能做到的事情,我轻松的在网上搜索了一下,就发现很多网站注册短信就是通过这样不甚严格的方式进行注册。我记录下其中的一些建立了一个小型数据库,然后编写一个调用这个数据库来发短消息程序。(程序界面截图如下:)
指定号码在短时间内就收到了大量的垃圾短信!
如果我的数据库够大,那么情况将更加恶劣了!
能出现这种程序的原因无非就是一些注册网站在注册的时候图省事,不做严格的检测控制,使得机械式的程序也能做这样的事!
希望各移动运营商在允许网站提供类似服务的时候,要求网站必须提供更为严密的检测措施!比如下面的这种必须输入随即验证码的认证方式就可以让这
种攻击一筹莫展(选取新浪的短信注册页面,新浪拥有此图片版权)!
希望大家通过mail和我联系,也可以向我索取该攻击程序以及源代码。
本文地址:http://com.8s8s.com/it/it27926.htm