接着讲上节的内容,上节中提到了一个时间优化的问题是使用参数-n,通过不解析地址来进行优化时间的,但是优化时间的方法还有很多,比如说我们可以通过时间优化(0-5),指定单位时间内的探针数,设置组的大小

时间优化(0-5)

时间优化的参数是(-T0~5),最快的扫描速度为-T5,最慢的扫描速度为-T0,实现的原理:通过设置各个端口的扫描周期,从而来控制整个扫描的时间,比如说T0各个端口的扫描周期大约为5分钟,而T5各个端口的扫描周期为5ms,但是过快的扫描也是有缺点的,扫描的周期过快,会很容易被防火墙和IDS发现并记录,因为防火墙大多数会将端口周期过段识别为扫描从而屏蔽掉,如果不对其进行设置的话,默认值为T4

--min-hostgroup/--max-hostgroup size 设置组的大小
--min-parallelism/--max-parellelism time指定时间内的探针数

具体的使用方法就不做介绍了,有兴趣的话,可以试一试研究一下变知道怎样使用了

在上节中还讲漏了一个知识点获取指定端口的参数(-p),这个参数的意义在于对于我们有时候只想监控某个特定的端口的状态,这个参数是即为有用的,可以节约了不少的时间

例如:监控nmap.org的80端口的状态

命令:nmap -p 80 nmap.org

接下来就进行这一节的主要内容,如果上节没有了解清楚的同学,建议返回上节理解清楚再开始这一节

这一节我们就来讲讲怎样规避被防火墙或IDS发现的风险以及操作的步骤

上节中我们假设的是在一个网络安全较为薄弱的情况下就可以正常进行的,但是正常的网站或者个人都是对安全有一定的防范的,网站中基本上都会存在安全狗、防火墙等规避风险的措施,个人电脑也会安装各种安全软件,所以对于做扫描工作的人来说,我们不知道通过扫描获取相关的信息,同时也要保护好自己的隐私,比如IP等信息,防止被防火墙或者是网络日志所记录下来

在讲这节之前我们来了解一下什么事防火墙?

防火墙的原理图:

防火墙是通过在客户端与服务器端之间搭建一个监控(运行的原理有点像Fiddler),通过对特定开放的端口进行屏蔽掉,从而达到网络安全的作用,防火墙在其功能上也会有一些其他的功能,这个要看防火墙的实际情况

 规避的基本思路是:

1、通过伪造访问的IP地址

2、通过对发送信息进行处理

3、将风险进行嫁接

4、其他的技术

伪造IP地址

伪造IP地址有很多种方法,可以通过下面的这几种方法是我认为比较常见的希望大家能喜欢

一、诱饵扫描(-D)

诱饵扫描的工作原理是:通过伪造大量的IP与自己真实的IP一起访问网站,从而混淆管理员的判断,其中问你们使用ME来代表自己的真实地址

例子:虚构一个IP为203.88.163.34与自己的真实地址去扫描nmap.org

命令:nmap -F -D 203.88.163.34,ME nmap.org

运行的结果如下:

但是在使用伪造的IP的同时,我们要注意要对伪造的IP进行主机发现,来判断主机是否存在,是否开启,因为有些防火墙策略是有这样规定的:如果访问的IP主机是关闭或者是为空的话,就讲所有的返回内容过滤掉。试想一下,如果主机关闭或者是不存在,那么怎么可能会发送扫描的命令给目标主机呢?

要找到开启的目标主机理论上是没有什么要求的,但是为了节约时间,我建议是直接使用某个网站的IP地址,这样有一下的几个好处

1、IP地址容易获得,一般的网站是通过ping参数就可以直接获取该网站的IP地址,除了一些不让进行Ping操作的网站除外

2、容易保证IP的正常开启,因为谁家的网站会经常关闭服务器,服务器一般是总是开启的

二、源地址欺骗(-S)

源地址欺骗的原理是:通过将自己的IP伪装成为其他的IP去扫描目标主机从而骗过目标主机的追踪

假设要伪装成为1.1.1.1:参数-S 1.1.1.1 使用1.1.1.1进行扫描,让防火墙误以为是来自1.1.1.1的扫描行为

在使用的时候要注意与-e进行使用,因为除了制定要伪装成为的对象IP外,还要指定返回的IP地址

三、时间优化(-T)

通过时间优化也提高通过防火墙和IDS的通过率

 发送信息处理

 指定使用分片(-f)

分片的工作原理是:将可疑的探测包进行分片处理(例如将TCP包拆分成多个IP包发送过去),某些简单的防火墙为了加快处理速度可能不会进行重组检查,以此避开其检查。

将风险责任进行嫁接

空闲扫描(-sI):

这里有一篇比较全面的文章http://www.2cto.com/Article/201505/396631.html再次就不多做介绍

其他的相关技术:

有MAC伪造技术等

防火墙/IDS躲避和哄骗

