默认计划
929人加入学习
(9人评价)
安全测试主动信息收集

购买过Kali Linux渗透测试、武官课程包、安全技术会员课程的学员不要再买此课程

价格 ¥ 300.00
该课程属于 高校公益行 | 网络安全实践训练营 请加入后再学习

隐蔽端口扫描

判断类型 我给目标机器发送syn包 目标给我发送syn/ack  我给目标发送rst 断开三次握手过程 只要收到目标给我发送syn/ack 那么我就可以判断端口开放的状态 目标机器是关闭的状态 我就受不到任何的包

过滤i+协议 比如说 过滤arp !arp

tcp syn包扫描 脚本可以

tcp window100 到200 基本没有开放啥端口

135 139是文件共享 135是

nmap syn 扫描

ptr记录 看看这个ip地址能不能反向解析成为一个主机名

多个不同的端口可以用逗号隔离开

[展开全文]

全连接:建立完整的三次握手;

隐蔽 只发送syn包 你给我会ack 看是否有rst就知道端口是否开放

伪造地址ip可能很少

僵尸扫描 扫描发起者 和目标服务器之间必须是发起者可以伪造ip地址的网络环境 才有可能去实施

必须拥有一个僵尸机:闲置的系统 其实主要是因为如果存在其他的ip通信 会导致ipid不能判断 理论上不能发现

扫描目的 就是判断目标端口是否是开放的  哪个端口是开放的

[展开全文]

udp 对于没有收到 代表端口是开放 收到的肯定是端口不可达

udp端口扫描 nmap 端口扫描 nmap默认的参数是1000

nmap -sU +ip udp 端口扫描 

没有给我回应 代表目标端口开放 给我回应的是目标不可达 是一个icmp

手动指定端口 nmap -sU +ip -p+端口

全端口扫描 nmap -sU+-ip-

回车显示进程

tcp扫描比较复杂 有很多状态 比如说全链接 半链接 各种各样扫描场景 基本tcp扫描基于三次握手 链接建立协议来建立的扫描

最经典的就是3次握手 隐蔽的 不发syn包 缺包 僵尸扫描 不产生应用层的访问 只可能在网络层有迹可循 这就是比较隐蔽的 僵尸

[展开全文]

nmap 在三四层网络扫描领域无敌状态

ack类型的是 -pA -PU udp 

-sn 不做端口扫描 只做四层主机发现、-ps 是sctp这种方式

pe 是IC,目标端口不可达 如果返回一个icmp 端口不可达 是其返回的一个数据包 表明是目标主机是存活状态 但是

无论是scapy 还是nmap 还是hping3 基于udp协议扫描  都是通过icmp进行扫描判断

udp 准确性不高 只是位于一个参考的

hp的包发送的flag是零 如果目标给我返回的是一个ack rst的数据包 那么hping 就认为是活着的

发现是发现活着的ip 是可以通信不是端口 

对端口扫描 每一个服务器都会开发很多应用 每一个应用都会侦听某个端口 通过侦听这些端口 来接受客户端对我进行访问 端口后面对应着很多端口

发现活着的主机  就需要去确认这些活着主机开放那些的端口 端口上运行那些服务 应用程序的漏洞都是通过这些端口来体现出来的 后续的测试攻击进入一个端口的话 也是通过端口应用程序的漏洞 从端口进入

[展开全文]

udp扫描 理解原理

domain 是典型的udp的端口

6表示tcp 17udp ip上层可能不只是udp和tcp 还有其他层的协议

[展开全文]

445这个端口是一个开放的端口

dst目标的ipp地址

[展开全文]

s四层发现 发现的目的是因为需要找到网络上存活的ip地址

四层 tcp和udp  目的是因为需要找到网络上存活的ip地址没有上升到端口状态是否存活

四层基于三层之上  四层比三层更加准确 可以对三层结果进行验证

四层端口探测方式 不太可能被防火墙过滤 原因就在于 你对四层的端口进行扫描 端口会给与你反迎 端口没有开发 对边境防火墙进行探测的时候 也可以通过一些返回特征 来识别在线状态 四层 不太可能被过滤掉

识别ip是否在线 tcp有两种方式  主机给目标端口发送syn包 主机存活就会返回一个syn加ack包 不存在就返回一个rst包

udp 是不可靠1

udp难度 精度没有tcp高 不可靠

假设目标ip不在线 给目标主机发送一个数据包 这个包是石沉大海 一去不复返的 目标ip在线 目标端口也是开放 也是udp包 但是这个包的结果和上面是一样的 只有一种情况 就是 目标主机是存活状态的但是端口是没有开发 那么此时 目标服务器 就会返回一个icmp的数据包 端口不可达的 这也是唯一的标准 

