转载黑客是如何黑到你手机的?绝对涨姿势,一位黑客的Wi-Fi入侵实录!

 

声明:这是一虚构的故事,因此对图片均进行了模糊化处理。内容整理自网络!

故事的主人公小黑是一名从事IT相关工作的技术宅男。五一长假来临,宅在家中的他相当无聊,打开手机上的Wi-Fi模块,发现附近有将近10个无线连接点,有几个信号强度还相当不错。心想何不尝试看看能否攻破邻居家的网络呢?说干就干,他决定利用自己的知识储备进行一番尝试,于是故事就这样开始了。

第一步 攻破Wi-Fi连接密码,实现蹭网

【攻击过程】

小黑用自己运行Android系统的手机,搜索了附近广播了SSID的Wi-Fi连接点,计划选取了一个合适的攻击目标。通过一款Wi-Fi信号分析软件,他发现邻居小白家的Tenda_XXXXX无线连接是一个理想的攻击对象:这个Wi-Fi连接的信号非常好,而且常年处于开机状态,显然是最优选之一。




一般为了防止被蹭网,个人用户都会给Wi-Fi设置一个连接密码。常用的两种加密方式又分为WEP加密与WPA加密两种。WEP 加密由于是一种静态加密方式,收发的包中就含有密码信息,因此可以非常容易地就直接破解密码,目前已经很少被使用。而WPA加密相比之下则更为安全一些,由于采用了动态加密的方式,因此只能使用暴力破解的方式来攻克。

小黑这次遇到的SSID是Tenda_XXXXX的Wi-Fi就是采用比较难以破解的WPA加密,虽然相比WEP,破解难度高了不少,但是小黑并没有彻底绝望,因为对于 WPA加密方式的Wi-Fi连接,破解的成功率取决于密码的复杂度与黑客手中的字典大小。

 

小黑熟练地打开一款名为WiFi万能钥匙的应用,尝试对这个无线网络的密码进行简单的破解,想不到竟然一下子就成功了。小黑迫不及待地进入相关文件查看,发现密码是:111111。

WiFi万能钥匙这款应用的优点在于操作简便,需要的技术知识门槛低,但是缺点也十分明显:由于字典的容量非常有限,只能破解非常简单的一些密码。而小白使用的密码为11111111,是一个非常简单的弱密码,因此使用手机软件就破解成功了,对此小黑也感到非常庆幸。

其实,原本小黑还准备了一台笔记本电脑,安装了Ubuntu系统和Minidwep-gtk和aircrack-ng等软件。这台才是破解Wi-Fi密码的“重型装备”。使用这个软件,可以不间断地发起连接申请,尝试不同的密码组合。由于这次小白设置的密码过于简单,都没有轮到它出场的机会。

【防范支招】

1、强大的密码是Wi-Fi安全最重要的基石

所谓强密码,是指同时包含了大小写字母、数字和符号的8位数以上复杂密码,如Gt/eB7@2。只要对Wi-Fi采用WPA/WPA2加密,并且设置强密码,就几乎不可能被攻破。

密码是黑客攻防中很重要的一环。相关的原理较为复杂,涉及高深的数学知识,甚至有专门研究加密解密的学科。不过,生活中其实存在不少简单的实例,比如常用的U盾,就是基于RSA加密算法。其原理是基于两个大素数相乘生成的动态密钥,而即使以当今最先进的计算机来分解出这两个素数,也需要相当长的时间。要知道,U盾上动态密钥的更新速度一般是1分钟。想在短短的1分钟内将这个大素数的乘机分解开来是不可能的,因此这个加密方法相对是非常安全的。

Wi-Fi加密的原理与U盾非常类似。前面提到过,WPA也是采用动态加密传输的,因此如同RSA算法,只能采用枚举法来进行暴力破解。但是只要密码的强度能够保证,暴力破解需要花费相当长的时间。即使以Minidwep来破解,一个密码一般至少需要使用3秒钟来尝试,如果是一个同时包含了大小写字母,数字和符号的8位的强密码,理论上需要破解的时间大约是5亿年,可见其强度已经足够。如果个人用户每隔几个月更改一次密码,那想要破解这个Wi-Fi密码就有如大海捞针了。对于这样拥有良好安全习惯的用户,往往不会成为黑客的目标。

