关于kali:Kali-Linux渗透测试之主动信息收集

53次阅读

共计 11627 个字符,预计需要花费 30 分钟才能阅读完成。

<!– more –>

被动信息收集的原理

1. 被动信息收集的特点

   1. 间接与指标零碎交互通信
   2. 无奈防止留下拜访的痕迹
   3. 应用受控的第三方电脑进行探测,应用代理或曾经被管制的机器
   4. 扫描发送不同的探测,依据返回后果判断指标状态

2. 发现指标主机的过程

1. 辨认存活主机,发现潜在的被攻打指标
2. 输入一个 IP 地址列表,比方 IP 地址段、IP 地址范畴
3. 应用二、三、四层进行探测发现

3. OSI 七层模型和 TCP/IP 五层模型

七层模型,亦称 OSI(Open System Interconnection)。参考模型是国际标准化组织(ISO)制订的一个用于计算机或通信零碎间互联的规范体系,个别称为 OSI 参考模型或七层模型。

它是一个七层的、形象的模型体,不仅包含一系列形象的术语或概念,也包含具体的协定。

上三层属于应用层(即时用户应用层)

OSI 七层模型及 TCP/IP 五层模型的对应网络设备关系:

OSI 七层模型及 TCP/IP 五层模型的对应网络协议关系:

这个比拟重要,比方咱们常常用的 ping 命令就是走的网络层,而代理软件代理是 TCP 等协定,走的是传输层,所以咱们的代理在 CMD 下是无奈代理 ping 命令的(然而在 PowerShell 里能够)

二层发现

1. 二层主机发现

  1. 利用 OSI数据链路层 的协定进行发现,个别应用的是 ARP 协定,能够 绕开禁 ping 的服务器
  2. ARP 协定概述:ARP 协定是 ”Address Resolution Protocol”(地址解析协定)的缩写。计算机通过 ARP 协定将 IP 地址转换成 MAC 地址。
  3. ARP 协定工作原理

主机 A 的 IP 地址为 192.168.1.1,MAC 地址为 0A-11-22-33-44-01;

主机 B 的 IP 地址为 192.168.1.2,MAC 地址为 0A-11-22-33-44-02;当主机 A 要与主机 B 通信时,地址解析协定能够将主机 B 的 IP 地址(192.168.1.2)解析成主机 B 的 MAC 地址,以下为工作流程:第 1 步:依据主机 A 上的路由表内容,IP 确定用于拜访主机 B 的转发 IP 地址是 192.168.1.2。而后 A 主机在本人的本地 ARP 缓存中查看主机 B 的匹配 MAC 地址。第 2 步:如果主机 A 在 ARP 缓存中没有找到映射,它将询问 192.168.1.2 的硬件地址,从而将 ARP 申请帧播送到本地网络上的所有主机。源主机 A 的 IP 地址和 MAC 地址都包含在 ARP 申请中。本地网络上的每台主机都接管到 ARP 申请并且查看是否与本人的 IP 地址匹配。如果主机发现申请的 IP 地址与本人的 IP 地址不匹配,它将抛弃 ARP 申请。第 3 步:主机 B 确定 ARP 申请中的 IP 地址与本人的 IP 地址匹配,则将主机 A 的 IP 地址和 MAC 地址映射增加到本地 ARP 缓存中。第 4 步:主机 B 将蕴含其 MAC 地址的 ARP 回复音讯间接发送回主机 A。第 5 步:当主机 A 收到从主机 B 发来的 ARP 回复音讯时,会用主机 B 的 IP 和 MAC 地址映射更新 ARP 缓存。本机缓存是有生存期的,生存期完结后,将再次反复下面的过程。主机 B 的 MAC 地址一旦确定,主机 A 就能向主机 B 发送 IP 通信了。

2. 命令详解

arping

协定层级:数据链路层

阐明:从源位址通过 ping 命令查看设施上的硬体位址。

语法:arping -D-A-w timeout[-s source] -I interface address

参数:

