宽带上网环境中的Sniffer攻防实例

  似乎有很多介绍宽带上网安全的文章,但往往提到的是木马、IE的漏洞之类的问题,殊不知有一类更危险的问题却好像未被用户注意,甚至不为防火墙所重视,但是一旦被人入侵却可以随意共享你的所有驱动器和其中的文件,而且实现起来是如此的简单。是何危险?且听我慢慢道来。

  思考

  近来我正在装修新居,这两天考虑到新家的局域网的网络结构,因为我早使用上了有线通,到时候肯定移机过去,所以现在有两种方案能被我考虑:

  1、CABLE MODEM——HUB——各台主机;
  2、CABLE MODEM——服务器(软路由)——HUB——各台主机

  看到这里大家一定认为第一种方案更好,很明显网络结构简单,至少可以节约一块网卡,而且不需要有一台服务器整天开着。有线通的说明书上也是这么推荐的。但是,我正是想到第一种方案各台主机之间的共享时,才突然意识到长期未被我重视的安全问题。

  大家都知道,所谓的小区宽带是一种局域网+互联网出口的解决方案,小区的用户连在一个局域网上,然后通过一个出口上互联网,这种方案的安全性是比较差的,主要是内部的安全性,因为是连在一个局域网上嘛,如果你不注意,别人是可能共享到你的资源的。而有线通的问题则比较有隐蔽性,他在物理上并不是我们常见的星形以太网+出口的结构,而且DHCP服务器分配给用户的也是标准的C类地址,似乎我们直接面对的就是广域网上的冲击。殊不知,他在物理上的总线型结构把几乎所有的有线通用户连接在了一个局域网上,我们同样面临着一个严重的本地网的安全问题,而且这个本地网的范围更大,因此被入侵(严格的来讲不能叫做入侵,而是共享)的机率就更大。

  实验

  为了验证我的观点,特地做了以下实验:

  我的主机现在被分配到的ip地址是211.167.123.8,这是一个标准的c类地址,因此子网掩码是24位,这就意味着理论上有252台主机(去掉网关和我自己)和我是处在同一网段中,考虑到有线通的实际使用率,252台估计是没有的,但同时间几十台应该还是有的,应该说我是可以访问到这些主机的。

  于是我就ping,从211.167.123.2开始,到211.167.123.15 ping通了,说明这台主机正联线,我马上打开IE,在地址栏中输入\\211.167.123.15,系统提示我输入用户名和密码,用户名输入administrator,密码为空,嘿嘿,进入了。除了打印机外看不到什么共享资源?没关系,我已经是管理员了,还怕找不到资源?我再输入\\211.167.123.15\c$,c盘的根目录不就出来了,这是windows2000的默认共享,是为管理而设的,去不掉的。接下来d$、e$,要找什么自己输入。
  在整个实验的过程中,配合上FluxayIV(流光),一个网段3、5分钟就搞定了,发现有3x台主机正联线,其中居然有5、6台主机的administrator账号密码为空,这岂不是任人宰割了?就算那些设了密码的,一般也不会有人在自己的电脑上设得太复杂,如果有心拆解的话,配上个词典,也不是很困难的事。更有甚者,可能是一台某个公司的主机,居然直接共享了所有的资源,没有任何密码,看来是被他们作为文件服务器使用了。

  结论

  现在大家知道我上面说的两种方案哪个更好了吧?

  由于有线通分配的是标准C类地址,不可能通过延长子网掩码去减少每个网段的主机数,所以本地网的安全始终是我们这些用户的大敌。而且DHCP服务器分配的IP地址是有存活期的,大概一个星期左右,你又会被分配到一个新的IP地址,也就意味着你又进入了一个新的网段,又有252个新邻居在等着你,可怕吧?最可怕的是,和你处在同一网段的主机被你的防火墙认为是局域网主机,一般防火墙的预设里不会对这类主机进行设防。

  防范措施

  首先,也是最起码的,就是为你的administrator账号设一个密码(不能太简单),因为这个账号是删不掉的,你即使不用也不能让密码空着。在实验的过程中我发现有好多用户平时可能用另外一个账号,密码倒是设了,但administrator的密码却是空的,那你岂不是白忙一场?

  还有些用户administrator账号密码设了,但又开了几个密码为空的账号,这同样是危险的。记住,所有的可用账号都要设密码,而且要定时管理这些账号,关闭长期不用的账号,对于administrator账号最好是能经常更换密码。

  安装一两个防火墙是好方法,但记住一定要对防火墙进行设置,因为一般预设里面对局域网主机是没有严密防范的,而你看到这里应该知道我们最需要防范的恰好是这些“局域网”主机。同时,防火墙本身也可能是有漏洞的,所以我用的是天网+Norton,这样交叉防范还是比较令我放心的。至于防火墙的具体设置方法就请参阅相关文章了,我就不赘述了。

  还要提醒你的就是,作了这样防范之后,如果你的网络结构采用的是第一种方案,那么你的几台主机之间也不能共享了,因为这几台主机和本网段的其他主机是处在平等地位。所以你如果要建设自己的网络,考虑到安全性,建议你采用第二种方案,如果能用硬件路由器代替软路由那就更佳了。

  写这篇文章的目的是希望起到抛砖引玉的作用,如果各位看官想到方便、安全、高效的防范手段请一定和我交流。