2、隐藏SSID

隐藏SSID就是指在路由器管理界面进行相关的设置,使得无线网络的SSID不再广播出来,成为一个“隐形网络”,这样同样可以大大降低被黑客攻击的概率。

目前主流的系统,包含Windows XP / Vista / 7 / 8,还有Mac OS,各个发行版的Linux系统,如Ubuntu,Redhat。主流的智能手机操作系统,如iOS,Android,Windows Phone都对隐藏SSID的Wi-Fi网络连接提供了很好的支持,只需要第一次连接网络时手工添加网络的SSID,后续系统便能自动记住这个无线网络连接的相关信息,进行自动连接。

你可能会问,既然我已经隐身了,那是否能够保证绝对的安全呢?答案是否定的。因为只要你的无线网络存在路由器和客户端之间的通讯,SSID仍然是可以被嗅探到的,只不过这样的操作会增加黑客操作的复杂度,考虑到时间成本,黑客往往会绕过这样的对象。

3、MAC绑定

MAC绑定是指在路由器中进行相关的设置,开启MAC地址黑名单或白名单功能。当然,此处更建议使用的是白名单的方式。用户只需将需要连接到网络的设备的物理地址(MAC Address)添加到白名单列表中,那么只有这些添加过的设备可以连接到这个无线网络。

 

你可能会好奇,既然我已经设置过滤了,那么是否不再可能会被其他机器入侵呢?答案仍然是否定的。因为只要黑客成功破解了你的无线网络密码,并且此时有活动的客户端在网络中,黑客同样可以设法通过抓取网络中传输的封包,来获得那台进入白名单的客户端的MAC地址。接下来,黑客要做的就是将自己的设备的MAC地址修改为和被攻击者的设备相同的MAC地址,这样黑客的设备就可以成功地连接到无线网络中了。

如同隐藏SSID的方法一样,MAC绑定同样可以大大增加黑客破解网络的困难度,额外增加的操作复杂度会让大部分黑客知难而退。

4、关闭无线路由器的QSS、WDS功能

QSS/WDS功能会大大降低无线路由器的安全性,因此如非必须,应将这两个功能关闭。

注意:第2条和第3条防护措施建议同时使用,可以大大强化Wi-Fi的安全性。但是非常偶发的情况是,对于一些设备,例如在一些Linux发行版中,某些无线网卡的驱动对于隐藏SSID的网络的支持并不完善,可能造成无法连接到无线网络。也发现过一些基于ARM平台的电视盒子的自带系统对于MAC绑定的支持不完善,会造成打开MAC白名单功能后无法连接。此时,用户考虑自身使用的便利性,可以只选择其中一种,或者不得已的情况下也可以只采用第1条防护措施。毕竟一个强大的密码才是重中之重,第2条和第3条措施只不过是进一步加强防护的辅助措施而已。

第二步 获取路由器管理权

【攻击过程】

实现“蹭网”的初级目标后,小黑并没有就此罢手,而是尝试进行进一步的深入攻击:攻陷路由器,获得路由器的管理权。

他首先尝试通过浏览器,进入了小白使用的腾达路由器的后台管理界面地址:192.168.0.1。

 

不料小白竟然很机智地修改了默认的密码。不过,这怎么可能会难倒小黑呢?小黑早已知道了关于路由器的一些秘密:其实,不少国内路由器厂家,为了后期维护管理方便,都在管理固件中留下了后门。这虽然方便了管理,却留下了安全隐患。这不有国外安全专家总结了一下,在这里可以找到:http://routerpwn.com/

 

通过路由器厂家自己留的后门,小黑顺利地进入了路由器的管理界面。

