一、实验目的

  1. 学习信息收集的一般步骤
  2. 学会使用ping命令
  3. 利用Nmap工具进行信息搜集

二、实验环境

  1. 系统环境:一台windows7系统、一台XP系统、一台kali系统
  2. 软件环境:安装Wireshark软件、Nmap软件、TCP Connect程序、TCPSYN程序

三、实验原理

  • 搜集目标信息一般采用七个基本的步骤:
  1. 找到初始信息,比如一个IP地址或者一个域名
  2. 找到网络地址范围,或者子网掩码
  3. 找到活动机器
  4. 找到开放端口和入口点
  5. 弄清楚操作系统
  6. 弄清楚每个端口运行的是那种服务
  7. 画出网络拓扑图

四、实验步骤

1. 用Wireshark抓到ICMP中的分片报文

在XP系统中ping window7系统命令:>ping 192.168.220.129 -l 65330

在Windows7系统中抓包分析ICMP包发现数据包进行了分片操作

2. 熟练Nmap的使用

在window7中使用Nmap扫描XP系统命令如下:>Nmap -T4 -A -v 192.168.220.130综合扫描并显示过程

Nmap也可用cmd直接执行命令进行扫描

  • Nmap常用命令如下:
1. nmap -sT 192.168.96.4 TCP连接扫描,不安全,慢
2. nmap -sS 192.168.96.4 SYN扫描,使用最频繁,安全,快
3. nmap -Pn 192.168.96.4 目标机禁用ping,绕过ping扫描
4. nmap -sU 192.168.96.4 UDP扫描,慢,可得到有价值的服务器程序
5. nmap -sI 僵尸ip 目标ip 使用僵尸机对目标机发送数据包
6. nmap -sA 192.168.96.4 检测哪些端口被屏蔽
7. nmap 192.168.96.4 -p 对指定端口扫描
8. nmap 192.168.96.1/24 对整个网段的主机进行扫描
9. nmap 192.168.96.4 -oX myscan.xml 对扫描结果另存在myscan.xml
10. nmap -T1~6 192.168.96.4 设置扫描速度,一般T4足够
11. nmap -sV 192.168.96.4 对端口上的服务程序版本进行扫描
12. nmap -O 192.168.96.4 对目标主机的操作系统进行扫描
13. nmap -sC 192.168.96.4 使用脚本进行扫描,耗时长
14. nmap -A 192.168.96.4 强力扫描,耗时长
15. nmap -6 ipv6地址 对ipv6地址的主机进行扫描
16. nmap -f 192.168.96.4 使用小数据包发送,避免被识别出
17. nmap –mtu 192.168.96.4 发送的包大小,最大传输单元必须是8的整数
18. nmap -D <假ip> 192.168.96.4 发送参杂着假ip的数据包检测
19. nmap --source-port 针对防火墙只允许的源端口
20. nmap –data-length: 192.168.96.4 改变发生数据包的默认的长度,避免被识别出来是nmap发送的
21. nmap -v 192.168.96.4 显示冗余信息(扫描细节)
22. nmap -sn 192.168.96.4 对目标进行ping检测,不进行端口扫描(会发送四种报文确定目标是否存活)
23. nmap -sP 192.168.96.4 仅仅对目标进行ping检测
24. nmap -n/-p 192.168.96.4 -n表示不进行dns解析,-p表示要
25. nmap --system-dns 192.168.96.4 扫描指定系统的dns服务器
26. nmap –traceroute 192.168.96.4 追踪每个路由节点
27. nmap -PE/PP/PM 使用ICMP echo, timestamp, and netmask 请求包发现主机
28. nmap -sP 192.168.96.4 主机存活性扫描,arp直连方式
29. nmap -iR [number] 对随机生成number个地址进行扫描
  • Nmap扫描192.168.220.130的信息:端口、协议、状态、服务、版本

  • Nmap扫描的网络拓扑图

  • Nmap扫描的主机明细信息

3. 运行Windows7虚拟机中TCP Connect程序,并用Wireshark抓取开放端口和关闭端口的数据包,使用cmd打开TCP Connect程序使用命令进行探测192.168.220.130端口的开放情况

打开TCPConnect.exe程序>

在cmd中执行TCPConnect.exe 192.168.220.130 130 150命令

  • 结论:从TCPConnect.exe 192.168.220.130 130 150执行的命令来看192.168.220.130开放了135、139两个端口

在Wireshark中抓包使用ip.addr == 192.169.220.129 and ip.addr == 192.168.220.130 分析获取的报文

  • 结论:从Wireshark分析发现135端口建立了三次握手和四次挥手说明192.168.220.130的135端口是开放的

4. 运行XP虚拟机中TCPSYN程序,并用Wireshark抓取开放端口和关闭端口的数据包

在XP系统打开TCPSYN.exe程序>



在cmd中执行TCPSYN.exe 192.168.220.129 20 60命令

  • 结论:从TCYSYN.exe 192.168.220.129 20 60执行的命令来看192.168.220.129开放了21端口

在Wireshark中抓包使用ip.addr == 192.169.220.129 and ip.addr == 192.168.220.130 分析获取的报文

  • 结论:从Wireshark分析发现21端口采用了SYN半连接并返回[SYN,ACK]说明192.168.220.129的21端口是开放的

