boxmoe_header_banner_img

⋅無⋅限⋅進⋅步⋅

加载中

文章导读

攻击思路及信息收集


avatar
yuhui 2025年10月20日 39

攻击思路及信息收集

攻击思路

流程1743864724807-9a5d9d77-b5c4-4bb1-931a-c393c6b949a4.png

信息收集

域名收集1743864748108-e3899480-1d37-469c-bbad-a9dcb26d1ede.png

IP资源

1743864759323-a283db08-08c4-40fe-8041-937b71bcfeee.png

服务信息收集

1743864768968-4783cfb7-aa32-4b15-ae19-288461650b4d.png

Web应用关键信息识别

1743864793737-fda45ed9-c02a-46b3-936c-97e0d662d8c6.png

漏洞探测

探测方式

  • 手工
  • 版本
  • 原理

漏洞分类

1743864849314-280def46-1413-4dd2-908c-b896a9159689.png

漏洞利用

1743864861836-3b2b5b30-c69c-46c0-a7e9-5577756d80bb.png

信息收集

Google Hacking

1743864890060-9cda6f09-1609-4939-b95d-db01e36e92cb.png

搜索引擎语法

1743864900294-5be3c8bb-79b8-494d-a65f-c2206d181a57.png

国家代码

1743864905516-55e583d4-3268-49ea-a871-3e91c9561dfe.png

配置文件

1743864920676-5774d47d-16fd-47ba-8f24-660523f83f6c.png

备份文件

1743864929238-2d1dbfaf-165c-4e66-9ad6-d69101a0cc73.png

网站目录

1743864936139-7ce0b732-d9a0-4be8-8a14-40064bbeb741.png

错误配置

1743864943183-a4eeb2f8-2603-4cc0-a853-15a205c03e5d.png

子域名

1743864974415-761cb01e-426f-4067-98d3-4335a96d1a64.png

1743864982637-d188e020-2719-496b-bbe1-43b3ef96f497.png

在线工具

https://www.hakshop.com/

1743864991477-4af50307-6da6-47a6-8307-82f9df955ce6.png

IP探测

1743865081395-1aba4bad-e0cc-4960-afbc-9b660e7558e5.png

对IP的信息收集

1743865092255-91b049b0-8544-43c5-b65a-111b0b5f0f4d.png

常见端口服务

1743865162936-243b59b9-8bb6-42c4-b976-16e75530aeab.png

1743865123395-1ea47d98-8036-4e99-911c-9ec382db82c5.png

高风险端口服务

1743865217914-818ddfcd-a562-4030-9bb0-88798e1b4524.png

扫描工具

1743865225326-858dc4c3-8c34-4d41-bae8-da93cfe33e10.png

测绘平台

fofa、鹰图、zoomeye、Quake

系统识别

1743865264361-a291d672-6658-4e7d-9a87-fd501f697764.png

Nmap

1743865274276-bfc8813e-3db1-4777-a9cb-a96d4f46da5e.png

安装

https://nmap.org/

1743865283282-f0086445-4dbb-4c11-b7e0-b16e3bfa0ecb.png

选项

1743865313213-883cef0a-3cb5-415b-a043-507d9d19a9d3.png

1743865333426-75829c83-1e41-4cab-8b03-3d24b4a2f55e.png1743865361204-9b69a054-0949-479a-9a18-13f1f2117c51.png

主机发现

1743865376303-41c3083f-b5be-4c6d-8abc-5a57dc5cd478.png

实现原理

1743865387277-5be2ba26-da83-4d4c-ae40-fdd601c1052c.png

1743865391540-a1ab6fec-9acf-4776-b467-88d459902a30.png1743865394819-78f6368e-baf4-49f0-a2e1-48e66a2dd45c.png1743865398344-b97ca6f1-b74a-4b69-a4cc-9e34293415f6.png

端口扫描

1743865408085-6497f05f-d40e-4fbd-9254-dda462d71823.png

实现原理

1、执行主机发现

2、向1000个常见端口发送SYN信息

可能的回应

  • PST+ACK #该端口不接受TCP连接
  • SYN+ACK #该端口接受TCP连接
  • 无回应 #namp重新发送SYN信息,如果依然没有回应,可能为防火墙屏蔽了该数据包

sudo nmap IP --packet-trace --reason

1743925759344-52f3d8a0-8efc-4931-9557-1bc455d5e3b0.png

根据回应信息,nmap判断一个端口为

关闭

开启

被过滤

1743925960072-dde7d661-1a66-47fe-b252-97df5d6065a5.png