四层 主要是判断ip是否在线 不

[展开全文]

二层是arp

三层是 ip 和icmp(internet 网络控制管理协议)【进行路径的发现 网络状况的诊断】

不管是二层还是三层 四层都不可避免一个问题 就是目标主机可能存在过滤进制 导致我们扫描结果不准确的 甚至是错误的

扫描当成一个很重要的参考 一般是发出是type8的数据包 返回的是type0的数据包

-c的命令 是指定数据包

wireshark 抓icmp包

路由追踪 两种功能 可能会查看到目标机器是否是存活状态 第二张就是查砍 我这台机器和目标机器之间经过啦几次的路由

命令tracerout+域名 追踪路由

ttl值 linux操作系统和大多数Unix操作系统默认是64 每经过一个路由器 我的ttl值减1 最后变成0 路由就给我们回一个包 

ping -R +域名 也可以实现路由的跟踪

[展开全文]

arp nextdiscover 可以分为主动发现和被动发现 可用于无线和有线网络

nextdiscover  像一个ip地址 或者是ip地址段 发送arp的数据包 得到目标响应信息 就可以判断目标是否存活

有入侵检测系统很容易被发现 被动的话 是侦听将自己的网卡制成混杂模式 收取本网卡 mac地址 arp 有本身是是广播模式 

scapy 是一个强大的工具 相关于网络数据包操作功能开发的库文件

arp()函数

plen ip 地址 src 源

hardware 硬件类型

发包 sr1(变量)

[展开全文]

nmap 网络层 传输层 应用层 甚至是漏洞利用 

nmap 很强大 ping 扫描只是做主机发现的

0/24 是一段地址进行扫描

ptr解析主机名 但是会进行dns解析

 

[展开全文]

arp -d  发现  同一个ip 拥有多个不同的mac arp地址欺骗 原理就是 设置相同的mac地址, 主机a发送的数据包可以被另

arping 对的是一个主机 但是如果想实现对于一个网段进行arping 那么就可以使用脚本自动化来实现 

-ne1 不等于

-#表示脚本可以增加一些参数 如果脚本执行后面没有跟上一个参数或者多个参数 

[展开全文]

被动信息收集 域名 ip 

被动信息可以后期 

用主动方式对被动的收集的信息的结果进行验证以及确认发现更多的信息 用主动的手段发现更加准确的信息 

通过分析日志可以确认ip地址之类

为了避免目标系统封杀 使用第三方代理 让目标系统看来是第三方电脑 而不是我们客户机

隐藏自己 两种方式 通过小的流量进行隐藏 第二 就是通过发送大量的垃圾信息迷惑目标系统日志分析功能以及抓包分析功能 目的就是吧真是的ip隐藏在ip地址海洋呢

对目标系统发出大量的请求探测 将这种大量的请求探测的流量成为扫描 扫面可以对主机层扫描也可以对端口进行扫描 或者端口服务进行扫描

思路 主机层(ip)>端口层>端口服务 逐级扫描

同一工具对不同层面进行扫描

如何判断目标系统是否或者或者 是通过返回的数据包 数据包特征 内容判断

第一个 阶段  发现:识别主机判断主机是否活着

或者主机就是我们潜在的被攻击目标 主机上开放一些端口 端口有服务 服务有漏洞 这些漏洞就是我们攻击的途径 输出结果就是ip地址列表

从设计和实现完全根据osi七层模型 但是大部分协议根据的是tcp三层四川模型 模型很经典()

arp协议在数据链路层是二层  二层主机发现arp协议 优点就是速度快精度高  但是只能发现本网段之内的主机 跨网段 需要跨路由就没有办法发现 路由器会自动过滤 但是有特殊情况  

二层发现 查看主机是否存活在网络里

第一个 arpping 目的地址 是6个ff 48位mac地址

[展开全文]

smtp-user-enum -M VRFY -U [邮箱字典] -t 1.1.1.1

[展开全文]
metric · 2018-10-30 · SMTP扫描 0

nmap脚本目录在/usr/share/nmap/scripts/

[展开全文]
metric · 2018-10-30 · SMB扫描-nmap 0

dmitry 

nmap -sT 1.1.1.1 -p 22 --script=banner.nse

 

amap -b 发现banner
-q  或者-qb

/usr/share/nmap/scripts   (nmap的脚本存放位置 )
 
nmap 192.168.1.1 -p1 -100 -sV
通过指纹识别

















 