但是在这个界面下,需要输入指令进行操作,毕竟是不太方便的。于是,小黑尝试着用Wi-Fi连接密码直接输入到管理界面中,发现后台管理界面的密码竟然和Wi-Fi密码是同一个!这真是:踏破铁鞋无觅处,得来全不费功夫!

进入路由器管理界面后,小白使用的电信上网账号和口令瞬间暴露在小黑的面前:

那么,攻陷路由器后,小黑可以进行哪些操作呢?首先,小黑可以获知小白的上网账号和密码。接着,他还可以偷偷地限制小白的上网速度,将大部分速度空出来让给自己使用。小黑甚至可以将小白的设备加入MAC黑名单,使其不能再上网,并且继续修改路由器后台管理界面的密码,使得小白无法用任何设备进入路由器管理界面。最终小白不得不硬件重设路由器,才能恢复上网。当然,如果这样操作的话,小白势必会重新设定新的Wi-Fi密码,小黑之前第一步的行动也就白费了。

其实,从攻击的角度来说,第二步攻陷路由器并不是必须的,但却也是非常重要的一步。

为何说不必须呢?因为即使没有拿到路由器的管理权限,仍然不妨碍后续对路由器和客户端的封包进行嗅探和攻击的操作。

那为何说很重要呢?首先,获得路由管理界面之后,可以非常方便地看到路由器开机之后,每一个曾经联网过的设备,以及这些设备的实时网速,这对于进一步的攻击能够提供一些非常重要的信息。其次,在路由器管理界面中监控客户端的实时流量等数据,对于小白等被攻击者来说,是完全无法感觉到。而如果直接采取嗅探或劫持的操作,被攻击者会察觉到网速明显变慢。因此攻陷路由器后,对小黑来说,更有利于下一步的操作。

路由器管理界面中可以反映每个设备的实时网速:

路由器管理界面中可以查看连接过的设备,以小白的设备为例:

从主机名就可以大致地判断,小白有一只iPhone,一台安装了Windows 7或以上操作系统的x86计算机。另有一个没有主机名的设备,这个还待确认。至于最下方的Android设备,则是入侵者小黑的手机。

另外,在获得路由器管理权限之后,想要进行DNS劫持就变得非常容易了:

进行DNS劫持后,被劫持者的上网记录和登陆过的账号以及明文传输的密码都很容易获得。当然,现在很多社交工具的密码已经不再通过明文传输,而且自行搭建DNS服务器的操作较为复杂,因此小黑并没有进行这步操作,而是考虑下一步直接进行会话劫持。

【防范支招】

1.从防范的源头下手,不要购买存在已知漏洞的路由器。

2.将路由器的固件更新到最新版本,尽量修复已知的漏洞。

3.修改路由器的后台管理密码,并且不要和Wi-Fi密码相同,建议同样使用8位以上,同时含大小写字母和数字符号的高强度密码,如pU$oT8*3。如果可以修改用户名和路由器的管理界面登陆地址,建议一并修改,做到万无一失。

4.检查路由器的DNS选项,看一下是否为空,如果不是空的,说明已经被DNS劫持,应立刻清空DNS设置。同时修改Wi-Fi登陆密码和路由器后台管理密码。

第三步 进行简易嗅探与会话劫持

【攻击过程】

作为一个“有追求”的黑客,小黑又岂会在此时就收手呢?如同很多“菜鸟黑客”一样,小黑想要挖掘出小白更多的秘密。

这时,他使用了一款强大的网络渗透软件:dSploit。dSploit是一款基于Android系统的功能十分全面强大的网络渗透工具,可以提供给网络安全工作人员检查网络的安全性。小黑这次主要使用了其中的“简易嗅探”“会话劫持”“脚本注入”这三个功能。

连接进入网络之后,使用dSploit扫描到的设备列表与路由器管理界面中的一模一样:

前面提到过,在路由器管理界面中,可以大致判断出设备的生产商和类型。而采用dSploit来进行“简易嗅探”之后,可以进一步判明设备的类型和使用的操作系统和浏览器版本。