UDP端口扫描

sudo nmap IP_adress -sU -p 53 --packet-trace --reason

如果发送TCP的SYN信息给一个UDP端口,会收到RST+ACK的回应标志着该端口是关闭状态,因此需要使用UDP的数据包扫描

1743926108820-6ad5729c-4491-4480-8b3a-e83d3a631bdd.png

当接受UDP信息,可能收到回应

ICMP信息显示该端口不可达

应用回应的信息(应用决定)

无回应信息

sudo nmap IP_adress -sU -p 53,68,161 --packet-trace --reason

1743926226586-4b27ae54-3ec4-46b5-905c-da06cff34b0d.png

根据回应信息,nmap判断一个UDP端口

关闭

开放

开放或过滤

1743926269015-9cadfa0b-f07a-467f-b2d5-97286341f3eb.png

UDP扫描弊端

大多数时候UDP扫描只能确定一个UDP端口是否关闭

UDP属于无状态属性协议,所以信息接收方不会发送ACK之类的消息回应,为使得结果更准确,对每个数据包都需要等待更长时间

UDP扫描速度远慢与TCP扫描

服务探测

1743926414343-d44c58ae-39c8-4480-b5a7-683dc6affcc1.png

图中结果显示服务类型并不准确,因为它根据常见端口号判断

20-FTP 80-HTTP

22-SSH 161-SNMP

25-SMTP 443-HTTPS

nmap服务探测

sudo nmap IP_adress -sV --packet-trace --reason

1743926527324-5becb3e0-5741-4d4a-9669-e770b44deeb8.png

22号端口1743926549016-40526f75-6f3d-4d67-b4e8-35335d03d38a.png

80端口

1743926563457-f2ff3f7e-b040-4823-ac29-9b9438ef683c.png

3306端口

1743926575004-f0ccff5f-29cc-4b0b-a7dd-9b8e76c7a03e.png

手动扫描

某些情况需要手动扫描,如

Nmap无法给出准确结果

需要执行更加隐蔽都扫描

无法使用Nmap

Ping扫描

for i in {1..40};

do

ping -c 1 192.168.0.$i >> /dev/null && echo "102.168.0.$i exist";done

端口扫描

for i in {1.。65536};

do

(echo 123 > /dev/tcp/192.168.0.2/$i && echo"port $i exist") 2>/dev/null; done

Script扫描

Nmap针对不同服务提供内置扫描脚本

cd /usr/share/nmap/scripts

ls | grep -i ssh

1743926895997-03561c87-e2be-48b4-b0c3-96143aba7df6.png

sudo nmap --script-help ssh-hostkey.nse

sudo nmap 192.168.2.0 -p 22 --script ssh-hostkey

1743926900575-d923dee3-9c77-4ccc-bdcb-6c44fbac3e9e.png

sudo nmap --script-help ssh-hostkey.nse

nmap将这些脚本分成许多类别

细节描述查阅:

https://nmap.org/book/nse-usage.html#nse-category-exploit

https://nmap.org/nsedoc/categories/

使用某类脚本可以

sudo nmap IP_adress -p port_num --script vuln

1743926959345-08d1b144-e49f-4e1b-b3b2-5bf8127f86c6.png

nmap默认脚本类型

选择脚本作为默认类型基于

速度

实用

输出信息丰富程度

发起默认脚本扫描

sudo nmap IP_adress -p 80 --script default

sudo nmap IP_adress -p 80 -sC

Nmap参数优化

nmap在扫描时内置来

等待时长机制 timout

重传上限

可以调整参数来均衡效率和准确度

设置等待时长

nmap可以根据RTT在一定范围内动态都设置该参数

可以使用ping检测网络情况

--max-rtt-timeout 50ms

--initial-rtt-timeout 100ms

设置重传上限

nmap根据网络情况动态的设置该参数

若网络稳定,可以降为1

--max-retires 1

设置数据包发送速度

设置每秒最低发送速度

--min-rate =10000

时间模板

nmap提供来6种时间模板

每种时间模板都包含一系列参数

-T0—paranoid

-T1—sneaky

-T2—polite

-T3—normal

-T4—aggressive

-T5—insane

0<1<2<3<4<5,0为最慢,5为最快

T5:

--max-rtt-timeout 300ms --min-rtt-timeout 50ms

--initial-rtt-timeout 250ms max-retries 2--host-timeout 15m

--script-timeout 10m --max-scan-delay

扫描报告导出

nmap支持三种导出格式

oN:原始版本

oX:XML