- D 复制位址监测资讯;- U 用 ARP REQUEST 包更新网路街坊上的 ARP 缓存;- A 与 - U 参数作用一样,区别为 - A 采纳 ARP REPLY 包;-c count 设置 ping 命令探测的次数;-w timeout 通过 timeout 秒后进行 ping 命令;- q 不显示任何资讯;-s source 设置 ping 的源位址;-I interface 设置 ping 应用的网路介面;address 设置指标位址。

例如:

arping 192.168.10.1 -c 3

netdiscover

协定层级:数据链路层
阐明:被动查看查看是否能够与网路上的多台主机连通。

语法:netdiscover 指定网段 网卡 参数

参数:

-i 指定网卡 eth0
-r 指定网段 例如 192.168.10.0/24
-p 被动模式。默默的侦听指定的网卡以发现别的二层主机
-t [ARP](https://so.csdn.net/so/search?q=ARP&spm=1001.2101.3001.7020)包发送距离。单位毫秒。这个能够用来躲避检测零碎的告警。-l file: 指定扫描范畴列表文件
-p passive mode: 应用被动扫描的形式,不发送任何数据,只做嗅探
-m file: 扫描已知 mac 地址和主机名的电脑列表
-F filter: 指定 pcap 筛选器表达式(默认:“arp”)
-s time: 每个 arp 申请之间的睡眠工夫(毫秒)
-n node: 应用八字节的模式扫描(2 - 253)
-c count: 发送 arp 申请的工夫次数
-f: 应用被动模式的扫描
-d: 疏忽配置文件
-S: 启用每个 arp 申请之间克制的睡眠工夫
-P: 打印后果
-N: 不打印头。只有启用 - p 时无效。-L: 将捕捉的信息输入(-P),并持续进行扫描

例如:

netdiscover -i eth0 -r 192.168.10.0/24 

三层发现

1. 三层主机发现

三层主机发现:利用 OSI 七层模型中的 网络层 的协定进行主机发现,个别应用的是 IP、ICMP 协定。

三层扫描的优缺点:

长处:能够绕过路由的主机,速度绝对较快

毛病:速度比二层发现慢,常常会被防火墙过滤

2. 命令详解

ping

协定层级:网络层
阐明:能够用来查看是否能够与网路上的一台主机连通。

语法:ping [-fn] [-c< 连贯次数 >] [-i< 间隔时间 >] [-I< 网路设施 >]

参数:

- f 产生 ping 风暴,会对网路带来重大累赘,仅限 root 用户应用,可用来统计资料包的丢包、误码率;- n 只输入数值,不尝试获取主机名;-i< 间隔时间 > 设定 2 个 Ping 资讯包收回的间隔时间,单位为秒;-I< 网路设施 > 当零碎有多个设施时,能够用该参数指定某一网路设施。

例如:

ping www.baidu.com

traceroute

协定层级:网络层
阐明:令利⽤ ICMP 协定定位您的计算机和⽬标计算机之间的所有路由器

语法:Traceroute [options] [data size]

参数:

[-n]: 显⽰的地址是⽤数字表⽰⽽不是符号
[-v]: 长输入
[-p]:UDP 端⼝设置(缺省为 33434)
[-q]: 设置 TTL 测试数⽬(缺省为 3)
[-t]: 设置测包的服务类型
[data size]: 每次测试包的数据字节长度(缺省为 38)

例如:

traceroute www.baidu.com

hping3

协定层级:网络层
阐明:hping3 是命令行下应用的 TCP/IP 数据包组装 / 剖析工具,通常 web 服务会用来做压力测试应用,也能够进行 DOS(DDOS)攻打试验。通用 hping3 只能每次扫描一个指标

DOS,又叫DDOS,分布式拒绝服务攻打或洪水攻打

语法例子:

hping3 -c 100000 -d 120 -S -w 64 -p 80 --flood --rand-source www.sanguosha.com

参数:

 -h  --help      显示帮忙
  -v  --version   显示版本
  -c  --count     发送数据包的数目
  -i  --interval  发送数据包距离的工夫 (uX 即 X 微秒, 例如:-i u1000)
      --fast      等同 -i u10000 (每秒 10 个包)
      --faster    等同 -i u1000 (每秒 100 个包)
      --flood     尽最快发送数据包,不显示回复。-n  --numeric   数字化输入,象征性输入主机地址。-q  --quiet     宁静模式
  -I  --interface 网卡接口 (默认路由接口)
  -V  --verbose   具体模式
  -D  --debug     调试信息
  -z  --bind      绑定 ctrl+ z 到 ttl(默认为目标端口)
  -Z  --unbind    勾销绑定 ctrl+ z 键
      --beep      对于接管到的每个匹配数据包蜂鸣声提醒
 
模式抉择
  default mode     TCP   // 默认模式是 TCP
  -0  --rawip      RAWIP 模式,原始 IP 模式。在此模式下 HPING 会发送带数据的 IP 头。即裸 IP 形式。应用 RAWSOCKET 形式。-1  --icmp       ICMP 模式,此模式下 HPING 会发送 IGMP 应答报,你能够用 --ICMPTYPE --ICMPCODE 选项发送其余类型 / 模式的 ICMP 报文。-2  --udp        UDP 模式,缺省下,HPING 会发送 UDP 报文到主机的 0 端口,你能够用 --baseport --destport --keep 选项指定其模式。-8  --scan       SCAN mode. // 扫描模式 指定扫描对应的端口。Example: hping --scan 1-30,70-90 -S www.target.host    // 扫描
  -9  --listen     listen mode  // 监听模式
   
IP 模式
  -a  --spoof      spoof source address  // 源地址坑骗。伪造 IP 攻打,防火墙就不会记录你的实在 IP 了,当然回应的包你也接管不到了。--rand-dest      random destionation address mode. see the man. // 随机目标地址模式。具体应用 man 命令
  --rand-source    random source address mode. see the man.       // 随机源地址模式。具体应用 man 命令
  -t  --ttl        ttl (默认 64)  // 批改 ttl 值
  -N  --id         id (默认 随机)  // hping 中的 ID 值,缺省为随机值
  -W  --winid      应用 win* id 字节程序  // 应用 winid 模式,针对不同的操作系统。UNIX ,WINDIWS 的 id 回应不同的,这选项能够让你的 ID 回应和 WINDOWS 一样。-r  --rel        绝对 id 字段(预计主机流量)  // 更改 ID 的,能够让 ID 曾递加输入,详见 HPING-HOWTO。-f  --frag       拆分数据包更多的 frag.  (may pass weak acl)   // 分段,能够测试对方或者交换机碎片解决能力,缺省 16 字节。-x  --morefrag   设置更多的分段标记    // 大量碎片,泪滴攻打。-y  --dontfrag   设置不分段标记    // 发送不可复原的 IP 碎片,这能够让你理解更多的 MTU PATH DISCOVERY。-g  --fragoff    set the fragment offset    // 设置断偏移。-m  --mtu        设置虚构最大传输单元, implies --frag if packet size > mtu    // 设置虚构 MTU 值,当大于 mtu 的时候分段。-o  --tos        type of service (default 0x00), try --tos help          // tos 字段,缺省 0x00,尽力而为?-G  --rroute     includes RECORD_ROUTE option and display the route buffer    // 记录 IP 路由,并显示路由缓冲。--lsrr           涣散源路由并记录路由        // 涣散源路由
  --ssrr           严格源路由并记录路由      // 严格源路由
  -H  --ipproto    设置 IP 协定字段,仅在 RAW IP 模式下应用   // 在 RAW IP 模式里抉择 IP 协定。设置 ip 协定域,仅在 RAW ip 模式应用。ICMP 模式
  -C  --icmptype   icmp 类型(默认 echo 申请)    // ICMP 类型,缺省回显申请。-K  --icmpcode   icmp 代号(默认 0)     // ICMP 代码。--force-icmp 发送所有 icmp 类型(默认仅发送反对的类型)    // 强制 ICMP 类型。--icmp-gw    设置 ICMP 重定向网关地址(默认 0.0.0.0)    // ICMP 重定向
      --icmp-ts    等同 --icmp --icmptype 13 (ICMP 工夫戳)            // icmp 工夫戳
      --icmp-addr  等同 --icmp --icmptype 17 (ICMP 地址子网掩码)  // icmp 子网地址
      --icmp-help  显示其余 icmp 选项帮忙      // ICMP 帮忙
 
UDP/TCP 模式
  -s  --baseport   base source port             (default random)              // 缺省随机源端口
  -p  --destport   [+][+]<port> destination port(default 0) ctrl+z inc/dec    // 缺省随机源端口
  -k  --keep       keep still source port      // 放弃源端口
  -w  --win        winsize (default 64)        // win 的滑动窗口。windows 发送字节(默认 64)
  -O  --tcpoff     set fake tcp data offset     (instead of tcphdrlen / 4)    // 设置伪造 tcp 数据偏移量(取代 tcp 地址长度除 4)
  -Q  --seqnum     shows only tcp sequence number        // 仅显示 tcp 序列号
  -b  --badcksum   (尝试)发送具备谬误 IP 校验和数据包。许多零碎将修复发送数据包的 IP 校验和。所以你会失去谬误 UDP/TCP 校验和。-M  --setseq     设置 TCP 序列号
  -L  --setack     设置 TCP 的 ack   ------------------------------------- (不是 TCP 的 ACK 标记位)
  -F  --fin        set FIN flag
  -S  --syn        set SYN flag 同步
  -R  --rst        set RST flag
  -P  --push       set PUSH flag
  -A  --ack        set ACK flag   -------------------------------------(设置 TCP 的 ACK 标记 位)-U  --urg        set URG flag      // 一大堆 IP 抱头的设置。-X  --xmas       set X unused flag (0x40)
  -Y  --ymas       set Y unused flag (0x80)
  --tcpexitcode    应用 last tcp-> th_flags 作为退出码
  --tcp-mss        启用具备给定值的 TCP MSS 选项
  --tcp-timestamp  启用 TCP 工夫戳选项来猜想 HZ/uptime
 
Common // 通用设置
  -d  --data       指定发送到主机的数据包大小,以字节为单位,缺省是 0。-E  --file       文件数据
  -e  --sign       增加“签名”-j  --dump       转储为十六进制数据包
  -J  --print      转储为可打印字符
  -B  --safe       启用“平安”协定
  -u  --end        通知你什么时候 --file 达到 EOF 并避免倒回
  -T  --traceroute traceroute 模式(等同应用 --bind 且 --ttl 1)
  --tr-stop        在 traceroute 模式下收到第一个不是 ICMP 时退出
  --tr-keep-ttl    放弃源 TTL 固定,仅用于监督一跳
  --tr-no-rtt      不要在跟踪路由模式下计算 / 显示 RTT 信息 ARS 包形容(新增性能,不稳固)ARS packet description (new, unstable)
  --apd-send       发送 APD 形容数据包(参见 docs / APD.txt)

例如:

traceroute www.baidu.com

fping

协定层级:网络层
阐明:fping 是 ping 命令的加强版,它能够对一个 IP 段进行 ping 扫描,而 ping 命令自身是不能够对网段进行扫描的。fping6是 fping 用来 ping IPV6 的命令

语法例子:

fping -a -g 192.168.10.0/24

参数:

仅 ping ipv4 地址,ipv6 请应用 fping6
-a:只显示存活主机;-u:只显示不存活主机;-g:通过指定起始地址与终止地址产生指标列表
-6,——ipv6 只有 ping ipv6 地址
-b,——size= 要发送的 ping 数据量,以字节为单位(默认值:56)
-B,——backoff= N 设置指数 backoff 因子为 N(默认值:1.5)
计数模式: 发送 N 个 ping 到每个指标
-f,——file= 从文件中读取指标的文件列表(- 示意 stdin)
生成指标列表(仅当没有指定 - f 时)
(在指标列表中给出开始和完结 IP,或者一个 CIDR 地址)
(例如:fping -g 192.168.1.0 192.168.1.255 或 fping -g 192.168.1.0/24)
-H,——ttl= N 设置 IP ttl 值(活跳工夫)
-I,——iface= iface 绑定到一个特定的接口
-l,——loop loop 模式: 永远发送 ping 信号
-m,——所有应用提供的主机名的所有 ip(例如 IPv4 和 IPv6),与 - A 一起应用
-M,——不要设置“不要宰割”标记
设置 ICMP 包上的服务类型 (tos) 标记
-p,——period= ping 包到一个指标之间的 MSEC 距离(单位:ms)
(in loop and count mode,默认:1000 ms)
-r,——重试 = N 次重试(默认:3 次)
-R,——随机分组数据(到箔链接数据压缩)
-S,——src=IP 设置源地址
-t,——timeout=MSEC 单个指标初始超时(默认:500 ms,除了 -l/-c/ -c,其中 - p 周期为 2000 ms)
输入选项:
显示有生命的指标
-A,-addr 显示指标地址
-C,——vcount= N 与 - C 雷同,以具体格局报告后果
在每个输入行之前打印工夫戳
-e,——elapsed 显示返回数据包耗费的工夫
-i,——interval= 发送 ping 包之间的 MSEC 距离(默认值:10 ms)
-n,——name 按名称显示指标(- d 等效)
-N,——netdata 输入兼容 netdata (-l - Q 是必须的)
-o,——中断显示累计中断工夫(失落包 * 包距离)
-q,——十分十分(不要显示每个指标 / 每个 ping 的后果)
-Q,——squiet= 秒数,与 - Q 雷同,但每 n 秒显示摘要
-s,——stats 打印最终的 stats
显示无奈达到的指标
-v,——版本显示版本
-x,——可达 = N 示意 >= N 个主机是否可达

四层发现

1.nmap

协定层级:传输层

阐明:nmap 是一个网络探测和平安扫描程序,零碎管理者和集体能够应用这个软件扫描大型的网络,获取那台主机正在进行以及提供扫描服务等信息。nmap 反对很多扫描技术,例如:UDP、TCPconnect()、TCP SYN(半开扫描,只发第一个包)、FTP 代理(bounce 攻打)、反向标记、ICMP、FIN、ACK 扫描、圣诞树(Xmas Tree)、SYN 扫描和 null 扫描。还能够探测系统操作类型(-O 参数)。

语法例子:

nmap 192.168.10.1

参数:

-A:选项用于应用进攻性形式扫描
-T4:指定扫描过程应用的时序,总有 6 个级别(0-5),级别越高,扫描速度越快,但也容易被防火墙或 IDS 检测并屏蔽掉,在网络通讯情况较好的状况下举荐应用 T4
-oX test.xml:将扫描后果生成 test.xml 文件
-oG test.txt:  将扫描后果生成 test.txt 文件
-sn : 只进行主机发现,不进行端口扫描
-O : 指定 Nmap 进行零碎版本扫描
-sV: 指定让 Nmap 进行服务版本扫描
-p <port ranges>: 扫描指定的端口
-sS/sT/sA/sW/sM: 指定应用 TCP SYN/Connect()/ACK/Window/Maimon scans 的形式来对指标主机进行扫描
-sU: 指定应用 UDP 扫描形式确定指标主机的 UDP 端口情况
-script <script name> : 指定扫描脚本
-Pn:不进行 ping 扫描
-sP :  用 ping 扫描判断主机是否存活,只有主机存活,nmap 才会持续扫描,个别最好不加,因为有的主机会禁止 ping
-PI :  设置这个选项,让 nmap 应用真正的 ping(ICMP echo 申请)来扫描指标主机是否正在运行。-iL 1.txt : 批量扫描 1.txt 中的指标地址

-sL: List Scan 列表扫描,仅将指定的指标的 IP 列举进去,不进行主机发现
-sY/sZ: 应用 SCTP INIT/COOKIE-ECHO 来扫描 SCTP 协定端口的凋谢的状况
-sO: 应用 IP protocol 扫描确定指标机反对的协定类型
-PO : 应用 IP 协定包探测对方主机是否开启
-PE/PP/PM : 应用 ICMP echo、ICMP timestamp、ICMP netmask 申请包发现主机
-PS/PA/PU/PY : 应用 TCP SYN/TCP ACK 或 SCTP INIT/ECHO 形式进行发现

-sN/sF/sX: 指定应用 TCP Null, FIN, and Xmas scans 机密扫描形式来帮助探测对方的 TCP 端口状态
-e eth0:指定应用 eth0 网卡进行探测
-f : --mtu <val>: 指定应用分片、指定数据包的 MTU.
-b <FTP relay host>: 应用 FTP bounce scan 扫描形式
-g:指定发送的端口号
-r: 不进行端口随机打乱的操作(如无该参数,nmap 会将要扫描的端口以随机程序形式扫描,以让 nmap 的扫描不易被对方防火墙检测到)-v 示意显示冗余信息,在扫描过程中显示扫描的细节,从而让用户理解以后的扫描状态
-n : 示意不进行 DNS 解析;-D  <decoy1,decoy2[,ME],...>: 用一组 IP 地址覆盖实在地址,其中 ME 填入本人的 IP 地址
-R:示意总是进行 DNS 解析。-F : 疾速模式,仅扫描 TOP 100 的端口
-S <IP_Address>: 伪装成其余 IP 地址
--ttl <val>: 设置 time-to-live 工夫
--badsum: 应用谬误的 checksum 来发送数据包(失常状况下,该类数据包被摈弃,如果收到回复,阐明回复来自防火墙或 IDS/IPS)--dns-servers  : 指定 DNS 服务器
--system-dns : 指定应用零碎的 DNS 服务器
--traceroute : 追踪每个路由节点
--scanflags <flags>: 定制 TCP 包的 flags
--top-ports <number> : 扫描凋谢概率最高的 number 个端口
--port-ratio <ratio>: 扫描指定频率以上的端口。与上述 --top-ports 相似,这里以概率作为参数
--version-trace: 显示出具体的版本侦测过程信息
--osscan-limit: 限度 Nmap 只对确定的主机的进行 OS 探测(至多需确知该主机别离有一个 open 和 closed 的端口)--osscan-guess: 大胆猜想对方的主机的零碎类型。由此准确性会降落不少,但会尽可能多为用户提供潜在的操作系统
--data-length <num>: 填充随机数据让数据包长度达到 Num
--ip-options <options>: 应用指定的 IP 选项来发送数据包
--spoof-mac <mac address/prefix/vendor name> : 假装 MAC 地址
--version-intensity <level>: 指定版本侦测强度(0-9),默认为 7。数值越高,探测出的服务越精确,然而运行工夫会比拟长。--version-light: 指定应用轻量侦测形式 (intensity 2)
--version-all: 尝试应用所有的 probes 进行侦测 (intensity 9)

实战:应用 scapy 定制数据包进行高级扫描

scapy 工具简介

Scapy 是一个能够让用户发送、侦听和解析并假装网络报文的 Python 程序。这些性能能够用于制作侦测、扫描和攻打网络的工具。

scapy 定制 ARP 协定包

要发包,数据包的格局什么样?一个数据包有什么参数?

应用 scapy 命令进入控制台

scapy

ARP().display() 显示 ARP 协定包参数

>>> ARP().display()
###[ARP]### 
  hwtype= 0x1
  ptype= IPv4
  hwlen= None
  plen= None
  op= who-has
  hwsrc= 00:0c:29:a1:81:ef
  psrc= 192.168.10.252
  hwdst= 00:00:00:00:00:00
  pdst= 0.0.0.0

sr1() 设置参数并发送包

>>> sr1(ARP(pdst="192.168.10.18"))
Begin emission:
Finished sending 1 packets.
.*
Received 2 packets, got 1 answers, remaining 0 packets
<ARP  hwtype=0x1 ptype=IPv4 hwlen=6 plen=4 op=is-at hwsrc=d8:bb:c1:2e:51:b8 psrc=192.168.10.18 hwdst=00:0c:29:a1:81:ef pdst=192.168.10.252 |<Padding  load='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' |>>

IP().display() 显示 IP 协定包参数

ICMP().display() 显示 ICMP 协定包参数

sr1() 设置参数并发送包,多个函数参数用 / 宰割,参数选项用, 宰割

>>> sr1(IP(dst='192.168.10.18')/ICMP(), timeout=1)
Begin emission:
Finished sending 1 packets.
.....*
Received 6 packets, got 1 answers, remaining 0 packets
<IP  version=4 ihl=5 tos=0x0 len=28 id=33647 flags= frag=0 ttl=64 proto=icmp chksum=0x6113 src=192.168.10.18 dst=192.168.10.252 |<ICMP  type=echo-reply code=0 chksum=0xffff id=0x0 seq=0x0 |<Padding  load='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' |>>>
>>> 

scapy 定制 TCP 协定 SYN 申请包

tcp 三次握手过程中 flags 的标记

<img src=”https://s2.loli.net/2023/01/09/6OpQ8ELS2Zz5U7s.png” alt=”image-20230109141337892″ style=”zoom:50%;” />

<img src=”https://s2.loli.net/2023/01/09/8BHg9azowE46rvS.png” alt=”image-20230109143536853″ style=”zoom: 80%;” />

TCP().display() 显示 TCP 协定包参数

>>> TCP().display()
###[TCP]### 
  sport= ftp_data
  dport= http
  seq= 0
  ack= 0
  dataofs= None
  reserved= 0
  flags= S
  window= 8192
  chksum= None
  urgptr= 0
  options= []

发送 TCP 协定包

flags=”S” 意思是 SYN 数据包 同步模式

dport=80 指标端口是 80

>>> sr1(IP(dst='192.168.10.18')/TCP(flags="S",dport=80),timeout=1)
Begin emission:
Finished sending 1 packets.
*
Received 1 packets, got 1 answers, remaining 0 packets
<IP  version=4 ihl=5 tos=0x0 len=44 id=33650 flags=DF frag=0 ttl=64 proto=tcp chksum=0x20fb src=192.168.10.18 dst=192.168.10.252 |<TCP  sport=http dport=ftp_data seq=3370734633 ack=1 dataofs=6 reserved=0 flags=SA window=65392 chksum=0xe4ce urgptr=0 options=[('MSS', 1460)] |<Padding  load='\x00\x00' |>>>

从以上响应后果总失去一个 flags=SA 的数据包。SA 标记即 SYN+ACK。示意收到服务器 tcp 三次握手中的第二个包,能够收到响应包,示意端口凋谢。

注:这种基于 tcp 的半链接扫描,更隐密,更不容易被发现。

被动信息收集的原理

1. 信息收集分类

信息收集能够分为两类:被动和被动

被动信息收集:与指标主机进行间接交互, 从而拿到指标信息,毛病是会记录本人的操作信息。比方:nmap 端口扫描,scapy 高级扫描等。

被动信息收集:不与指标主机进行间接交互, 通过搜索引擎或者社会工程等形式间接的获取指标主机的信息。比方: google 搜寻,Shodan 搜寻,fofa 搜寻, 钟馗之眼等。

2. 信息收集内容

社工层面:公司地址、邮件地址、域名信息、联系电话、公司职务人员

技术层面:IP 地址、端口信息、操作系统类型、技术架构、服务版本信息、敏感信息

正文完
 0