dnf双属性攻击怎么算进行mimt 攻击

比特客户端
您的位置:
详解大数据
详解大数据
详解大数据
详解大数据
mitmproxy――中间人攻击的神器
关键字:mitmproxy 产品 中间人攻击
  一、前言
  http proxy在web渗透上占据着非常重要的地位,这方面的工具也非常多,像burp suite, Fiddler,Charles简直每个搞web的必备神器,还有历史比较久远的paros,webscarab等,实际上每个web漏洞扫描器都有http代理的功能。
  而今天要介绍的mitmproxy代理工具,非常棒,特别是对https的截获,及可扩展性,bra bra……
  之所以选择这款工具,是为了做移动APP的分析。我们知道使用http代理的基本条件就是要互通,而很多情况下,公司的移动网络与是隔离的,当然你可以用网络共享(或者买个小度或360wifi)的方法来解决隔离。(记得几年前做移动通信分析时就遇到了网络隔离且没有网卡的尴尬情况。)
  我的选择是在vps上搭建一个http代理(刚买了vps,正可着劲的折腾呢),这时候就需要命令行的工具了,于是选择了mitmproxy(其实我也用nginx搭建了代理,目前以查看通信为主,待熟练了,或许能用nginx-lua写个截获重写的模块,悲催的是nginx不支持https,扯远了)。
  二、mitmproxy原理
  mitmproxy就是代理,有篡改功能的代理。它支持两种模式,正向代理,与透明代理,支持http通信与https通信。
  (正向代理,反向代理,透明代理的科普可以看http://z00w00./1287这篇文章,很容易懂)
  mitmproxy官网上也有介绍原理,这里附上好心人的翻译http://www.oschina.net/translate/how-mitmproxy-works
  对代理很了解的同学,下面四幅图,就能知道是咋回事了。
  1. http正向代理
  2. https正向代理
  3. http透明代理
  4. https透明代理
  三、mitmproxy安装
  接下来我要在vps上安装mitmproxy了,该工具使用python编写,现在非常多的工具都是python编写的,都有专门的python培训机构了,话说不会python的程序员不是好程序员。
  python是跨平台的,因此mitmproxy也是跨平台的。
  接下来以(debian 7)上安装为例,其他平台非常类似(上安装包用homebrew就好)
  1. 首先安装python环境,了解python的可以不用看
  #python及python依赖包apt-get install build-essential python-dev python-setuptools#安装pip,很好的python包管理器,类似于aptitude,apt-getwget https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gzpython setup.py install
  2. 安装mitmproxy依赖包
  sudo pip install netlib pyopenssl pyasn1 urwid pil lxml flask#下面是可选(为了解码用)sudo pip install pyamf protobuf#下面是可选(为了测试用)sudo pip install nose pathod countershape
  3. 安装mitmproxy
  sudo pip install mitmproxy
  安装成功后会在生成两个工具/usr/local/bin/mitmproxy与/usr/local/bin/mitmdump
  本人是个开源工具杀手,总会遇到问题
  安装问题解决:
  如果使用pip安装时,出现pkg_resources.DistributionNotFound:(刚升级了 x Mavericks版本就出现了这个问题),可以先更新pip
  sudo easy_install --upgrade distributesudo easy_install --upgrade pip
  四、CA证书的安装
  要捕获https证书,就得解决证书认证的问题,因此需要在通信发生的客户端安装证书,并且设置为受信任的根证书颁布机构。下面介绍6种客户端的安装方法。
  当我们初次运行mitmproxy或mitmdump时,
  会在当前目录下生成 ~/.mitmproxy文件夹,其中该文件下包含4个文件,这就是我们要的证书了。
  mitmproxy-ca.pem 私钥
  mitmproxy-ca-cert.pem 非windows平台使用
  mitmproxy-ca-cert.p12 windows上使用
  mitmproxy-ca-cert.cer 与mitmproxy-ca-cert.pem相同,上使用
  1. Firefox上安装
  preferences-Advanced-Encryption-View Certificates-Import (mitmproxy-ca-cert.pem)-trust this CA to identify web sites
  2. chrome上安装
  设置-高级设置-HTTPS/-管理证书-受信任的根证书颁发机构-导入mitmproxy-ca-cert.pem
  2. osx上安装
  双击mitmproxy-ca-cert.pem - always trust
  3.上安装
  双击mitmproxy-ca-cert.p12-next-next-将所有的证书放入下列-受信任的根证书发布机构
  4.iOS上安装
  将mitmproxy-ca-cert.pem发送到邮箱里,通过访问/邮件附件
  我将证书放在了vps上以供下载
  /crt/mitmproxy-ca-cert.pem mitmproxy iOS
  /crt/mitmproxy-ca-cert.cer mitmproxy android
  /crt/mitmproxy-ca-cert.p12 windows
  /crt/PortSwigger.cer BurpSuite (burpsuite的证书,随便附上)
  5.iOS模拟器上安装
  git clone /ADVTOOLS/ADVTrustStore.gitcd ADVTrustStore/
  DANI-LEE-2:ADVTrustStore danqingdani$ python iosCertTrustManager.py -a ~/iostools/mitmproxy-ca-cert.pem
  subject= CN = mitmproxy, O = mitmproxyImport certificate to iPhone/ simulator v5.1 [y/N] yImporting to /Users/danqingdani/Library/Application Support/iPhone Simulator/5.1/Library/Keychains/TrustStore.sqlite3 Certificate added
  实际上上面的操作就是给 ~/Library/Application\ Support/iPhone\ Simulator/5.1/Library/Keychains/TrustStore.sqlite3中表tsettings表中插入证书数据
  6.Android上安装
  将mitmproxy-ca-cert.cer 放到sdcard根目录下
  选择设置-和隐私-从存储设备安装证书
  五、工具使用
  在vps上装好了mitmproxy代理,在客户端也装好了CA证书,接下来就可以使用了。
  第一步:在vps上启动mitmproxy
  mitmproxy -b xxx.xxx.xxx(指定监听的接口) -p xxx(指定端口)
  果然我是开源工具杀手,运行时又报错了。
  运行错误问题解决:
  当运行mitmproxy报错:
  Error: mitmproxy requires a UTF console environment.
  Set your LANG enviroment variable to something like en_US.UTF-8
  你可以先运行locale查看当前的语言环境,我的vps就是POSIX环境
  root@www:/# locale
  LANGUAGE=
  LC_CTYPE="POSIX"
  LC_NUMERIC="POSIX"
  LC_TIME="POSIX"
  LC_COLLATE="POSIX"
  LC_MONETARY="POSIX"
  LC_MESSAGES="POSIX"
  LC_PAPER="POSIX"
  LC_NAME="POSIX"
  LC_="POSIX"
  LC_TELEPHONE="POSIX"
  LC_MEASUREMENT="POSIX"
  LC_IDENTIFICATION="POSIX"
  LC_ALL=
  现在我们需要的是把其修改为en_US.UTF-8
  方法参考http://jrs-s.net//setting-locale-to-utf-8-in-debian/
  vim /etc/default/localeLANG=en_US.UTF-8. locale-gen#编辑/etc/profile,与/etc/bash.bashrc,增加 export LANG=en_US.UTF-8echo "export LANG=en_US.UTF-8" &/etc/profileecho "export LANG=en_US.UTF-8" &/etc/bash.bashrc source /etc/profilesource /etc/bash.bashrc
  现在再运行locale,可以看到语言修改过来了
  root@www:/# locale
  LANG=en_US.UTF-8
  LANGUAGE=
  LC_CTYPE="en_US.UTF-8"
  LC_NUMERIC="en_US.UTF-8"
  LC_TIME="en_US.UTF-8"
  LC_COLLATE="en_US.UTF-8"
  LC_MONETARY="en_US.UTF-8"
  LC_MESSAGES="en_US.UTF-8"
  LC_PAPER="en_US.UTF-8"
  LC_NAME="en_US.UTF-8"
  LC_ADDRESS="en_US.UTF-8"
  LC_TELEPHONE="en_US.UTF-8"
  LC_MEASUREMENT="en_US.UTF-8"
  LC_IDENTIFICATION="en_US.UTF-8"
  LC_ALL=
  然后就可以正常的运行了!
  第二步:在或PC或浏览器上选择使用该http代理
  第三步:使用客户端访问,现在就可以操作通信数据了
  六、常见操作
  1. mitmproxy
  就介绍最常用到的修改请求,并回放请求的方法吧
  (1)方向键定位请求
  (2)当黄色箭头&&定位到指定请求时,按回车enter进入请求中
  (3)按e进入编辑状态,然后按对应的蓝色字体来选择修改的部分
  可以修改query,查询字符串;path,路径;header 请求头;form 表单;raw body 请求正文;method 请求方法。
  (4)a 增加一行,tab键切换编辑字段,回车enter开始编辑,esc保存,q返回上一级
  (5)修改完后,按r就可以重放请求,然后查看修改结果了
  2. mitmdump
  别忘了,mitmproxy还有个内向的双胞胎叫mitmdump(很像tcpdump),它是不交互版的mitmproxy。可以非实时的处理通信包。
  我们可以在mitmproxy中按w,将通信数据保存到指定文件中后,然后用mitmdump来操作。接下来简单介绍一个例子,从mitmproxy中捕获到的数据包中,筛选出来自的数据包,然后重放这个数据包(其实也可以修改后再重放)
  -n 表示不启用代理, -r表示从文件中读取数据包, -w表示将数据包存储到文件中,-c表示重放客户端请求包
  mitmdump -nr all.data -w weibo.data "~u weibo"
  mitmdump -nc weibo.data[replay] POST /2/client/addlog_batch?s=2edc0cfa7&gsid=4ubed3V0QehBa8KoNp4AA75J&c=android&wm=&ua=Xiaomi-MI+2S__weibo__4.0.1__android__android4.1.1&oldwm=&from=&skin=default&i=&isgzip=&lang=zh_CN&& 200 OK 32B
  3. mitmproxy API
  开源精神最赞的是,可以像小时候玩积木一样,用大牛们提供的各种精巧工具,搭建自己合适的武器。
  mitmproxy提供了libmproxy以供调用扩展。
  我们可以查看一下libmproxy的详细说明,了解主要的API接口调用
  pydoc libmproxy
  官网给了一个自己编写脚本,来操纵数据包的例子,很简单,人人都能看懂
  如下所示,就是在响应包中增加一个自定义头
  def response(context, flow): flow.response.headers["newheader"] = ["foo"]
  我们可以在mitmdump 中使用这个脚本
  -s表示从读取自定义脚本来处理数据包
  mitmdump -ns examples/add_header.py -r infile -w outfile
  好了,就介绍到这了。
  七、希望交流
  我在运行mitmdump重放http响应功能时候
  mitmdump -S outfile
  卡死了,到目前还没有找到原因,希望知道的大牛告之,万分感谢
[ 责任编辑:小石潭记 ]
去年,手机江湖里的竞争格局还是…
甲骨文的云战略已经完成第一阶段…
软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。
微信扫一扫
关注Chinabyte安全科普:什么是中间人攻击(MITM) -
| 关注黑客与极客
安全科普:什么是中间人攻击(MITM)
共116056人围观
,发现 12 个不明物体
你拿着刚买的咖啡,连上了咖啡店的WiFi,然后开始工作,这样的动作在之前已经重复了无数遍,一切都和谐无比。但你不知道的是有人正在监视你,他们监视着你的各种网络活动,盗取你的银行凭证,家庭住址,个人电子邮件和联系人,当你发现的时候,已经晚了。
现在的小偷已经不仅仅是简单的在地铁上偷你的钱包,更高级的是使用网络攻击获取你的各种信息,当你在咖啡馆上网检查你的账户信息的时候,也许黑客就拦截了你电脑和WiFi之间的通信,监视着你的一举一动。这种方法就是“中间人攻击”(MITM),而这种攻击还仅仅是黑客用于攻击你的众多方法之一。
许多黑客都是利用网络漏洞使得自己能够很清晰的看见用户的各种数据。即使普遍受大众信赖的公司网络也会存在漏洞。去年三月,有公司就被曝光黑客获取了客户的信用卡资料,社保号码,家庭住址,电话号码等个人信息。苹果公司最近的gotofail漏洞以及安卓VPN缺陷都在提醒着我们:即使是主流的操作系统也有可能把你置于危险的情况中。
中间人攻击的案例
前段时间的https爆出“心脏出血”事件可能是目前讨论最热烈的OpenSSL漏洞。消息曝光称攻击者可以追踪OpenSSL所分配的64KB缓存,将超出必要范围的字节信息复制到缓存当中再返回缓存内容,这样一来受害者的内存内容如密码,信用卡信息和服务器的私钥等就会以每次64KB的速度进行泄露。“心脏出血”漏洞影响了百分之66的互联网用户,包括一些主流网站如雅虎,Flickr, Pinterest等等。这个漏洞使得MITM更加危险。即使HTTPS已经开启,但是攻击者可以用盗来的证书获取有价值的数据,基本使你处于毫无防备的状态。
虽然像OpenSSL的“心脏出血”漏洞以及苹果gotofail漏洞使得攻击者很轻易能够获得各种数据,但是大多数情况下,高级黑客还是会使用其他的手段。例如,一些攻击者会通过SSL剥离删除你的数据加密,用不安全的HTTP取代所有安全的HTTPS。其他方法如制造用户方的漏洞,通过浏览器来渗入用户的设备。在这两种情况下,一旦攻击者利用这个漏洞,他就能看到你的设备和接受者之间发送的所有数据,包括用户名和密码。
即使像“心脏出血”之类的漏洞已经被修补,由于操作系统工作的基本性质,MITM的威胁仍然存在。这是因为攻击技术模拟了正常的网络协议,所以如果操作系统厂商试图阻止MITM攻击,他们需要打破设备连接到合法网络的方式,而这样做就使得问题变得更加糟糕。我很遗憾的告诉你,所有基于Ip的设备都存在MITM能够找得到的漏洞。
随着今年年底之前手机数量即将超过地球人口数量,毫无疑问手机将成为下一波黑客攻击的前沿地带。除了设备的数量,员工在企业私人安全网络之外的消费预计在2017年形成爆炸形势,据估计所有移动数据流量的60%将转移到公共网络,这种不安全的公共网络的转变将导致MITM数量的明显增加。因此,很多人转向通过安装杀毒软件来保护自己的移动设备。但是杀毒软件并不适合移动架构,这种解决方案如果没有root权限访问设备的操作系统的话,也是不能够监控设备的活动情况。而且传统个人电脑的安全方法将对移动设备产生不必要的影响:操作系统变慢,电池消耗更快,且占用更多的内存空间等。此外,杀毒软件没有能力发现网络检测以及类似于MITM之类的行为,而是去寻找已知的恶意签名。
如何避免MITM
个人和组织都可以使用各种方法来保护自己的设备和网络安全,让人惊讶的是,许多主流网站最近在才开始对他们的服务进行加密。假设网站的URL读取的是“HTTP”而不是“HTTPS”,黑客就可以随时监视你的账户信息,所以如果网站没有加密的话,自己动手完整整个协议,输入包括“HTTPS”在内的完整的网址,尤其是在填写表格的时候。这一招虽然不能保护你免受高级黑客的攻击,但是对于一些比较菜的黑客还是有用的。在默认情况下,一些常用的服务不会执行SSL,这使得黑客有机可乘,完全接管了这些账户。
启用虚拟专用网(VPN)是另一种解决方案,在某些情况下也可以起到保护的作用,VPN是架构在公用网络服务商所提供的网络平台之上的逻辑网络,用户数据在逻辑链路中传输可以起到信息安全保护的作用。但是这种方法有一些限制。鉴于VPN是通过建立“安全通道”来实现,这种方法无法保护在公共WiFi下使用网络的移动设备
为了给一些敏感数据提供最佳保护,个人和组织需要发展一种全面地移动安全解决方案。虽然目前在合法网络情况下传统个人电脑的安全已经得到保障,但是这些组织应该在不影响用户体验感的基础上,为移动设备提供终端保护,保护这些设备可能遇到的各种不可控网络。但是要注意,移动安全空间非常的吵杂。虽然很多公司都声称可以保护你的手机,但是很少能够真正的做到保护你的银行帐号和个人信息免受网络的攻击。当前最流行的杀毒软件甚至不能保护你免于最业余的攻击。所以除非我们工作的地方,爱去的网站转变他们移动安全的方法,采取必要的措施来保护他们的网络,否则自我保护免于黑客攻击的责任就落在了我们自己的身上,也许咖啡馆里坐你隔壁喝着卡布奇诺的那个家伙就正在盗取你的信息。
[via/,FreeBuf编辑]
chenyoufu123
我感觉这样的好文章只应该出现在《电脑爱好者》上
必须您当前尚未登录。
必须(保密)
《程序员》杂志编辑
分享每日精选文章基于脚本注入的HTTPS会话劫持研究_阳风帆_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
基于脚本注入的HTTPS会话劫持研究_阳风帆
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩2页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢}

我要回帖

更多关于 mimt攻击 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信