所谓“简易嗅探”,就是指dSploit这个软件可以嗅探到被监控的设备收到和发出的所有网络封包,并将封包以pcap格式保存到Android手机中。这样,后续只需要用文本编辑器查看这些pcap文件,就能得到相关的信息。

比如上图中,小黑用于入侵的安卓手机,IP地址为192.168.0.103。MAC地址前三位是:90:18:7C。

IP地址为192.168.0.100的设备是小白的iPhone5,系统版本号iOS 7.0.6。

IP地址为192.168.0.101的设备显然是小白的台式机了,操作系统版本号为NT6.1,即Windows 7系统:

 

确定设备之后,就可以依据路由器管理界面上的实时流量数据,对当时正在进行通讯的设备进行目的明确的“简易嗅探”操作了。

经过对台式电脑的“简易嗅探”,小黑很轻松地得到了小白的QQ号:

既然得到了QQ号,也就很轻松地依据QQ号,搜索到了小白的微信号。

通过“简易嗅探”这个功能,小黑不仅掌握了小白的很多社交网站的账号,并且熟悉了小白经常浏览的一些网站,对于其使用电脑的习惯有了一个大致的轮廓:小白是一名沉迷于大菠萝3等网游中的单身青年,如同中国绝大多数网民一样,小白使用腾讯的社交软件和360的安全软件。偶尔喜欢用淘宝和京东购物,喜欢购买各种手办和模型,最近希望给自己添置一台笔记本电脑。并且由于小白是单身,因此频繁浏览某相亲网站,积极寻找对象。

经过几天的观察,小黑发现小白会在回家后先在台式机上处理当天的邮件,于是他尝试使用了dSploit另一个异常强大的功能模块:会话劫持。对小白的邮箱进行了劫持:

 

“会话劫持”功能,顾名思义,就是可以将小白电脑上正在进行的操作劫持到自己的设备中,使得小黑在自己的手机上远程控制着小黑的台式机上的应用,而小白对这一切毫不知情。以邮箱为例,小黑可以在小白的邮箱中做任意的操作,如收发邮件等等。而且,由于小白的邮箱中存有之前找工作时投递的简历,因此小白的姓名,住址,生日,职业,手机号,身份证号,银行卡号,收入等敏感信息也都尽收小黑眼底了。

同样的道理,小白登陆过的微博、人人、淘宝等帐号也都全部可以劫持,通过劫持后的帐号又能看到许多表面看不到的东西。

如果要进一步攻击,小黑完全可以在小白电脑中再植入一个木马,通过键盘记录,可以很轻松地得到小白的很多账号密码甚至网银信息。不过,此时的小黑异常冷静,他知道自己的攻击目标已经达成,因此决定金盆洗手,并且决定通过一个善意的提醒,建议小白修改Wi-Fi密码,给这次渗透攻击的行动,划上一个完美的句号。

这是通过dSploit的 “脚本注入”功能来实现的:小黑将事先编辑好的一段文字,通过Java脚本的形式,推送到小白的台式电脑上:

此时的小白,正在淘宝上兴致勃勃地翻看手办模型,当他正准备打开一张商品大图详细观摩时,突然发现了这段文字:

小白看到后,觉得很是奇怪,误以为是常见的网页弹窗广告。没有予以理会。小黑一看小白不为所动,于是灵机一动,他想到把小白简历上的照片推送给了他:

当小白看到这个之后,才认识到问题的严重性,按照提示迅速修改了密码。大大强化了Wi-Fi的安全性。由于小白这次修改的密码达到了10位以上,并且是同时包含了大小写字母和数字符号的异常强大的密码,以至于小黑也无法再次攻破了,此时的小黑露出了欣慰的笑容。

【防范支招】

1、尽量不要将自己的设备连接进公共的Wi-Fi。即使连入公共Wi-Fi,不要使用涉及到个人隐私的应用,如邮箱,微信,微博,淘宝等。值得注意的是,小黑的一系列操作都是在一台root过的Android手机上完成的,试想,如果小黑带着这只手机进入星巴克进行操作,那么同网段的收发的数据对于小黑来说是尽收眼底的。

