枚举是一类程序,它允许用户从一个网络中收集某一类的所有相关信息。本节将介绍DNS枚举和SNMP枚举技术。DNS枚举可以收集本地所有DNS服务和相关条目。DNS枚举可以帮助用户收集目标组织的关键信息,如用户名、计算机名和IP地址等,为了获取这些信息,用户可以使用DNSenum工具。要进行SNMP枚举,用户需要使用SnmpEnum工具。SnmpEnum是一个强大的SNMP枚举工具,它允许用户分析一个网络内SNMP信息传输。

4.1.1 DNS枚举工具DNSenum

DNSenum是一款非常强大的域名信息收集工具。它能够通过谷歌或者字典文件猜测可能存在的域名,并对一个网段进行反向查询。它不仅可以查询网站的主机地址信息、域名服务器和邮件交换记录,还可以在域名服务器上执行axfr请求,然后通过谷歌脚本得到扩展域名信息,提取子域名并查询,最后计算C类地址并执行whois查询,执行反向查询,把地址段写入文件。本小节将介绍使用DNSenum工具检查DNS枚举。在终端执行如下所示的命令:

root@kali:~# dnsenum --enum benet.com

dnsenum.pl VERSION:1.2.3

第4章  信息收集

Warning: can't load Net::Whois::IP module, whois queries disabled.

-----   benet.com   -----

Host's addresses:

__________________

benet.com.                               86400    IN    A       192.168.41.131

benet.com.                               86400    IN    A       127.0.0.1

Name Servers:

______________

benet.com.                               86400    IN   A        127.0.0.1

benet.com.                               86400    IN   A        192.168.41.131

www.benet.com.                          86400    IN   A        192.168.41.131

Mail (MX) Servers:

___________________

mail.benet.com.                         86400    IN    A       192.168.41.2

Trying Zone Transfers and getting Bind Versions:

输出的信息显示了DNS服务的详细信息。其中,包括主机地址、域名服务地址和邮件服务地址。如果幸运的话,还可以看到一个区域传输。

使用DNSenum工具检查DNS枚举时,可以使用dnsenum的一些附加选项,如下所示。

  • --threads [number]:设置用户同时运行多个进程数。
  • -r:允许用户启用递归查询。
  • -d:允许用户设置WHOIS请求之间时间延迟数(单位为秒)。
  • -o:允许用户指定输出位置。
  • -w:允许用户启用WHOIS请求。

4.1.2 DNS枚举工具fierce

fierce工具和DNSenum工具性质差不多,其fierce主要是对子域名进行扫描和收集信息的。使用fierce工具获取一个目标主机上所有IP地址和主机信息。执行命令如下所示:

root@kali:~# fierce -dns baidu.com

DNS Servers for baidu.com:

ns2.baidu.com

ns7.baidu.com

dns.baidu.com

ns3.baidu.com

ns4.baidu.com

Trying zone transfer first…

Testing ns2.baidu.com

Request timed out or transfer not allowed.

Testing ns7.baidu.com

Request timed out or transfer not allowed.

Testing dns.baidu.com

Request timed out or transfer not allowed.

Testing ns3.baidu.com

Request timed out or transfer not allowed.

Testing ns4.baidu.com

Request timed out or transfer not allowed.

Unsuccessful in zone transfer (it was worth a shot)

Okay, trying the good old fashioned way… brute force

Checking for wildcard DNS…

** Found 94050052936.baidu.com at 123.125.81.12.

** High probability of wildcard DNS.

Now performing 2280 test(s)…

10.11.252.74  accounts.baidu.com

172.22.15.16  agent.baidu.com

180.76.3.56   antivirus.baidu.com

10.81.7.51        ba.baidu.com

172.18.100.200bd.baidu.com

10.36.155.42  bh.baidu.com

10.36.160.22  bh.baidu.com

10.11.252.74  accounts.baidu.com

……省略部分内容

61.135.163.0-255 : 1 hostnames found.

61.135.165.0-255 : 1 hostnames found.

61.135.166.0-255 : 1 hostnames found.

61.135.185.0-255 : 1 hostnames found.

Done with Fierce scan: http://ha.ckers.org/fierce/

Found 133 entries.

Have a nice day.

输出的信息显示了baidu.com下所有的子域。从倒数第2行,可以看到总共找到133个条目。执行以上命令后,输出的内容较多。但是由于篇幅的原因,部分内容使用省略号(……)取代。

用户也可以通过提供一个单词列表执行相同的操作,执行命令如下所示:

root@kali:~# fierce -dns baidu.com -wordlist hosts.txt /tmp/output.txt