[展开全文]

拒绝服务

 

1.攻击方式

DDoS攻击可以具体分成两种形式:带宽消耗型以及资源消耗型。它们都是透过大量合法或伪造的请求占用大量网络以及器材资源,以达到瘫痪网络以及系统的目的。

1.1带宽消耗型攻击

DDoS带宽消耗攻击可以分为两个不同的层次;洪泛攻击或放大攻击。洪泛攻击的特点是利用僵尸程序发送大量流量至受损的受害者系统,目的在于堵塞其带宽。放大攻击与其类似,是通过恶意放大流量限制受害者系统的带宽;其特点是利用僵尸程序通过伪造的源IP(即攻击目标IP)向某些存在漏洞的服务器发送请求,服务器在处理请求后向伪造的源IP发送应答,由于这些服务的特殊性导致应答包比请求包更长,因此使用少量的带宽就能使服务器发送大量的应答到目标主机上。

 

1.DNS放大攻击及实验

流量放大攻击常常基于udp协议。

需要进行地址欺骗,伪造原地址。

 

 

 

 

 

 

 

我们使用dig命令,先进行简单的测试,使用陕西电信的dns服务器(218.30.19.40):

测试百度,发现dns服务器只向我们回了126字节大小的包,与我们发送出去的包大小甚至区别不大。

再测试qq

发现回包的大小是我们发包的三倍大小:

于是,我们便可以将原地址伪造成攻击目标的地址,再向递归域名查询服务器发起查询,使dns服务器成为流量放大和实施攻击着。利用大量的dns服务器实现DDoS.

实验 伪造dns查询包,进行ddos攻击

这里我们同样使用scapy构造我们需要的包,但是由于dns包基于UDP协议,因此包的构造稍显复杂:

构造IP包头,这里先不修改源地址为攻击目标的地址,我们先完成整个包的构造与测试。

 

将目的地址设置为dns服务器的地址:

   

构造udp包头:

 

 

构造dns包头与构造dns数据段的内容,确定查询的数据类型,将rd字段与qdcount字段改为1,以便进行递归查询:

 

  

 

构造dns数据段的内容,确定查询的数据类型将q拼接到dqd字段:

  

 

 

ip包头,udp包头,dns包进行拼接:

 

 

 

发包,可以看到,dns服务器向我们恢复了大量的查询内容:

抓包结果:

 

我们可以将源地址伪造为另一台kali虚拟机(192.168.26.132),进行试验。在实际的ddos攻击中,我们一般会指定多个ddos服务器。编写脚本做循环。

 

2.NTP放大攻击

Ntp(网络时间协议)

 

 

 

 

Monlist查询回导致我们的机器被利用来做ntp放大攻击,我们查询并关闭这一服务。

(现在ntp的默认配置中已经关闭了这一服务)

发现ntp服务

– nmap -sU -p123 1.1.1.1   /    127.0.0.1

发现漏洞

查询本机是否开放monlist查询:

– ntpdc -n -c monlist 1.1.1.1

– ntpq -c rv 1.1.1.1

– ntpdc -c sysinfo 192.168.20.5

配置文件

– /etc/ntp.conf

restrict -4 default kod nomodify notrap nopeer noquery

restrict -6 default kod nomodify notrap nopeer noquery

防御:

 加固 NTP 服务

1. NTP 服务器升级到 4.2.7p26

2. 关闭现在 NTP 服务的 monlist 功能,在ntp.conf配置文件中增加`disable monitor`选项

3. 在网络出口封禁 UDP 123 端口

 

防御 NTP 反射和放大攻击

1. 由于这种攻击的特征比较明显,所以可以通过网络层或者借助运营商实施 ACL 来防御

2. 使用防 DDoS 设备进行清洗

 

其他攻击方式

 

UDP洪水攻击(User Datagram Protocol floods

UDP用户数据报协议)是一种无连接协议,当数据包通过UDP发送时,所有的数据包在发送和接收时不需要进行握手验证。当大量UDP数据包发送给受害系统时,可能会导致带宽饱和从而使得合法服务无法请求访问受害系统。遭受DDoS UDP洪泛攻击时,UDP数据包的目的端口可能是随机或指定的端口,受害系统将尝试处理接收到的数据包以确定本地运行的服务。如果没有应用程序在目标端口运行,受害系统将对源IP发出ICMP数据包,表明目标端口不可达。某些情况下,攻击者会伪造源IP地址以隐藏自己,这样从受害系统返回的数据包不会直接回到僵尸主机,而是被发送到被伪造地址的主机。有时UDP洪泛攻击也可能影响受害系统周围的网络连接,这可能导致受害系统附近的正常系统遇到问题。然而,这取决于网络体系结构和线速。

