#                  第三部分：信息收集

```
百分之九十的情报来自公开来源。剩下的百分之十，即秘密工作，只是更加戏剧化。真正的情报英雄是夏洛克·福尔摩斯，而不是詹姆斯·邦德。
```

#### 一、怎么判断有无waf?

```
什么是waf?
Web应用防火墙（Web Application Firewall，简称WAF）对网站或者App的业务流量进行恶意特征识别及防护，在对流量进行清洗和过滤后，将正常、安全的流量返回给服务器，避免网站服务器被恶意入侵导致性能异常等问题，从而保障网站的业务安全和数据安全。
kali中，root#  wafw00f -a https://www.mcssa.org.mo 
```

|                     |                                                              |      |
| ------------------- | ------------------------------------------------------------ | ---- |
| 常见web应用攻击防护 | 1、防御owasp常见威胁：SQl注入，XSS跨站，websehll上传，后门攻击，命令注入，非法http协议请求，web服务器漏洞攻击，CSRF，核心文件未授权访问，路径穿越，网站被扫描等。2、网站隐身：不对攻击者暴露网站IP地址，避免绕过web应用防火墙直接攻击；3、0day补丁及时更新。4、友好的观察模式。 |      |
| 深度精准防护        | 1、支持全解析多种常见HTTP协议数据格式：任意头部字段，FORM表单，multipart,JSOn,XML ; 2、支持解码常见编码类型：URL，unicode,HEX ,HTML实体编码，java序列化编码，PHP序列化编码， base64编码，UTF-7，uTF-8，混合嵌套编码； 3、支持预处理机制：空格压缩，注释删减，特殊字符处理，向上层多种检测引擎提供更加精确的数据源；4、支持复杂格式数据环境下的检测能力：支持合理的检测逻辑复杂度，避免过多检测数导致的误报，降低误报率，支持多种形式数据编码的自适应解码，避免利用各种编码形式的绕过。 |      |
| CC恶意攻击防护      | 控制单一源IP的访问频率，基于重定向跳转验证、人机识别等。 针对海量慢速请求攻击，根据统计响应码及URL请求分布、异常Referer及User-Agent特征识别，结合网站精准防护规则综合防护。 充分利用大数据安全优势，建立威胁情报与可信访问分析模型，快速识别恶意流量。 |      |
| 精准访问控制        | 提供友好的配置控制台界面，支持IP、URL、Referer、User-Agent等HTTP常见字段的条件组合，配置强大的精准访问控制策略；支持盗链防护、网站后台保护等防护场景。 与Web常见攻击防护、CC防护等安全模块结合，搭建多层综合保护机制；依据需求，轻松识别可信与恶意流量。 |      |
| 虚拟补丁            | 在Web应用漏洞补丁发布和修复之前，通过调整Web防护策略实现快速防护。 |      |
| 攻击事件管理        | 支持对攻击事件、攻击流量、攻击规模的集中管理统计。           |      |
| 灵活性、可靠性      | 支持[负载均衡](https://www.aliyun.com/getting-started/what-is/what-is-load-balance)：以集群方式提供服务，多台服务器负载均衡，支持多种负载均衡策略。 支持平滑扩容：可根据实际流量情况，缩减或增加集群服务器的数量，实现服务能力弹性扩容。 无单点问题：单台服务器宕机或者维修，均不影响正常服务。 |      |
|                     |                                                              |      |

```
Bot 管理是一项维护您网站流量质量的服务。 在您的网站访客中，可能有一部分并非真实用户发起的访问，而是由自动化程序操控的访问请求，我们通常称之为Bot。
```

```
CC（Challenge Collapsar，以下简称CC）防护对单Web应用访问者IP或者Cookie键值进行访问频率限制，超过限制时通过人机识别或阻断访问，阻断页面可自定义内容和类型，满足业务多样化需要。 在大规模CC攻击中，单台傀儡机发包的速率往往远超过正常用户的请求频率。
```

| 基础防护规则 | 基于内置的 防护规则集 ，帮助Web业务防御SQL注入、XSS跨站、代码执行、WebShell上传、命令注入等常见的Web应用攻击。 |
| ------------ | ------------------------------------------------------------ |
| 防护规则组   | 支持默认规则组和自定义规则组。您可以根据业务需要，将规则组关联到基础防护规则模板，帮助网站防御各种常见的Web应用攻击。 |
| 白名单       | 白名单模块允许您根据业务场景，自定义放行具有指定特征的请求，使请求不经过全部或特定防护模块的检测。 |
| CC防护       | 基于内置的通用CC防护算法，缓解产品规格内的高频请求（HTTP Flood）攻击。您也可以通过自定义规则中的频率限制进行更加灵活的自定义CC防护。 |
| 扫描防护     | 扫描防护模块通过识别扫描行为和扫描器特征，阻止攻击者或扫描器对网站的大规模扫描行为，帮助Web业务降低被入侵的风险并减少扫描带来的垃圾流量。 |
| 黑名单       | IP黑名单模块允许您根据业务场景，自定义拦截来自特定IP地址（IPv4或IPv6地址）或地址段的请求。 |
| 自定义       | 自定义规则模块允许您基于自定义的HTTP请求特征或特征组合，对符合条件的请求执行拦截、验证、记录日志等处置。 |
| 限速         | 您也可以选择限速模式，将访问超出一定频率的统计对象（例如IP、会话）加入黑名单，在黑名单有效期内对统计对象执行相应处置。 |
| 自定义响应   | 自定义响应模块允许您自定义客户端请求被WAF拦截时，WAF返回给客户端的拦截页面的样式和内容，包含响应码、响应头、响应体。 |
| 区域封闭     | 一键封禁来自特定区域的客户端IP。                             |
| 网页防篡改   | 帮助您锁定需要保护的网站页面，被锁定的页面在收到请求时，返回已设置的缓存页面。 |
| Bot管理      | 帮助您过滤服务器返回内容（异常页面或关键字）中的敏感信息，如身份证号、银行卡号、电话号码和敏感词汇等，进行脱敏显示。 |
| Bot管理      | 基于四/七层流量指纹识别Bot流量，一键开启防护。               |
| 重要活动保护 | 基于客户端、流量、行为和情报等多维度特征识别机器（Bot）流量，放行搜索引擎等好的Bot，缓解恶意Bot带来的带宽增加、数据爬取、垃圾注册/下单/投票、接口滥刷等风险。 |
| 重要场景保护 | 支持特定时间段的重大活动安全保障，为您提供更加精准和定制化的防御模式。 |
| API          | 支持自动梳理已接入WAF防护的业务的API资产，检测API风险（例如未授权访问、敏感数据过度暴露、内部接口泄露等），并通过报表还原API异常事件，提供详细的风险处理建议和API生命周期管理参考数据。 |

```
ACE XML Gateway
aeSecure
AireeCDN
Airlock
Alert Logic
AliYunDun
Anquanbao
AnYu
Approach
AppWall
Armor Defense
ArvanCloud
ASP.NET Generic
ASPA Firewall
Astra
AWS Elastic Load Balancer
Azion Edge Firewall
Azure Application Gateway
Azure Front Door
Barikode
Barracuda
Beluga CDN
BIG-IP Local Traffic Manager
BinarySec
BitNinja
BlockDos
Bluedon
BulletProof Security Pro
CacheFly CDN
Comodo cWatch
CdnNS Application Gateway
ChinaCache Load Balancer
Chuang Yu Shield
Cloudbric
Cloudflare
Cloudfloor
Cloudfront
CrawProtect
DataPower
DenyAll
Distil
DOSarrest
DotDefender
DynamicWeb Injection Check
Edgecast
Eisoo Cloud Firewall
Expression Engine
BIG-IP AppSec Manager
BIG-IP AP Manager
Fastly
FirePass
FortWeb
GoDaddy Website Protection
Google Cloud App Armor
Greywizard
Huawei Cloud Firewall
HyperGuard
Imunify360
Incapsula
IndusGuard
Instart DX
ISA Server
Janusec Application Gateway
Jiasule
Kona SiteDefender
KS-WAF
keyCDN
LimitLight CDN
LitSpeed
Open-Resty Lua Nginx
Oracle Cloud
Malcare
MaxCDN
Mission Control shield
ModSecurity
MAXSi
Nemesida
NEvisProxy
NetContinuum
NetScalere AppFirewall
Newdefend
NexusGuard Firewall
NinjaFirewall 
NullDDoS Protection
NSFocus
OnMessage Shield
Palo Alto Next Gen Firewall
PerimeterX
pkSecurity IDS
PT Application Firewall
PowerCDN
Prefense
Puhui
Qcloud
Qiniu
Qrator
Reblaze
RSFirewall
RequestValidationMode
Sabre Firewall
Safe3 Web Firewall
Safedog
Safeline
Secking
eEye SecureIIS
SecuPress WP Security
SecureSphere
Secure Entry
SEnginx
Shield Security
ServerDefender VP
Shield Security
SiteGuard
Sitelock
SonicWall
UTM Web protection
Squarespace
SquidProxy IDS 
StackPath
Sucuri CloudProxy
Tencent Cloud Firewall
Teros
Trafficshield
TransIP Web Firewall
URLMaster SecurityCheck
URLScan
Varnish
VirusDie
Wallarm
WatchGuard
WebARX
WebKnight
Webland
RayWAF
WebSEAL
WebTotem
West263 CDN
Wordfence
WP Cerber Security
WTS-WAF
360WangZhanBao
XLabs Security WAF
Xuanwudun
Yundun
Yunduo
Yunjiasu
YXLink
Zenedge
ZScaler
Envoy
```

#### 二、有无CDN与真实IP

```
CDN是如何工作的呢？让我们先看看没有CDN服务时，一个网站是如何向用户提供服务的。
　　今天我们看到的网站系统基本上都是基于B/S架构的。B/S架构，即Browser-Server（浏览器 服务器）架构，是对传统C/S架构的一种变化或者改进架构。在这种架构下，用户只需使用通用浏览器，主要业务逻辑在服务器端实现。B/S架构，主要是利用了不断成熟的WWW浏览器技术，结合浏览器的多种Script语言（VBScript、JavaScript等）和ActiveX等技术，在通用浏览器上实现了C/S架构下需要复杂的软件才能实现的强大功能。
　　客户端---DNS域名解析服务器----客户端-----服务器端
①用户在自己的浏览器中输入要访问的网站域名。
②浏览器向本地DNS服务器请求对该域名的解析。
③本地DNS服务器中如果缓存有这个域名的解析结果，则直接响应用户的解析请求。
④本地DNS服务器中如果没有关于这个域名的解析结果的缓存，则以递归方式向整个DNS系统请求解析，获得应答后将结果反馈给浏览器。
⑤浏览器得到域名解析结果，就是该域名相应的服务设备的IP地址。
⑥浏览器向服务器请求内容。
⑦服务器将用户请求内容传送给浏览器。
```

```
在网站和用户之间加入CDN以后，用户不会有任何与原来不同的感觉
①当用户点击网站页面上的内容URL，经过本地DNS系统解析，DNS系统会最终将域名的解析权交给CNAME指向的CDN专用DNS服务器。
②CDN的DNS服务器将CDN的全局负载均衡设备IP地址返回用户。
③用户向CDN的全局负载均衡设备发起内容URL访问请求。
④CDN全局负载均衡设备根据用户IP地址，以及用户请求的内容URL，选择一台用户所属区域的区域负载均衡设备，告诉用户向这台设备发起请求。
⑤区域负载均衡设备会为用户选择一台合适的缓存服务器提供服务，选择的依据包括：根据用户IP地址，判断哪一台服务器距用户最近；根据用户所请求的URL中携带的内容名称，判断哪一台服务器上有用户所需内容；查询各个服务器当前的负载情况，判断哪一台服务器尚有服务能力。基于以上这些条件的综合分析之后，区域负载均衡设备会向全局负载均衡设备返回一台缓存服务器的IP地址。
⑥全局负载均衡设备把服务器的IP地址返回给用户。
⑦用户向缓存服务器发起请求，缓存服务器响应用户请求，将用户所需内容传送到用户终端。如果这台缓存服务器上并没有用户想要的内容，而区域均衡设备依然将它分配给了用户，那么这台服务器就要向它的上一级缓存服务器请求内容，直至追溯到网站的源服务器将内容拉到本地。
　　DNS服务器根据用户IP地址，将域名解析成相应节点的缓存服务器IP地址，实现用户就近访问。使用CDN服务的网站，只需将其域名解析权交给CDN的GSLB设备，将需要分发的内容注入CDN，就可以实现内容加速了。
```

![image-20241111101330432](C:\Users\Yoga 370\AppData\Roaming\Typora\typora-user-images\image-20241111101330432.png)

```
使用CDN会极大地简化网站的系统维护工作量，网站维护人员只需将网站内容注入CDN的系统，通过CDN部署在各个物理位置的服务器进行全网分发，就可以实现跨运营商、跨地域的用户覆盖。
由于CDN将内容推送到网络边缘，大量的用户访问被分散在网络边缘，不再构成网站出口、互联互通点的资源挤占，也不再需要跨越长距离IP路由了。
```

    ----IP 反查域名
    https://reverse-ip.whoisxmlapi.com/
    https://viewdns.info/reverseip/
    https://search.dnslytics.com/
    https://tool.chinaz.com/same
    https://dns.aizhan.com/
    ----域名查IP
    http://www.webkaka.com/ping.aspx
    fofa
    shodan
    其他工具：
    http://www.webkaka.com/ping.aspx 海外ping

![image](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/7249144071/0f21fdd25cxn9.svg)

```
nslookup angor.edu.kh
```

```
CloakQuest3r 绕过防护，获取真实IP，爆破子域名的工具
github.com/spyboy-products/cloakquest3r
pip install -r requirements.txt 
用法：python cloakquest3r.py "www.example.com"
```

```
                                        绕过 CDN 查找网站真实 IP的方法：
1、查看 IP 与 域名绑定的历史记录，可能会存在使用 CDN 前的记录，
相关查询网站有：
https://dnsdb.io/zh-cn/ ###DNS 
查询https://x.threatbook.cn/ ###微步在线
http://toolbar.netcraft.com/site_report?url= ###在线域名信息查询
http://viewdns.info/ ###DNS、IP 等查询
https://tools.ipip.net/cdn.php ###CDN 查询 IP
2、利用SecurityTrails平台，攻击者就可以精准的找到真实原始 IP。他们只需在搜索字段中输入网站域名，然后按 Enter 键即可，这时“历史数据”就可以在左侧的菜单中找到。
3、查询子域名
---微步在线(https://x.threatbook.cn/)
上文提到的微步在线功能强大，黑客只需输入要查找的域名(如 baidu.com)，点击子域名选项就可以查找它的子域名了，但是免费用户每月只有 5 次免费查询机会
4、谷歌搜索
5、subdomain搜索子域名的工具，通过子域名搜索IP地址
6、网络空间引擎搜索法
常见的有以前的钟馗之眼，shodan，fofa搜索。以 fofa 为例，只需输入：title:“网站的 title 关键字”或者 body：“网站的 body 特征”就可以找出 fofa 收录的有这些关键字的 ip 域名，很多时候能获取网站的真实 ip，
7、利用 SSL 证书寻找真实原始 IP
原理：
    假如你在 xyz123boot.com 上托管了一个服务，原始服务器 IP 是 136.23.63.44。 而 CloudFlare 则会为你提供 DDoS 保护，Web 应用程序防火墙和其他一些安全服务，以保护你的服务免受攻击。为此，你的 Web 服务器就必须支持 SSL 并具有证书，此时 CloudFlare 与你的服务器之间的通信，就像你和 CloudFlare 之间的通信一样，会被加密（即没有灵活的 SSL 存在）。这看起来很安全，但问题是，当你在端口 443（https://136.23.63.44:443）上直接连接到IP时，SSL证书就会被暴露。
    此时，如果攻击者扫描 0.0.0.0/0，即整个互联网，他们就可以在端口 443 上获取在 xyz123boot.com 上的有效证书，进而获取提供给你的 Web 服务器 IP。
    目前 Censys.com 工具就能实现对整个互联网的扫描，Censys 是一款用以搜索联网设备信息的新型搜索引擎，安全专家可以使用它来评估他们实现方案的安全性，而黑客则可以使用它作为前期侦查攻击目标、收集目标信息的强大利器。Censys 搜索引擎能够扫描整个互联网，Censys 每天都会扫描 IPv4 地址空间，以搜索所有联网设备并收集相关的信息，并返回一份有关资源（如设备、网站和证书）配置和部署信息的总体报告。
    而攻击者唯一需要做的就是把上面用文字描述的搜索词翻译成实际的搜索查询参数。
    xyz123boot.com 证书的搜索查询参数为：parsed.names：xyz123boot.com
    只显示有效证书的查询参数为：tags.raw：trusted
    攻击者可以在 Censys 上实现多个参数的组合，这可以通过使用简单的布尔逻辑来完成。
    组合后的搜索参数为：parsed.names: xyz123boot.com and tags.raw: trusted
8、利用 HTTP 标头寻找真实原始 IP
    借助 SecurityTrails 这样的平台，任何人都可以在茫茫的大数据搜索到自己的目标，甚至可以通过比较 HTTP 标头来查找到原始服务器。特别是当用户拥有一个非常特别的服务器名称与软件名称时，攻击者找到你就变得更容易。如果要搜索的数据相当多，如上所述，攻击者可以在 Censys 上组合搜索参数。假设你正在与 1500 个 Web 服务器共享你的服务器 HTTP 标头，这些服务器都发送的是相同的标头参数和值的组合。而且你还使用新的 PHP 框架发送唯一的 HTTP 标头（例如：X-Generated-Via：XYZ 框架），目前约有 400 名网站管理员使用了该框架。而最终由三个服务器组成的交集，只需手动操作就可以找到了 IP，整个过程只需要几秒钟。
    例如，Censys 上用于匹配服务器标头的搜索参数是 80.http.get.headers.server :，查找由 CloudFlare 提供服务的网站的参数如下：80.http.get.headers.server:cloudflare
9、利用网站返回的内容寻找真实原始 IP
如果原始服务器 IP 也返回了网站的内容，那么可以在网上搜索大量的相关数据。
浏览网站源代码，寻找独特的代码片段。在 JavaScript 中使用具有访问或标识符参数的第三方服务（例如 Google Analytics，reCAPTCHA）是攻击者经常使用的方法。
以下是从 HackTheBox 网站获取的 Google Analytics 跟踪代码示例：
ga（'create'，'UA-93577176-1'，'auto'）;可以使用 80.http.get.body：参数通过 body/source 过滤 Censys 数据，不幸的是，正常的搜索字段有局限性，但你可以在 Censys 请求研究访问权限，该权限允许你通过 Google BigQuery 进行更强大的查询。
Shodan 是一种类似于 Censys 的服务，也提供了 http.html 搜索参数。
搜索示例：https://www.shodan.io/search?query=http.html%3AUA-32023260-1
10、使用国外主机解析域名
11、网站漏洞查找
---目标敏感文件泄露，例如：phpinfo 之类的探针、GitHub 信息泄露等。
---XSS 盲打，命令执行反弹 shell，SSRF 等。
12、网站邮件订阅查找
RSS 邮件订阅，很多网站都自带 sendmail，会发邮件给我们，此时查看邮件源码里面就会包含服务器的真实 IP 了。
13、用 Zmap 扫全网
需要找 xiaix.me 网站的真实 IP，我们首先从 apnic 获取 IP 段，然后使用 Zmap 的 banner-grab 扫描出来 80 端口开放的主机进行 banner 抓取，最后在 http-req 中的 Host 写 xiaix.me。
14、F5 LTM 解码法
当服务器使用 F5 LTM 做负载均衡时，通过对 set-cookie 关键字的解码真实 ip 也可被获取，例如：Set-Cookie: BIGipServerpool_8.29_8030=487098378.24095.0000，先把第一小节的十进制数即 487098378 取出来，然后将其转为十六进制数 1d08880a，接着从后至前，以此取四位数出来，也就是 0a.88.08.1d，最后依次把他们转为十进制数 10.136.8.29，也就是最后的真实 ip。
```

```
绕过CDN后，能否绕过WAF？
绕过CDN找到真实IP，并不一定就能直接绕过WAF。 这是一个常见的误解。

为什么这么说？
WAF部署位置多样： WAF的部署位置可以是多种多样的，不局限于CDN节点。除了在CDN节点上部署WAF之外，还可以在服务器端、云端等位置部署。
WAF功能多样： WAF的功能不仅仅是拦截常见的攻击，还包括诸如流量清洗、DDoS防护、入侵检测等功能。
WAF规则不断更新： WAF的规则是不断更新的，攻击者可能发现的绕过方法，很快就会被WAF厂商修复。
绕过CDN后，可能遇到的情况
服务器端WAF： 即使绕过了CDN，如果服务器端部署了WAF，攻击仍然会被拦截。
云WAF： 如果使用了云WAF服务，即使找到了真实IP，也可能无法绕过云端的防护。
其他防护措施： 除了WAF，还有其他安全防护措施，比如防火墙、入侵检测系统等，这些措施
```

#### 三、域名信息

       域名解析是指将域名映射为服务器IP的过程。
       互联网上用户访问某个网站时，通常要定位到具体的目标服务器。
       由于目标服务器均为IP，不便于用户记忆，也不易调整和维护，因此引入域名概念，用户仅记住域名即可。
       而由域名映射到IP的过程，就是域名解析。
       例如www.scmm.mo就是一个域名，它对应一个IP地址202.175.81.84。
       有了域名，网站调整服务器ip，只需要调整域名解析记录即可。
       比如：原来www.scmm.mo->202.175.81.84 ,直接改成：www.scmm.mo->202.175.81.99
       
    为什么要解析域名？
        为了确保外部用户能通过域名访问到正确的服务器IP地址，从而访问到正确的网站内容，需要网站先完成域名解析。 
    
    域名解析中的几种常见记录类型有哪些？
        CNAME记录：CNAME记录即别名记录，一个域名在具体某个地区一般只会有一个CNAME记录，代表该域名在该地区的解析权将授权给另一个域名。
        CDN加速原理中，即是通过CNAME记录，完成客户域名到CDN厂商域名的解析授权过程。
         
         A记录：A (Address) 记录是用来指定域名对应的IP地址记录，是最常见的域名解析记录类型，
         一个域名可以有多个A记录，即指向多个服务器IP。
         如果网站未进行CDN加速，则其域名解析结果直接为A记录。
         
        CNAME记录与A记录的关系：
            CNAME记录只是一个别名的过程记录，最终仍需要通过A记录解析到具体服务器IP，因此用户访问CDN加速后的域名，往往要先经过CNAME记录再到A记录后，才能完成整个DNS解析过程。
            使用CNAME后，如果网站未进行CDN加速，也可以通过将多个域名均CNAME至同个地址，调整服务器IP时只需调整该CNAME域名A记录即可，运营维护会更为简单方便；
        
        如果网站有通过CNAME将域名解析授权至CDN，则可以起到隐藏真实网站IP（即CDN的源站）的作用，更好的保护源站不受外部攻击。
        
    查询网址：
    https://www.whois.com/whois
    https://who.cx/arcsp.org
    https://whois.chinaz.com
    -----------------------------------------------------------------------------------
    nslookup 是一个用于查询域名系统 (DNS) 的命令行工具。简单来说，它可以帮你找到一个域名对应的 IP 地址，或者反过来，根据一个 IP 地址找到对应的域名。
    
    nslookup 的作用
    域名解析： 将人们容易记忆的域名（比如 www.baidu.com）转换为计算机能理解的 IP 地址（比如 14.215.177.38）。
    故障排查： 当你无法访问某个网站时，可以使用 nslookup 检查域名解析是否正确。
    DNS 信息查询： 可以查询各种 DNS 记录，比如 MX 记录（邮件服务器）、NS 记录（授权域名服务器）等。
    nslookup <域名>
    例如：
    nslookup www.baidu.com
    执行这条命令后，nslookup 会返回 www.baidu.com 对应的 IP 地址。
    
    常用选项
    -type=：指定查询的记录类型，例如：
    Bash
    nslookup -type=MX google.com  # 查询 Google 的邮件服务器
    请谨慎使用代码。
    
    -query=：指定查询的记录类型，与 -type 相同。
    server=：指定要查询的 DNS 服务器。
    例子
    Bash
    # 查询 www.example.com 的 A 记录（IPv4 地址）
    nslookup www.example.com
    
    # 查询 www.example.com 的 MX 记录（邮件交换记录）
    nslookup -type=MX www.example.com
    
    # 查询 8.8.8.8 这个 IP 地址对应的域名
    nslookup 8.8.8.8
    请谨慎使用代码。
    
    nslookup 的交互模式
    在命令行中直接输入 nslookup 即可进入交互模式。在交互模式下，你可以输入各种命令来查询 DNS 信息。

#### 四、子域名

```
1、为什么收集子域名？
在渗透测试中，子域名收集是一个至关重要的环节，其原因主要如下：
		扩大攻击面： 子往往包含了主站没有的应用、服务或数据。这些子域名可能存在配置错误、漏洞等安全问题，从而为攻击者提供更多的攻击入口。
		发现隐藏资产： 一些组织可能存在未公开的子域名，这些子域名上的应用或服务可能没有经过充分的安全评估，容易受到攻击。
		了解目标网络结构： 通过收集子域名，可以帮助渗透测试人员更好地了解目标网络的结构和布局，为后续的渗透测试提供有价值的信息。

2、如何收集子域名？
子域名收集的方法有很多，可以分为被动式和主动式两种：
被动式收集
	搜索引擎搜索： 利用搜索引擎的高级搜索语法，搜索目标组织的子域名。例如，在Google中搜索 "site:*[移除了无效网址]" [移除了无效网址]下的所有子域名。
	子域名接管平台： 利用一些专门的子域名接管平台，如CertSpotter、Sublist3r等，通过搜索证书透明度日志、DNS历史记录等方式发现子域名。
	DNS历史记录查询： 使用工具如Wayback Machine、Archive.org等，查看目标域名的历史DNS记录，发现曾经存在的子域名。
	开源情报收集（OSINT）：通过搜索社交媒体、博客、新闻等渠道，收集与目标组织相关的子域名信息。

主动式收集
	字典攻击： 使用包含大量子域名组合的字典，对目标域名进行爆破。
	子域名发现工具： 使用专业的子域名发现工具，如Amass、Subfinder、Knock等，通过多种技术手段发现子域名。
	端口扫描： 对目标IP范围进行端口扫描，发现开放的端口，并通过端口信息推测可能的子域名。

子域名收集工具
	Amass: 功能强大、高度可定制的子域名枚举工具。
	Subfinder: 快速高效的子域名发现工具。
	Knock: 基于DNS协议的子域名发现工具。
	Sublist3r: 通过多种来源收集子域名的工具。
	Feroxbuster: 快速的Web目录扫描和子域名枚举工具。
	dnsrecon: 基于DNS的侦察工具。
	site:www.xxx.com

收集子域名后的下一步
在收集到子域名后，渗透测试人员可以进行以下工作：
	验证子域名： 对收集到的子域名进行验证，确认其真实性。
	端口扫描： 对子域名进行端口扫描，发现开放的端口和服务。
	漏洞扫描： 对子域名进行漏洞扫描，发现存在的漏洞。
	目录扫描： 对子域名进行目录扫描，发现敏感文件或目录。
	Web应用测试： 对子域名上的Web应用进行渗透测试。

总结：子域名收集是渗透测试中的重要一环，通过收集子域名，可以扩大攻击面，发现更多潜在的漏洞。选择合适的方法和工具，并结合其他技术手段，可以更全面地收集目标组织的子域名信息。
```

```
https://github.com/owasp-amass/amass/releases/tag/v4.2.0
AMASS是一款高性能开源工具，旨在深入映射攻击面和发现外部资产。它利用各种开源情报收集和主动侦察技术来识别目标组织的子域、IP 地址和其他有价值的信息。
/usr/share/amass
AMASS 的主要特点：
全面的数据源：AMASS 利用各种数据源，包括 DNS 记录、证书透明度日志、WHOIS 数据库等。
主动侦察技术：它采用暴力破解、排列和单词表等技术来发现隐藏的子域。
高级过滤和排序：AMASS 允许您根据各种标准（例如域、IP 地址或服务）过滤和排序结果。
与其他工具集成：AMASS 可以轻松与其他安全工具和框架集成，例如 Burp Suite、Metasploit和 Recon-ng。
可定制的配置：您可以通过配置文件定制 AMASS 的行为，从而根据您的特定需求进行定制。
1. 子域名发现
目标： 发现目标公司所有可能的子域名，以便进一步进行端口扫描和漏洞扫描。
命令：
amass enum -d target.com -o subdomains.txt
-d target.com: 指定目标域名。
-o subdomains.txt: 将结果输出到subdomains.txt文件中。

指定DNS服务器： -dns server1,server2
使用字典： -brute -w wordlist.txt
递归搜索： -min-for-recursive 2

2. 资产发现
目标： 发现目标公司所有的IP地址和CNAME记录，以便了解其网络架构。
命令：
amass enum -d target.com -o assets.json
-o assets.json: 将结果输出为JSON格式，方便后续分析。

3. 发现隐藏子域名
目标： 发现通过证书透明度日志等方式隐藏的子域名。
命令：
amass enum -d target.com -passive
-passive: 只使用被动数据源，如证书透明度日志。

4、端口扫描： masscan -iL subdomains.txt -p 80,443,8080 --rate 1000
```

```
获取API接口的网址：
AlienVault, BinaryEdge, BufferOver, BuiltWith, C99, Censys, Chaos, CIRCL, DNSDB, DNSTable, FacebookCT, GitHub, HackerOne, HackerTarget, NetworksDB, PassiveTotal, RapidDNS, Riddler, SecurityTrails, Shodan, SiteDossier, Spyse, Twitter, Umbrella, URLScan, VirusTotal, WhoisXML, ZETAlytics, Cloudflare
将API信息添加到配置文件中
输入命令：amass enum -d followhaklukeontwitter.com -config ./myconfigfile.yaml

```

#### 五、C段与旁站

```
C段
C段指的是IP地址的第三个字节。比如，IP地址3.83.228.23中的就是C段。同3.83.228.34一个C段内的所有IP地址都属于同一个网络，它们之间通信通常不需要经过路由器。

C段扫描的意义:

发现同网段设备： 通过扫描C段内的所有IP地址，可以发现与目标服务器同网段的其他设备，如服务器、路由器、交换机等。
扩大攻击面： 如果能获取同网段其他设备的权限，就可以利用这些设备作为跳板，进一步渗透目标网络。
发现隐藏服务： 有些服务可能不在默认端口上开放，通过扫描C段可以发现这些隐藏的服务。

旁站
旁站是指与目标网站在同一台服务器上的其他网站。它们共享相同的IP地址和网络环境。

旁站的意义:
扩大攻击面： 如果能找到目标网站的旁站，并成功入侵，就有可能通过旁站获取目标网站的权限。
发现隐藏信息： 旁站可能包含目标网站的一些敏感信息，如备份文件、配置信息等。

C段和旁站的关系
C段扫描可以帮助我们发现旁站。如果一个网站的IP地址是已知的，我们可以通过扫描其C段内的其他IP地址来查找可能的旁站。

为什么要关注C段和旁站？
扩大攻击面： 通过发现C段内的其他设备和旁站，可以为渗透测试提供更多的攻击入口。
发现隐藏信息： 有可能发现目标网站的隐藏服务或敏感信息。
绕过防火墙： 如果目标网站的防火墙比较严格，可以尝试通过旁站或同网段的其他设备进行渗透。
如何查找C段和旁站？
搜索引擎： 使用搜索引擎的site命令或相关工具，搜索目标网站的IP地址，可能找到一些旁站。
C段扫描工具： 使用Nmap、masscan等工具对目标IP的C段进行扫描。
旁站查询工具： 使用专门的旁站查询工具，如SubDomainsBrute、KnockPI。
```

```
如何查找C段和旁站
C段: 指IP地址的第三个字节，同一C段内的IP地址属于同一个网络。
旁站: 指与目标网站在同一台服务器上的其他网站。
查找C段和旁站的方法
1. Whois查询
作用: 通过Whois查询可以获取目标网站的IP地址，以及该IP所在的服务器信息，从而推断出可能存在的C段范围。
工具:
在线Whois查询工具: 站长工具等。
命令行工具: 如whois、nslookup。
示例:
Bash
whois www.example.com
请谨慎使用代码。

2. C段扫描
作用: 在获取目标IP的基础上，对该IP所在的C段范围进行扫描，发现其他存活主机。
工具:
Nmap: 功能强大、灵活的网络扫描工具。
masscan: 高速IP端口扫描器。
示例:
Bash
nmap -sn 192.168.1.0/24
请谨慎使用代码。

其中，192.168.1.0/24表示扫描192.168.1.0这个C段的所有IP。
3. 旁站查询工具
作用: 专门用于查找目标网站的旁站。
工具:
SubDomainsBrute: 基于字典的子域名爆破工具。
KnockPI: 利用DNS历史记录查找子域名。
在线旁站查询平台: 如ChaBuDuo、ZoomEye等。
示例:
Bash
subfinder -d example.com
请谨慎使用代码。

4. 搜索引擎
作用: 利用搜索引擎的site命令或相关语法，查找与目标网站同IP的网站。
示例:
site:192.168.1.100
5. Fofa等网络空间搜索引擎
作用: 通过Fofa等网络空间搜索引擎，根据IP、端口、标题等信息进行搜索，发现目标网站的旁站和同网段设备。
示例:
title="目标网站关键词" ip="目标网站IP"
注意事项
合法性: 仅限于授权的渗透测试，未经授权的扫描是违法的。
效率: C段扫描和旁站查询可能耗费较长时间，尤其是对于较大的C段。
准确性: 搜索结果可能包含误报，需要进一步验证。
隐蔽性: 在进行扫描时，注意隐藏自己的踪迹，避免被发现。
总结
通过以上方法的组合，可以有效地发现目标网站的C段和旁站。在实际渗透测试中，根据具体情况选择合适的工具和方法。
```

#### 六、中间件

```
--------------------如何查询网站使用的中间件
	了解网站使用的中间件对于渗透测试、安全评估以及技术分析都非常有帮助。 不同的中间件有不同的漏洞和配置方式，掌握目标网站的中间件信息，可以更有针对性地进行攻击或防御。
常用方法
1. 浏览器开发者工具
	查看响应头: 在浏览器开发者工具的Network面板中，查看HTTP响应头中的Server字段，有时会直接显示服务器软件或中间件的名称。
	查看HTML源代码: 在HTML源代码中寻找一些特定的注释、版本号等信息，可能包含中间件的蛛丝马迹。
2. Wappalyzer等浏览器插件
	自动识别: 安装Wappalyzer等浏览器插件，访问目标网站后，插件会自动识别并显示网站使用的技术栈，包括中间件、编程语言、数据库等。
3. 命令行工具
	WhatWeb: 一款开源的Web指纹识别工具，可以识别网站使用的技术、框架、CMS、编程语言等，包括中间件。
	Nmap: 网络扫描工具，通过探测端口和服务 banner，可以获取一些中间件信息。
4. 手动分析
	错误信息: 通过构造一些错误请求，观察返回的错误页面，有时会包含中间件的版本信息或堆栈跟踪。
	目录扫描: 尝试访问常见的管理后台路径，如/admin、/manager等，如果存在，可能直接暴露中间件的信息。
	文件包含漏洞: 如果存在文件包含漏洞，可以尝试包含一些系统文件，获取服务器配置信息。
	示例：使用Wappalyzer
	安装插件: 在Chrome或Firefox浏览器中搜索并安装Wappalyzer插件。
	访问网站: 打开目标网站。
	查看结果: 插件会在浏览器界面显示识别出的技术栈信息，包括使用的中间件。
5、其他方法
	Fofa等信息收集平台: 通过搜索引擎或信息收集平台，搜索目标网站的指纹信息，可能包含中间件信息。
	漏洞扫描: 使用漏洞扫描工具，扫描目标网站，通过漏洞特征判断使用的中间件。
	源码分析: 如果能获取网站源码，通过分析代码可以准确地确定使用的中间件。
	https://whatcms.org/ 查询中间件、指纹信息
	
-------------------------渗透测试中的中间件：连接应用与系统的桥梁
什么是中间件？
	在IT系统中，中间件是一种软件，它连接了应用程序和操作系统。简单来说，中间件就像是应用程序和操作系统之间的“中间人”，负责传递数据、协调工作。

中间件在渗透测试中的重要性
	攻击面扩大： 中间件的配置不当、漏洞的存在，都可能成为攻击者入侵系统的入口。
	数据集中： 中间件往往处理大量的业务数据，一旦被攻破，可能导致数据泄露。
	业务影响大： 中间件是很多应用系统的核心组件，一旦受到攻击，可能导致整个业务系统瘫痪。

常见的中间件类型及其漏洞
	1、应用服务器： 如Tomcat、WebLogic、JBoss等。
   漏洞类型： 远程代码执行、文件上传、SQL注入、SSRF等。
	2、消息中间件： 如ActiveMQ、RabbitMQ等。
   漏洞类型： 未授权访问、拒绝服务攻击、消息注入等。
	3、数据库中间件： 如Oracle Data Guard、MySQL Proxy等。
   漏洞类型： SQL注入、越权访问、配置错误等。

渗透测试中针对中间件的攻击手法
    1、漏洞扫描： 使用Nessus、OpenVAS等工具扫描中间件存在的漏洞。
    2、弱口令攻击： 尝试默认口令或弱口令登录后台管理系统。
    3、目录遍历： 寻找敏感文件或目录。
    4、文件上传漏洞： 上传恶意文件获取WebShell。
    5、SQL注入： 通过构造恶意SQL语句获取数据库信息或执行任意代码。
    6、命令注入： 通过构造恶意命令执行系统命令。
    7、SSRF漏洞： 利用SSRF漏洞访问内部网络资源。
    8、业务逻辑漏洞： 绕过业务逻辑，进行非法操作。

中间件安全防护建议
    1、及时更新补丁： 及时修复中间件存在的漏洞。
    2、加强访问控制： 限制对中间件的访问权限。
    3、定期安全扫描： 定期对中间件进行安全扫描。
    4、配置加固： 合理配置中间件，关闭不必要的服务和端口。
    5、输入验证： 对用户输入进行严格过滤，防止注入攻击。
    6、日志审计： 记录中间件的访问日志，以便分析和追溯。
    7、WAF部署： 部署Web应用防火墙，防护常见Web攻击。


常见的中间件类型
    1、应用服务器：
    Tomcat: Java Web应用服务器，广泛应用于各种Java项目。
    WebLogic: Oracle公司的一款Java EE应用服务器，在企业级应用中广泛使用。
    JBoss: 一个基于J2EE的开放源代码的应用服务器。
    WebSphere: IBM公司的一款Java EE应用服务器，主要用于大型企业级应用。
    2、消息中间件：
    RabbitMQ: 一个开源的消息代理软件，实现了高级消息队列协议（AMQP）。
    ActiveMQ: Apache软件基金会的一个开源的消息中间件。
    Kafka: 一个高吞吐量的分布式发布-订阅消息系统。
    3、数据库中间件：
    MySQL Proxy: MySQL的代理服务器，提供负载均衡、读写分离等功能。
    Sharding-JDBC: 一个基于JDBC的轻量级Java框架，用于实现数据库分片。
    ESB（企业服务总线）：
    Mule ESB: 一个轻量级的企业服务总线，用于连接不同的系统和应用程序。
    Apache ServiceMix: 一个开源的ESB，基于OSGi模块化系统。

渗透测试工具
    1、Nessus、OpenVAS: 漏洞扫描器
    2、Burp Suite: Web安全测试工具
    3、Metasploit: 漏洞利用框架
    4、Nmap: 网络扫描器
    5、Nikto: Web服务器扫描器
总结
	渗透测试中对中间件的攻击通常是针对其配置、代码实现、版本更新等方面存在的漏洞。攻击者可以利用这些漏洞，获取服务器的控制权，进而对整个系统造成危害。
```

#### 七、操作系统

```
Windows渗透测试常用命令总结
	Windows系统作为众多组织机构的核心操作系统，在渗透测试中占据重要地位。了解并熟练掌握Windows系统下的渗透测试命令，对于安全评估和漏洞挖掘至关重要。
1、系统信息收集
	ipconfig /all: 获取IP地址、子网掩码、默认网关、DNS服务器等网络配置信息。
	systeminfo: 获取系统详细信息，包括操作系统版本、主机名、安装日期等。
	net view /domain: 查看域内所有共享资源。
	netstat -an: 查看网络连接状态。
	route print: 查看路由表。
	quser: 查看当前登录用户。
	whoami: 查看当前登录用户身份。
2、文件系统操作
	dir: 显示目录内容。
	cd: 改变当前目录。
	copy: 复制文件。
	move: 移动文件。
	del: 删除文件。
	ren: 重命名文件。
	attrib: 显示或更改文件属性。
3、注册表操作
	regedit: 打开注册表编辑器。
	reg query: 查询注册表信息。
	reg add: 添加注册表项。
	reg delete: 删除注册表项。
4、远程连接
	mstsc: 连接远程桌面。
	psexec: 执行远程命令。
	net use: 连接共享。
5、权限提升
	runas: 以其他用户身份运行程序。
	at: 计划任务。
	sc: 管理服务。
6、其他常用命令
	tasklist: 查看正在运行的任务。
	netstat -ano: 查看端口占用情况。
	net user: 管理用户账户。
	net localgroup: 管理本地组。
	shutdown: 关闭或重启系统。
7、渗透测试工具命令
	PowerShell: 功能强大的自动化脚本工具，用于执行各种渗透测试任务。
	Mimikatz: 用于提取Windows系统中的明文密码和哈希值。
	Empire: 后渗透框架，用于在目标主机上建立持久性。
	Cobalt Strike: 商业化的渗透测试框架，功能强大。
注意：
	权限提升： 在进行渗透测试时，往往需要提升权限才能获取更多信息。
	日志审计： 渗透测试过程中会产生大量的日志，需要及时清理或伪装。
	合法授权： 渗透测试必须在合法授权的情况下进行，未经授权的渗透行为是违法的。
--------------------------------------------------------------------------------------
    Linux作为渗透测试人员的首选操作系统，提供了丰富的命令行工具，可以帮助我们进行信息收集、漏洞扫描、权限提升等一系列渗透测试活动。下面就为大家详细介绍一些常用的Linux渗透测试命令。
1、信息收集类
	nmap: 网络扫描工具，用于探测主机、服务和操作系统。
	nmap -sS -sV -O <目标IP>：进行TCP SYN扫描、版本探测和操作系统识别。
	traceroute: 追踪数据包路径，用于网络拓扑发现。
	whois: 查询域名和IP地址的相关信息。
	dig: DNS查询工具，用于解析域名。
	netcat: 网络工具，可以用于端口扫描、数据传输等。
2、文件系统操作类
	find: 在文件系统中查找文件。
	find / -name "*.php" -print：查找所有php文件。
	grep: 在文件中搜索文本。
	grep "password" /etc/passwd：在passwd文件中搜索"password"字符串。
	cat: 显示文件内容。
	less: 分页显示文件内容。
	head: 显示文件的前几行。
	tail: 显示文件的后几行。
3、权限提升类
	sudo: 以其他用户身份执行命令。
	su: 切换用户。
	setuid: 设置文件所有者的UID，使执行该文件的用户具有文件所有者的权限。
	setgid: 设置文件所有者的GID，使执行该文件的用户具有文件所有组的权限。
4、漏洞利用类
	exploitdb: 一个漏洞利用程序数据库，包含各种漏洞的利用代码。
	msfconsole: Metasploit框架的控制台，用于进行漏洞利用、渗透测试等。
5、其他常用命令
	ssh: 安全远程登录。
	scp: 安全远程复制文件。
	wget: 下载文件。
	curl: 传输数据。
	vim/nano: 文本编辑器。
	awk/sed: 文本处理工具。

渗透测试流程中的应用示例
1、信息收集阶段:
	使用nmap扫描目标主机，获取开放端口和服务信息。
	使用whois查询域名信息，了解目标组织的背景。
2、漏洞发现阶段:
	使用exploitdb查找目标系统存在的漏洞。
	使用msfconsole对漏洞进行验证和利用。
3、权限提升阶段:
	使用sudo、su等命令提升权限。
	利用系统漏洞获取root权限。
4、后门安装阶段:
	使用netcat、nc等工具建立反向连接。
	使用msfvenom生成后门程序。
	如果内部条件苛刻，可以自行编写python脚本，本地化运行。
```

#### 八、web框架

```
    Web框架（Web framework）是一种开发框架，用来支持动态网站、网络应用和网络服务的开发。大多数的web框架提供了一套开发和部署网站的方式，也为web行为提供了一套通用的方法。web框架已经实现了很多功能，开发人员使用框架提供的方法并且完成自己的业务逻辑，就能快速开发web应用了。
1、客户端Web框架
    开发人员使用客户端Web框架来创建和管理用户界面，它们只处理Web应用程序的可见部分，客户端框架支持使用单页应用程序创建多个动画元素。每个客户端框架都有自己的一组功能和应用程序。他们中的大多数使用 JavaScript 语言。一些流行的客户端框架是 Ember JS、Angular JS、React JS 等。
2、服务器端Web框架
    服务器端Web开发框架在Web应用程序的业务逻辑后面工作，他们可以处理 HTTP 请求、提高安全性、管理数据库、路由 URL，并通过创建输出数据来简化开发过程。此外，它们提供了不同的库和工具，以使程序员更快、更轻松地进行Web开发。一些最流行的服务器端Web框架是 Laravel、Django、Spring、Expressjs 等。

-------------------------------PHP框架
laraval介绍：
	基于MVC架构，可以满足诸如事件处理、用户身份验证等各种需求，同时通过包管理实现模块化和可扩展的代码，并且对数据库管理有着健壮的支持。
漏洞：
    1.  Laravel 配置文件泄露
    2.  Laravel <= 8.4.2 存在远程代码执行漏洞
    3.  Laravel 存在SQL注入漏洞
    4.  Laravel 反序列化漏洞

-------------------------------java框架：
1、Spring框架
漏洞：
        1.  Spring Security OAuth2 远程命令执行漏洞
        2.  Spring WebFlow 远程代码执行漏洞
        3.  Spring Data Rest 远程命令执行漏洞
        4.  Spring Messaging 远程命令执行漏洞
        5.  Spring Data Commons 远程命令执行漏洞
        6.  Spring Framework中的XML外部实体(XXE)注入
        7.  Spring Security认证绕过
        8.  Spring Framework 目录遍历漏洞
        9.  Spring AMQP中的远程代码执行
        10.  Spring Boot框架SPEL表达式注入漏洞
        11.  Spring Data JPA SQL盲注
        12.  Spring Security未经授权的访问
        13.  Spring Expression Language SPEL表达式注入漏洞
        14.  Spring Cloud Config Server: 目录遍历
        15.  Spring Security OAuth 开放重定向
        16.  Spring Boot Actuator命令执行漏洞
        17.  Spring Framework RFD漏洞
        18.  Spring Cloud Config路径穿越导致的信息泄露
2、Hibernate框架
漏洞：
        1.  Hibernate HQL注入漏洞
        2.  Hibernate SQL注入漏洞、
3、Struts框架
漏洞：
        1. Struts-S2-013漏洞利用
        2. Struts-S2-001漏洞利用
        3.  Struts-S2-016漏洞利用
        4.  Struts-S2-045漏洞利用
        5.  Struts-S2-057漏洞利用
Struts2爆出了50多个漏洞了
```

#### 九、开发语言

```
后台开发常用的编程语言包括Java、Python、PHP、Ruby、C#、JavaScript（Node.js）、Go (Golang)、C++、Scala, 每种语言都有其独特的特点和应用场景.
```

#### 十、数据库（重点）

```
常见的搭配有：
	ASP和. NET：Microsoft SQL Server.
	PHP：MySQL、PostgreSQL.
	Java：Oracle、MySQL.
    分析判断一个网站的后台数据库管理系统是什么的方法：1、根据网页编程语言去判断；2、根据数据库报错判断。根据网页编程语言去判断是指结合网页编程语言和后台数据库系统的常见搭配可以判断出该网站的后台数据库管理系统是什么。
```

#### 十一、网络空间搜索

```
fofa
shodan
```

#### 十二、系统漏洞扫描

```
    Goby 是一款专门为渗透测试人员打造的网络安全工具。它通过对目标网络进行深入的资产识别和漏洞扫描，帮助安全研究人员快速、准确地发现潜在的网络安全风险。
    
Goby的主要功能
1、资产发现与识别： Goby能够自动探测网络中的存活主机、开放端口、运行服务、操作系统等信息，建立完整的资产信息库。
2、漏洞扫描： Goby内置了大量的漏洞检测规则，可以对发现的资产进行全面的漏洞扫描，并提供详细的漏洞信息。
3、漏洞验证： Goby支持对漏洞进行验证，并提供相应的利用方式。
4、报告生成： Goby可以生成详细的扫描报告，方便用户分析和整理扫描结果。

Goby的特点
    高效： Goby采用多线程技术，能够快速完成大规模资产扫描和漏洞检测。
    准确： Goby内置了大量的漏洞检测规则，并不断更新，确保检测结果的准确性。
    易用： Goby提供了友好的用户界面，操作简单，易于上手。
    可扩展： Goby支持自定义插件，用户可以根据自己的需求扩展工具的功能。

Goby的优势
    全面的资产信息： Goby能够发现网络中各种类型的资产，包括服务器、数据库、网络设备等。
    强大的漏洞检测能力： Goby内置了大量的漏洞检测规则，覆盖了常见的网络安全漏洞。
    自动化程度高： Goby可以自动完成资产发现、漏洞扫描和报告生成等任务，大大提高了渗透测试的效率。

Goby的应用场景
    网络安全评估： Goby可以用于对企业内部网络进行安全评估，发现潜在的漏洞。
    渗透测试： Goby可以作为渗透测试人员的辅助工具，帮助他们快速发现目标系统的漏洞。
    漏洞挖掘： 安全研究人员可以使用Goby来发现新的漏洞。
------------------------------------------------------------------------------------
Goby的实际应用案例
    Goby作为一款功能强大的网络安全工具，在实际渗透测试中有着广泛的应用。下面我将通过几个具体的场景来展示Goby在实际工作中的强大之处：
1. 企业内部网络安全评估
    场景描述： 某大型企业希望对内部网络进行一次全面的安全评估，以发现潜在的漏洞。
Goby的应用：
    资产发现： Goby对企业内网进行全面的扫描，发现所有存活主机、开放端口、运行服务等。
    漏洞扫描： 对发现的资产进行深入的漏洞扫描，例如WebLogic漏洞、Tomcat漏洞、struts2漏洞等。
    漏洞验证： 对发现的漏洞进行验证，并生成详细的漏洞报告。
    风险评估： 根据漏洞的严重程度和影响范围，对企业网络的整体安全状况进行评估，提出改进建议。

2. 新系统上线前的安全测试
    场景描述： 某公司开发了一套新的业务系统，上线前需要进行严格的安全测试。
Goby的应用：
    资产识别： 对新系统进行全面的资产识别，包括Web服务器、数据库服务器等。
    漏洞扫描： 对系统进行漏洞扫描，发现常见的Web漏洞、配置错误等。
    渗透测试： 基于发现的漏洞，进行深入的渗透测试，验证系统的安全性。
3. 应急响应
    场景描述： 某公司遭受了网络攻击，需要快速定位攻击者的入侵路径并修复漏洞。
Goby的应用：
    快速资产发现： 在短时间内对受影响的网络进行资产发现，确定攻击者可能利用的系统。
    漏洞扫描： 对发现的资产进行针对性的漏洞扫描，找出攻击者可能利用的漏洞。
    入侵痕迹分析： 通过分析Goby的扫描结果，结合其他日志信息，分析攻击者的入侵路径和手法。
4. 红队演练
    场景描述： 安全团队希望模拟黑客攻击，测试企业安全防护能力。
Goby的应用：
    资产发现： 对目标网络进行全面的资产发现，建立攻击图。
    漏洞扫描： 针对发现的漏洞，制定攻击计划。
    模拟攻击： 利用Goby提供的漏洞利用工具，模拟真实的攻击场景。
5. 漏洞挖掘
    场景描述： 安全研究人员希望发现新的漏洞。

Goby的应用：
    自定义规则： 基于对漏洞的深入研究，编写自定义的漏洞检测规则。
    大规模扫描： 对大量的目标进行扫描，发现新的漏洞。

Goby在这些场景中的优势：
    自动化程度高： 大大提高了渗透测试的效率。
    漏洞覆盖面广： 内置了大量的漏洞检测规则。
    易于使用： 提供了友好的用户界面。
    可扩展性强： 支持自定义插件。

总结：
    Goby作为一款功能强大的渗透测试工具，在网络安全领域有着广泛的应用。无论是企业内部安全评估、新系统上线前的安全测试，还是应急响应和红队演练，Goby都能提供高效、准确的漏洞检测和风险评估能力。
```

```
                               GVM与OpenVAS的关系                   
    GVM（Greenbone Vulnerability Management） 和 OpenVAS 经常被提及，很多人会混淆这两个概念。事实上，它们之间有着非常紧密的联系。
OpenVAS是GVM的基础
    OpenVAS 是一个开源的漏洞扫描器，它提供了一套完整的漏洞扫描框架，包括漏洞数据库、扫描引擎、报告生成等功能。
    GVM 则是基于 OpenVAS 开发的商业化的漏洞管理平台，它在 OpenVAS 的基础上增加了许多功能，如：
    更友好的用户界面： 提供了更直观、易于使用的 Web 界面。
    更丰富的报告功能： 可以生成更加详细、可定制的报告。
    更强大的管理功能： 提供了更完善的用户管理、权限控制、资产管理等功能。
    更专业的服务： 提供了专业的技术支持和服务。
    GVM是对OpenVAS的扩展
    核心技术相同： GVM 和 OpenVAS 的核心漏洞扫描引擎是一样的，都使用 OpenVAS 的漏洞数据库和扫描技术。
    功能差异： GVM 在 OpenVAS 的基础上增加了许多商业化的功能，以满足企业级用户的需求。
总结：
    OpenVAS 是一个开源的漏洞扫描引擎，提供基础的漏洞扫描功能。
    GVM 是一个商业化的漏洞管理平台，基于 OpenVAS，提供了更丰富的功能和更好的用户体验。
--------------------------------------------------------------------------------------
```

```
# 查看网卡名称
ip addr
# 修改网卡配置文件
我的网卡名称为eth0，根据网卡名称在网卡配置文件/etc/network/interfaces下面添加以下配置(注意原有的eth0配置要删掉)
sudo nano /etc/network/interfaces

iface eth0 inet static
address 10.10.10.1/24
gateway 10.10.10.254
dns-nameservers 223.5.5.5

# 修改DNS
sudo nano /etc/resolv.conf
nameserver 223.5.5.5

# 重启网络服务
sudo systemctl restart networking
# 开机自动开启SSH服务
sudo systemctl enable ssh
# 启动SSH服务
sudo systemctl start ssh

# 修改镜像源为腾讯源
sudo sed -i 's/http:\/\/http.kali.org/https:\/\/mirrors.cloud.tencent.com/g' /etc/apt/sources.list
# 更新缓存
sudo apt update

# 安装OpenVAS
sudo apt install gvm

离线安装
离线deb包：OpenVAS离线资源
上传gvm-22.5.5-offline.tar.gz至kali用户目录
# 进入用户目录
cd ~
# 创建apt缓存目录
sudo mkdir -p /var/cache/apt/archives
# 解压deb包至缓存目录
sudo tar -zxvf gvm-22.5.5-offline.tar.gz -C /var/cache/apt/archives
# 安装OpenVAS
sudo apt install gvm

离线上传特征库 (攻击脚本、漏洞信息、gvm配置数据等)
下载：OpenVAS离线资源

上传以下离线包至用户目录

notus-offline-20230721T0557.tar.gz
nasl-offline-20230721T0557.tar.gz
scap-offline-20230720T0504.tar.gz
cert-offline-20230721T0407.tar.gz
gvmd-data-offline-20230721T0504.tar.gz
# 进入用户目录
cd ~
# 解压Notus数据
sudo tar -zxvf notus-offline-20230721T0557.tar.gz -C /var/lib
# 解压NASL脚本
sudo tar -zxvf nasl-offline-20230721T0557.tar.gz -C /var/lib/openvas
# 解压SCAP数据
sudo tar -zxvf scap-offline-20230720T0504.tar.gz -C /var/lib/gvm
# 解压CERT数据
sudo tar -zxvf cert-offline-20230721T0407.tar.gz -C /var/lib/gvm
# 解压GVMD数据
sudo tar -zxvf gvmd-data-offline-20230721T0504.tar.gz -C /var/lib/gvm

# 进入根目录
cd /
# 执行gvm初始化(初始化过程中会从社区源同步脚本、漏洞库等信息 需要耐心等待)
sudo gvm-setup
# 执行gvm安装检查
sudo gvm-check-setup

# 设置开机自动启动
sudo systemctl enable notus-scanner gvmd ospd-openvas gsad
# 修改服务配置 允许从其他设备访问
sudo sed -i 's/127.0.0.1/0.0.0.0/g' /lib/systemd/system/gsad.service
# 修改访问端口为443
sudo sed -i 's/9392/443/g' /lib/systemd/system/gsad.service
# 重置admin密码（初始化过程中会生成一个复杂的随机密码 如果忘掉可以使用以下命令重置）
sudo runuser -u _gvm -- gvmd --user=admin --new-password=admin
# 停止gvm服务
sudo gvm-stop
# 重载服务配置
sudo systemctl daemon-reload
# 启动gvm服务
sudo gvm-start

Acunetix WVS 和 GVM 的区别
Acunetix WVS 和 GVM (Greenbone Vulnerability Manager) 都是非常流行的网络漏洞扫描工具，但它们在设计、功能和侧重点上有一些区别。

Acunetix WVS
专注于Web应用程序安全: Acunetix WVS 专为扫描 Web 应用程序而设计，其扫描引擎经过优化，能够发现各种 Web 应用程序漏洞，如 SQL注入、跨站点脚本 (XSS)、跨站点请求伪造 (CSRF) 等。
用户友好界面: Acunetix WVS 提供了一个直观的用户界面，即使是非技术人员也能轻松使用。
自动化扫描: 它支持自动化扫描，可以根据预设的配置对多个网站进行扫描。
详细的报告: 扫描完成后，Acunetix WVS 会生成一份详细的报告，包括漏洞的详细信息、严重程度和修复建议。
GVM
全面的漏洞扫描: GVM 是一款全面的漏洞扫描器，不仅可以扫描 Web 应用程序，还可以扫描网络设备、操作系统、数据库等。
模块化设计: GVM 采用模块化设计，可以根据需要添加或删除不同的扫描模块。
开源社区: GVM 是一个开源项目，拥有庞大的社区支持，可以获得更多的资源和帮助。
可定制性强: GVM 可以高度定制化，以满足不同的安全需求。
```

#### 十三、网站漏洞扫描

```
1、xray扫描结果
2、awvs扫描结果(重点)
3、negsparker扫描结果
```

#### 十四、获取网站目录

```
1、dirbuster工具
2、burpsuite工具
3.用get_dir.py工具扫描网站的目录结构
4.HTTrack获取网站的整体拷贝
5.theharvester 搜索电子邮件和子域名
```

#### 十五、敏感文件汇总

    渗透测试中的敏感文件
    	在渗透测试过程中，敏感文件是指那些包含了系统、应用程序或用户敏感信息的文档。这些文件一旦泄露，可能导致严重的安全后果，如数据泄露、系统被攻破等。
    
    敏感文件种类繁多，根据其包含的信息类型，大致可以分为以下几类：
    配置文件:
        数据库配置文件（如MySQL的my.cnf、SQL Server的config文件）：包含数据库连接信息、用户名、密码等。
        Web服务器配置文件（如Apache的httpd.conf、Nginx的nginx.conf）：包含网站配置信息、虚拟主机配置、错误日志路径等。
        系统配置文件（如/etc/passwd、/etc/shadow）：包含系统用户信息、密码哈希等。
        应用程序配置文件：包含应用程序的配置信息，如密钥、连接字符串等。
    备份文件:
        数据库备份文件：包含数据库中的所有数据，包括用户数据、敏感信息等。
        系统备份文件：包含系统配置、用户数据等。
    日志文件:
        系统日志：记录系统运行的各种信息，可能包含敏感信息，如用户登录记录、错误信息等。
        应用程序日志：记录应用程序运行的日志，可能包含敏感数据。
    源代码:
        包含网站或应用程序的源代码，可能泄露开发者的信息、算法、漏洞等。
    密钥文件:
        SSH密钥、SSL证书、加密密钥等，一旦泄露，可能导致系统被攻破。
    用户数据:
        用户的个人信息、密码、支付信息等。
    其他:
        网站后台管理文件、版本控制系统文件、临时文件等。
    谷歌搜索site:xxx.com  filetype:txt|log inurl:phpinfo.php

```
如何查找敏感文件
    目录扫描: 使用工具如DirBuster、Dirsearch等对网站目录进行扫描，寻找敏感文件或目录。
    文件内容搜索: 使用工具如SearchSploit、Google Hacking等搜索特定关键字，查找敏感文件。
    robots.txt分析: robots.txt文件中可能包含一些敏感目录或文件的提示。
    源码泄露: 检查是否存在源码泄露，如.git泄露、.svn泄露等。
    备份文件查找: 查找常见的备份文件后缀名，如.bak、.zip、.rar等。
    敏感信息泄露扫描: 使用工具如WhatWeb、Nikto等扫描网站，查找常见的敏感信息泄露漏洞。
```

#### 十六、nmap扫描情况

```
 1-主机发现与探测
     nmap -sP 192.168.1.1 ping扫描
     nmap -p0 192.168.1.1 禁ping的扫描
     nmap -PS 192.168.1.1 TCP SYN ping扫描
     nmap -PA 192.168.1.1 TCP ACK ping扫描
     nmap -PU 192.168.1.1 UDP ping扫描
     nmap -PE -PP -PM 192.168.1.1 ICMP扫描
     nmap -PR 192.168.1.1 ARP ping扫描
     nmap -PR 192.168.1.1 列表扫描
     nmap -n 192.168.1.1 禁止反向域名解析
     nmap -R 192.168.1.1 反向域名解析
     nmap --system-dns 192.168.1.1 系统域名解析器扫描
     nmap -6 ff:99:00:33:23：11 （有IPV6的情况下使用）
     nmap --traceroute www.nihao.com
     nmap -PY 192.168.1.1 SCTP INIT ping扫描
 2-端口扫描
     nmap -T1 192.168.1.1 时序扫描，T后的数字越小越有隐蔽性，同时速度也会越慢
     nmap -sS 192.168.1.1 TCP SYN扫描
     nmap -sT 192.168.1.1 TCP 连接扫描
     nmap -sU 192.168.1.1 UDP扫描
     nmap -sN 192.168.1.1 TCP NULL\FIN\Xmas扫描 -sF -sX
     nmap -sA 192.168.1.1 TCP ACK 扫描
     nmap -sW -F 192.168.1.1 TCP窗口扫描
     nmap -sM 192.168.1.1 TCP maimon扫描
     nmap -sT --scanflags SYNURG 192.168.1.1 自定义扫描
     nmap -sI www.0day.co:80 192.168.1.1 空闲扫描(端口完全欺骗)
     nmap -sO 192.168.1.1 IP协议扫描
     nmap -sb 192.168.1.1 FTP Bounce扫描（很少使用）
 3-指纹识别
     nmap -sV 192.168.1.1 版本探测
     nmap -sV --allports 192.168.1.1/nmap -sV -p- 192.168.1.1 全端口扫描
     nmap -sV --version-intensity 1 192.168.1.1 设置扫描强度
     nmap -sV --version-light 192.168.1.1 轻量级扫描
     nmap -sV --version-all 重量级扫描
     nmap -sV --version-trace 192.168.1.1 获取详细版本信息
     nmap -sS -sR 192.168.1.1 RPC扫描
     nmap -O 192.168.1.1 操作系统的探测
     nmap -O --osscan-limit 192.168.1.1 对指定的目标进行操作系统探测
     nmap -O --osscan-guess 192.168.1.1 推测系统并进行识别
 4-时机选择
     nmap --min-hostgroup 30 192.168.1.0/24
     nmap --max-hostgroup 10 192.168.1.0/24 （调整并行扫描组的大小）
     nmap --min-parallelism 100 192.168.1.0/24
     nmap --max-parallelism 100 192.168.1.1（调整探测报文的并行度）
     nmap --initial-rtt-timeout 1000ms 192.168.1.1
     nmap --max-rtt-timeout 500ms 192.168.1.1
     nmap --min-rtt-timeout 500ms 192.168.1.1（调整探测报文超时）
     nmap --host-timeout 100ms 192.168.1.0/24
     nmap --host-timeout 1000ms 192.168.1.0/24（放弃缓慢的目标主机）
     nmap --scan-delay 1s 192.168.1.1
     nmap --max-scan-delay 30s 192.168.1.1 (调整报文适合的时间间隔)
 5-防火墙
     nmap -f -v 192.168.1.1 报文分段
     nmap --mtu 16 192.168.1.1 指定偏移大小
     nmap -sI www.0day.co:80 192.168.1.1 源地址欺骗（在二阶段中包含了）
     nmap -D RND:11 192.168.1.1 IP欺骗
     nmap --source-port 53 192.168.1.1 源端口欺骗
    nmap --data-length 30 192.168.1.1 指定发包长度
    nmap --randomize-hosts 192.168.1.1-200 目标主机随机排序
    nmap -sT -PN --spoof-mac 0 192.168.1.1 MAC地址欺骗
6-相关信息搜索
     nmap -p 443 --script=ssl-enum-ciphers www.baidu.com 枚举SSL密钥有443 https服务开启的情况下
     nmap -p 22 --script ssh-hostkey --script-args ssh_host=full 192.168.1.1 SSH服务密钥信息探测
 7-数据库的渗透
      MySQL列举数据库:nmap -p3306 --script mysql-databases --script-args mysqluser=root,mysqlpass 192.168.84.1
    列举MySQL变量:nmap -p3306 --script=mysql-variables 192.168.84.1
    检查MySQL密码:nmap -p3306 --script=mysql-empty-password 192.168.84.1
    审计MySQL密码:nmap --script=mysql-brute 192.168.84.1

    审计MySQL安全配置:nmap -p 3306 --script mysql-audit --script-args "mysql-audit.username= 'root',\mysql-audit.password='',mysql-audit.filename='nselib/data/mysql-cis.audit'" 192.168.84.1

    审计Oracle密码:nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=test 192.168.126.131
    审计msSQL密码:nmap -p 1433 --script ms-sql-brute --script-args userdb=name.txt, passdb=pass.txt 192.168.84.1
    检查msSQL密码:nmap -p 1433 --script ms-sql-empty-password 192.168.126.1
    读取msSQL数据:nmap –p 1433 –script ms-sql-tables –script-args mssql.username=sa, mssql.password=sa 192.168.126.131
    msSQL执行系统命令:nmap -p 1433 --script ms-sql-xp-cmdshell --script-args mssql.username=sa, mssql.password=sa,ms-sql-xp-cmdshell.cmd="ipconfig" 192.168.126.1
    审计PgSQL密码:nmap -p 5432 --script pgsql-brute 192.168.126.131
8-渗透测试服务
    nmap --script http-brute -p 80 192.168.1.1 审计/爆破HTTP身份验证
     nmap --script ftp-brute -p 21 审计ftp服务器
     nmap -p110 --script=pop3-brute 192.168.1.1 审计邮件服务器
     nmap --script smb-brute.nse -p445 192.168.1.1 审计smb口令
     nmap -p80 --script http-wordpress-brute 192.168.1.1 审计wordpress程序
     nmap -p80 --script http-joomla-brute 192.168.1.1 审计joomla程序
     nmap --script vnc-brute -p5900 192.168.1.1 审计VNC服务器
     nmap -sU -p161 --script=snmp-netstat 192.168.1.1 SNMP安全审计
     nmap --script stuxnet-detect -p 445 192.168.1.1 检测Stuxnet蠕虫
 9-技巧
      nmap --send-eth 192.168.1.1 发送以太网数据包
     nmap --send-ip 192.168.1.1 网络层发送
     nmap --privileged 192.168.1.1 假定拥有所有权
     nmap -d 1 192.168.1.1 设置调试级别
     nmap --packet-trace -p 20-30 192.168.1.1 跟踪发送接收的报文
     nmap --iflist www.0day.co 列举接口和路由
     nmap -e eth0 192.168.1.1 指定网络接口
     nmap --resume -oG 1.txt -v 192.168.1.1 继续中断扫描
     nmap --script=firewalk --traceroute 192.168.1.1 探测防火墙
```

#### 十七、查询网站下有哪些电子邮件

```
https://souyouxiang.com/#/dashboard
https://www.skymem.info/

看看招聘信息有哪些重要的
看看facebook,linkin这样的网站上有哪些重要的信息

```

#### 十八.公司的信息，新闻，公告，招聘信息的敏感内容

```

```

#### 十九、自动化信息收集

```
不建议使用，还是利用各种工具，分别收集。
```

    ARL（Asset Reconnaissance Lighthouse）资产侦察灯塔系统旨在快速侦察与目标关联的互
    联网资产，构建基础资产信息库。 协助甲方安全团队或者渗透测试人员有效侦察和检索资产，发
    现存在的薄弱点和攻击面。
    
    EHole是一款对资产中重点系统指纹识别的工具，在红队作战中，信息收集是必不可少的环节，如何才能从大量的资产中提取有用的系统(如OA、VPN、Weblogic...)。
    EHole旨在帮助红队人员在信息收集期间能够快速从C段、大量杂乱的资产中精准定位到易被攻击的系统，从而实施进一步攻击。

```
Maltego一站式信息收集工具
Maltego：你的网络侦查利器
Maltego 是一款功能强大的开源情报（OSINT）工具，主要用于网络侦查、威胁情报分析和渗透测试。它通过可视化方式将来自互联网上的公开信息关联起来，帮助安全研究人员、渗透测试人员和情报分析师构建有关个人、组织或系统的全面视图。

Maltego能做什么？
图形化信息关联： Maltego将收集到的信息以图形的形式展现，让用户直观地看到不同数据点之间的关联。
自动化数据收集： 通过内置的转换器（Transforms），Maltego可以自动化地从各种公开数据源（如Whois、社交媒体、DNS记录等）收集信息。
深入调查： Maltego可以帮助你从一个已知的信息点开始，逐步扩展你的搜索范围，发现隐藏的关联和潜在的威胁。
构建知识图谱： Maltego可以构建复杂的知识图谱，帮助你深入了解目标的网络结构和行为模式。
Maltego的工作原理
Maltego的核心是它的转换器。这些转换器就像一个个小的工具，可以从不同的数据源提取信息，并将其添加到你的图形中。例如，你可以使用一个转换器来查找一个域名的所有子域名，然后使用另一个转换器来查找这些子域名的IP地址。

Maltego的应用场景
网络侦查： 发现目标组织的网络架构、使用的技术和潜在的漏洞。
威胁情报分析： 分析恶意软件、网络攻击和APT攻击背后的组织和基础设施。
品牌保护： 监控竞争对手、发现假冒产品和品牌侵权行为。
开源情报收集： 从公开的互联网数据中收集有价值的情报。
Maltego的优点
可视化： 通过图形化的方式展示信息，更容易理解复杂的关系。
自动化： 大量的数据收集和分析任务可以自动化完成。
灵活： 可以自定义转换器，扩展Maltego的功能。
社区支持： 有一个庞大的用户社区，可以提供帮助和支持。
Maltego的局限性
数据准确性： 公开数据可能不准确或不完整。
学习曲线： Maltego的配置和使用需要一定的学习成本。
资源消耗： 处理大量数据时，可能会占用较多的系统资源。
总结

Maltego是一款功能强大的工具，可以帮助你更深入地了解网络世界。如果你从事网络安全、情报分析或渗透测试相关工作，Maltego将是一个非常有用的工具。

想了解更多关于Maltego的信息，你可以参考以下资源：

Maltego官方网站： https://www.maltego.com/
ShyoSec的Maltego教程： https://www.shyosec.com/security/tutorial/how-to-use-maltego/
```

#### 附加技能：谷歌搜索

    查找后台地址：site:域名 inurl:login|admin|manage|member|admin_login|login_admin|system|login|user|main|cms
    查找文本内容：site:域名 intext:管理|后台|登陆|用户名|密码|验证码|系统|admin|login|sys|managetem|password|username
    查找可注入点：site:域名 inurl:aspx|jsp|php|asp
    查找上传漏洞：site:域名 inurl:file|load|editor|Files
    找eweb编辑器：site:域名 inurl:ewebeditor|editor|uploadfile|eweb|edit
    存在的数据库：site:域名 filetype:mdb|asp|#
    查看脚本类型：site:域名 filetype:asp/aspx/php/jsp
    迂回策略入侵：inurl:cms/data/templates/images/index/
    
    各种敏感数据收集：
    filetyle:xls inurl:gov username password
    inurl:phpmyadmin/main.php intitle:phpmyadmin
    filetype:inc inurl:config.inc host
    filetype:sql cdb_members inurl:forumdata
    filetype:txt inurl:"新建文本文档.txt"密码
    inurl:phpinfo.php intitle:"phpinfo()""PHP Version"+"Server API"
    filetype:log inurl:log mdb
    
    寻找SQL注入点：
    inurl:about.php?cartID=
    inurl:accinfo.php?cartid=
    inurl:vacclogin.php?cartid=
    inurl:add.php?bookid=
    inurl:add_cart.php?num=
    inurl:addcart_php?id=
    inurl:addtocart.php?idproduct=
    inurl:admineditproductefields.php?intproductid=
    inurl:advsearch_h.php?idcategory=
    inurl:affiliate.php?id=
    inurl:affiliate-agreement.cfm?storied=
    inurl:affiliates.php?id=
    inurl:ancillary.php?id=
    inurl:archive.php?id=
    inurl:article.php?id=
    inurl:phpx?pageid basket.php?id=
    inurl:book.php?bookid=
    inurl:book_list.php?bookid=
    inurl:book_view.php?bookid=
    inurl:bookdetails.php?id=
    inurl:browse.php?cartid=
    inurl:browse_item_details.php?store_id=
    inurl:buy.php?bookid=
    inurl:bycategory.php?id=
    inurl:cardinfo.php?card=
    inurl:cart.php?action=
    inurl:cart.php? cart_id=
    inurl:cart.php?id=
    inurl:cart_additem.php?id=
    inurl:cart_vaildate.php?id=
    inurl:cartadd.php?id=
    inurl:cat.php?id=
    inurl:php?id=
    inurl:index.php?id=
    inurl:login.php?id=
    
    site:.com
    site:.com.mo
    site.www.macca.com
    site:.kh
    
    Intitle:password
    Intitle:”index of password”
    Intitle:”index of “”*.passwords.txt”
    Intitle:”index of” inurl:passwords
    Intitle:”index of /” “credentials.zip”
    Intitle:”index of  /” “passwords.zip”
    Intitle:”index of /” “tokens.zip”
    
    Site:inpu.uw.edu.pl “*mider@uw.edu.pl”
    Site:www.csx.com.kh intext:e-mail
    Site:csx.com.kh  filetype:pdf
    Site:scs.com.kh  intitle:index of .mp3
    Site:www.inp.edu.pl  inp
    Site:uw.edu.pl  intitle:index of “parent directory”
    Site:uw.edu.pu intitl :index of server.at
    Site:uw.edu.pl inurl:manual apache directives modules(Apache)
    Site:uw.edu.pl inurl:backup
    Site:uw.edu.pl  inurl:backup intitle:index of  inurl:admin
    site:xxx.com inurl:upload
    site:xx.com inurl:php?id=
    site:xxx.com inurl:ewebeditor
    site:xxx.co inurl:"/admin/login.php"
    
    Filetype:xls+emaile
    Filetype:doc site:csx.com.kh
    filetype:iso
    Filetype:log inurl:password
    Filetype:bak inurl:”htaccess|passwd|shadow|htusers”
    Filetype:cfg
    Fieltype:txt intext:”Acess denid for user”
    Fieltype:txt intext:”Error Message”
    filetype:xls "username | password"
    
    “index of /”  password.txt  inurl:lib
    ”index of /"  ppt
    ”index of /"  admin
    ”index of /"  pdf
    ”index of /"  doc
    ”index of /"  software
    ”index of /"  rar
    ”index of /"  book
    ”index of /"  ebook
    ”index of /"  download 

```
如何使用谷歌搜索查找 FTP 服务器
谷歌搜索 是一个强大的工具，可以帮助你快速找到所需的 FTP 服务器。下面是一些常用的搜索技巧和关键词，可以帮助你更精准地找到你想要的 FTP 服务器：

1. 直接搜索关键词
最简单的搜索： 直接在搜索框中输入 "FTP 服务器" 即可。谷歌会返回大量相关的搜索结果，包括 FTP 服务器的提供商、教程、以及一些免费的 FTP 服务器。
限定搜索范围：
国家或地区： 在关键词后加上 "中国"、"美国" 等限定词，例如："FTP 服务器 中国"。
特定用途： 如果有特定用途，比如"网站备份"、"文件共享"，可以加入这些关键词，例如："FTP 服务器 网站备份"。
2. 使用高级搜索语法
intitle: 搜索网页标题中包含指定关键词的页面。例如：intitle:"FTP 服务器 免费"
filetype: 搜索特定类型的文件。例如：filetype:pdf FTP 服务器教程
site: 在指定网站搜索。例如：site:baidu.com FTP 服务器
3. 利用搜索引擎的工具
搜索工具： 谷歌搜索提供了很多高级搜索工具，比如搜索工具、时间范围、语言等等。你可以利用这些工具来细化你的搜索。
相关搜索： 谷歌会在搜索结果下方提供一些相关的搜索词，你可以点击这些词来进一步搜索。
4. 其他搜索技巧
使用引号： 将关键词用引号括起来，可以精确搜索整个短语。例如："FTP 服务器 免费"
使用减号： 用减号 (-) 排除包含某个词的页面。例如：FTP 服务器 -收费
使用星号： 用星号 (*) 代替一个或多个单词。例如：FTP 服务器
5. 推荐的搜索关键词组合
免费 FTP 服务器
FTP 服务器 提供商
FTP 服务器 教程
FTP 服务器 软件
FTP 服务器 协议
FTP 服务器 客户端
FTP 服务器 配置
```

```
利用Google语法搜索文件上传漏洞网站
Google语法 是一套强大的搜索指令，可以帮助你更精准地找到所需信息。要搜索存在文件上传漏洞的网站，你可以利用以下语法组合：

基本语法：
site: 限制搜索范围，例如：site:example.com
intitle: 搜索网页标题中包含的关键词
inurl: 搜索网页URL中包含的关键词
filetype: 搜索特定类型的文件，例如：filetype:php
寻找文件上传漏洞的示例语法：
搜索包含"upload"关键词的网页：

intitle:"文件上传" OR intitle:"上传文件" OR intitle:upload
inurl:upload.php OR inurl:upload.asp OR inurl:upload.aspx
搜索包含"upload"关键词并且在标题或URL中包含"admin"关键词的网页（可能存在后台上传功能）：

(intitle:"文件上传" OR intitle:"上传文件" OR intitle:upload) AND (intitle:admin OR inurl:admin)
搜索包含"upload"关键词且文件类型为php的网页（php文件通常用于编写动态网页）：

(intitle:"文件上传" OR intitle:"上传文件" OR intitle:upload) AND filetype:php
更高级的搜索：
组合多个关键词：
intitle:"文件上传" AND inurl:upload.php AND site:gov.cn （搜索中国政府网站中包含"文件上传"且URL中包含"upload.php"的网页）
使用通配符：
inurl:upload* （搜索包含"upload"的任意字符串的URL）
排除某些关键词：
-inurl:login （排除包含"login"的搜索结果）
注意：
搜索结果不代表漏洞存在： 找到包含"upload"关键词的网页并不代表该网站一定存在文件上传漏洞。还需要进一步的渗透测试来确认。
搜索引擎会调整算法： Google会不断调整搜索算法，以上语法可能随着时间的推移而失效。
尊重网站的robots.txt： 爬虫应遵守robots.txt协议，避免对网站造成不必要的负担。
合法合规： 仅将搜索结果用于合法合规的目的，如漏洞挖掘和安全测试。
更多技巧：
利用Google Hacking数据库： 许多安全研究人员共享了大量的Google Hacking语法，可以作为你的参考。
使用专业的搜索引擎： 除了Google，还有Shodan、ZoomEye等专门用于搜索网络设备和服务的搜索引擎。
结合其他工具： 将Google搜索与其他工具（如Burp Suite、Nmap）结合使用，可以更有效地发现漏洞。
```

####  附加技能：黑客常用网址

```
1-病毒文件检测：https://www.virustotal.com/gui/home/upload
2-互联网资产：https://www.shodan.io/
3-一个用于查看泄露凭证的站点。提供免费的深层网络扫描和密码泄露保护，可通过电子邮件、用户名、IP地址等搜索，支持正则表达式。https://dehashed.com/
4-一个免费威胁情报平台，可用于搜索、扫描和富化来自开源情报源的IP、URL、域名等IOC信息。https://pulsedive.com/
5-一个扫描和分析网站中恶意链接的工具。https://urlscan.io/
6-GreyNoise在世界各地都有传感器，检测并记录来自IP地址的扫描活动。威胁研究人员可以使用此数据来查找扫描中的峰值，以识别可能的新蠕虫爆发或其他潜在威胁。安全从业人员还可以使用此数据来过滤网络日志中的噪音，将时间集中在调查真正的攻击者上，而不是浪费在噪音上。https://www.greynoise.io/
7-无线网络（WiFi、蓝牙、基站）分析数据库。https://www.wigle.net/
8-一个包含数以百万计漏洞信息的超大漏洞搜索数据库。https://vulners.com/
9-互联网最大的“档案馆”，存档了超过7410亿个网站页面，可供查看网站历史页面，深入分析网页历史。https://web.archive.org/
10-搜索和监控联网资产https://netlas.io/
11-威胁情报数据采集https://www.onyphe.io/
12-攻击面搜索与发现https://fullhunt.io/
13-检索超过50万个Git存储库https://grep.app/
14-搜索CT已记录的证书https://crt.sh/
15-搜索公共S3存储库https://grayhatwarfare.com/
16-著名的开源威胁情报社区，可检索超过2000万条威胁指标https://otx.alienvault.com/
17-扫描整个互联网获取实时威胁情报数据流https://www.binaryedge.io/
18-反向图片搜索引擎https://tineye.com/
19-开源威胁情报（OSINT）框架网站https://osintframework.com/
20-搜索网站中的邮件地址https://hunter.io/
21-搜索公开索引数据，可比Shodan提供更加深入的统计信息，可用于追踪勒索软件和恶意软件https://leakix.net/
22-可用于搜索Tor、I2P、泄露数据、域名和邮件地址https://intelx.io/
23-DNS侦察与研究，查找DNS记录https://dnsdumpster.com/
24-漏洞利用的档案库https://www.exploit-db.com/
25-识别、定义与发布公开披露的漏洞CVE的官方站点。https://cve.mitre.org/
26-Fofa是白帽汇推出的一款强大的网络空间资产搜索引擎。通过进行网络空间测绘,能够帮助研究人员或者企业迅速进行网络资产匹配。fofa.cn
27-检索最新漏洞和利用https://packetstormsecurity.com/
28-searchcode是一款高度专业化的搜索引擎,可以从GitHub、Bitbucket、Google Code等主流源代码平台中寻找有用的情报。https://searchcode.com/
29-速度最快的Google Dorking搜索工具之一https://dorksearch.com/
30-威胁检测平台，能扫描文件和URL查找威胁，比URL Scan功能更加全面https://polyswarm.network/
31-WAF在线查杀https://n.shellpub.com/en
32-DNS解析https://viewdns.info/
33-IP地址查询https://aruljohn.com/
34-电子邮件安全与使用查询https://centralops.net/co/EmailDossier.aspx
35-公益IP地址查询https://www.arin.net/
36-企业查询https://opencorporates.com/
37-资产查询http://ceye.io/
38-web指纹查询https://whatcms.org/
39-美国漏洞发布中心https://nvd.nist.gov/
40-在线检测病毒与木马https://s.threatbook.com/
41-威胁情报https://x.threatbook.com/
42-搜索公司邮箱https://www.skymem.info/
43-搜索公司邮箱https://souyouxiang.com/#/dashboard
44-查询是否有信息泄露https://snusbase.com/
45-全球调查报告与查询报告https://aleph.occrp.org/
46-查询邮箱是否被泄露https://haveibeenpwned.com/
47-查询私有信息是否被泄露https://monitor.mozilla.org/
48-高效搜索引擎https://intelx.io/
49-站长之家https://tool.chinaz.cn
```

```
CVE漏洞查找网址：
    https://www.exploit-db.com/
    https://www.ddosi.org/
    https://cve.mitre.org/
    https://nvd.nist.gov/
    https://intel.intruder.io/
    https://www.cve.org/
    https://www.venuseye.com.cn/
    https://urlhaus.abuse.ch/verify-ua/
    https://viz.greynoise.io/
    https://passport.threatbook.cn/
```