4.1.3 SNMP枚举工具Snmpwalk

Snmpwalk是一个SNMP应用程序。它使用SNMP的GETNEXT请求,查询指定的所有OID(SNMP协议中的对象标识)树信息,并显示给用户。本小节将演示Snmpwalk工具的使用。

【实例4-1】使用Snmpwalk命令测试Windows主机。执行命令如下所示:

root@kali:~# snmpwalk -c public 192.168.41.138 -v 2c

iso.3.6.1.2.1.1.1.0 = STRING: "Hardware: x86 Family 6 Model 42 Stepping 7 AT/AT COMPATIBLE - Software: Windows Version 6.1 (Build 7601 Multiprocessor Free)"

iso.3.6.1.2.1.1.2.0 = OID: iso.3.6.1.4.1.311.1.1.3.1.1

iso.3.6.1.2.1.1.3.0 = Timeticks: (49046) 0:08:10.46

iso.3.6.1.2.1.1.4.0 = ""

iso.3.6.1.2.1.1.5.0 = STRING: "WIN-RKPKQFBLG6C"

iso.3.6.1.2.1.1.6.0 = ""

iso.3.6.1.2.1.1.7.0 = INTEGER: 76

iso.3.6.1.2.1.2.1.0 = INTEGER: 19

iso.3.6.1.2.1.2.2.1.1.1 = INTEGER: 1

iso.3.6.1.2.1.2.2.1.1.2 = INTEGER: 2

iso.3.6.1.2.1.2.2.1.1.3 = INTEGER: 3

iso.3.6.1.2.1.2.2.1.1.4 = INTEGER: 4

iso.3.6.1.2.1.2.2.1.1.5 = INTEGER: 5

iso.3.6.1.2.1.2.2.1.1.6 = INTEGER: 6

……

iso.3.6.1.2.1.2.2.1.1.16 = INTEGER: 16

iso.3.6.1.2.1.2.2.1.1.17 = INTEGER: 17

iso.3.6.1.2.1.2.2.1.1.18 = INTEGER: 18

iso.3.6.1.2.1.2.2.1.1.19 = INTEGER: 19

iso.3.6.1.2.1.2.2.1.2.1 = Hex-STRING: 53 6F 66 74 77 61 72 65 20 4C 6F 6F 70 62 61 63

6B 20 49 6E 74 65 72 66 61 63 65 20 31 00

iso.3.6.1.2.1.2.2.1.2.2 = Hex-STRING: 57 41 4E 20 4D 69 6E 69 70 6F 72 74 20 28 53 53

54 50 29 00

iso.3.6.1.2.1.2.2.1.2.3 = Hex-STRING: 57 41 4E 20 4D 69 6E 69 70 6F 72 74 20 28 4C 32

54 50 29 00

iso.3.6.1.2.1.2.2.1.2.4 = Hex-STRING: 57 41 4E 20 4D 69 6E 69 70 6F 72 74 20 28 50 50

……

iso.3.6.1.2.1.55.1.8.1.5.11.16.254.128.0.0.0.0.0.0.149.194.132.179.177.254.120.40 = INTEGER: 1

iso.3.6.1.2.1.55.1.8.1.5.12.16.254.128.0.0.0.0.0.0.0.0.94.254.192.168.41.138 = INTEGER: 1

iso.3.6.1.2.1.55.1.8.1.5.13.16.32.1.0.0.157.56.106.184.52.243.8.98.63.87.214.117 = INTEGER: 1

iso.3.6.1.2.1.55.1.8.1.5.13.16.254.128.0.0.0.0.0.0.52.243.8.98.63.87.214.117 = INTEGER: 1

iso.3.6.1.2.1.55.1.9.0 = Gauge32: 9

iso.3.6.1.2.1.55.1.10.0 = Counter32: 0

以上输出的信息显示了Windows主机192.168.41.138上的所有信息。

用户也可以使用snmpwalk命令枚举安装的软件。执行命令如下所示:

root@kali:~# snmpwalk -c public 192.168.41.138 -v 1 | grep ftp

输出信息如下所示:

iso.3.6.1.2.1.25.4.2.1.5.3604 = STRING: "-k ftpsvc"

输出的信息表示192.168.41.138主机安装了ftp软件包。

使用Snmpwalk工具也可以枚举目标主机上打开的TCP端口。执行命令如下所示:

root@kali:~# snmpwalk -c public 192.168.41.138 -v 1 | grep tcpConnState | cut -d "." -f6 | sort -nu

21

25

80

443

输出信息显示了192.168.41.138主机打开的端口。如21、25、80和443,总共打开了4个端口号。