(0)

相关推荐

  • 基于Webshell的sniffer可行性研究(图)

    前言: 幻影Mix修改的flashsky的那个端口复用下的嗅探serv-u,经测试,不能用于win2003服务器中,具体我也不知道,不知道是不是操作有识,反正我是没成功过. 我自己构造了一个环境试了一下,嗅探程序是自己写的,利用raw进行嗅探,如果要arp的话,要装那个wincap,想一想那么低的权限是不可能的. 实验环境: Windows2003服务器+海洋2006+serv-u5.2 服务器不能直接使用cmd.exe,但可以上传后利用wscript.shell组件执行命令. 实验步骤: 1.

  • javaScript嗅探执行神器-sniffer.js

    一.热身--先看实战代码 a.js 文件 // 定义Wall及内部方法 ;(function(window, FUNC, undefined){ var name = 'wall'; Wall.say = function(name){ console.log('I\'m '+ name +' !'); }; Wall.message = { getName : function(){ return name; }, setName : function(firstName, secondNam

  • 为动网论坛添加一个密码嗅探器(DVBBS)

    动网先锋论坛,凭借其强大全面的功能,再加上它免费提供给个人用户,在网络众多论坛中,独树一帜.很多人都把它作为自己论坛的最佳首选.但是新版本的论坛,对用户密码采用了不可逆的MD5加密,即使是管理员,也无法查询到个人用户的密码.再数据库中只能查询了加密后的结果. 先描述一下它得登陆过程,用户输入帐号后号,调用MD5函数,输入的密码加密,然后比较存储在数据库的数据和密码加密的结果是否相同.如果相同,登陆成功,将个人信息保存在COOKIE中. 现在我们要自己动手,为论坛增加一项记录密码的功能. 查看它登

  • Php做的端口嗅探器--可以指定网站和端口

    <?   //Php做的端口嗅探器--可以指定网站和端口 //并返回嗅探结果     function http_request($server, $port) {     $data = "";     $query = "HEAD / HTTP/1.0";     $fp = fsockopen($server, $port);     if($fp) {     fputs($fp, $query."rnn");     while(

  • 宽带上网环境中的Sniffer攻防实例

    似乎有很多介绍宽带上网安全的文章,但往往提到的是木马.IE的漏洞之类的问题,殊不知有一类更危险的问题却好像未被用户注意,甚至不为防火墙所重视,但是一旦被人入侵却可以随意共享你的所有驱动器和其中的文件,而且实现起来是如此的简单.是何危险?且听我慢慢道来. 思考 近来我正在装修新居,这两天考虑到新家的局域网的网络结构,因为我早使用上了有线通,到时候肯定移机过去,所以现在有两种方案能被我考虑: 1.CABLE MODEM--HUB--各台主机: 2.CABLE MODEM--服务器(软路由)--HUB

  • Maven在Windows中的配置以及IDE中的项目创建实例

    Maven在Windows下的配置 1.Maven下载地址:http://maven.apache.org/download.cgi,下载红框里的版本即可. 2.解压到D盘: 3.修改配置文件settings.xml. a)修改为阿里云的镜像,国内的镜像下载速度会快很多. <mirrors> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://m

  • Java中的动态和静态编译实例详解

    Java中的动态和静态编译实例详解 首先,我们来说说动态和静态编译的问题. Q: java和javascript有什么区别?    总结了一下:有以下几点吧: 1.首先从运行环境来说java代码是在JVM上编译成class文件,而javascript则直接在浏览器上加载运行. 2.由第一点可看出,java代码需要编译,而javascript不需要编译. 3.从语言性质来说,java是一种高级编程语言,对变量检查要求严格,javascript只是一个简单的解释性的脚本语言,对变量检查及要求很弱.

  • C#中sizeof的用法实例分析

    sizeof是C#中非常重要的方法,本文就以实例形式分析C#中sizeof的用法.分享给大家供大家参考.具体分析如下: 在C#中,sizeof用来计算类型的大小,单位是字节.有这样的一个类: public class MyUglyClass { public char myChar1; public int myInt; public char myChar2; } 在客户端,试图使用sizeof计算该类型的大小. class Program { static void Main(string[

  • Yii2中事务的使用实例代码详解

    前言 一般我们做业务逻辑,都不会仅仅关联一个数据表,所以,会面临事务问题. 数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行. 事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源.通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠.一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性.一致性.隔离性和持久性)属性.事务是数据库运

  • Python中动态创建类实例的方法

    简介 在Java中我们可以通过反射来根据类名创建类实例,那么在Python我们怎么实现类似功能呢? 其实在Python有一个builtin函数import,我们可以使用这个函数来在运行时动态加载一些模块.如下: def createInstance(module_name, class_name, *args, **kwargs): module_meta = __import__(module_name, globals(), locals(), [class_name]) class_met

  • 集群环境中使用ehcache_动力节点Java学院整理

    EhCache 是一个纯 Java 的进程内缓存框架,具有快速.精干等特点,是 Hibernate 中默认的 CacheProvider. 下图是 EhCache 在应用程序中的位置: EhCache 的主要特性有: 1.快速: 2.简单: 3.多种缓存策略: 4.缓存数据有两级:内存和磁盘,因此无需担心容量问题: 5.缓存数据会在虚拟机重启的过程中写入磁盘: 6.可以通过 RMI.可插入 API 等方式进行分布式缓存: 7.具有缓存和缓存管理器的侦听接口: 8.支持多缓存管理器实例,以及一个实

  • 在域环境中配置ISA Server 2004的图文教程第1/2页

    非常感谢Ronald Beekelaar,他做的ISA Server 2004 LAB是如此的精致,只需要我些许的修改几个地方,就可以完成这个比较复杂的试验) 很多朋友提出了在域环境中不能正确配置ISA Server 2004的问题,主要集中在无法引用域用户和DNS无法解析.在这篇文章中,我以一个域环境实例,来给大家介绍如何在域环境中配置ISA Server 2004.从这篇文章,你可以学习到如何在域环境中配置ISA防火墙.启用域用户的身份验证.配置内部客户.配置域控上的DNS转发和建立访问规则

  • Android 中在有序广播中添加自定义权限的实例

    Android 中在有序广播中添加自定义权限的实例 前言; 有序广播说明: 有序广播因为要处理消息的处理结果,所以要复杂一些. * sendOrderedBroadcast(Intent intent, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras); 如果只是想让广播

  • 在python3.5中使用OpenCV的实例讲解

    最近在OpenCV的官方文档上看到一个人脸识别的示例代码,想要实现.由于我之前下好的OpenCV3.1中并不自带相关的函数,即opencv2/contrib/contrib.hpp这个文件找不到.需要下载一个contrib的扩展包,然后再用cmake进行编译,最终才能使用. 于是,就去官网上下了一个OpenCV2.4.13,重新配置,也是搞了好久,最后才能使代码顺利运行,虽然最后还是出了一个不知道如何解决的bug. 为什么非要在vs2015上用C++写关于OpenCV的东西呢?于是我想到pyth

随机推荐