oG:Grepable

oA:所有格式

1743928631863-7d21b68c-e7f6-43cf-92d0-e68705ebb92c.png

可能存在的防御机制

防火墙

入侵检测系统(IDS)

入侵防御系统(IPS)

这些系统监控网络中的流量,根据设定鉴别恶意流量,采取行动

丢弃数据包

向管理员告警(IDS)

自动启用防御措施(IPS)

防火墙检测与绕过

nmap扫描结果中显示filtered port

1743928818322-e076e330-f1ab-4ba1-9db3-b8f65063f47e.png

reason1:防火墙丢弃该数据包并回应ICMP REJECT信息

1743928823993-cf7f64d7-e47d-42be-9b5d-958267de83e1.png

reason2:防火墙丢弃数据包导致没有回应

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

1743928945961-ffb77e0b-85cb-494b-bec1-88b56ed185db.png

reason3:Nmap设定了较短的max-rtt-timeout

如果防火墙存在,尝试探测防火墙规则

-sA TCP ACK扫描来探测防火墙的规则

一个端口收到单独的ACK信息时,会回复RST信息

ACK数据包很少被屏蔽

可以检测防火墙是否检测状态信息

ACK扫描无法检测一个端口的开放状态

1743929073991-1e9607db-c6ab-45c4-a759-1f81bb8bcd7c.png

绕过防火墙规则

修改源端口的地址

伪装为常见的数据流量(如DNS、SMTP)

绕过根据端口号进行流量屏蔽的防火墙

sudo nmap IP_address -sA -p 22,80,3306 --source-port 53

使用IPv6

部分防火墙规则只针对IPv4

sudo nmap www.pentest.com -6

IP分片

sudo nmap IP_address -f

检测IDS/IPS

准备VPS

执行激进扫描看有无阻断(无反应则无防御系统)

IP被屏蔽

非工作时间扫描后立刻屏蔽-IPS存在

扫描一段时间后被屏蔽-IDS存在

绕过IDS/IPS

扫描时附带其他IP

sudo nmap IP_address -D IP_address+1,IP_address+2,IP_address+3

  • 隐藏真实IP地址

1743929469429-846ad22f-5c5d-424e-9d3c-f962e07904b0.png

  • 增加扫描的延迟避免达到IPS/IDS阈值

sudo nmap IP_address --scan-delay 50ms

  • 对数据包分片
  • 使用代理隐藏扫描的发起地址

域名

1743929566054-5a485585-ac3f-4a84-b37a-7bbcb515bfbd.png

域名发现

横向主域发现

备案查询

1743929599780-8f68787a-39b0-44a9-8fcc-c9623f0f894f.png

SSL证书-Subject Alt Names

查看SSL证书中的Subject Alt Name

下图为证书X.509的一个扩展,允许多个域名共享一个SSL证书

1743929670283-800f5fd6-a016-476f-85c1-ea98e95d4857.png

子域名发现

oneforall主要功能

  • 子域名爆破:通过字典文件对给定的主域名进行子域名猜测。
  • 证书透明日志解析:从公开的SSL/TLS证书中提取与指定域名相关的子域名信息。
  • DNS记录查询:查询并收集指定域名或IP地址的各种DNS记录类型(如A, AAAA, CNAME等)。
  • 搜索引擎集成:利用各大搜索引擎API搜索可能包含目标子域名的网页内容。
  • 结果去重整合:自动去除重复的结果,并根据需要输出到文件或其他格式。

子功能详解

子域名爆破
  • 参数说明
    • -d <domain>: 指定目标域名。
    • --wordlist <file>: 使用自定义字典文件路径。
    • --thread <num>: 设置并发线程数,默认为50。
    • --timeout <seconds>: 请求超时时间,默认为10秒。
证书透明日志解析
  • 参数说明
    • -c <domain>: 需要查询的域名。
    • --update: 更新本地CT日志数据库。
    • --no-update: 不更新数据库直接使用现有数据。
DNS记录查询
  • 参数说明
    • -t <type>: 查询特定类型的DNS记录(例如 A, MX, TXT 等)。
    • --resolve: 解析IP地址对应的反向DNS名称。
    • --ignore-wildcard: 忽略通配符DNS配置的影响。
搜索引擎集成
  • 参数说明
    • --search-engine <engine>: 选择使用的搜索引擎 (如 Google, Bing)。
    • --api-key <key>: 对应搜索引擎的API密钥。
    • --max-results <number>: 最大返回结果数量限制。
