1. 用网页登录飞信的网站(这里显示的是https,但是在传输密码时没有加密 ): https://webim.feixin.10086.cn/
2. 使用firebug可是看到它使用的是https://webim.feixin.10086.cn/js/login.js?2010121001 来实现登录的。
具体的source不贴出来的,但是关键的部分如下:
3. 从source中可以看到它是通过ajax 用post方法将数据传输到server的,但是使用firebug查看的话,
它是将密码明文发送的,所以会有中间人攻击的可能,尤其是公司是经过代理上网的,管理员在代理服务器上
可以通过http post数据得到用户的密码 。
4. 例子如下:
POST /WebIM/Login.aspx HTTP/1.1
UserName=13468718000 &Pwd=aaaaaaaaaa &Ccp=8kvs&OnlineStatus=400
^用户的手机号码(这里是随便输入的) ^密码
看来网上安全需要注意,我还尝试了renren和web.qq.com。
renren也是通过明文来传输密码的,但是web.qq.com不是,它是通过md5算法散列的, 关键的一行是
"H += md5(md5_3(B.p.value) + G);"
^密码 ^verifycode(可以通过http get 数据获得)
例如,一个web qq登录请求:
GET /login?u=555555555&p=F018505DE8B66FBCB8CD7F1A04101870&verifycode=!AG0&remember_uin=1&aid=1003903&u1=http%3A%2F%2Fweb.qq.com%2Floginproxy.html%3Flogin_level%3D3&h=1&ptredirect=0&ptlang=2052&from_ui=1&pttype=1&dumy=&fp=loginerroralert&mibao_css= HTTP/1.1
密码"111111111"经过4次md5散列后的变成了"F018505DE8B66FBCB8CD7F1A04101870", verifycode是:!AG0
refs: js beauty online 很好用 http://jsbeautifier.org/?
----
https://mail.qq.com 也是通过明文来传输密码的,例如,一个登录请求:
POST /cgi-bin/login?sid=,2,zh_CN HTTP/1.1
sid=%2C2%2Czh_CN&firstlogin=false&starttime=1303269953187&redirecturl=&f=html&p=111111&ept=0&delegate_url=&s=&ts=1303269964&from=&ppp=&chg=0&target=&checkisWebLogin=9&uin=dddd&aliastype=@qq.com&pp=000000&verifycode=
uin=dddd 是用户名, p=111111是密码