5. 比较上面第3项和第4项的运行时间和运行结果

  • 结论:运行时间:TCPConnect.exe和TCYSYN.exe相比TCPConnect.exe采用全连接TCYSYN.exe采用半连接,TCYSYN.exe运行速度和时间明显比TCPConnect.exe快很多。

    运行结果:TCPConnect.exe和TCYSYN.exe端口开放的结果是一样,但是在Wireshark报文中TCPConnect.exe在端口开放的情况下并建立了三次握手和四次挥手,TCYSYN.exe在端口开放的情况下报文中只有第二次返回的【SYN,ACK】报文,说明TCYSYN.exe采用了半连接。

ping探测与Nmap扫描的更多相关文章

  1. 转-Nmap扫描原理与用法

    1     Nmap介绍 操作系统与设备类型等信息. Nmap的优点: 1.      灵活.支持数十种不同的扫描方式,支持多种目标对象的扫描. 2.      强大.Nmap可以用于扫描互联网上大规 ...

  2. Nmap扫描手册

    By:WHILE扫描类-sTTCP connect()扫描,完整的通话连接,容易被检测,会被记录日志.-sSTCP同步扫描,不完整的通话连接,很少有系统会记入日志.-sUUDP扫描-sAACK扫描用来 ...

  3. Nmap扫描原理与用法

    Nmap扫描原理与用法 1     Nmap介绍 Nmap扫描原理与用法PDF:下载地址 Nmap是一款开源免费的网络发现(Network Discovery)和安全审计(Security Audit ...

  4. nmap扫描某段网络连通性

    nmap -v -sP 10.0.10.0/24 进行ping扫描,打印出对扫描做出响应的主机,不做进一步测试(如端口扫描或者操作系统探测): nmap -sP 192.168.1.0/24 仅列出指 ...

  5. Nmap扫描基础常用命令(包含进阶使用)

    Nmap扫描常用命令  - Nmap scans common commands 1.扫描单个目标 nmap ip 如:nmap 192.168.0.101 2.扫描多个目标 nmap ip1 ip2 ...

  6. nmap扫描工具

    1.NMap工具 主要功能:探测主机是否在线.扫描主机开放端口和嗅探网络服务,用于网络探测和安全扫描. NMap支持很多扫描技术,例如:UDP.TCPconnect().TCPSYN(半开扫描).ft ...

  7. Python调用nmap扫描网段主机信息生成xml

    #!/usr/bin/env python # -*- coding: utf_8 -*- # Date: 2015年10月23日 # Author:蔚蓝行 # 博客 http://www.cnblo ...

  8. linux 局域网探测工具nmap

    NMap,也就是Network Mapper,是Linux下的网络扫描和嗅探工 具包,其基本功能有三个, 一是探测一组主机是否在线: 其次是扫描主机端口,嗅探所提供的网络服务: 还可以推断主机所用的操 ...

  9. Nmap 扫描

    最近在家里学习渗透,看到了nmap对服务器进行端口扫描,记录学习如下: Nmap支持非常多的扫描方式,包括TCP Syn ,TCP Connect,TCP ACK,TCP FIN/Xmas/NULL, ...

随机推荐

  1. java 循环移位输出全排列

    //题目:利用1.2.2.3.4这4个数字,用java写一个main函数打印出所有不同的排列,如12234,,2234等,要求打印出来不能有重复 1 package test123; 2 3 impo ...

  2. 在CentOs7源码安装mysql-5.6.35单实例数据库

    首先安装依赖包,避免在安装过程中出现问题 [root@bogon liuzhen]# yum -y install gcc gcc-c++[root@bogon liuzhen]# yum -y in ...

  3. MySQL5.7 高可用高性能配置调优

    [client]default-character-set = utf8mb4[mysqld]### 基本属性配置port = 3306datadir=/data/mysql# 禁用主机名解析skip ...

  4. Kickstart无人值守原理及简介

    原文转自:https://www.cnblogs.com/itzgr/p/10029461.html作者:木二 目录 一 简介及原理 二 搭建无人值守步骤 三 PXE介绍 四 Kickstart简介 ...

  5. Spring boot中注册Servlet

    Spring boot中注册Servlet 如何在spring boot项目中注册Servlet呢? 如何在spring boot项目中注册Servlet呢? 由于没有web.xml,无法直接在xml ...

  6. vue 手机号码隐藏中间

    template {{ phone | mobileFilter }}   data export default { filters:{         mobileFilter(val){     ...

  7. MySQL——MySQL客户端命令

    1. mysql: (1)用于数据库连接 (2)用于管理数据库: a: 命令接口自带命令 b: SQL语句: DDL: 数据库定义语言 DCL: 数据库控制语言 DML: 数据库操作语言 2. mys ...

  8. JS_DOM操作之操作标签

    <标签名 属性1="属性值1" 属性2="属性值2"-->文本</标签名> 1 - 文本操作 <div class="c ...

  9. Git 系列教程(11)- 分支简介

    前言 很多版本控制系统都有分支这个概念 使用分支意味着可以将日常工作从主线上脱离,从而避免影响主线 Git 鼓励在工作流程中频繁使用分支和合并 Git 是如何保存数据的 Git 保存的不是文件的变化或 ...

  10. SQL语句分组获取记录的第一条数据的方法

    使用Northwind 数据库 首先查询Employees表 查询结果: city列里面只有5个城市 使用ROW_NUMBER() OVER(PARTITION BY COL1 ORDER BY CO ...