结果处理
  • 参数说明
    • --output <file>: 输出结果到指定文件。
    • --format <json/csv>: 定义输出格式。
    • --remove-wildcard: 去除由通配符DNS导致的假阳性结果。

其他常用选项

  • --help: 显示帮助信息。
  • --version: 查看当前版本号。
  • --quiet: 静默模式运行,减少控制台输出。
  • --debug: 开启调试模式,打印更详细的执行过程信息。

Layer子域名挖掘机

1743930706208-7731049b-c642-49aa-84fd-823e863e7fe7.png

SubDomainsBrute

1743930725239-80bd4dd1-aad4-40af-b267-dde6976df94f.png

Sublist3r

1743930736941-29b2d0b2-9f60-406d-8830-8ca64e3b72b2.png

Subdomainfinder

在线工具http://subdomainfinder.c99.nl/

过滤失效域名

过滤已失效的子域名信息

for sub in $(cat subdomain); do host $sub |grep "has" |cut -d " " -f1,4;done

以上部分方法基于子域名的DNS历史记录,部分可能已失效

有时测试时,资产需要进行扩展或需要绕过云WAF防护,可以查找域名的真实IP,绕过网络架构层防护或查看是否存在旁站或存在其他易受攻击服务

发现反向代理

ping目标的域名

1743931113283-c05c0911-332d-4ccd-a72b-1f9001a66253.png

CDN和反向代理的功能:

  • 均衡负载
  • caching
  • 检测流量中恶意行为
  • 隐藏服务器的真是IP,防止DDOS1743931177098-d875fa87-a63c-49d8-99fa-597948c85e29.png

可以使用whois判断是否目标拥有该IP地址

1743931303668-4c1fedad-6e38-493f-bc3d-b5112d57646a.png

1743931311112-f2232cb8-8ff9-4047-bcbb-4ff7499799a2.png

从多地尝试ping和DNS解析

https://dnschecker.org/

真实IP

为了获取更加准确的信息,需要找到服务器真实IP地址

利用DNS的历史记录

https://securitytrails.com/1743931561140-a7cc5557-db70-420f-a867-0c43246aa2a7.png

https://x.threatbook.com/1743931628092-ee345316-2253-4a3c-8baf-6963df3769d5.png

https://ti.qianxin.com/

1743931703230-67813ad2-2210-4d96-87d8-75c483ca7ef4.png

对其他子域名进行DNS查询

  • 不一定所有的子域名都使用反向代理
  • 子域名和目标域名可能部署在同一台服务器上,或者在同一个C段网络

通过SSL证书

1743931822417-826111ba-6eae-4cee-babd-4d9fcfdbd58f.png1743931831755-618da232-4990-47ed-912e-6cef05831b0e.png

1743931840603-c590f537-8c4c-403a-93f8-29b6a6688392.png1743931850221-166ef03b-7270-4450-b556-b0d1de011988.png

Virtualhost

可以在同一个服务器部署多个站点

一个站点包含漏洞可能导致全部信息泄露

检测哪些域名解析到相同IP可以使用

https://hackertarget.com/server-info/

https://pentest-tools.com/information-gathering/find-virtual-hosts

Gobuster

在已发现的web服务器上扫描Virtualhost

for in 'cat SecList/Discovery/DNS/subdomains-top1million-5000.txt'; do echo ${i}.pentest.com;done > vhost.txt

gobuster vhost -u http://www.pentest.com -w vhost.txt

网站关键信息收集

1743932138803-327304c1-c6eb-457e-9aeb-4c725865f685.png1743932209144-19479756-d99e-442e-bbac-6211032becd4.png

背景信息

1743932236643-49df1dc0-5881-4085-b47b-382876c87360.png

常用工具

https://whois.chinaz.com/

https://sitereport.netcraft.com/

https://builtwith.com/

1743932297193-2a680105-d0cd-4a85-9cb2-47c70f4173b8.png1743932300998-37f88557-b0b8-4315-b706-6353a25d9fe7.png

CMS识别

关键字识别

1743932371853-0f74db7f-7c76-4236-be24-3a65273e9906.png

1743932378597-a2dc1403-c522-4ab0-9650-8cb3532d2a22.png

1743932405513-f4ce9b5d-18a9-4d35-b067-a83db262bec6.png

特定文件及路径识别

1743932424045-8d309751-debb-47cf-ab4c-9b04a578720b.png1743932478990-af95c4c4-f89c-4f63-a584-207920921edf.png1743932497644-0260db9e-4448-48ca-9de1-4c5838ecf16a.png

历史版本