2、不要以为杀毒软件或个人防火墙能够阻止被劫持。劫持是基于cookies,即使是登陆时

经过了二次验证(例如新浪微博的微盾动态密码),仍然可以劫持。

3、一旦感觉到网络明显变慢,就很有可能是遭遇了会话劫持。此时应该马上注销退出账号,清除cookies,并立即修改Wi-Fi密码。

4、邮箱和其他社交应用的私信中不要留存重要的信息,应及时删除,并备份到可信的位置。

5、社交应用与手机之间绑定不要过于集中。同时如非必要,头像也可以考虑不要使用本人头像。

6、为进一步保证安全性,可以选择使用加密的网络,比如支持“HTTPS”的网站。另外,如果条件允许,可以考虑使用带动态密码验证的VPN,或对传输的文件进行加密。


最后还要提醒大家,越便捷越不安全,黑客可以控制在同一个Wi-Fi下的其他电脑和设备,控制设备上的摄像头,用户的大量隐私将被曝光,因此一旦被黑,个人信息、个人隐私、个人财务甚至是亲人和朋友的信息都会被劫持,千万不能掉以轻心。

转载于:https://www.cnblogs.com/mike-mei/p/8043024.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/354432.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html5——DOM扩展

元素获取 1、document.getElementsByClassName (class) 通过类名获取元素,以类数组形式存在。 2、document.querySelector(‘div’) 通过CSS选择器获取元素,符合匹配条件的第1个元素。 3、document.querySelectorAll(selector) 通过CSS选择器获取元素&am…

JAVA递归实现全排列

全排列(permutation) 排列组合概念 排列,就是指从给定n个数的元素中取出指定m个数的元素,进行排序 组合,则是指从给定n个数的元素中仅仅取出指定m个数的元素,不考虑排序 全排列 以数字为例,全排…

java云端部署_Jelastic Java云端平台

java云端部署谁在Jelastic背后? 那是我的第一个问题,因此我浏览了Jelastic网站。 回答此问题的最佳方法是查看“ Jelastic团队”部分。 创始人,顾问,特殊合作伙伴构成了一支真正的专业团队。 作为特殊的合作伙伴,您会…

Spring Bootstrap中带有配置元数据的高级配置

在简要介绍了配置元数据并涵盖了我之前的文章《 在Spring Boot中使用配置元数据Pimp您的配置》中的基础知识之后,是时候看看如何进一步执行此步骤并进一步自定义配置了。 在本文中,我计划提出对配置属性的弃用,并讨论各种值提供程序&#xff…

windows系统服务器添加ssl证书

一、为域名申请证书 浏览器打开后系在对应版本: https://keymanager.org/ 注册账号: https://freessl.cn/ 安装刚刚下载的软件; 登录进去就可以申请域名的证书了 二、域名解析 解析完后倒回软件那点击“配置完成,检查一下” …

使用ANTLR在5分钟内用Java解析任何语言:例如Python

我喜欢出于多种目的处理代码,例如静态分析或自动重构。 对我来说,有趣的部分是推理从抽象语法树(AST)构建的模型。 为此,您需要一种从源文件中获取AST的方法。 使用ANTLR和完整的语法集合可在此处轻松完成:…

linux服务器配置ssl证书

一、申请ssl证书 这里有申请域名的ssl证书的步骤: https://blog.csdn.net/weixin_38797742/article/details/109471250 二、配置服务器 打开项目对应的配置文件,配置图中三行信息,端口、还有申请的证书的所在目录。 listen 443 ssl; ssl_…

视图层的数据绑定

数据绑定WXML 中的动态数据均来自对应 Page 的 data。 只要把data中的数据改变,视图层就会自动改变,无需使用DOM操作。 简单绑定数据绑定使用 Mustache 语法(双大括号)将变量包起来 使用方法: {{ 内容 }} 在组件中使用…

