网络扫描学习记录整理

学习《计算机网络安全》这本书的一些记录

二、网络扫描

网络扫描的主要目的是收集目标的信息,发现目标漏洞。主要包括预攻击探测漏洞扫描

(一)预攻击探测

预攻击探测的主要目的是探测目标主机是否“活着”,查看目标主机的属性,如哪些端口开放,有什么服务等。

预攻击探测主要有以下方法。

1. ping扫描

ping是测试网络连接状况以及信息包发送和接收状况非常有用的工具,是网络测试最常用的命令。ping向目标主机(地址)发送一个回送请求数据包,要求目标主机收到请求后给予答复,从而判断网络的响应时间和本机是否与目标主机(地址)联通。
pinger工具,ping sweep,可以扫描一个地址段。

2. 端口扫描(portscan)

端口扫描的主要目的是寻找存活主机的开放端口或服务。端口扫描的原理是尝试与目标主机建立连接,如果目标主机有回复则说明端口开放。

  1. 全TCP连接。这种方法使用三次握手与目标主机建立标准的tcp连接;容易被发现并被目标主机记录。
  2. SYN扫描。扫描主机自动向目标主机的指定端口发送SYN数据段,表示发送建立连接请求。如果目标主机的回应报文SYN=1,ACK=1,则说明该端口是活动的,接着扫描主机发送回一个RST给目标主机拒绝连接,导致三次握手失败。如果目标主机回应是RST,则端口是“死的”。
  3. FIN扫描。发送一个FIN=1的报文到一个关闭的端口,该报文将丢失并返回一个RST。如果该FIN报文发送到活动窗口则报文丢失,不会有任何反应。
  4. 代理扫描。即把别的计算机当中间代理,去扫描目标主机。这种扫描方法通过扫描器来自动完成。例如HTTP Proxy Scanner是一种应用程序代理扫描器,每秒可以扫描10000个IP地址。
    端口扫描工具如NetScanTools、WinScan、SuperScan、NTOScanner、WUPS、NmapNT等
  • HTTP协议代理服务器常用端口号:80/8080/3128/8081/9080。
  • SOCKS代理协议服务器常用端口号:1080。
  • Telnet(远程登录)协议代理服务器常用端口号:23。
  • HTTP服务器,默认的端口号为80/tcp(木马Executor开放此端口)。
  • HTTPS服务器,默认的端口号为443/tcp 443/udp。
  • Telnet(不安全的文本传送),默认端口号为23/tcp(木马Tiny Telnet Server所开放的端口)。
  • FTP,默认的端口号为21/tcp(木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口)。
  • TFTP(Trivial File Transfer Protocol),默认的端口号为69/udp。
  • SSH(安全登录)、SCP(文件传输)、端口重定向,默认的端口号为22/tcp。
  • SMTP(Simple Mail Transfer Protocol,E-mail),默认的端口号为25/tcp(木马Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口)。
  • POP3(Post Office Protocol,E-mail),默认的端口号为110/tcp。
  • WebLogic,默认的端口号为7001。
  • Webshpere应用程序,默认的端口号为9080。
  • Webshpere管理工具,默认的端口号为9090。
  • JBOSS,默认的端口号为8080。
  • TOMCAT,默认的端口号为8080。
  • WIN2003远程登录,默认的端口号为3389。
  • Symantec AV/Filter for MSE,默认的端口号为8081。
  • Oracle数据库,默认的端口号为1521。
  • ORACLE EMCTL,默认的端口号为1158。
  • Oracle XDB(XML数据库),默认的端口号为8080。
  • Oracle XDB FTP服务,默认的端口号为2100。
  • MS SQL*SERVER数据库server,默认的端口号为1433/tcp 1433/udp。
  • MS SQL*SERVER数据库monitor,默认的端口号为1434/tcp 1434/udp。
  • QQ,默认的端口号为1080/udp。

3.操作系统识别(OS fingerprint)

识别目标主机的操作系统,首先可以帮助攻击者进一步探测操作系统级别的漏洞,从而可以从这一级别进行渗透测试。操作系统和运行在本系统之上的应用一般是成套出现的。操作系统的版本也有助于准确定位服务程序或者软件的版本,比如Windows server 2003搭载的IIS为6.0,Windows server 2008 R2搭载的是IIS7.5

常见的操作系统指纹识别技术:

  1. 抓取计算机的标志(Banner),通过它来查看操作系统型号。
    Banner抓取是最基础、最简单的指纹识别技术,而且在不需要其他专门工具的情况下就可以做。操作简单,通常获取的信息也相对准确。严格地讲,Banner抓取是应用程序指纹识别而不是操作系统指纹识别。

Banner信息是由应用程序自动返回的,比如apache、exchange。而且很多时候并不会直接返回操作系统信息,幸运的话,可能会看到服务程序本身的版本信息,并以此进行推断。可以很容易的就防御,把Banner的信息隐藏就可以;(在IIS中使用ISAPI扩展后,经常会看到透露版本的Banner。)

服务标志 对应的服务器操作系统类型
Microsoft-HTTPAPI/2.0 Windows 2003 Sp2, Windows 7, Windows 2008, Windows 2008 R2
Microsoft-HTTPAPI/1.0 Windows 2003
  1. 通过工具来判断操作系统类型;
    Winfingerprint专业工具

4.资源和用户信息扫描

资源扫描网络资源和共享资源,如目标网络计算机名、域名和共享文件等;而用户扫描则扫描目标系统上合法用户的用户名和用户组名。(Windows系统如共享资源、Netbios名和用户组等)

常用的方法:

  1. 使用net view。
  • 在DOS命令行中输入“net view/domain”命令,可以获取网络上可用的域;
  • 命令行中输入“net view/domain:domain_name”命令,可以获取某一域中的计算机列表,其中domain_name为域名;
  • 命令行中输入“net view\\computer_name”命令,可以获取网络中某一计算机的共享资源列表,其中computer_name为计算机名
  1. 使用netviewx。
  • 使用netviewx NCS列出domain域中的服务器列表;
  • 使用netviewx NCS nt printq-server-x用于列出域NCS中所有运行NT和共享打印机的服务器;
  1. 使用nbtstat。
  • nbtstat(NetBIOS over TCP/IP)是Windows操作系统内置的命令行工具,利用它可以查询涉及NetBIOS信息的网络机器;
  • 还可以用来消除NetBIOS高速缓存器和预加载LMHOSTS文件等;在进行安全检查时非常有用;(例如利用nbtstat查看目标系统NetBIOS列表:nbtstat -a X.X.X.X
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 应用层指的是 OSI 标准模型的第 5、6、7层,也就是会话层、表现层、应用层。 我们介绍的时候都会使用 OSI ...
    赵客缦胡缨v吴钩霜雪明阅读 4,681评论 0 8
  • 一、计算机网络概述 1)基本概念 基本概念 ① 计算机网络就是一种通信网络② 计算机网络 = 通信技术 + 计算机...
    Du1in9阅读 8,926评论 0 18
  • 1. OSI/RM(七层)结构 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 2.各层网络编程的关键...
    亦珩阅读 4,231评论 0 1
  • 定义 网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。网络协议主要由三个要素组成:语义、语法及时...
    FlyAndroid阅读 4,622评论 0 10
  • Linux网络管理 笔记源于慕课网视频课《Linux网络管理》笔记内容去掉了一些没用的知识点,然后结合网上的博客进...
    _Isaac_阅读 6,253评论 0 1