1743932517788-a724219a-a675-4b5a-9d4a-c452d6717e48.png

静态文件MD5值判断CMS

1743932534265-0e5b716e-02e2-4833-8a1c-904f04832620.png

开发语言识别

通过HTTP回应头文件

X-Powered-By

Cookie

- ASPSession
- PHPSession
- JSESsion

通过扩展名

.php

.jsp

.asp

1743932747115-8fdd04eb-71bf-4f3a-a69d-637b553a91a9.png1743932753747-14bf6ff1-d255-4993-b137-4f33b6db95e0.png

服务识别

1743932779105-c47fcd95-9bb4-45bb-93eb-b24535a47796.png1743932784491-ab8badb8-37ad-471a-8b12-96aa11b290b0.png

识别工具

whatweb指纹识别工具

whatweb指纹识别工具 识别包括内容管理系统(cms),博客平台中间件,javascript库,web服务框架,网站服务器和嵌入式设备在内的web技术。

whatruns是为chrome开发的一款web指纹识别程序,还可以显示托管的cdn,wordpress插件,wordpress字体等,拥有丰富的插件支持。

wappalyzer

1743932873945-e639b8a0-a7d3-429a-80cf-8d0b029b723c.png

web指纹识别系统

cms识别,js框架,组件容器,代码语言,waf等,管理员可以在web端新增/修改指纹,建
立批量的扫描任务,并且支持多种搜索语法

云悉指纹识别

https://www.yunsee.cn/

目录探测工具

使用自录探测工具对隐藏目录进行探测

目的
探测未经授权资源
探测目录框架
探测备份文件
探测配置文件
常用的目录扫描工具有
御剑
ffuf
dirsearch
dirmap
argo

dirsearch

1743933104073-4ffa055a-e070-4fa9-b39d-544cf251bce1.png1743933107803-439636fe-e23c-4a82-9b84-2954231d0b11.png

1743933116979-4c071609-68d9-496c-bf56-3664357f0a36.png1743933125111-3a55f6e4-55a5-415b-bb49-5e27f33774ef.png1743933129918-5c7c064c-69b6-46a1-93cc-2591d6142656.png1743933137020-aea7caab-4b07-4e80-9aae-451aa5a8f50f.png1743933141716-9215c3ae-d5fb-42b8-8c0c-0fe4a63f7df1.png

其他

1743933154406-98cbec91-4aca-45f5-bb65-c15d6e31fc06.png

缩减目标数量

1743933171757-2848b12e-a404-47c0-8c10-da2705fa9736.png

网站截图

我们可以使用eyewitness对指定的网站列表快速截图。eyewitness使用google的headless刘览器 (selenium),向指定的网站发起请并截图

https://github.com/FortyNorthSecurity/EyeWitness

sudo python/setup/setup.sh
使用
eyewitnesswe --web一 --single sean0101.me -d report
eyewitness --web -f flive.txt -d report repor [--timeout 15]

1743933368854-9864585c-b904-4794-abe5-84676316e73b.png

漏洞收集

借助一些漏洞文库获取漏洞利用的详情,对网站进行漏洞利用

POC与exp

poc
漏洞的概念性验证,只为了证明漏洞的存在。
expliot
利用漏洞,进行攻击,获得最大权限或获取尽量多的数据。

漏洞获取

互联网社区:

http://wiki.bylibrary.cn/

http://0-sec.org/

安全厂商:

https://poc.shuziguanxing.com/#/

https://www.exploit-db.com/

https://qkl.seebug.org/

国家平台:

http://cnnvd.org.cn/

https://www.cnvd.org.cn/

https://cve.mitre.org/

扫描工具:

https://github.com/projectdiscovery/nuclei-templates

https://github.com/knownsec/pocsuite3

搜索引擎:

https://github.com/

https://google.com/

测绘平台:

https://www.shodan.io/

exploit-db

1743933754355-74256909-fb7a-418e-9273-49f4911febef.png

四大功能

1743933759854-0d33f524-3540-4468-8f6e-fe713b18b690.png

Type

1743933785718-068bef39-9751-4f6e-a118-0e35c4a48d32.png

事例

1743933798748-9f2144e7-c508-4dd4-a46b-581b5053503b.png

1743933806398-6f53af3a-93c9-49e2-a507-1288b30d53b2.png

更新: 2025-04-09 14:58:28
原文: https://www.yuque.com/yuhui.net/network/hch28owgtyhzblx5



评论(0)

查看评论列表

暂无评论


发表评论

表情 颜文字

插入代码