小符的CEH考证之路叁 - Cheat notes for chapter three

365 阅读6分钟

CEH - 职业道德黑客 关于Scanning Networks扫描网络

在笔记之前,这是个很好的尝试去陈述cyber和network的区别。为什么这里使用network而不是cyber。对于了解,在什么情景下是network security,在什么情景下使用cyber security(比如我国的网络安全法是用的cyber security)这可以额很大程度上理清学习范围,从而增加效率。就像上一章笔记的footprinting的objective一样,在pentest之前我们要做很多准备去了解搜集信息是有意义的。闲言少序,首先去google一下语言学是怎么定义这两个词汇的 (Source:GeeksforGeeks).

Network Security:
Network Security is the measures taken by any enterprise or organisation to secure its computer network and data using both hardware and software systems. This aims at securing the confidentiality and accessibility of the data and network.

粗体字指出了network指向于企业的内部,更像一个局域网内的管理。再看一下Cyber security。

Cyber Security:
Cyber Security is the measures to protect our system from cyber attacks and malicious attacks. It is basically to advance our security of the system so that we can prevent unauthorized access of our system from attacker. It protects the cyberspace from attacks and damages. Cyberspace can be hampered by inherent vulnerabilities that cannot be removed sometimes.

可以看出,cyber security的重点在于cyberspace的强调。这个space是一个广泛的概念,它更像互联网环境,内网互联网之间的边界是系统的organizations or companies。最后,我们用一张GeeksforGeeks的图片关于network,cyber, 和 information security,开始Scanning Network之旅。

image.png