4.1.4 SNMP枚举工具Snmpcheck

Snmpcheck工具允许用户枚举SNMP设备的同时将结果以可读的方式输出。下面将演示该工具的使用。使用Snmpcheck工具通过SNMP协议获取192.168.41.138主机信息。执行命令如下所示:

root@kali:~# snmpcheck -t 192.168.41.138

该命令输出信息较多,下面依次讲解每个部分。首先输出的是枚举运行信息。

snmpcheck.pl v1.8 - SNMP enumerator

Copyright (c) 2005-2011 by Matteo Cantoni (www.nothink.org)

[*] Try to connect to 192.168.41.138

[*] Connected to 192.168.41.138

[*] Starting enumeration at 2014-04-19 15:28:58

(1)获取系统信息,如主机名、操作系统类型及架构。结果如下所示:

从输出的信息中可以看到该系统的主机名为WIN-RKPKQFBLG6C、x86架构和Windows系统等信息。

(2)获取设备信息,如设备ID号、类型和状态等。结果如下所示:

以上信息显示了该系统中所有设备相关信息,如打印设备、网络设备和处理器等。

(3)获取存储信息,如设备id、设备类型和文件系统类型等。结果如下所示:

该部分显示了系统中所有磁盘。由于篇幅的原因,这里只贴了A和C盘的存储信息。这里以C盘为例,介绍一下输出的信息,包括设备类型、文件系统类型、空间大小、已用空间大小和剩余空间大小等。

(4)获取用户账户信息。结果如下所示:

[*] User accounts

-----------------------------------------------

Administrator

Guest

输出的信息显示了该系统中的有两个用户,分别是Administrator和Guest。

(5)获取进程信息,如进程ID、进程名和进程类型等。结果如下所示:

输出信息的第一行表示该系统中共有44个进程。由于篇幅的原因,这里只列出了前几个运行的进程。第二行指定了进程类型:1表示不知名;2表示操作系统;3表示设备驱动;4表示应用程序。第三行指定了进程的状态:1表示正在运行;2表示可以运行;3表示不能运行;4表示无效的。第四行的内容是以列的形式显示:第一列表示进程ID;第二列表示进程名;第三列表示进程状态;第四列表示进程路径。

(6)获取网络信息,如TTL值、TCP段和数据元。结果如下所示:

以上信息显示了该目标系统中网络的相关信息,如默认TTL值、收到TCP段、发送TCP段和重发TCP段等。

(7)获取网络接口信息,如接口状态、速率、IP地址和子网掩码等。结果如下所示:

以上信息中显示了loopback接口的相关信息。包括它的速率、IP地址、子网掩码和最大传输单元。

(8)获取路由信息,如目标地址、下一跳地址、子网掩码和路径长度值。结果如下所示:

以上信息表示目标系统的一个路由表信息。该路由表包括目的地址、下一跳地址、子网掩码及路径长度值。

(9)获取网络服务信息,如分布式组件对象模型服务、DHCP客户端和DNS客户端等。结果如下所示:

以上信息显示了目标主机中所安装的服务。由于篇幅的原因,只列出了一少部分服务。

(10)获取监听的TCP端口,如监听的TCP端口号有135、495149513和139等。结果如下所示:

以上信息表示两台主机建立TCP连接后的信息。包括本地地址、本机端口、远程主机地址、远程主机端口及连接状态。

(11)获取监听UDP端口信息,如监听的UDP端口有123、161、4500、500和5355等。结果如下所示:

以上信息表示目标主机中已开启的UDP端口号。

(12)获取软件组件信息,如Visual C++ 2008。显示结果如下所示:

以上信息表示该主机中安装了Visual C++ 2008类库。

(13)获取Web服务信息,如发送的字节数、文件数和当前匿名用户等。结果如下所示:

以上信息显示了关于Web服务的信息。最后显示了枚举主机192.168.41.138共用的时间。

4.1.5 SMTP枚举工具smtp-user-enum

smtp-user-enum是针对SMTP服务器的25端口,进行用户名枚举的工具,用以探测服务器已存在的邮箱账户。在SMTP服务上启动用户的SMTP枚举。执行命令如下所示:

输出的信息显示了扫描192.168.41.138主机的详细信息,包括模式、运行进程、用户名文件、用户数和TCP端口等。