【原创】Linux安装Redis

【注】说是原创其实是从各个博客中copy出来的,不过经本人总结,也算是半个原创吧,哈哈... 1.安装环境: 2.安装步骤 2.1 安装目录 cd /usr/local mkdir redis 2.2 下载包 wget http://download.redis.io/releases/redis-3.2.11.tar…

原型链继承

转载于:https://www.cnblogs.com/cmblog/p/8079773.html

java线程死锁_Java线程死锁–案例研究

java线程死锁本文将描述从在IBM JVM 1.6上运行的Weblogic 11g生产系统中观察到的最新Java死锁问题的完整根本原因分析。 此案例研究还将证明掌握线程转储分析技能的重要性; 包括用于IBM JVM Thread Dump格式。 环境规格 – Java EE服务器:Oracle Weblo…

linux下安装pm2

提前安装node linux下安装pm2 全局安装 npm install pm2 -g安装完成后可以查看pm2的所在目录 创建软连接----根据上面的安装目录创建 ln -s /home/node/nodejs/lib/node_modules/pm2/bin/pm2 /usr/local/bin/查看进程 pm2 list安装成功!!&#xff…

主机关机后第二天就无法开机_工控机几种常见的在开机或关机后不能正常使用的故障处理方法汇总...

工控机开机启动时我们经常会碰到各种不能正常使用的问题,下面我们把这类故障现象及处理方法在这里给大家汇总分析一下,希望你在碰到类似的问题时,能给你们提供一定的帮助!故障现象一:工控机在开机过程中出现死机故障.故…

网站添加页面热力图--百度统计

1,注册百度统计的账户并登录 https://tongji.baidu.com/web/10000307684/welcome/login 2,新增网站 管理-网站列表-自有网站-新增网站 3,新增网页热力图 基础报告-页面点击图-新增点击图 4,复制统计代码 把统计的代码放到…

pandas中inplace_pandas回顾小结(二)

上一篇:橘猫吃不胖:pandas回顾小结(一)​zhuanlan.zhihu.comIndexIndex也有很多种类型,官方文档介绍:Index objects - pandas 1.1.4 documentationindex是可以包含重复值的df pd.DataFrame([[1,2,3],[4,5,…

Swing应用程序中的CDI事件可将UI与事件处理分离

在享受了几年围绕CDI构建我的代码的乐趣之后,使用它根据众所周知的模式来构造我的代码非常自然。 CDI是一种旨在在Java EE应用程序服务器中使用的依赖项注入机制,这可能被视为不利。 但是,我想证明它可以在Java SE应用程序中使用并且具有巨大…

keras 多层lstm_机器学习100天-Day2403 循环神经网络RNN(训练多层RNN)

说明:本文依据《Sklearn 与 TensorFlow 机器学习实用指南》完成,所有版权和解释权均归作者和翻译成员所有,我只是搬运和做注解。进入第二部分深度学习第十四章循环神经网络循环神经网络可以分析时间序列数据,诸如股票价格&#xf…

新手上路之django项目开发(一)-----创建项目并运行

一,创建项目 1,PyCharm创建 或者 2,django-admin startproject mysite mysite 是项目名。 二,配置settings.py文件 创建templates目录,static目录 settings.py文件中加入:os.path.join(BASE_DIR, ‘tem…

lisp语言画阿基米德线_中国油画艺术表达着艺术家思想情感,而且展现了油画语言独特之美...

感谢大家阅读,在阅读之前,麻烦您先点击上面的“蓝色字体”,再点击“关注”, 因为微信更改了推送规则,推文不再按照时间线显示,如果不点『在看』或者没有『星标』,可能就看不到我们的推送了&…

java btrace_BTrace for Java应用程序简介

java btrace本文的目的是学习如何使用BTrace动态跟踪/观察正在运行的Java应用程序(JDK 6),而无需更改应用程序的代码和配置参数。 什么是BTrace? BTrace是一个开源项目,始于2007年,最初由A.Sundararajan和…