ICMP洪水攻击(ICMP floods

ICMP互联网控制消息协议)洪水攻击是通过向未良好设置的路由器发送广播信息占用系统资源的做法。

死亡之Pingping of death

死亡之Ping是产生超过IP协议能容忍的数据包数,若系统没有检查机制,就会死机。

泪滴攻击

(针对操作系统的漏洞)

每个数据要发送前,该数据包都会经过切割,每个小切割都会记录位移的信息,以便重组,但此攻击模式就是捏造位移信息,造成重组时发生问题,造成错误。

 

 

[展开全文]

主动信息收集

  • 直接与目标系统交互通信
  • 无法避免留下访问的痕迹
  • 使用受控的第三方电脑进行探测
  • 使用代理或已经被控制的主机
  • 做好被封杀的准备
  • 使用噪声迷惑目标,淹没真实的探测流量
  • 扫描
  • 发送不同的探测,根据返回结果判断目标状态

 

 

 

阶段一:主机发现


1. 简介

  • 识别或者的主机
  • 潜在的被攻击目标
  • 输出一个IP地址列表
  • 234层发现

 

  1. 二层发现及实验

使用ARP协议

  • 优点扫描速度快、可靠
  • 缺点不可路由

2.1 ARP协议

1.分别arping网络里一个存在的ip与不存在的ip


 

抓包分析:

广播发送,但只有目的IP地址会回包,告诉主机它的mac地址:

 

网络中无此ip地址,无回应:

 

 

2. arping 192.168.1.1 -d

可发现ARP欺骗(若发现不同的mac地址却是同一个ip

 

甚至,如果该mac地址与网关的地址相同,则可能存在中间人攻击。该主机可能会伪装为网关,窃取本机发往真正网关的信息。

 

使用管道:

使用管道来使结果更加清晰,方便后面进行脚本操作:

 

 

实验:编写脚本:

编写shell脚本帮助我们提高效率,锻炼编写脚本的能力。

 

Arping指令虽然好用,但只能ping单个的ip地址,无法ping整个网段,这在实际渗透测试的工作量中是不可接收的,因此我们尝试编写脚本来使它一次检查整个网段:

 

Shell脚本:

脚本第一部分为错误提示与引导。正式代码为扫描本地子网,提取ip地址,获得网卡的网络地址段,然后从1254arping循环查询。

 

 

运行脚本:

所发现的活的ip地址:

 

抓包结果如下图:

抓包可观察到脚本确实帮我们用arping查询了整个网段:

 

我们还可改动脚本,将查询结果保存起来,然后编写另一个脚本,在任意时间可快速重新查询以前保存的活的ip是否还存在:

 

结果如下:

 

 

 

2.2 NMAP

主机扫描

nmap 1.1.1.1-254 –sn (不做端口扫描)

 

 

• nmap -iL iplist.txt -sn

此指令也可对保存的ip进行二次扫描:

 

 

严格意义上说,指令不仅仅进行了ARP操作,我们只对一个ip进行扫描,并抓包分析,可以看出,不仅进行了ARP扫描,还进行了dns的反向解析:

 

 

2.3二层发现补充

 除了上面的常用方法,我们还可采用以下的方式:

 

Netdiscover

专用于二层发现

可用无线和交换网络环境

主动和被动探测

 

主动:

netdiscover -i eth0 -r 1.1.1.0/24

netdiscover -l iplist.txt

 

被动:

netdiscover -p

主动ARP容易触发报警

 

Scapy

作为python库进行调用

也可作为单独的工具使用

抓包,分析,创建,修改,注入网络流量

 

 

 

 

三层发现及实验

优点:

(与二层相比)可路由

速度比较快

 

缺点:

速度比二层慢

经常被边界防火墙过滤

 

IPicmp协议

 

 

 

 

[展开全文]

netdiscover:专用于二层发现。

可用于无线和交换网络环境。

可主动可被动。

 

 

scapy----------

[展开全文]

nmap:需要熟练全面的掌握。

nmap -sn 只做ping扫描,不做端口扫描。

例:nmap -sn ip(可以扫段)

比arping快很多,内容也较多。

可以调用文本文件

 

[展开全文]

arping 只能 ping一个ip,不能对整个网段进行探测。

因此需要大量自动化扫描就需要脚本,

#!/bin/bash

 

[展开全文]

授课教师

安全经理

课程特色

视频(29)
下载资料(1)