Terminology protocols 重要的互联网协议

  • TCP(Transmission Control Protocol) TCP/IP,这个协议就不多提了,OCI模型中网络传输层最重要的协议,是最多见的协议也是网络基础之一。
  • UDP(User Datagram Protocol) UPD/IP和TCP/IP一对经常被放在一起讨论的老伙伴,区别在于UPD无状态连接,TCP有状态。网络基础,各种视频都有讲解。
  • ARP协议(Address Resolution Protocol地址解析协议) 数据链路(网卡)协议,适用于IPV4,IPV6里这个协议换成了Neighbor Discovery Protocol。该协议可以通过IP地址为线索定位主机MAC(网卡)地址。攻击者可以在自己主机发起arp请求(arp是广播形式)捕获mac地址。( arp协议 zhuanlan.zhihu.com/p/28771785
  • ICMP(Internet Control Message Protocol 互联网控制消息协议) 使用ping/traceroute 命令都是基于 ICMP 协议发送请求的。IP协议的辅助协议,可以检查IP地址是否联通。使用ICMP的差错报文和查询报文,可以扫描目标的newwork map。
  • SSDP (Simple Service Discovery Protocol 简单服务发现协议) 翻阅SSDP协议的相关资料,SSDP的协议与DDOS攻击有关。是智能设备普遍采用这种UPnP协议栈的核心协议(IPv4 and IPv6兼容)。该协议适用于小型网络中的设备快速发现并互联(Universal Plug-and-Play (UPnP) architecture)。SSDP是基于UDP/TCP协议的。(UPnp协议使生活更便捷 zh.gouma.org/play/-What-…
  • DHCP(Dynamic Host Configuration Protocol,动态主机配置协议) DHCP适用于局域网的网络协议,主要作用是集中的管理、分配IP地址,使client动态的获得IP地址、Gateway地址、DNS服务器地址等信息。酒店里wifi就是使用DHCP协议联网的来分配和管理局域网地址DHCP Offer(租出IP地址)、DHCP Request(签订租约),然后住客连上就可以上互联网了。用于局域网内网络共享。DHCP也是基于TCP/UDP。

TCP flags

通过陈述上述的重要网络协议,TCP对于局域网(network)的连接是不能小觑的。因此,对于TCP协议的flags(协议沟通的语言),CEH v11要求学生有适当的了解(三次握手,四次挥手网络基础google很多介绍)。

  • syn: sync英文同步,正如字面意思,它标识了主机之间确定连接关系。
  • ack: acknowladge英文认知,标识服务器我收到了客户端传来的packages。
  • urg:urgent英文紧急,literally,加急处理标识符
  • psh:push英文催促,将数据写入到发送的缓冲区, 具体要从TCP协议栈详解里了解,用于流量控制。
  • fin:finish,完成communication。
  • rst:reset,重置communication。

Network模型

一些基础的网络模型比如OSI,three handshakes,TCP/IP

三次握手模型(TCP连接)

UserDirectionServer
SYN->
SYN<-SYN+ACK
ACK->

OSI Model

OSI模型和TCP模型,两个模型其实本质没什么区别,就是大概记一下,TCP其实就是从OSI精简出来的。

LayerNameExample protocols
7Application layerHTTP, SNMP
6Presentation layerMIME, ASCII
5Session layerSOCKS, NetBIOS
4Transport layerTCP, UDP
3Network layerIP, ICMP
2Data link layerMAC, ARP
1Physical layerethernet, Wi-Fi

TCP/IP Model

LayerNameExample protocols
4Application layerHTTP, SNMP
3Transport layerTCP, UDP
2Internet layerIP, ICMP
1Link layerARP, MAC

Scanning Tech 扫描技术

很好的讲解扫描技术的网站: etutorials.org/Networking/…

Full Open Scan 全开放式扫描

TCP connect()扫描,基于三次握手建立连接进行扫描,Logged记录和探测结果。无需根用户,nmap(扫描软件)指令 -sT,比如指令:

nmap -sT danielgorbe.com

正向全扫描(扫描所有开启端口号)模型:

AttackerDirectionTarget
SYN->
<-SYN+ACK
ACK->
RST->

反向全扫描(哪些关闭了)模型:

AttackerDirectionTarget
SYN->
<-RST

Stealth(鬼鬼祟祟) Scan / Half-Open Scan

不建立全连接,握手握一半,nmap(扫描软件)指令 -sS

正向半扫描模型:

AttackerDirectionTarget
SYN->
<-SYN+ACK
RST->

这里看到,只要收到ACK指令后就停止扫描了。

反向半扫描模型:

AttackerDirectionTarget
SYN->
<-RST

Inverse TCP Flag Scanning 逆向扫描

反客为主,攻击者变装成服务器。可以欺骗防火墙,因为有的防火墙会探测syn包。 逆向TCP flag扫描主要通过三种方式发送probe packages(探测包),使用

  • FIN flag (有机会绕过防火墙 work with RFC-793, Nmap:-sF)
  • XMAS (FIN+URG+PSH集合,Nmap: -sX)
  • NULL (空包,Nmap: -sN)

正向FIN扫描模型:

AttackerDirectionTarget
FIN->
<-No response

反向FIN扫描模型:

AttackerDirectionTarget
FIN->
<-RST

正向Xmas扫描模型:

AttackerDirectionTarget
FIN+URG+PSH->
<-No response

反向Xmas扫描模型:

AttackerDirectionTarget
FIN+URG+PSH->
<-RST

正向NULL扫描模型:

AttackerDirectionTarget
NULL->
<-No response

反向NULL扫描模型:

AttackerDirectionTarget
NULL->
<-RST

ACK Flag probe Scanning ACK扫描

ack扫描特点,只用ack扫描,并且返回都是RST,通过RST回复观察头部端口是否开启或者是否被防火墙拦截。(Nmap:-sA

IDLE / IPID Header scan 空扫描/僵尸扫描

找到了一个很好的讲解 m.yisu.com/zixun/29115… ,文章中指出借助第三方实施的端口扫描技术,可以很好的隐蔽扫描主机本身。使用僵尸服务器伪装成主机进行扫描( Nmap: -sI <zombie host[:probeport]>),基于full open scan。

UDP扫描

nmap: -sU 正向UDP扫描

AttackerDirectionTarget
UPD Port probe->
<-No response

反向UDP扫描

AttackerDirectionTarget
UPD Port probe->
<-ICMP Port Unreachable

IDS / IPS evasion 入侵防御/检测系统

引用一篇网站 - 什么是IDS和IPS的论述,IDS是依照一定的安全策略,对网络、系统的运行状况进行监视。(Nmap: -f)。不是重点了解一下就好了。

OS Fingerprinting

包括主动扫描操作系统 - Active OS fingerprinting 扫描(Nmap: -O),通过发送数据包TCP/UDP检查host系统。被动扫描- Passive OS fingerprinting,对于网络交通评估(TTL)后,判断系统是什么。评估依据表格如下,

OSTTLTCP Window Size
Linux645840
Windows XP12865535
Windows 20081288192
FreeBSD645840

Banner Grabbing 横幅抓取

这里经常使用Telnet去扫描(什么是banner grabbing)。banner是data包含一些敏感信息的服务器response。了解一下就可以。

Proxy 代理

代理指的是attacker和target之间的system,用于hiding。attacker可以使用proxy chaining去延展代理的数量从而销声匿迹,比如洋葱路由TOR

Spoofing IP address 欺骗性IP地址攻击

扫描用虚假的IP地址,比如nmap的decoy scan 选项。例子:

nmap -D 192.168.1.1,192.168.1.2 danielgorbe.com