-f; --mtu value                 指定使用分片、指定数据包的MTU.
-D decoy1,decoy2,ME 使用诱饵隐蔽扫描
-S IP-ADDRESS 源地址欺骗
-e interface 使用指定的接口
-g/ --source-port PROTNUM 使用指定源端口
--proxies url1,[url2],... 使用HTTP或者SOCKS4的代理 --data-length NUM 填充随机数据让数据包长度达到NUM
--ip-options OPTIONS 使用指定的IP选项来发送数据包
--ttl VALUE 设置IP time-to-live域
--spoof-mac ADDR/PREFIX/VEBDOR MAC地址伪装
--badsum 使用错误的checksum来发送数据包

端口扫描之王——nmap入门精讲(二)的更多相关文章

  1. 端口扫描之王——nmap入门精讲(一)

    端口扫描在百度百科上的定义是: 端口扫描是指某些别有用心的人发送一组端口扫描消息,试图以此侵入某台计算机,并了解其提供的计算机网络服务类型(这些网络服务均与端口号相关),但是端口扫描不但可以为黑客所利 ...

  2. 端口扫描之王——nmap入门精讲(转)

    端口扫描在百度百科上的定义是: 端口扫描是指某些别有用心的人发送一组端口扫描消息,试图以此侵入某台计算机,并了解其提供的计算机网络服务类型(这些网络服务均与端口号相关),但是端口扫描不但可以为黑客所利 ...

  3. 端口扫描之王-----------nmap

    [root@ok data]# nmap -F -sT -v nmap.org Starting Nmap 5.51 ( http://nmap.org ) at 2016-10-23 12:46 C ...

  4. 《VC++ 6简明教程》即VC++ 6.0入门精讲 学习进度及笔记

    VC++6.0入门→精讲 2013.06.09,目前,每一章的“自测题”和“小结”三个板块还没有看(备注:第一章的“实验”已经看完). 2013.06.16 第三章的“实验”.“自测题”.“小结”和“ ...

  5. iOS开发——语法篇OC篇&高级语法精讲二

    Objective高级语法精讲二 Objective-C是基于C语言加入了面向对象特性和消息转发机制的动态语言,这意味着它不仅需要一个编译器,还需要Runtime系统来动态创建类和对象,进行消息发送和 ...

  6. 端口扫描程序nmap使用手册

        其实还是建议看英文的man,对以后学习其他东西很有帮助的:) 摘要 nmap是一个网络探测和安全扫描程序,系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运行以及提供什么服务等 ...

  7. 端口扫描命令nmap

    转:http://www.osyunwei.com/archives/2004.html 下面教大家在CentOS中用nmap查看主机端口: 一.安装nmap yum install nmap -y ...

  8. 端口扫描工具nmap

    nmap 使用介绍 nmap是目前为止最广为使用的国外端口扫描工具之一.我们可以从[url]http://www.insecure.org/[/url]进行下载,可以很容易的安装到Windows和un ...

  9. 7.python实现高效端口扫描器之nmap模块

    对于端口扫描,使用的最多的就是nmap这个工具,不想python已经强大到,提供了nmap这个扫描端口的模块. 本片文章主要介绍nmap模块的两个常用类: PortScanner()类,实现一个nma ...

随机推荐

  1. 初试cocos2d-x坐标系

    bool HelloWorld::init() { ////////////////////////////// if ( !Layer::init() ) { return false; } Siz ...

  2. Syslog-ng

    一.简介 与 syslog相比 ,syslog-ng 具有众多高级的功能:更好的网络支持,更加方便的配置,集中式的网络日志存储,并且更具有弹性.比如,使用syslogd时,所有的iptables日志与 ...

  3. iOS开发-微博客户端-基本界面搭建(01)

    1>创建程序载入界面 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDict ...

  4. POj3104 Drying(二分)

    Drying Time Limit: 2000MS Memory Limit: 65536K Description It is very hard to wash and especially to ...

  5. xamarin.android 图片高斯模糊效果

    代码如下: private static float BITMAP_SCALE = 0.1f; private static float BLUR_RADIUS = 12.0f; public sta ...

  6. 如何在WIN7下进行LINUX虚拟机搭建

    Linux是一套免费使用和自由传播的类Unix操作系统,非常适用于搭建网络服务器等,我本人日常工作时,是使用的LINUX和WIN7双操作系统,但每次更换系统总要关机重启很不方便,所以也在WIN7下搭建 ...

  7. hadooop2.6 job pending research

    https://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-common/ClusterSetup.html 我使用的是已经运行在 ...

  8. GoLang 的 daemonize 实现

    func daemonize(cmd string, args []string, pipe io.WriteCloser) error { pid, _, sysErr := syscall.Raw ...

  9. 写一个iOS VoIP应用需要知道什么?

    IOS编程--VoIP解密 一般来说, IOS很少给App后台运行的权限. 仅有的方式就是 VoIP. IOS少有的为VoIP应用提供了后台socket连接,定期唤醒并且随开机启动的权限.而这些就是I ...

  10. UESTC 919 SOUND OF DESTINY --二分图最大匹配+匈牙利算法

    二分图最大匹配的匈牙利算法模板题. 由题目易知,需求二分图的最大匹配数,采取匈牙利算法,并采用邻接表来存储边,用邻接矩阵会超时,因为邻接表复杂度O(nm),而邻接矩阵最坏情况下复杂度可达O(n^3). ...