Kali-linux枚举服务的更多相关文章

  1. Kali Linux常用服务配置教程获取IP地址

    Kali Linux常用服务配置教程获取IP地址 下面以Kali Linux为例,演示获取IP地址的方法 (1)设置网络接口为自动获取IP地址.在Kali Linux的收藏夹中单击图标,将显示所有的程 ...

  2. Kali Linux常用服务配置教程启动DHCP服务

    Kali Linux常用服务配置教程启动DHCP服务 通过前面的介绍,DHCP服务就配置好了.接下来,用户就可以使用该服务器来获取IP地址了.下面将对前面配置的服务进行测试. 1.启动DHCP服务 如 ...

  3. Kali Linux常用服务配置教程安装及配置DHCP服务

    Kali Linux常用服务配置教程安装及配置DHCP服务 在Kali Linux中,默认没有安装DHCP服务.下面将介绍安装并配置DHCP服务的方法. 1.安装DHCP服务 在Kali Linux中 ...

  4. Kali Linux常用服务配置教程DHCP服务原理

    Kali Linux常用服务配置教程DHCP服务原理 动态主机配置协议(Dynamic Host Configuration Protocol,简称DHCP)是一个局域网的网络协议,基于UDP协议工作 ...

  5. kali linux之服务扫描

    识别开放端口上运行的应用.识别目标操作系统,提高攻击效率 banner捕获(软件开发商,软件名称,服务类型,版本号-----直接发现已知的漏洞和弱点) 服务识别 操作系统识别 snmp分析(简单网络管 ...

  6. Kali Linux渗透测试实战 1.2 环境安装及初始化

    1.2 环境安装及初始化 目录(?)[-] 环境安装及初始化 下载映像 安装虚拟机 安装Kali Linux 安装中文输入法 安装VirtualBox增强工具 配置共享目录和剪贴板 运行 Metasp ...

  7. [解决]Kali Linux DHCP自动获取IP失败 坑爹的VMWare桥接

    root@kali:~# service networking restart [....] Running /etc/init.d/networking restart is deprecated ...

  8. Kali Linux配置ssh服务

    操作环境: 虚拟机操作系统: Kali Linux 2017.2 虚拟化软件: VMware Workstation 14 pro 虚拟机网络连接方式: 桥接模式 物理机操作系统: Windows10 ...

  9. Kali Linux上安装SSH服务

    安装 SSH 从终端使用 apt-get 命令安装 SSH 包: # apt-get update # apt-get install ssh 启用和开始使用 SSH 为了确保安全 shell 能够使 ...

  10. kali linux 开启ssh服务

    kali linux 一般默认不开启ssh服务,可使用命令查看ssh服务是否开启 命令:service ssh status 如果显示ssh服务没有开启需要修改ssh配置文件将ssh服务开启,kali ...

随机推荐

  1. api下载文件

    net /// <summary> ///字符流下载方法 /// </summary> /// <param name="fileName">下 ...

  2. JavaScript十大古怪之处(出自众妙之门)

    1. null是一个对象: alert(typeof null);  //objects NULL表示没有值,那么很明显他不能作为任何东西的实例,所以下式应该等于false: alert(null i ...

  3. JQ(查找)

    1.由下级到上级再到下级 var aa=$("td:eq(0)").parents("tr").find("td:eq(1)"); 2.

  4. Linux中的叹号命令

    在shell环境下操作,需要积累点快捷输入的小技巧: 最常用的技巧恐怕就是Tab自动补全以及上方向键来回退上几条历史命令了,这些对于csh,bash,ksh,zsh都适用. 最近还找到一种快速回退上一 ...

  5. Rabbit的直连交换机direct

    直连交换机类型为:direct.加入了路由键routingKey的概念. 就是说 生产者投递消息给指定交换机的指定路由键. 只有绑定了此交换机指定路由键的消息队列才可以收到消息. 生产者: packa ...

  6. Browser对象之Window对象

    对象属性 对象方法 setInterval() 按照指定的周期(以毫秒计)来调用函数或计算表达式. setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式. setInte ...

  7. 使用itext导出pdf

    导出pdf这个功能是在工作中遇到的,写这个功能的时候遇到了不少的问题,比如中文乱码,不显示的问题,这些问题在我不断的测试,研究后都一一解决了. 第一步,先导入所需要的jar包 第一个jar包是用于解决 ...

  8. [模拟回调] demo1模拟用字符串调用js函数 demo2模拟springmvc controller回调页面js函数

    demo1. 模拟用字符串调用js 函数 function dataQuery() { var strFun = "testCallBack"; var strParam = &q ...

  9. centos自带python2.6无法使用pip命令

    1.首先检查linux有没有安装python-pip包,直接执行 yum install python-pip,或者 which pip 我的已经安装了 2.没有可用软件包 python-pip.就执 ...

  10. C# 使用Guid类生成不重复的随机数

    什么是Guid GUID(全局唯一标识符)         全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符.GUID ...